mesa/.gitlab-ci
Eric Anholt 1f44053301 freedreno+turnip: Upload large shader constants as a UBO.
Right now if the shader indirects on some large constant array, we see NIR
load_consts (usually from the const file) of its contents into general
registers, then indirection on the GPRs.  This often results in register
allocation failures, as it's easy to go beyond the ~256 dwords of
registers per invocation.

By moving the large constants to a UBO, we can load an arbitrary number of
them.  They also can be theoretically moved to the constant reg file (~2k
dwords), though you're unlikely to hit this path without an indirect load
on your large constant, and we don't yet let UBO indirect loads get moved
to constant regs.

This possibly won't work out right if we have 16-bit load_constants, but
without other MRs in flight we won't see 16-bit temps to be lowered to
this.

This allows 2 kerbal-space-program shaders to compile that previously
would fail, and fixes the new dEQP-VK and -GLES2 tests I wrote that
dynamically index a 40-element temporary array of float/vec2/vec3/vec4
with constant element initializers.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2789
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5810>
2020-11-16 13:55:41 -08:00
..
bare-metal ci/deqp: Allow specifying the caselist fraction separate from CI_NODE_INDEX. 2020-11-11 17:22:47 +00:00
container ci: sort packages installed via apt-get 2020-11-12 11:13:28 +00:00
fossils gitlab-ci: attach the Fossilize log file as artifact on failure 2020-06-26 06:45:23 +00:00
piglit gallivm: fix float atomic exchange. 2020-11-16 06:53:20 +10:00
tracie tracie: Produce JUnit XML results 2020-09-08 10:44:52 +03:00
windows CI: Windows: Use separate config file for Docker 2020-08-28 10:15:40 +00:00
arm.config gitlab-ci: Build kernel drivers for a few ethernet USB dongles 2020-07-07 11:52:30 +00:00
arm64.config ci: Update kernel for LAVA 2020-10-08 12:14:59 +02:00
build-apitrace.sh ci: Switch to using gold as the linker. 2020-08-31 17:50:30 +00:00
build-deqp-runner.sh ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
build-deqp.sh ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
build-fossilize.sh ci: Consistently use -j4 across x86 build jobs and -j8 on ARM. 2020-04-01 18:33:58 +00:00
build-gfxreconstruct.sh gitlab-ci: build gfxreconstruct from the "dev" branch 2020-07-21 16:41:22 +00:00
build-libclc.sh ci: enable piglit testing of clover/llvmpipe. 2020-10-08 00:41:30 +00:00
build-libdrm.sh ci: do not build libdrm for vc4, reedreno and etnaviv 2020-09-10 14:13:37 +00:00
build-piglit.sh ci: piglit: conditionally build OpenCL tests 2020-10-10 11:56:03 +00:00
build-renderdoc.sh ci: Include trace replay support in ARM rootfses. 2020-06-25 17:33:28 +00:00
build-rust.sh ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
build-spirv-tools.sh CI: build our own spirv tools 2020-10-10 06:13:17 +10:00
build-virglrenderer.sh ci: bump virglrenderer to latest version 2020-06-04 20:05:26 +00:00
build-vulkantools.sh ci: Consistently use -j4 across x86 build jobs and -j8 on ARM. 2020-04-01 18:33:58 +00:00
create-android-cross-file.sh ci/android: Switch to using the Android NDK. 2020-10-14 16:54:59 +00:00
create-android-ndk-pc.sh ci/android: Switch to using the Android NDK. 2020-10-14 16:54:59 +00:00
create-cross-file.sh ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
create-rootfs.sh ci: sort packages installed via apt-get 2020-11-12 11:13:28 +00:00
cross-xfail-i386 ci: Run tests on i386 cross builds 2019-09-17 14:53:57 -04:00
cross-xfail-ppc64el gitlab-ci: Add ppc64el and s390x cross-build jobs 2020-02-05 10:52:31 +00:00
cross-xfail-s390x gitlab-ci: remove load_store_vectorizer from expected s390x test failures 2020-02-13 10:53:37 +00:00
deqp-default-skips.txt ci: Make the skip list regexes match the full test name. 2019-11-12 12:54:04 -08:00
deqp-freedreno-a307-fails.txt freedreno+turnip: Upload large shader constants as a UBO. 2020-11-16 13:55:41 -08:00
deqp-freedreno-a307-flakes.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-freedreno-a530-fails.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-freedreno-a530-flakes.txt ci/freedreno: List more common flakes reported recently. 2020-08-20 23:59:50 +00:00
deqp-freedreno-a630-bypass-fails.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-freedreno-a630-fails.txt freedreno+turnip: Upload large shader constants as a UBO. 2020-11-16 13:55:41 -08:00
deqp-freedreno-a630-flakes.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-freedreno-a630-skips.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-lima-fails.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-lima-skips.txt ci: Re-enable the clip_three test on non-freedreno ARMs. 2020-11-11 17:22:47 +00:00
deqp-llvmpipe-fails.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-panfrost-g52-fails.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-panfrost-g52-flakes.txt ci: Re-enable the clip_three test on non-freedreno ARMs. 2020-11-11 17:22:47 +00:00
deqp-panfrost-g52-skips.txt ci: Update dEQP skips and fails for Bifrost on G52 2020-11-05 17:09:53 +01:00
deqp-panfrost-t720-fails.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-panfrost-t720-flakes.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-panfrost-t720-skips.txt ci: Re-enable the clip_three test on non-freedreno ARMs. 2020-11-11 17:22:47 +00:00
deqp-panfrost-t760-fails.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-panfrost-t760-skips.txt gitlab-ci: Run GLES3 tests in dEQP on Panfrost 2020-02-26 14:02:25 +01:00
deqp-panfrost-t820-fails.txt panfrost: Use Midgard-specific reloads 2020-07-16 15:10:55 +00:00
deqp-panfrost-t820-skips.txt ci: Re-enable the clip_three test on non-freedreno ARMs. 2020-11-11 17:22:47 +00:00
deqp-panfrost-t860-fails.txt ci: Bump deqp to current vulkan-cts-1.2.4 2020-11-11 17:22:47 +00:00
deqp-panfrost-t860-skips.txt ci: Re-enable the clip_three test on non-freedreno ARMs. 2020-11-11 17:22:47 +00:00
deqp-radeonsi-stoney-fails.txt ci: Build kernels and rootfs for x86 devices 2020-07-29 12:41:45 +00:00
deqp-radeonsi-stoney-skips.txt ci: Build kernels and rootfs for x86 devices 2020-07-29 12:41:45 +00:00
deqp-radv-default-skips.txt ci: add dEQP-VK.info.device_extensions to the list of skipped tests 2020-09-28 06:32:18 +00:00
deqp-radv-fiji-aco-fails.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-radv-navi10-aco-fails.txt ci: update the list of expected failures for RADV 2020-11-15 16:49:47 +00:00
deqp-radv-navi14-aco-fails.txt ci: update the list of expected failures for RADV 2020-11-15 16:49:47 +00:00
deqp-radv-pitcairn-aco-fails.txt ci: update the list of expected failures for RADV 2020-11-15 16:49:47 +00:00
deqp-radv-polaris10-aco-fails.txt ci: update the list of expected failures for RADV 2020-11-15 16:49:47 +00:00
deqp-radv-polaris10-skips.txt gitlab-ci: add a job that runs Vulkan CTS with RADV conditionally 2019-12-06 10:58:03 +01:00
deqp-radv-raven-aco-fails.txt ci: update the list of expected failures for RADV 2020-11-15 16:49:47 +00:00
deqp-radv-raven-aco-skips.txt ci: update the list of skipped tests for RAVEN 2020-11-15 16:49:47 +00:00
deqp-radv-vega10-aco-fails.txt ci: update the list of expected failures for RADV 2020-11-15 16:49:47 +00:00
deqp-runner.sh ci/deqp: Allow specifying the caselist fraction separate from CI_NODE_INDEX. 2020-11-11 17:22:47 +00:00
deqp-softpipe-fails.txt gallium/draw: Fix rasterizer_discard for wide points/lines. 2020-11-12 20:27:15 +00:00
deqp-softpipe-flakes.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-softpipe-skips.txt ci: Add the new timeout-prone softpipe-gl test to the skips list. 2020-10-22 16:49:41 +00:00
deqp-virgl-gl-fails.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
deqp-virgl-gl-skips.txt CI: Skip flaky CS test on VirGL 2020-08-18 09:11:37 +02:00
deqp-virgl-gles-fails.txt ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
docs docs: Move the current CI .rst doc to docs/ci/ and link to it from .gitlab-ci. 2020-07-08 20:13:11 +00:00
download-git-cache.sh CI: reduce bandwidth for git pull 2020-07-03 09:44:36 +02:00
fossilize-runner.sh gitlab-ci: attach the Fossilize log file as artifact on failure 2020-06-26 06:45:23 +00:00
fossils.yml gitlab-ci: add parallel-rdp fossils 2020-06-25 08:03:09 +02:00
generate_lava.py ci: Set date in LAVA DUTs from NTP servers 2020-07-31 14:14:38 +02:00
lava-deqp.yml.jinja2 ci/deqp: Switch to a new dEQP runner written in Rust. 2020-11-06 19:48:39 +00:00
lava-gitlab-ci.yml Revert "ci: Temporarily disable jobs on the Collabora lab" 2020-11-16 12:38:36 +00:00
lava-tracie.yml.jinja2 ci: Distribute ADMGPU driver to LAVA as a module 2020-11-05 17:09:58 +01:00
meson-build.bat gitlab-ci: Add a job for meson on windows 2019-10-25 22:47:32 +00:00
meson-build.sh ci: Consistently use -j4 across x86 build jobs and -j8 on ARM. 2020-04-01 18:33:58 +00:00
prepare-artifacts.sh ci/deqp-runner: Add a post-deqp-run filter list for known flakes. 2020-08-20 23:59:50 +00:00
run-shader-db.sh ci: Use FDO_CI_CONCURRENT in run-shader-db.sh as well 2020-07-23 09:26:30 +00:00
scons-build.sh scons: Print a deprecation warning about using scons on not windows 2019-10-24 18:33:50 +00:00
test-source-dep.yml CI: Only run OpenCL tests when we need to 2020-10-27 12:37:11 +00:00
traces-freedreno.yml nir: scalarize fdot in reverse 2020-11-03 14:56:00 +00:00
traces-llvmpipe.yml nir: scalarize fdot in reverse 2020-11-03 14:56:00 +00:00
traces-panfrost.yml panfrost: Z16 depth buffer support 2020-10-27 17:11:47 +00:00
traces-radeonsi.yml nir: scalarize fdot in reverse 2020-11-03 14:56:00 +00:00
traces-radv.yml ci: Split traces.yml file per driver 2020-08-19 07:47:48 +02:00
traces-virgl.yml nir/algebraic: better propagate constants up fadd chains 2020-11-03 14:56:00 +00:00
tracie-runner-gl.sh tracie: Make tests independent of environment 2020-09-08 10:43:07 +03:00
tracie-runner-vk.sh ci: Split traces.yml file per driver 2020-08-19 07:47:48 +02:00
x86_64-w64-mingw32 gitlab-ci: Add a pkg-config for mingw 2019-10-16 23:26:09 +00:00
x86_64.config ci: Distribute ADMGPU driver to LAVA as a module 2020-11-05 17:09:58 +01:00