webgl/1.0.3/conformance/rendering/many-draw-calls.html is 2-3x slower after the switch to ANGLE. It now times out nearly every time in debug, but it got much slower in release too. You can see test run time here by toggling "show test times". https://results.webkit.org/?suite=layout-tests&test=webgl%2F1.0.3%2Fconformance%2Frendering%2Fmany-draw-calls.html
<rdar://problem/58257321>
Note that test history is somewhat misleading, because there was also an earlier issue on Mojave, bug 205412. The regression is super clear on Catalina.
It's possible that draw call validation formerly done in WebKit and now subsumed by ANGLE simply needs to be #ifdef'd out.
It looks like ANGLE is being compiled with asserts even in release builds, and asserts turn on a very expensive state validation code path. I will look into changing both of these.
Created attachment 387274 [details] ANGLE: Disable asserts in release builds.
Note that there are important steps to take when updating ANGLE. See http://trac.webkit.org/wiki/UpdatingANGLE
Fantastic work James tracking this down!
Committed r254953: <https://trac.webkit.org/changeset/254953>