Changeset 265523 in webkit
- Timestamp:
- Aug 11, 2020 3:01:45 PM (4 years ago)
- Location:
- trunk
- Files:
-
- 30 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r265519 r265523 1 2020-08-11 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, reverting r265502. 4 https://bugs.webkit.org/show_bug.cgi?id=215396 5 6 Needs locking to avoid flaky GC-related crashes 7 8 Reverted changeset: 9 10 "[WebGL2] expando-loss and expando-loss-2 conformance tests 11 are failing" 12 https://bugs.webkit.org/show_bug.cgi?id=214765 13 https://trac.webkit.org/changeset/265502 14 1 15 2020-08-11 Hector Lopez <hector_i_lopez@apple.com> 2 16 -
trunk/LayoutTests/webgl/2.0.0/conformance/misc/expando-loss-expected.txt
r265502 r265523 2 2 3 3 Test: ../../resources/webgl_test_files/conformance/misc/expando-loss.html 4 [ PASS ] All tests passed 4 [ 1: PASS ] getParameter(TEXTURE_BINDING_2D) returns instance that was bound. 5 [ 2: FAIL ] getParameter(TEXTURE_BINDING_2D): Expect basic expando to survive despite GC. 6 [ 3: FAIL ] getParameter(TEXTURE_BINDING_2D): Expect subobject expando to survive despite GC. 7 [ 4: PASS ] getParameter(FRAMEBUFFER_BINDING) returns instance that was bound. 8 [ 5: FAIL ] getParameter(FRAMEBUFFER_BINDING): Expect basic expando to survive despite GC. 9 [ 6: FAIL ] getParameter(FRAMEBUFFER_BINDING): Expect subobject expando to survive despite GC. 10 [ 7: PASS ] getParameter(RENDERBUFFER_BINDING) returns instance that was bound. 11 [ 8: FAIL ] getParameter(RENDERBUFFER_BINDING): Expect basic expando to survive despite GC. 12 [ 9: FAIL ] getParameter(RENDERBUFFER_BINDING): Expect subobject expando to survive despite GC. 13 [ 10: PASS ] getParameter(ELEMENT_ARRAY_BUFFER_BINDING) returns instance that was bound. 14 [ 11: FAIL ] getParameter(ELEMENT_ARRAY_BUFFER_BINDING): Expect basic expando to survive despite GC. 15 [ 12: FAIL ] getParameter(ELEMENT_ARRAY_BUFFER_BINDING): Expect subobject expando to survive despite GC. 16 [ 13: PASS ] getParameter(ARRAY_BUFFER_BINDING) returns instance that was bound. 17 [ 14: FAIL ] getParameter(ARRAY_BUFFER_BINDING): Expect basic expando to survive despite GC. 18 [ 15: FAIL ] getParameter(ARRAY_BUFFER_BINDING): Expect subobject expando to survive despite GC. 19 [ 16: PASS ] getParameter(TEXTURE_BINDING_CUBE_MAP) returns instance that was bound. 20 [ 17: FAIL ] getParameter(TEXTURE_BINDING_CUBE_MAP): Expect basic expando to survive despite GC. 21 [ 18: FAIL ] getParameter(TEXTURE_BINDING_CUBE_MAP): Expect subobject expando to survive despite GC. 22 [ 19: PASS ] getParameter(gl.CURRENT_PROGRAM) return instance set with useProgram 23 [ 20: PASS ] Vertex shader instance found in getAttachedShaders 24 [ 21: PASS ] Fragment shader instance found in getAttachedShaders 25 [ 22: FAIL ] Current program: Expect basic expando to survive despite GC. 26 [ 23: FAIL ] Current program: Expect subobject expando to survive despite GC. 27 [ 24: PASS ] [object WebGLProgram] is an instance of WebGLProgram 28 [ 25: FAIL ] Shader[0]: Expect basic expando to survive despite GC. 29 [ 26: FAIL ] Shader[0]: Expect subobject expando to survive despite GC. 30 [ 27: PASS ] [object WebGLShader] is an instance of WebGLShader 31 [ 28: FAIL ] Shader[1]: Expect basic expando to survive despite GC. 32 [ 29: FAIL ] Shader[1]: Expect subobject expando to survive despite GC. 33 [ 30: PASS ] [object WebGLShader] is an instance of WebGLShader 34 [ 31: PASS ] getVertexAttrib(VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) return instance set with vertexAttribPointer 35 [ 32: FAIL ] Vertex Attribute Buffer: Expect basic expando to survive despite GC. 36 [ 33: FAIL ] Vertex Attribute Buffer: Expect subobject expando to survive despite GC. 37 [ 34: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 38 [ 35: PASS ] getFramebufferAttachmentParameter(COLOR_ATTACHMENT0) returns instance set with framebufferRenderbuffer 39 [ 36: PASS ] getFramebufferAttachmentParameter(DEPTH_ATTACHMENT) returns instance set with framebufferRenderbuffer 40 [ 37: PASS ] getFramebufferAttachmentParameter(STENCIL_ATTACHMENT) returns instance set with framebufferRenderbuffer 41 [ 38: PASS ] getFramebufferAttachmentParameter(DEPTH_STENCIL_ATTACHMENT) returns instance set with framebufferRenderbuffer 42 [ 39: FAIL ] COLOR_ATTACHMENT0: Expect basic expando to survive despite GC. 43 [ 40: FAIL ] COLOR_ATTACHMENT0: Expect subobject expando to survive despite GC. 44 [ 41: PASS ] [object WebGLRenderbuffer] is an instance of WebGLRenderbuffer 45 [ 42: FAIL ] DEPTH_ATTACHMENT: Expect basic expando to survive despite GC. 46 [ 43: FAIL ] DEPTH_ATTACHMENT: Expect subobject expando to survive despite GC. 47 [ 44: PASS ] [object WebGLRenderbuffer] is an instance of WebGLRenderbuffer 48 [ 45: FAIL ] STENCIL_ATTACHMENT: Expect basic expando to survive despite GC. 49 [ 46: FAIL ] STENCIL_ATTACHMENT: Expect subobject expando to survive despite GC. 50 [ 47: PASS ] [object WebGLRenderbuffer] is an instance of WebGLRenderbuffer 51 [ 48: FAIL ] DEPTH_STENCIL_ATTACHMENT: Expect basic expando to survive despite GC. 52 [ 49: FAIL ] DEPTH_STENCIL_ATTACHMENT: Expect subobject expando to survive despite GC. 53 [ 50: PASS ] [object WebGLRenderbuffer] is an instance of WebGLRenderbuffer 54 [ 51: PASS ] successfullyParsed is true 55 [ FAIL ] 28 failures reported 5 56 -
trunk/LayoutTests/webgl/2.0.0/conformance2/misc/expando-loss-2-expected.txt
r265502 r265523 2 2 3 3 Test: ../../resources/webgl_test_files/conformance2/misc/expando-loss-2.html 4 [ PASS ] All tests passed 4 [ 1: PASS ] getParameter(SAMPLER_BINDING) returns instance that was bound. 5 [ 2: FAIL ] getParameter(SAMPLER_BINDING): Expect basic expando to survive despite GC. 6 [ 3: FAIL ] getParameter(SAMPLER_BINDING): Expect subobject expando to survive despite GC. 7 [ 4: PASS ] getParameter(SAMPLER_BINDING): Expect extra expando to survive despite GC. 8 [ 5: PASS ] [object WebGLSampler] is an instance of WebGLSampler 9 [ 6: PASS ] getParameter(TRANSFORM_FEEDBACK_BINDING) returns instance that was bound. 10 [ 7: FAIL ] getParameter(TRANSFORM_FEEDBACK_BINDING): Expect basic expando to survive despite GC. 11 [ 8: FAIL ] getParameter(TRANSFORM_FEEDBACK_BINDING): Expect subobject expando to survive despite GC. 12 [ 9: PASS ] getParameter(TRANSFORM_FEEDBACK_BINDING): Expect extra expando to survive despite GC. 13 [ 10: PASS ] [object WebGLTransformFeedback] is an instance of WebGLTransformFeedback 14 [ 11: PASS ] getParameter(VERTEX_ARRAY_BINDING) returns instance that was bound. 15 [ 12: FAIL ] getParameter(VERTEX_ARRAY_BINDING): Expect basic expando to survive despite GC. 16 [ 13: FAIL ] getParameter(VERTEX_ARRAY_BINDING): Expect subobject expando to survive despite GC. 17 [ 14: PASS ] getParameter(VERTEX_ARRAY_BINDING): Expect extra expando to survive despite GC. 18 [ 15: PASS ] [object WebGLVertexArrayObject] is an instance of WebGLVertexArrayObject 19 [ 16: PASS ] getParameter(TEXTURE_BINDING_3D) returns instance that was bound. 20 [ 17: FAIL ] getParameter(TEXTURE_BINDING_3D): Expect basic expando to survive despite GC. 21 [ 18: FAIL ] getParameter(TEXTURE_BINDING_3D): Expect subobject expando to survive despite GC. 22 [ 19: PASS ] getParameter(TEXTURE_BINDING_3D): Expect extra expando to survive despite GC. 23 [ 20: PASS ] [object WebGLTexture] is an instance of WebGLTexture 24 [ 21: PASS ] getParameter(TEXTURE_BINDING_2D_ARRAY) returns instance that was bound. 25 [ 22: FAIL ] getParameter(TEXTURE_BINDING_2D_ARRAY): Expect basic expando to survive despite GC. 26 [ 23: FAIL ] getParameter(TEXTURE_BINDING_2D_ARRAY): Expect subobject expando to survive despite GC. 27 [ 24: PASS ] getParameter(TEXTURE_BINDING_2D_ARRAY): Expect extra expando to survive despite GC. 28 [ 25: PASS ] [object WebGLTexture] is an instance of WebGLTexture 29 [ 26: PASS ] getParameter(READ_FRAMEBUFFER_BINDING) returns instance that was bound. 30 [ 27: FAIL ] getParameter(READ_FRAMEBUFFER_BINDING): Expect basic expando to survive despite GC. 31 [ 28: FAIL ] getParameter(READ_FRAMEBUFFER_BINDING): Expect subobject expando to survive despite GC. 32 [ 29: PASS ] getParameter(READ_FRAMEBUFFER_BINDING): Expect extra expando to survive despite GC. 33 [ 30: PASS ] [object WebGLFramebuffer] is an instance of WebGLFramebuffer 34 [ 31: PASS ] getParameter(DRAW_FRAMEBUFFER_BINDING) returns instance that was bound. 35 [ 32: FAIL ] getParameter(DRAW_FRAMEBUFFER_BINDING): Expect basic expando to survive despite GC. 36 [ 33: FAIL ] getParameter(DRAW_FRAMEBUFFER_BINDING): Expect subobject expando to survive despite GC. 37 [ 34: PASS ] getParameter(DRAW_FRAMEBUFFER_BINDING): Expect extra expando to survive despite GC. 38 [ 35: PASS ] [object WebGLFramebuffer] is an instance of WebGLFramebuffer 39 [ 36: PASS ] getParameter(COPY_READ_BUFFER_BINDING) returns instance that was bound. 40 [ 37: FAIL ] getParameter(COPY_READ_BUFFER_BINDING): Expect basic expando to survive despite GC. 41 [ 38: FAIL ] getParameter(COPY_READ_BUFFER_BINDING): Expect subobject expando to survive despite GC. 42 [ 39: PASS ] getParameter(COPY_READ_BUFFER_BINDING): Expect extra expando to survive despite GC. 43 [ 40: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 44 [ 41: PASS ] getParameter(COPY_WRITE_BUFFER_BINDING) returns instance that was bound. 45 [ 42: FAIL ] getParameter(COPY_WRITE_BUFFER_BINDING): Expect basic expando to survive despite GC. 46 [ 43: FAIL ] getParameter(COPY_WRITE_BUFFER_BINDING): Expect subobject expando to survive despite GC. 47 [ 44: PASS ] getParameter(COPY_WRITE_BUFFER_BINDING): Expect extra expando to survive despite GC. 48 [ 45: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 49 [ 46: PASS ] getParameter(PIXEL_PACK_BUFFER_BINDING) returns instance that was bound. 50 [ 47: FAIL ] getParameter(PIXEL_PACK_BUFFER_BINDING): Expect basic expando to survive despite GC. 51 [ 48: FAIL ] getParameter(PIXEL_PACK_BUFFER_BINDING): Expect subobject expando to survive despite GC. 52 [ 49: PASS ] getParameter(PIXEL_PACK_BUFFER_BINDING): Expect extra expando to survive despite GC. 53 [ 50: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 54 [ 51: PASS ] getParameter(PIXEL_UNPACK_BUFFER_BINDING) returns instance that was bound. 55 [ 52: FAIL ] getParameter(PIXEL_UNPACK_BUFFER_BINDING): Expect basic expando to survive despite GC. 56 [ 53: FAIL ] getParameter(PIXEL_UNPACK_BUFFER_BINDING): Expect subobject expando to survive despite GC. 57 [ 54: PASS ] getParameter(PIXEL_UNPACK_BUFFER_BINDING): Expect extra expando to survive despite GC. 58 [ 55: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 59 [ 56: PASS ] getParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING) returns instance that was bound. 60 [ 57: FAIL ] getParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING): Expect basic expando to survive despite GC. 61 [ 58: FAIL ] getParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING): Expect subobject expando to survive despite GC. 62 [ 59: PASS ] getParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING): Expect extra expando to survive despite GC. 63 [ 60: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 64 [ 61: PASS ] getParameter(UNIFORM_BUFFER_BINDING) returns instance that was bound. 65 [ 62: FAIL ] getParameter(UNIFORM_BUFFER_BINDING): Expect basic expando to survive despite GC. 66 [ 63: FAIL ] getParameter(UNIFORM_BUFFER_BINDING): Expect subobject expando to survive despite GC. 67 [ 64: PASS ] getParameter(UNIFORM_BUFFER_BINDING): Expect extra expando to survive despite GC. 68 [ 65: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 69 [ 66: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 0) returns instance that was bound. 70 [ 67: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 1) returns instance that was bound. 71 [ 68: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 2) returns instance that was bound. 72 [ 69: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 3) returns instance that was bound. 73 [ 70: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 0): Expect basic expando to survive despite GC. 74 [ 71: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 0): Expect subobject expando to survive despite GC. 75 [ 72: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 0): Expect extra expando to survive despite GC. 76 [ 73: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 77 [ 74: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 1): Expect basic expando to survive despite GC. 78 [ 75: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 1): Expect subobject expando to survive despite GC. 79 [ 76: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 1): Expect extra expando to survive despite GC. 80 [ 77: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 81 [ 78: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 2): Expect basic expando to survive despite GC. 82 [ 79: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 2): Expect subobject expando to survive despite GC. 83 [ 80: FAIL ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 2): Expect extra expando to survive despite GC. 84 [ 81: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 85 [ 82: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 3): Expect basic expando to survive despite GC. 86 [ 83: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 3): Expect subobject expando to survive despite GC. 87 [ 84: PASS ] getIndexedParameter(TRANSFORM_FEEDBACK_BUFFER_BINDING, 3): Expect extra expando to survive despite GC. 88 [ 85: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 89 [ 86: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 0) returns instance that was bound. 90 [ 87: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 1) returns instance that was bound. 91 [ 88: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 2) returns instance that was bound. 92 [ 89: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 3) returns instance that was bound. 93 [ 90: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 4) returns instance that was bound. 94 [ 91: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 5) returns instance that was bound. 95 [ 92: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 6) returns instance that was bound. 96 [ 93: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 7) returns instance that was bound. 97 [ 94: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 8) returns instance that was bound. 98 [ 95: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 9) returns instance that was bound. 99 [ 96: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 10) returns instance that was bound. 100 [ 97: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 11) returns instance that was bound. 101 [ 98: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 12) returns instance that was bound. 102 [ 99: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 13) returns instance that was bound. 103 [ 100: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 14) returns instance that was bound. 104 [ 101: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 15) returns instance that was bound. 105 [ 102: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 16) returns instance that was bound. 106 [ 103: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 17) returns instance that was bound. 107 [ 104: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 18) returns instance that was bound. 108 [ 105: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 19) returns instance that was bound. 109 [ 106: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 20) returns instance that was bound. 110 [ 107: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 21) returns instance that was bound. 111 [ 108: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 22) returns instance that was bound. 112 [ 109: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 23) returns instance that was bound. 113 [ 110: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 24) returns instance that was bound. 114 [ 111: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 25) returns instance that was bound. 115 [ 112: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 26) returns instance that was bound. 116 [ 113: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 27) returns instance that was bound. 117 [ 114: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 28) returns instance that was bound. 118 [ 115: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 29) returns instance that was bound. 119 [ 116: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 30) returns instance that was bound. 120 [ 117: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 31) returns instance that was bound. 121 [ 118: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 32) returns instance that was bound. 122 [ 119: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 33) returns instance that was bound. 123 [ 120: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 34) returns instance that was bound. 124 [ 121: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 35) returns instance that was bound. 125 [ 122: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 36) returns instance that was bound. 126 [ 123: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 37) returns instance that was bound. 127 [ 124: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 38) returns instance that was bound. 128 [ 125: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 39) returns instance that was bound. 129 [ 126: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 40) returns instance that was bound. 130 [ 127: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 41) returns instance that was bound. 131 [ 128: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 42) returns instance that was bound. 132 [ 129: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 43) returns instance that was bound. 133 [ 130: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 44) returns instance that was bound. 134 [ 131: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 45) returns instance that was bound. 135 [ 132: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 46) returns instance that was bound. 136 [ 133: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 47) returns instance that was bound. 137 [ 134: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 0): Expect basic expando to survive despite GC. 138 [ 135: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 0): Expect subobject expando to survive despite GC. 139 [ 136: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 0): Expect extra expando to survive despite GC. 140 [ 137: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 141 [ 138: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 1): Expect basic expando to survive despite GC. 142 [ 139: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 1): Expect subobject expando to survive despite GC. 143 [ 140: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 1): Expect extra expando to survive despite GC. 144 [ 141: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 145 [ 142: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 2): Expect basic expando to survive despite GC. 146 [ 143: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 2): Expect subobject expando to survive despite GC. 147 [ 144: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 2): Expect extra expando to survive despite GC. 148 [ 145: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 149 [ 146: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 3): Expect basic expando to survive despite GC. 150 [ 147: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 3): Expect subobject expando to survive despite GC. 151 [ 148: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 3): Expect extra expando to survive despite GC. 152 [ 149: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 153 [ 150: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 4): Expect basic expando to survive despite GC. 154 [ 151: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 4): Expect subobject expando to survive despite GC. 155 [ 152: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 4): Expect extra expando to survive despite GC. 156 [ 153: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 157 [ 154: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 5): Expect basic expando to survive despite GC. 158 [ 155: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 5): Expect subobject expando to survive despite GC. 159 [ 156: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 5): Expect extra expando to survive despite GC. 160 [ 157: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 161 [ 158: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 6): Expect basic expando to survive despite GC. 162 [ 159: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 6): Expect subobject expando to survive despite GC. 163 [ 160: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 6): Expect extra expando to survive despite GC. 164 [ 161: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 165 [ 162: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 7): Expect basic expando to survive despite GC. 166 [ 163: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 7): Expect subobject expando to survive despite GC. 167 [ 164: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 7): Expect extra expando to survive despite GC. 168 [ 165: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 169 [ 166: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 8): Expect basic expando to survive despite GC. 170 [ 167: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 8): Expect subobject expando to survive despite GC. 171 [ 168: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 8): Expect extra expando to survive despite GC. 172 [ 169: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 173 [ 170: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 9): Expect basic expando to survive despite GC. 174 [ 171: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 9): Expect subobject expando to survive despite GC. 175 [ 172: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 9): Expect extra expando to survive despite GC. 176 [ 173: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 177 [ 174: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 10): Expect basic expando to survive despite GC. 178 [ 175: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 10): Expect subobject expando to survive despite GC. 179 [ 176: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 10): Expect extra expando to survive despite GC. 180 [ 177: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 181 [ 178: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 11): Expect basic expando to survive despite GC. 182 [ 179: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 11): Expect subobject expando to survive despite GC. 183 [ 180: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 11): Expect extra expando to survive despite GC. 184 [ 181: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 185 [ 182: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 12): Expect basic expando to survive despite GC. 186 [ 183: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 12): Expect subobject expando to survive despite GC. 187 [ 184: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 12): Expect extra expando to survive despite GC. 188 [ 185: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 189 [ 186: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 13): Expect basic expando to survive despite GC. 190 [ 187: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 13): Expect subobject expando to survive despite GC. 191 [ 188: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 13): Expect extra expando to survive despite GC. 192 [ 189: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 193 [ 190: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 14): Expect basic expando to survive despite GC. 194 [ 191: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 14): Expect subobject expando to survive despite GC. 195 [ 192: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 14): Expect extra expando to survive despite GC. 196 [ 193: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 197 [ 194: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 15): Expect basic expando to survive despite GC. 198 [ 195: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 15): Expect subobject expando to survive despite GC. 199 [ 196: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 15): Expect extra expando to survive despite GC. 200 [ 197: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 201 [ 198: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 16): Expect basic expando to survive despite GC. 202 [ 199: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 16): Expect subobject expando to survive despite GC. 203 [ 200: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 16): Expect extra expando to survive despite GC. 204 [ 201: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 205 [ 202: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 17): Expect basic expando to survive despite GC. 206 [ 203: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 17): Expect subobject expando to survive despite GC. 207 [ 204: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 17): Expect extra expando to survive despite GC. 208 [ 205: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 209 [ 206: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 18): Expect basic expando to survive despite GC. 210 [ 207: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 18): Expect subobject expando to survive despite GC. 211 [ 208: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 18): Expect extra expando to survive despite GC. 212 [ 209: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 213 [ 210: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 19): Expect basic expando to survive despite GC. 214 [ 211: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 19): Expect subobject expando to survive despite GC. 215 [ 212: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 19): Expect extra expando to survive despite GC. 216 [ 213: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 217 [ 214: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 20): Expect basic expando to survive despite GC. 218 [ 215: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 20): Expect subobject expando to survive despite GC. 219 [ 216: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 20): Expect extra expando to survive despite GC. 220 [ 217: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 221 [ 218: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 21): Expect basic expando to survive despite GC. 222 [ 219: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 21): Expect subobject expando to survive despite GC. 223 [ 220: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 21): Expect extra expando to survive despite GC. 224 [ 221: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 225 [ 222: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 22): Expect basic expando to survive despite GC. 226 [ 223: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 22): Expect subobject expando to survive despite GC. 227 [ 224: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 22): Expect extra expando to survive despite GC. 228 [ 225: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 229 [ 226: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 23): Expect basic expando to survive despite GC. 230 [ 227: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 23): Expect subobject expando to survive despite GC. 231 [ 228: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 23): Expect extra expando to survive despite GC. 232 [ 229: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 233 [ 230: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 24): Expect basic expando to survive despite GC. 234 [ 231: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 24): Expect subobject expando to survive despite GC. 235 [ 232: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 24): Expect extra expando to survive despite GC. 236 [ 233: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 237 [ 234: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 25): Expect basic expando to survive despite GC. 238 [ 235: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 25): Expect subobject expando to survive despite GC. 239 [ 236: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 25): Expect extra expando to survive despite GC. 240 [ 237: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 241 [ 238: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 26): Expect basic expando to survive despite GC. 242 [ 239: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 26): Expect subobject expando to survive despite GC. 243 [ 240: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 26): Expect extra expando to survive despite GC. 244 [ 241: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 245 [ 242: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 27): Expect basic expando to survive despite GC. 246 [ 243: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 27): Expect subobject expando to survive despite GC. 247 [ 244: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 27): Expect extra expando to survive despite GC. 248 [ 245: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 249 [ 246: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 28): Expect basic expando to survive despite GC. 250 [ 247: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 28): Expect subobject expando to survive despite GC. 251 [ 248: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 28): Expect extra expando to survive despite GC. 252 [ 249: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 253 [ 250: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 29): Expect basic expando to survive despite GC. 254 [ 251: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 29): Expect subobject expando to survive despite GC. 255 [ 252: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 29): Expect extra expando to survive despite GC. 256 [ 253: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 257 [ 254: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 30): Expect basic expando to survive despite GC. 258 [ 255: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 30): Expect subobject expando to survive despite GC. 259 [ 256: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 30): Expect extra expando to survive despite GC. 260 [ 257: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 261 [ 258: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 31): Expect basic expando to survive despite GC. 262 [ 259: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 31): Expect subobject expando to survive despite GC. 263 [ 260: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 31): Expect extra expando to survive despite GC. 264 [ 261: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 265 [ 262: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 32): Expect basic expando to survive despite GC. 266 [ 263: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 32): Expect subobject expando to survive despite GC. 267 [ 264: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 32): Expect extra expando to survive despite GC. 268 [ 265: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 269 [ 266: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 33): Expect basic expando to survive despite GC. 270 [ 267: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 33): Expect subobject expando to survive despite GC. 271 [ 268: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 33): Expect extra expando to survive despite GC. 272 [ 269: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 273 [ 270: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 34): Expect basic expando to survive despite GC. 274 [ 271: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 34): Expect subobject expando to survive despite GC. 275 [ 272: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 34): Expect extra expando to survive despite GC. 276 [ 273: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 277 [ 274: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 35): Expect basic expando to survive despite GC. 278 [ 275: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 35): Expect subobject expando to survive despite GC. 279 [ 276: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 35): Expect extra expando to survive despite GC. 280 [ 277: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 281 [ 278: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 36): Expect basic expando to survive despite GC. 282 [ 279: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 36): Expect subobject expando to survive despite GC. 283 [ 280: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 36): Expect extra expando to survive despite GC. 284 [ 281: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 285 [ 282: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 37): Expect basic expando to survive despite GC. 286 [ 283: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 37): Expect subobject expando to survive despite GC. 287 [ 284: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 37): Expect extra expando to survive despite GC. 288 [ 285: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 289 [ 286: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 38): Expect basic expando to survive despite GC. 290 [ 287: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 38): Expect subobject expando to survive despite GC. 291 [ 288: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 38): Expect extra expando to survive despite GC. 292 [ 289: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 293 [ 290: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 39): Expect basic expando to survive despite GC. 294 [ 291: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 39): Expect subobject expando to survive despite GC. 295 [ 292: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 39): Expect extra expando to survive despite GC. 296 [ 293: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 297 [ 294: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 40): Expect basic expando to survive despite GC. 298 [ 295: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 40): Expect subobject expando to survive despite GC. 299 [ 296: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 40): Expect extra expando to survive despite GC. 300 [ 297: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 301 [ 298: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 41): Expect basic expando to survive despite GC. 302 [ 299: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 41): Expect subobject expando to survive despite GC. 303 [ 300: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 41): Expect extra expando to survive despite GC. 304 [ 301: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 305 [ 302: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 42): Expect basic expando to survive despite GC. 306 [ 303: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 42): Expect subobject expando to survive despite GC. 307 [ 304: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 42): Expect extra expando to survive despite GC. 308 [ 305: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 309 [ 306: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 43): Expect basic expando to survive despite GC. 310 [ 307: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 43): Expect subobject expando to survive despite GC. 311 [ 308: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 43): Expect extra expando to survive despite GC. 312 [ 309: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 313 [ 310: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 44): Expect basic expando to survive despite GC. 314 [ 311: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 44): Expect subobject expando to survive despite GC. 315 [ 312: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 44): Expect extra expando to survive despite GC. 316 [ 313: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 317 [ 314: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 45): Expect basic expando to survive despite GC. 318 [ 315: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 45): Expect subobject expando to survive despite GC. 319 [ 316: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 45): Expect extra expando to survive despite GC. 320 [ 317: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 321 [ 318: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 46): Expect basic expando to survive despite GC. 322 [ 319: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 46): Expect subobject expando to survive despite GC. 323 [ 320: FAIL ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 46): Expect extra expando to survive despite GC. 324 [ 321: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 325 [ 322: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 47): Expect basic expando to survive despite GC. 326 [ 323: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 47): Expect subobject expando to survive despite GC. 327 [ 324: PASS ] getIndexedParameter(UNIFORM_BUFFER_BINDING, 47): Expect extra expando to survive despite GC. 328 [ 325: PASS ] [object WebGLBuffer] is an instance of WebGLBuffer 329 [ 326: PASS ] CURRENT_QUERY returns instance that was bound. 330 [ 327: PASS ] CURRENT_QUERY returns instance that was bound. 331 [ 328: FAIL ] Query: Expect basic expando to survive despite GC. 332 [ 329: FAIL ] Query: Expect subobject expando to survive despite GC. 333 [ 330: PASS ] Query: Expect extra expando to survive despite GC. 334 [ 331: PASS ] [object WebGLQuery] is an instance of WebGLQuery 335 [ 332: FAIL ] Query: Expect basic expando to survive despite GC. 336 [ 333: FAIL ] Query: Expect subobject expando to survive despite GC. 337 [ 334: PASS ] Query: Expect extra expando to survive despite GC. 338 [ 335: PASS ] [object WebGLQuery] is an instance of WebGLQuery 339 [ 336: PASS ] successfullyParsed is true 340 [ FAIL ] 180 failures reported 5 341 -
trunk/LayoutTests/webgl/2.0.0/resources/webgl_test_files/js/js-test-pre.js
r265502 r265523 709 709 } 710 710 711 // WebKit's MiniBrowser712 if (window.$vm) {713 window.$vm.gc();714 return;715 }716 717 711 function gcRec(n) { 718 712 if (n < 1) -
trunk/Source/WebCore/ChangeLog
r265518 r265523 1 2020-08-11 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, reverting r265502. 4 https://bugs.webkit.org/show_bug.cgi?id=215396 5 6 Needs locking to avoid flaky GC-related crashes 7 8 Reverted changeset: 9 10 "[WebGL2] expando-loss and expando-loss-2 conformance tests 11 are failing" 12 https://bugs.webkit.org/show_bug.cgi?id=214765 13 https://trac.webkit.org/changeset/265502 14 1 15 2020-08-11 Jon Davis <jond@apple.com> 2 16 -
trunk/Source/WebCore/bindings/js/JSWebGL2RenderingContextCustom.cpp
r265502 r265523 37 37 { 38 38 visitor.addOpaqueRoot(&wrapped()); 39 wrapped().visitReferencedJSWrappers(visitor);40 39 } 41 40 -
trunk/Source/WebCore/bindings/js/JSWebGLRenderingContextCustom.cpp
r265502 r265523 37 37 { 38 38 visitor.addOpaqueRoot(&wrapped()); 39 wrapped().visitReferencedJSWrappers(visitor);40 39 } 41 40 -
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp
r265502 r265523 67 67 #include <JavaScriptCore/HeapInlines.h> 68 68 #include <JavaScriptCore/JSGenericTypedArrayViewInlines.h> 69 #include <JavaScriptCore/SlotVisitor.h>70 #include <JavaScriptCore/SlotVisitorInlines.h>71 69 #include <JavaScriptCore/TypedArrayType.h> 72 70 #include <wtf/IsoMallocInlines.h> … … 3011 3009 } 3012 3010 return true; 3013 }3014 3015 void WebGL2RenderingContext::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)3016 {3017 WebGLRenderingContextBase::visitReferencedJSWrappers(visitor);3018 3019 visitor.addOpaqueRoot(m_readFramebufferBinding.get());3020 if (m_readFramebufferBinding)3021 m_readFramebufferBinding->visitReferencedJSWrappers(visitor);3022 3023 visitor.addOpaqueRoot(m_boundTransformFeedback.get());3024 if (m_boundTransformFeedback)3025 m_boundTransformFeedback->visitReferencedJSWrappers(visitor);3026 3027 visitor.addOpaqueRoot(m_boundCopyReadBuffer.get());3028 visitor.addOpaqueRoot(m_boundCopyWriteBuffer.get());3029 visitor.addOpaqueRoot(m_boundPixelPackBuffer.get());3030 visitor.addOpaqueRoot(m_boundPixelUnpackBuffer.get());3031 visitor.addOpaqueRoot(m_boundTransformFeedbackBuffer.get());3032 visitor.addOpaqueRoot(m_boundUniformBuffer.get());3033 3034 for (auto& buffer : m_boundIndexedUniformBuffers)3035 visitor.addOpaqueRoot(buffer.get());3036 3037 for (auto& entry : m_activeQueries)3038 visitor.addOpaqueRoot(entry.value.get());3039 3040 for (auto& entry : m_boundSamplers)3041 visitor.addOpaqueRoot(entry.get());3042 3011 } 3043 3012 -
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.h
r265502 r265523 262 262 bool checkAndTranslateAttachments(const char* functionName, GCGLenum, Vector<GCGLenum>&); 263 263 264 void visitReferencedJSWrappers(JSC::SlotVisitor&) override;265 266 264 private: 267 265 WebGL2RenderingContext(CanvasBase&, GraphicsContextGLAttributes); -
trunk/Source/WebCore/html/canvas/WebGLBuffer.idl
r265502 r265523 26 26 [ 27 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl29 28 ] interface WebGLBuffer { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLFramebuffer.cpp
r265502 r265523 33 33 #include "WebGLDrawBuffers.h" 34 34 #include "WebGLRenderingContextBase.h" 35 #include <JavaScriptCore/SlotVisitor.h>36 #include <JavaScriptCore/SlotVisitorInlines.h>37 35 38 36 namespace WebCore { … … 59 57 void attach(GraphicsContextGLOpenGL*, GCGLenum target, GCGLenum attachment) override; 60 58 void unattach(GraphicsContextGLOpenGL*, GCGLenum target, GCGLenum attachment) override; 61 void visitReferencedJSWrappers(JSC::SlotVisitor&) override;62 59 63 60 WebGLRenderbufferAttachment() { }; … … 139 136 #endif 140 137 context->framebufferRenderbuffer(target, attachment, GraphicsContextGL::RENDERBUFFER, 0); 141 }142 143 void WebGLRenderbufferAttachment::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)144 {145 visitor.addOpaqueRoot(m_renderbuffer.get());146 138 } 147 139 … … 165 157 void attach(GraphicsContextGLOpenGL*, GCGLenum target, GCGLenum attachment) override; 166 158 void unattach(GraphicsContextGLOpenGL*, GCGLenum target, GCGLenum attachment) override; 167 void visitReferencedJSWrappers(JSC::SlotVisitor&) override;168 159 169 160 WebGLTextureAttachment() { }; … … 261 252 context->framebufferTexture2D(GraphicsContextGL::FRAMEBUFFER, attachment, m_target, 0, m_level); 262 253 #endif 263 }264 265 void WebGLTextureAttachment::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)266 {267 visitor.addOpaqueRoot(m_texture.get());268 254 } 269 255 … … 704 690 } 705 691 706 void WebGLFramebuffer::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)707 {708 for (auto& entry : m_attachments)709 entry.value->visitReferencedJSWrappers(visitor);710 }711 712 692 void WebGLFramebuffer::setAttachmentInternal(GCGLenum attachment, GCGLenum texTarget, WebGLTexture* texture, GCGLint level, GCGLint layer) 713 693 { -
trunk/Source/WebCore/html/canvas/WebGLFramebuffer.h
r265502 r265523 34 34 #include <wtf/Vector.h> 35 35 36 namespace JSC {37 class SlotVisitor;38 }39 40 36 namespace WebCore { 41 37 … … 62 58 virtual void attach(GraphicsContextGLOpenGL*, GCGLenum target, GCGLenum attachment) = 0; 63 59 virtual void unattach(GraphicsContextGLOpenGL*, GCGLenum target, GCGLenum attachment) = 0; 64 virtual void visitReferencedJSWrappers(JSC::SlotVisitor&) = 0;65 60 66 61 protected: … … 111 106 GCGLenum getDrawBuffer(GCGLenum); 112 107 113 void visitReferencedJSWrappers(JSC::SlotVisitor&);114 115 108 private: 116 109 WebGLFramebuffer(WebGLRenderingContextBase&); -
trunk/Source/WebCore/html/canvas/WebGLFramebuffer.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLFramebuffer { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLProgram.cpp
r265502 r265523 34 34 #include "WebGLRenderingContextBase.h" 35 35 #include "WebGLShader.h" 36 #include <JavaScriptCore/SlotVisitor.h>37 #include <JavaScriptCore/SlotVisitorInlines.h>38 36 #include <wtf/Lock.h> 39 37 #include <wtf/NeverDestroyed.h> … … 197 195 return false; 198 196 } 199 }200 201 void WebGLProgram::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)202 {203 visitor.addOpaqueRoot(m_vertexShader.get());204 visitor.addOpaqueRoot(m_fragmentShader.get());205 197 } 206 198 -
trunk/Source/WebCore/html/canvas/WebGLProgram.h
r265502 r265523 34 34 #include <wtf/Lock.h> 35 35 #include <wtf/Vector.h> 36 37 namespace JSC {38 class SlotVisitor;39 }40 36 41 37 namespace WebCore { … … 85 81 } 86 82 87 void visitReferencedJSWrappers(JSC::SlotVisitor&);88 89 83 private: 90 84 WebGLProgram(WebGLRenderingContextBase&); -
trunk/Source/WebCore/html/canvas/WebGLProgram.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLProgram { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLQuery.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLQuery { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLRenderbuffer.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLRenderbuffer { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
r265502 r265523 103 103 #include <JavaScriptCore/ScriptCallStack.h> 104 104 #include <JavaScriptCore/ScriptCallStackFactory.h> 105 #include <JavaScriptCore/SlotVisitor.h>106 #include <JavaScriptCore/SlotVisitorInlines.h>107 105 #include <JavaScriptCore/TypedArrayInlines.h> 108 106 #include <JavaScriptCore/Uint32Array.h> … … 7767 7765 } 7768 7766 7769 void WebGLRenderingContextBase::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)7770 {7771 visitor.addOpaqueRoot(m_boundArrayBuffer.get());7772 7773 visitor.addOpaqueRoot(m_boundVertexArrayObject.get());7774 if (m_boundVertexArrayObject)7775 m_boundVertexArrayObject->visitReferencedJSWrappers(visitor);7776 7777 visitor.addOpaqueRoot(m_currentProgram.get());7778 if (m_currentProgram)7779 m_currentProgram->visitReferencedJSWrappers(visitor);7780 7781 visitor.addOpaqueRoot(m_framebufferBinding.get());7782 if (m_framebufferBinding)7783 m_framebufferBinding->visitReferencedJSWrappers(visitor);7784 7785 visitor.addOpaqueRoot(m_renderbufferBinding.get());7786 7787 for (auto& unit : m_textureUnits) {7788 visitor.addOpaqueRoot(unit.texture2DBinding.get());7789 visitor.addOpaqueRoot(unit.textureCubeMapBinding.get());7790 visitor.addOpaqueRoot(unit.texture3DBinding.get());7791 visitor.addOpaqueRoot(unit.texture2DArrayBinding.get());7792 }7793 7794 // Extensions' IDL files use GenerateIsReachable=ImplWebGLRenderingContext,7795 // which checks to see whether the context is in the opaque root set (it is;7796 // it's added in JSWebGLRenderingContext / JSWebGL2RenderingContext's custom7797 // bindings code). For this reason it's unnecessary to explicitly add opaque7798 // roots for extensions.7799 }7800 7801 7767 void WebGLRenderingContextBase::prepareForDisplay() 7802 7768 { -
trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h
r265502 r265523 57 57 #endif 58 58 59 namespace JSC {60 class SlotVisitor;61 }62 63 59 namespace WebCore { 64 60 … … 402 398 void recycleContext() override; 403 399 void dispatchContextChangedNotification() override; 404 405 virtual void visitReferencedJSWrappers(JSC::SlotVisitor&);406 400 407 401 protected: -
trunk/Source/WebCore/html/canvas/WebGLSampler.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLSampler { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLShader.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLShader { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLTexture.idl
r265502 r265523 25 25 26 26 [ 27 Conditional=WEBGL, 28 GenerateIsReachable=Impl 27 Conditional=WEBGL 29 28 ] interface WebGLTexture { 30 29 }; -
trunk/Source/WebCore/html/canvas/WebGLTransformFeedback.cpp
r265502 r265523 31 31 #include "WebGLContextGroup.h" 32 32 #include "WebGLRenderingContextBase.h" 33 #include <JavaScriptCore/SlotVisitor.h>34 #include <JavaScriptCore/SlotVisitorInlines.h>35 33 36 34 namespace WebCore { … … 89 87 } 90 88 91 void WebGLTransformFeedback::visitReferencedJSWrappers(JSC::SlotVisitor& visitor)92 {93 for (auto& buffer : m_boundIndexedTransformFeedbackBuffers)94 visitor.addOpaqueRoot(buffer.get());95 96 visitor.addOpaqueRoot(m_program.get());97 }98 99 89 void WebGLTransformFeedback::unbindBuffer(WebGLBuffer& buffer) 100 90 { -
trunk/Source/WebCore/html/canvas/WebGLTransformFeedback.h
r265502 r265523 31 31 #include "WebGLSharedObject.h" 32 32 33 namespace JSC {34 class SlotVisitor;35 }36 37 33 namespace WebCore { 38 34 … … 66 62 67 63 bool hasEnoughBuffers(GCGLuint numRequired) const; 68 69 void visitReferencedJSWrappers(JSC::SlotVisitor&);70 71 64 private: 72 65 WebGLTransformFeedback(WebGL2RenderingContext&); -
trunk/Source/WebCore/html/canvas/WebGLTransformFeedback.idl
r265502 r265523 26 26 [ 27 27 Conditional=WEBGL2, 28 EnabledAtRuntime=WebGL2, 29 GenerateIsReachable=Impl 28 EnabledAtRuntime=WebGL2 30 29 ] interface WebGLTransformFeedback { 31 30 }; -
trunk/Source/WebCore/html/canvas/WebGLVertexArrayObject.idl
r265502 r265523 26 26 [ 27 27 Conditional=WEBGL2, 28 EnabledAtRuntime=WebGL2, 29 GenerateIsReachable=Impl 28 EnabledAtRuntime=WebGL2 30 29 ] interface WebGLVertexArrayObject { 31 30 }; -
trunk/Source/WebCore/html/canvas/WebGLVertexArrayObjectBase.cpp
r265502 r265523 30 30 31 31 #include "WebGLRenderingContextBase.h" 32 #include <JavaScriptCore/SlotVisitor.h>33 #include <JavaScriptCore/SlotVisitorInlines.h>34 32 35 33 namespace WebCore { … … 107 105 m_vertexAttribState[index].divisor = divisor; 108 106 } 109 110 void WebGLVertexArrayObjectBase::visitReferencedJSWrappers(JSC::SlotVisitor& visitor) 111 { 112 visitor.addOpaqueRoot(m_boundElementArrayBuffer.get()); 113 for (auto& state : m_vertexAttribState) 114 visitor.addOpaqueRoot(state.bufferBinding.get()); 115 } 116 107 117 108 } 118 109 -
trunk/Source/WebCore/html/canvas/WebGLVertexArrayObjectBase.h
r265502 r265523 31 31 #include "WebGLBuffer.h" 32 32 #include "WebGLContextObject.h" 33 34 namespace JSC {35 class SlotVisitor;36 }37 33 38 34 namespace WebCore { … … 73 69 void setVertexAttribDivisor(GCGLuint index, GCGLuint divisor); 74 70 75 void visitReferencedJSWrappers(JSC::SlotVisitor&);76 77 71 protected: 78 72 WebGLVertexArrayObjectBase(WebGLRenderingContextBase&, Type); -
trunk/Source/WebCore/html/canvas/WebGLVertexArrayObjectOES.idl
r265502 r265523 26 26 [ 27 27 NoInterfaceObject, 28 Conditional=WEBGL, 29 GenerateIsReachable=Impl 28 Conditional=WEBGL 30 29 ] interface WebGLVertexArrayObjectOES { 31 30 };
Note: See TracChangeset
for help on using the changeset viewer.