Bug 222239

Summary: Regressions from ANGLE Metal enablement
Product: WebKit Reporter: Dean Jackson <dino>
Component: WebGLAssignee: Dean Jackson <dino>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, dino, ews-watchlist, geofflang, graouts, jdarpinian, jonahr, jonlee, kbr, kkinnunen, kondapallykalyan, kpiddington, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 220076, 223260    
Attachments:
Description Flags
Patch
none
Patch none

Description Dean Jackson 2021-02-20 15:05:22 PST
Here is the list of new regressions from using the ANGLE Metal backend bug220076.

There are some new failures, some crashes and some timeouts.

  fast/canvas/webgl/context-creation-attributes.html [ Pass Failure ]
  fast/canvas/webgl/copyBufferSubData.html [ Pass Failure ]
  fast/canvas/webgl/getBufferSubData-webgl1.html [ Pass Failure ]
  fast/canvas/webgl/webgl2-buffers.html [ Pass Failure ]
  fast/canvas/webgl/webgl2-texture-upload-enums.html [ Pass Failure ]
  webgl/2.0.0/conformance/glsl/bugs/compound-assignment-type-combination.html [ Pass Failure ]
  webgl/2.0.0/conformance2/buffers/buffer-copying-contents.html [ Pass Failure ]
  webgl/2.0.0/conformance2/buffers/get-buffer-sub-data.html [ Pass Failure ]
  webgl/2.0.0/conformance2/buffers/one-large-uniform-buffer.html [ Pass Failure ]
  webgl/2.0.0/conformance2/buffers/uniform-buffers.html [ Pass Failure ]
  webgl/2.0.0/conformance2/extensions/promoted-extensions-in-shaders.html [ Pass Failure ]
  webgl/2.0.0/conformance2/glsl3/array-equality.html [ Pass Failure ]
  webgl/2.0.0/conformance2/glsl3/compound-assignment-type-combination.html [ Pass Failure ]
  webgl/2.0.0/conformance2/glsl3/texture-offset-uniform-texture-coordinate.html [ Pass Failure ]
  webgl/2.0.0/conformance2/glsl3/uniform-block-layout-match.html [ Pass Failure ]
  webgl/2.0.0/conformance2/reading/read-pixels-from-rgb8-into-pbo-bug.html [ Pass Failure ]
  webgl/2.0.0/conformance2/reading/read-pixels-pack-parameters.html [ Pass Failure ]
  webgl/2.0.0/conformance2/rendering/fs-color-type-mismatch-color-buffer-type.html [ Pass Failure ]
  webgl/2.0.0/conformance2/rendering/uniform-block-buffer-size.html [ Pass Failure ]
  webgl/2.0.0/conformance2/state/gl-enum-tests.html [ Pass Failure ]
  webgl/2.0.0/conformance2/transform_feedback/two-unreferenced-varyings.html [ Pass Failure ]
  webgl/2.0.0/conformance2/transform_feedback/unwritten-output-defaults-to-zero.html [ Pass Failure ]

  fast/canvas/webgl/index-validation-with-subsequent-draws.html [ Skip ]
  webgl/2.0.0/conformance/extensions/webgl-draw-buffers.html [ Skip ]
  webgl/2.0.0/conformance/glsl/bugs/qualcomm-loop-with-continue-Skip.html [ Skip ]
  webgl/2.0.0/conformance/glsl/misc/sequence-operator-returns-constant.html [ Skip ]
  webgl/2.0.0/conformance2/glsl3/array-element-increment.html [ Skip ]
  webgl/2.0.0/conformance2/glsl3/tricky-loop-conditions.html [ Skip ]
  webgl/2.0.0/conformance2/glsl3/vector-dynamic-indexing-nv-driver-bug.html [ Skip ]
  webgl/2.0.0/conformance2/rendering/blitframebuffer-stencil-only.html [ Skip ]
  webgl/2.0.0/conformance2/sync/sync-webgl-specific.html [ Skip ]
  webgl/2.0.0/conformance2/textures/misc/texel-fetch-undefined.html [ Skip ]
  webgl/2.0.0/conformance2/transform_feedback/transform_feedback.html [ Skip ]
Comment 1 Radar WebKit Bug Importer 2021-02-20 15:05:30 PST
<rdar://problem/74559652>
Comment 2 Dean Jackson 2021-02-20 15:31:16 PST
Updated list for Mac

