mesa/src/intel/ci
Kenneth Graunke b6878d456f st/mesa, iris: Add optional CPU-based ASTC void extent denorm flushing
Intel Gen9 GPUs have hardware ASTC support, but have a bug where they
don't handle denormalized values in void extent blocks correctly.  This
isn't that hard to work around - on upload, we can detect such blocks,
and flush any denorms to zero.  Because we're altering the data behind
the application's back, and applications can theoretically ask to
download the original unaltered image data, we unfortunately need to
maintain shadow copies of the data.

To make sure that we don't accidentally skip the void-extent flushing
via any fast-upload paths, and support download correctly, we plug this
into the st/mesa compressed texture format fallback paths, which store
a CPU copy of the original image data, and upload altered data.

This is unfortunately common code for what's likely to be a single
driver's issue (on a single generation), but it beats replicating an
entire framework we already have inside the driver.

Fixes dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.*
using iris on Intel Gen9 GPUs.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4167
Reviewed-by: Emma Anholt <emma@anholt.net>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21943>
2023-03-17 21:30:48 +00:00
..
anv-skips.txt ci: uprev CTS to 1.3.5.0 2023-03-03 08:23:21 +00:00
anv-tgl-fails.txt ci: uprev CTS to 1.3.5.0 2023-03-03 08:23:21 +00:00
deqp-anv-tgl-vk.toml
deqp-hasvk-hsw.toml ci: Add a manual full and 1/10th hasvk CTS runs. 2023-02-16 18:11:44 +00:00
deqp-intel-tgl-skqp.toml ci/intel: Switch skqp testing over to deqp-runner. 2023-01-04 00:34:33 +00:00
deqp-intel-whl-skqp.toml ci/intel: Switch skqp testing over to deqp-runner. 2023-01-04 00:34:33 +00:00
deqp-iris-amly-egl.toml ci/iris: Add headless Wayland testing using weston. 2022-11-22 21:28:02 +00:00
deqp-iris-amly.toml ci: Add testing of the khr-single tests. 2022-08-07 02:11:46 +00:00
deqp-iris-apl-egl.toml ci/iris: Add headless Wayland testing using weston. 2022-11-22 21:28:02 +00:00
deqp-iris-apl-glk.toml ci/iris: Add headless Wayland testing using weston. 2022-11-22 21:28:02 +00:00
deqp-iris-apl.toml ci: Add testing of the khr-single tests. 2022-08-07 02:11:46 +00:00
deqp-iris-cml.toml ci: Add testing of the khr-single tests. 2022-08-07 02:11:46 +00:00
deqp-iris-glk-egl.toml ci/iris: Add headless Wayland testing using weston. 2022-11-22 21:28:02 +00:00
deqp-iris-glk.toml ci: Add testing of the khr-single tests. 2022-08-07 02:11:46 +00:00
deqp-iris-jsl.toml iris/ci: Test on Jasper Lake Chromebooks 2022-08-15 11:40:12 +02:00
deqp-iris-kbl.toml ci: Add testing of the khr-single tests. 2022-08-07 02:11:46 +00:00
deqp-iris-whl.toml ci: Add testing of the khr-single tests. 2022-08-07 02:11:46 +00:00
gitlab-ci.yml ci: Fix release build use for performance jobs 2023-03-10 21:40:23 +00:00
hasvk-hsw-fails.txt intel/ci: Remove skipped float_controls tests from hasvk xfails 2023-03-08 01:46:00 +00:00
hasvk-hsw-flakes.txt ci/hasvk: Add a synchronization flake. 2023-02-24 07:31:36 +00:00
hasvk-hsw-skips.txt ci: Add a manual full and 1/10th hasvk CTS runs. 2023-02-16 18:11:44 +00:00
intel-tgl-flakes.txt ci/iris: Add known flakes for skqp. 2023-01-18 04:43:59 +00:00
iris-amly-fails.txt st/mesa, iris: Add optional CPU-based ASTC void extent denorm flushing 2023-03-17 21:30:48 +00:00
iris-amly-flakes.txt ci: intel: Merge anv and iris into src/intel/ci 2022-04-27 12:35:13 +00:00
iris-amly-skips.txt ci: intel: Merge anv and iris into src/intel/ci 2022-04-27 12:35:13 +00:00
iris-apl-fails.txt ci/iris: update apl and glk expectations, after enabling Wayland support 2023-03-12 00:11:09 +00:00
iris-apl-flakes.txt ci/iris: Generalize the 8888_pbuffer EGL known flakes and share with GLK. 2023-01-18 04:43:59 +00:00
iris-apl-skips.txt ci/iris: Add skips for slow tests on APL. 2023-03-15 08:15:37 +00:00
iris-cml-fails.txt st/mesa, iris: Add optional CPU-based ASTC void extent denorm flushing 2023-03-17 21:30:48 +00:00
iris-cml-flakes.txt ci: intel: Merge anv and iris into src/intel/ci 2022-04-27 12:35:13 +00:00
iris-glk-fails.txt ci/iris: update apl and glk expectations, after enabling Wayland support 2023-03-12 00:11:09 +00:00
iris-glk-flakes.txt ci/iris: Generalize the 8888_pbuffer EGL known flakes and share with GLK. 2023-01-18 04:43:59 +00:00
iris-glk-skips.txt ci/iris: update apl and glk expectations, after enabling Wayland support 2023-03-12 00:11:09 +00:00
iris-jsl-fails.txt ci: uprev CTS to 1.3.5.0 2023-03-03 08:23:21 +00:00
iris-jsl-flakes.txt ci/iris: Add some flakes from the new testing on JSL. 2022-11-09 22:07:10 +00:00
iris-jsl-skips.txt iris/ci: Test on Jasper Lake Chromebooks 2022-08-15 11:40:12 +02:00
iris-kbl-fails.txt st/mesa, iris: Add optional CPU-based ASTC void extent denorm flushing 2023-03-17 21:30:48 +00:00
iris-kbl-flakes.txt ci/piglit: Add some common piglit skips for Mesa CI's testing of glx. 2023-01-24 00:13:02 +00:00
iris-kbl-skips.txt ci: intel: Merge anv and iris into src/intel/ci 2022-04-27 12:35:13 +00:00
iris-skips.txt iris/ci: Test on Jasper Lake Chromebooks 2022-08-15 11:40:12 +02:00
iris-whl-fails.txt st/mesa, iris: Add optional CPU-based ASTC void extent denorm flushing 2023-03-17 21:30:48 +00:00
iris-whl-flakes.txt ci: intel: Merge anv and iris into src/intel/ci 2022-04-27 12:35:13 +00:00
traces-iris.yml glsl: remove do_copy_propagation_elements() optimisation pass 2023-03-01 16:09:25 +00:00