RESOLVED FIXED Bug 223358
webgl/2.0.1/conformance2/transform_feedback/simultaneous_binding.html fails
https://bugs.webkit.org/show_bug.cgi?id=223358
Summary webgl/2.0.1/conformance2/transform_feedback/simultaneous_binding.html fails
Kimmo Kinnunen
Reported 2021-03-17 00:46:55 PDT
webgl/2.0.1/conformance2/transform_feedback/simultaneous_binding.html fails
Attachments
Kimmo Kinnunen
Comment 1 2021-03-17 00:55:52 PDT
https://www.khronos.org/registry/webgl/sdk/tests/conformance2/transform_feedback/simultaneous_binding.html?webglVersion=2&quiet=0&quick=1 This test verifies that access to a buffer simultaneously bound to a transform feedback object and a non-transform-feedback binding point is forbidden. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". PASS WebGL context exists PASS getError was expected value: NO_ERROR : linking transform feedback shader should not set an error With draw functions ()=>gl.drawArrays(gl.POINTS, 0, 4) and ()=>gl.drawElements(gl.POINTS, 4, gl.UNSIGNED_SHORT, 0) Test baseline PASS getError was expected value: NO_ERROR : bufferData to TRANSFORM_FEEDBACK_BUFFER PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test generic bind point set to null PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test generic bind point set to vertex buffer PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test ARRAY_BUFFER PASS getError was expected value: INVALID_OPERATION : drawArrays: buffer used as vertex attrib and tf simultaneously PASS getError was expected value: INVALID_OPERATION : drawElements: buffer used as vertex attrib and tf simultaneously PASS getError was expected value: INVALID_OPERATION : buffer used as vertex attrib and tf simultaneously PASS should be the same as before as nothing has executed Test UNIFORM_BUFFER PASS getError was expected value: INVALID_OPERATION : drawArrays: buffer used as uniform buffer and tf simultaneously PASS getError was expected value: INVALID_OPERATION : drawElements: buffer used as uniform buffer and tf simultaneously PASS getError was expected value: INVALID_OPERATION : buffer used as uniform buffer and tf simultaneously PASS getError was expected value: NO_ERROR : drawArrays: tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : drawElements: tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : buffer is no longer bound for transform feedback Test TF buffer bound to target unused by draw PASS getError was expected value: INVALID_OPERATION : tf enabled PASS getError was expected value: NO_ERROR : drawArrays: tf disabled PASS getError was expected value: NO_ERROR : drawElements: tf disabled Test TF buffer bound to disabled vertex attrib PASS getError was expected value: NO_ERROR : tf disabled, draw should succeed PASS getError was expected value: NO_ERROR : tf disabled, draw should succeed With draw functions ()=>gl.drawArraysInstanced(gl.POINTS, 0, 4, 1) and ()=>gl.drawElementsInstanced(gl.POINTS, 4, gl.UNSIGNED_SHORT, 0, 1) Test baseline PASS getError was expected value: NO_ERROR : bufferData to TRANSFORM_FEEDBACK_BUFFER PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test generic bind point set to null PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test generic bind point set to vertex buffer PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test ARRAY_BUFFER PASS getError was expected value: INVALID_OPERATION : drawArrays: buffer used as vertex attrib and tf simultaneously PASS getError was expected value: INVALID_OPERATION : drawElements: buffer used as vertex attrib and tf simultaneously PASS getError was expected value: INVALID_OPERATION : buffer used as vertex attrib and tf simultaneously PASS should be the same as before as nothing has executed Test UNIFORM_BUFFER PASS getError was expected value: INVALID_OPERATION : drawArrays: buffer used as uniform buffer and tf simultaneously PASS getError was expected value: INVALID_OPERATION : drawElements: buffer used as uniform buffer and tf simultaneously PASS getError was expected value: INVALID_OPERATION : buffer used as uniform buffer and tf simultaneously PASS getError was expected value: NO_ERROR : drawArrays: tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : drawElements: tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : buffer is no longer bound for transform feedback Test TF buffer bound to target unused by draw PASS getError was expected value: INVALID_OPERATION : tf enabled PASS getError was expected value: NO_ERROR : drawArrays: tf disabled PASS getError was expected value: NO_ERROR : drawElements: tf disabled Test TF buffer bound to disabled vertex attrib PASS getError was expected value: NO_ERROR : tf disabled, draw should succeed PASS getError was expected value: NO_ERROR : tf disabled, draw should succeed With draw functions ()=>gl.drawArrays(gl.POINTS, 0, 4) and ()=>gl.drawRangeElements(gl.POINTS, 0, 3, 4, gl.UNSIGNED_SHORT, 0) Test baseline PASS getError was expected value: NO_ERROR : bufferData to TRANSFORM_FEEDBACK_BUFFER PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test generic bind point set to null PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test generic bind point set to vertex buffer PASS getError was expected value: NO_ERROR : drawElements should be successful PASS getError was expected value: NO_ERROR : transform feedback should be successful PASS buffer should match expected values Test ARRAY_BUFFER PASS getError was expected value: INVALID_OPERATION : drawArrays: buffer used as vertex attrib and tf simultaneously PASS getError was expected value: INVALID_OPERATION : drawElements: buffer used as vertex attrib and tf simultaneously PASS getError was expected value: INVALID_OPERATION : buffer used as vertex attrib and tf simultaneously PASS should be the same as before as nothing has executed Test UNIFORM_BUFFER PASS getError was expected value: INVALID_OPERATION : drawArrays: buffer used as uniform buffer and tf simultaneously PASS getError was expected value: INVALID_OPERATION : drawElements: buffer used as uniform buffer and tf simultaneously PASS getError was expected value: INVALID_OPERATION : buffer used as uniform buffer and tf simultaneously PASS getError was expected value: NO_ERROR : drawArrays: tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : drawElements: tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : tf buffer not used as uniform buffer anymore PASS getError was expected value: NO_ERROR : buffer is no longer bound for transform feedback Test TF buffer bound to target unused by draw PASS getError was expected value: INVALID_OPERATION : tf enabled PASS getError was expected value: NO_ERROR : drawArrays: tf disabled PASS getError was expected value: NO_ERROR : drawElements: tf disabled Test TF buffer bound to disabled vertex attrib PASS getError was expected value: NO_ERROR : tf disabled, draw should succeed PASS getError was expected value: NO_ERROR : tf disabled, draw should succeed Non-drawing tests Test bufferData PASS getError was expected value: NO_ERROR : bufferData to TRANSFORM_FEEDBACK_BUFFER PASS getError was expected value: INVALID_OPERATION : bufferData with double bound buffer With TRANSFORM_FEEDBACK_BUFFER generic bind point value ()=>null Test PIXEL_UNPACK_BUFFER PASS getError was expected value: NO_ERROR : PIXEL_UNPACK_BUFFER is not bound for transform feedback PASS getError was expected value: INVALID_OPERATION : PIXEL_UNPACK_BUFFER is bound for transform feedback Test PIXEL_PACK_BUFFER PASS getError was expected value: NO_ERROR : PIXEL_PACK_BUFFER is not bound for transform feedback PASS getError was expected value: INVALID_OPERATION : PIXEL_PACK_BUFFER is bound for transform feedback Test bufferData family with tf object bound PASS getError was expected value: INVALID_OPERATION : bufferData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : bufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : getBufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : copyBufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : copyBufferSubData with double bound buffer Test bufferData family with tf object unbound PASS getError was expected value: NO_ERROR : bufferData should succeed PASS getError was expected value: NO_ERROR : bufferSubData should succeed PASS getError was expected value: NO_ERROR : getBufferSubData should succeed PASS getError was expected value: NO_ERROR : copyBufferSubData should succeed PASS getError was expected value: NO_ERROR : copyBufferSubData should succeed With TRANSFORM_FEEDBACK_BUFFER generic bind point value ()=>tfBuffer Test PIXEL_UNPACK_BUFFER PASS getError was expected value: NO_ERROR : PIXEL_UNPACK_BUFFER is not bound for transform feedback PASS getError was expected value: INVALID_OPERATION : PIXEL_UNPACK_BUFFER is bound for transform feedback Test PIXEL_PACK_BUFFER PASS getError was expected value: NO_ERROR : PIXEL_PACK_BUFFER is not bound for transform feedback PASS getError was expected value: INVALID_OPERATION : PIXEL_PACK_BUFFER is bound for transform feedback Test bufferData family with tf object bound PASS getError was expected value: INVALID_OPERATION : bufferData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : bufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : getBufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : copyBufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : copyBufferSubData with double bound buffer Test bufferData family with tf object unbound PASS getError was expected value: NO_ERROR : bufferData should succeed PASS getError was expected value: NO_ERROR : bufferSubData should succeed PASS getError was expected value: NO_ERROR : getBufferSubData should succeed PASS getError was expected value: NO_ERROR : copyBufferSubData should succeed PASS getError was expected value: NO_ERROR : copyBufferSubData should succeed With TRANSFORM_FEEDBACK_BUFFER generic bind point value ()=>vertexBuffer Test PIXEL_UNPACK_BUFFER PASS getError was expected value: NO_ERROR : PIXEL_UNPACK_BUFFER is not bound for transform feedback PASS getError was expected value: INVALID_OPERATION : PIXEL_UNPACK_BUFFER is bound for transform feedback Test PIXEL_PACK_BUFFER PASS getError was expected value: NO_ERROR : PIXEL_PACK_BUFFER is not bound for transform feedback PASS getError was expected value: INVALID_OPERATION : PIXEL_PACK_BUFFER is bound for transform feedback Test bufferData family with tf object bound PASS getError was expected value: INVALID_OPERATION : bufferData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : bufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : getBufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : copyBufferSubData with double bound buffer FAIL getError expected: INVALID_OPERATION. Was INVALID_VALUE : copyBufferSubData with double bound buffer Test bufferData family with tf object unbound PASS getError was expected value: NO_ERROR : bufferData should succeed PASS getError was expected value: NO_ERROR : bufferSubData should succeed PASS getError was expected value: NO_ERROR : getBufferSubData should succeed PASS getError was expected value: NO_ERROR : copyBufferSubData should succeed PASS getError was expected value: NO_ERROR : copyBufferSubData should succeed PASS successfullyParsed is true TEST COMPLETE
Kimmo Kinnunen
Comment 2 2021-03-17 01:45:38 PDT
At least macOS 11.3, iMacPro1,1, Radeon Pro Vega 56
Radar WebKit Bug Importer
Comment 3 2021-03-24 00:47:14 PDT
EWS
Comment 4 2022-08-08 08:04:39 PDT
Committed 253210@main (4c366686ccd2): <https://commits.webkit.org/253210@main> Reviewed commits have been landed. Closing PR #3087 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.