webkit.org/b/222239 fast/canvas/webgl/context-creation-attributes.html [ Pass Failure ]
webkit.org/b/222239 fast/canvas/webgl/copyBufferSubData.html [ Pass Failure ]
webkit.org/b/222239 fast/canvas/webgl/getBufferSubData-webgl1.html [ Pass Failure ]
webkit.org/b/222239 fast/canvas/webgl/webgl2-buffers.html [ Pass Failure ]
webkit.org/b/222239 fast/canvas/webgl/webgl2-texture-upload-enums.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance/glsl/bugs/compound-assignment-type-combination.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/buffers/buffer-copying-contents.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/buffers/get-buffer-sub-data.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/buffers/one-large-uniform-buffer.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/buffers/uniform-buffers.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/extensions/promoted-extensions-in-shaders.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/array-equality.html [ Pass Failure ]
# Note: Even when fixed, this bug needs to be marked as Slow in debug builds.
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/compound-assignment-type-combination.html [ Pass Failure Slow ]
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/texture-offset-uniform-texture-coordinate.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/uniform-block-layout-match.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/reading/read-pixels-from-rgb8-into-pbo-bug.html [ Pass Failure ]
# Note: the following test is marked as failing on ARM64 earlier in the file. When fixing this, that bug may remain.
webkit.org/b/222239 webgl/2.0.0/conformance2/reading/read-pixels-pack-parameters.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/rendering/fs-color-type-mismatch-color-buffer-type.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/rendering/uniform-block-buffer-size.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/state/gl-enum-tests.html [ Pass Failure ]
# Note: Even when fixed, this bug needs to be marked as Slow in debug builds.
webkit.org/b/222239 webgl/2.0.0/conformance2/state/gl-object-get-calls.html [ Pass Failure Slow ]
webkit.org/b/222239 webgl/2.0.0/conformance2/transform_feedback/two-unreferenced-varyings.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/transform_feedback/unwritten-output-defaults-to-zero.html [ Pass Failure ]
webkit.org/b/222239 fast/canvas/webgl/index-validation-with-subsequent-draws.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance/extensions/webgl-draw-buffers.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance/glsl/misc/sequence-operator-returns-constant.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/array-element-increment.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/tricky-loop-conditions.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/glsl3/vector-dynamic-indexing-nv-driver-bug.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/rendering/blitframebuffer-stencil-only.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/sync/sync-webgl-specific.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/textures/misc/texel-fetch-undefined.html [ Skip ]
webkit.org/b/222239 webgl/2.0.0/conformance2/transform_feedback/transform_feedback.html [ Skip ]
Comment 3 Kyle Piddington 2021-03-09 17:29:11 PST
Created attachment 422784 [details]
Patch
Comment 4 EWS Watchlist 2021-03-09 17:30:29 PST
Note that there are important steps to take when updating ANGLE. See https://trac.webkit.org/wiki/UpdatingANGLE
Comment 5 Alexey Proskuryakov 2021-03-09 17:49:30 PST
Comment on attachment 422784 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=422784&action=review

> Source/ThirdParty/ANGLE/ChangeLog:6
> +	This patch addressed several large bits of funcitonality that was missing from the original patch.

Is it right that this patch doesn't add Apple copyright to any files?
Comment 6 Kenneth Russell 2021-03-12 14:11:40 PST
Fantastic work Kyle and team getting transform feedback and UBOs working in the Metal backend, and passing more tests!

CC'ing some others who will be interested in this patch. Looking forward to helping you reconcile all of your great work with upstream ANGLE.
Comment 7 EWS 2021-03-12 14:22:36 PST
commit-queue failed to commit attachment 422784 [details] to WebKit repository. To retry, please set cq+ flag again.
Comment 8 Jon Lee 2021-03-16 11:34:16 PDT
Created attachment 423368 [details]
Patch
Comment 9 Dean Jackson 2021-03-16 14:52:49 PDT
Comment on attachment 423368 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=423368&action=review

> Source/ThirdParty/ANGLE/src/compiler/translator/TranslatorMetalDirect.h:103
> +        ASSERT(0);

We probably should put a message in here.

> Source/ThirdParty/ANGLE/src/compiler/translator/TranslatorMetalDirect.h:113
>          ASSERT(0);

And here.
Comment 10 EWS 2021-03-16 19:15:17 PDT
Committed r274547: <https://commits.webkit.org/r274547>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 423368 [details].