commit fa03ab3adeaf286dbbfbf63ecb4fad33978ca5db Author: Geoff Lang Date: Fri Dec 8 13:20:36 2023 -0500 Validate Uniform variable limits with each iteration VariablePacker would loop over all variables and sum up the total row counts before validating. Each variable can take hundreds of rows so it is possible to overflow the counters before validating them. Validate the limits with each iteration and early-out when the limits are exceeded. https://bugzilla.mozilla.org/show_bug.cgi?id=1864587 Bug: chromium:1864587 Change-Id: Ic235ada1516a0d5a9948d82b22f6316a037c09ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106408 Reviewed-by: Shahbaz Youssefi Auto-Submit: Geoff Lang Commit-Queue: Shahbaz Youssefi commit 6784271c1c6273a1be0b6a2dad9ac7b921521ad8 Author: Shahbaz Youssefi Date: Tue Mar 28 11:43:23 2023 -0400 Translator: Limit the size of private variables in WebGL shaders As a follow up to https://chromium-review.googlesource.com/c/angle/angle/+/3023033, the limit to shader-private variables (locals and globals) is further reduced to 1MB. A variable that large will not fit in GPU registers and will spill to memory, killing performance. Bug: chromium:1427865 Change-Id: I77314d4b891c591cd9a83ad2aebb77d7256f3ada Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4377639 Reviewed-by: Kenneth Russell commit 23347851217a581f3b9d877af203a0dcc4b7b6e9 Author: Kelsey Gilbert Date: Wed Mar 29 16:13:39 2023 -0700 Add ShCompileOptions.initGLPointSize. Change-Id: I1d998867f3e829ed0dc8181fa76be5fe701dde70 commit aa3a569c8ddc1122d55663749a6db63e48b3033c Author: Ashley Hale Date: Wed Mar 1 18:03:04 2023 -0800 Disable ClearView with scissor on Skylake iGPU because of observed bugs with edge corruption. (#27) commit d93c05cd2d786f2c624fbf8f4465238b38a771a1 Author: Kelsey Gilbert Date: Thu Sep 8 17:10:21 2022 -0700 Import in SymbolTable_ESSL_autogen.cpp. Fixes Snap builds of Firefox. Change-Id: I8d71d230d5e4a5a042e6afd4e31342da9a085bed Co-authored-by: Erich Gubler commit 0bf5781fddeb50d02b703dd89cc77b2c5f07e334 Author: Erich Gubler Date: Thu Jan 19 00:20:06 2023 -0500 build(linux): disable `PoolAlloc` to work around `asan` failures We noticed this causing problems in [Firefox CI][failing-ci]. [failing-ci]: https://treeherder.mozilla.org/jobs?repo=autoland&author=egubler%40mozilla.com&selectedTaskRun=e6KdZgnNTCOE9weaOnTjVQ.0 commit ea4d354f6cfc83c31446a855f3fd5603737eae76 Author: Erich Gubler Date: Wed Nov 16 20:54:23 2022 -0500 fix(windows,pre-c++20): use default ctors for `std::atomic` commit 9bcfaed62b60e210004217fd5e79c25f3e2b3760 Author: Jeff Gilbert Date: Thu Jul 15 15:56:45 2021 -0700 Add missing header to build config. commit 16baec7195df362b9d615ccb7e5d51673501e10e Author: Jeff Gilbert Date: Thu Feb 11 17:34:00 2021 -0800 Don't assert for non-sampleable non-ms sources in blitRenderbufferRect if we can CopySubResource. In Firefox, we can have a source from DirectComposition without D3D11_BIND_SHADER_RESOURCE. This is fine so long as our formats etc match enough to hit the CopySubResource path. Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1692355 commit 43e9d9a7c95b509869a774fab62bf42d6d15b745 Author: Jeff Muizelaar Date: Wed May 6 14:04:42 2020 -0400 Don't use ClearView if we previously used dual source blending on Intel gen6. (#22) Doing a ClearView after a dual source blend seems to cause a TDR on Intel SandyBridge. Presumeably this is because the ClearView is implemented as a regular draw and the driver doesn't properly set up the state. If we detect that this is going to happen we fall back to the manual draw call path. This lets us use ClearView most of the time still. commit b16ebaa05424354c06c2ccdccc36df2c7c1b191e Author: Erich Gubler Date: Wed Nov 9 21:12:44 2022 -0500 Fix broken build from `-Wexit-time-destructors` on Windows x64 commit 4c3a473aec4e09ffacd0466817cb851529087767 Author: Dzmitry Malyshau Date: Thu Dec 5 13:02:14 2019 -0500 Restrict the slow texture upload workaround to 128bit formats. (#21) The workaround is slow for having a CPU-visible mirror of the texture, but that mirror is not properly recycled with regards to GPU usage, thus causing a CPU stall on update. Original reports were related to WebRender vertex texture updates that are RGBA32F and RGBA32U formats. Limiting the workaround to these formats would allow the affected platforms to upload regular texture data faster without stalls. Co-authored-by: Erich Gubler Above: cherries picked ================================================================================ Below: merge base from: origin/chromium/5359 commit ceec659ac60b0c8ee9d9c602ca1a878ec1d3a88f Author: Shahbaz Youssefi Date: Mon Oct 31 10:29:45 2022 -0400 M108: Vulkan: Disable logicOp dynamic state on Intel/Mesa Hits a stack overflow inside the driver. Bug: chromium:1379201 Change-Id: I790d7ef0333ba17eedbe91e4fc9c3a2b94563bff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4004440 Reviewed-by: Yuxin Hu