gecko-dev/gfx
Jamie Nicol 1b90388e5a Bug 1731758 - Avoid Adreno 3xx driver bug in brush_blend shader. r=gfx-reviewers,nical
On some Adreno 3xx devices the brush blend shader renders
garbage. This appears to be due to declaring the v_funcs varying (used
for component transfer filters) as an ivec4, though it is unclear
exactly why this breaks it. Previously we used an int[4], but that ran
afoul of another driver bug on some Adreno 3xx devices (bug 1695912).

This patch alternatively packs each of the component functions in to 4
bits of an integer, and unpacks the values in the fragment
shader. However, due to yet another Adreno 3xx driver bug (bug
1630356) we cannot simply use an int, and instead must use the x
component of a vec2.

This fixes the brush_blend shader for the majority of blend modes,
whilst avoiding the known bugs above. Component transfer itself is
still broken, though no moreso than prior to this patch. Fixing
component transfer will be handled in a separate bug.

Differential Revision: https://phabricator.services.mozilla.com/D126967
2021-10-01 15:19:33 +00:00
..
2d Bug 1732443 - Remove remaining XRender leftovers,r=emilio,stransky 2021-09-30 14:14:13 +00:00
angle Bug 1731194 - [ANGLE] Add system_utils_apple too. r=gfx-reviewers,mstange 2021-09-17 18:50:58 +00:00
cairo Bug 1733545 - Remove REQUIRES_UNIFIED_BUILD from third-party directories that don't need it. r=firefox-build-system-reviewers,andi 2021-10-01 09:01:27 +00:00
config Bug 1731610 - Add new prefs in WebRender with less boilerplate. r=gfx-reviewers,jrmuizel 2021-09-23 15:17:46 +00:00
docs Bug 1726672 - Remove PaintThread. r=mattwoodrow 2021-08-20 13:20:44 +00:00
gl Bug 1733057 [Linux] Return early when XWindow handle is missing at GLContextProviderGLX::CreateForWidget(), r=rmader 2021-09-30 07:11:19 +00:00
graphite2
harfbuzz Bug 1733545 - Remove REQUIRES_UNIFIED_BUILD from third-party directories that don't need it. r=firefox-build-system-reviewers,andi 2021-10-01 09:01:27 +00:00
ipc Bug 1725854 - Check for the WebGPU pref before initializing the GPU process IPC side r=aosmond 2021-09-14 17:48:03 +00:00
layers Bug 1730710 - Propagate raster spaces in GPU process r=gw 2021-10-01 15:12:37 +00:00
ots
qcms Bug 1729539 - Hit MOZ_CRASH(assertion failed: y2 > 1. / 12. && y2 <= 1.) at gfx/qcms/src/iccread.rs:1392. r=jrmuizel 2021-09-17 17:41:26 +00:00
skia Bug 1711553 - Avoid use of GetRecommendedRenderingMode in Skia. r=jrmuizel 2021-08-09 19:16:16 +00:00
src Bug 1715501 - patch 2 - Pass the presContext to platform font lookup methods so they can query it for font visibility. r=emilio 2021-09-08 12:18:17 +00:00
tests Bug 1733294 - Remove unused PaintedLayer. r=aosmond 2021-10-01 00:08:40 +00:00
thebes Bug 1732443 - Remove remaining XRender leftovers,r=emilio,stransky 2021-09-30 14:14:13 +00:00
vr Bug 1732208 - Silence the unused-but-set-variable warning in gfx. r=gfx-reviewers,nical 2021-09-28 00:02:45 +00:00
webrender_bindings Bug 1731610 - Add new prefs in WebRender with less boilerplate. r=gfx-reviewers,jrmuizel 2021-09-23 15:17:46 +00:00
wgpu_bindings Bug 1729751 - Update wgpu and ron 3rd parties r=jimb 2021-09-10 18:24:02 +00:00
wr Bug 1731758 - Avoid Adreno 3xx driver bug in brush_blend shader. r=gfx-reviewers,nical 2021-10-01 15:19:33 +00:00
ycbcr Bug 1732481 - Fix non-unified build errors in gfx. r=gfx-reviewers,jrmuizel 2021-09-24 19:14:46 +00:00
metrics.yaml Bug 1728423 - Migrate display list building time metric to glean. r=chutten,miko 2021-09-22 20:36:04 +00:00
moz.build