mesa/src
Pavel Ondračka 1e9e561811 r300: fix generation of invalid swizzles in regalloc
rc_adjust_channels is inteded for moving the swizzles to a new channels
when rewriting the writemask of an instruction. However for readers one
needs to keep the swizzles in the old channels but rather convert to the
new values, so use the proper helper rc_rewrite_swizzle.

With the new swizzle fixed, we should properly detect that it would be
invalid and thus we can select the proper register class to prevent the
writemask rewrite in the regalloc.

Documentation was added to rc_adjust_channels to make it more clear what
it actually does.

Fixes a bunch of dEQP tests.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7521
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19158>
2022-10-19 22:49:23 +00:00
..
amd aco: Pre-split result of bvh64_intersect_ray_amd. 2022-10-19 21:44:48 +00:00
android_stub
asahi agx: Reserve live-in regs at the start of block 2022-10-14 01:37:39 +00:00
broadcom v3dv: drop error overwrite 2022-10-18 22:22:58 +00:00
c11 c11: Update the values of enum mtx_plain, mtx_recursive, mtx_timed to make sure mtx_recursive != mtx_plain | mtx_recursive 2022-09-14 02:46:51 +00:00
compiler nir/lower_cl_images: set binding 2022-10-19 06:27:20 +00:00
drm-shim drm-shim: drop gnu99 override 2022-09-16 02:06:38 +00:00
egl util/mesa/wide: Rename _SIMPLE_MTX_INITIALIZER_NP to SIMPLE_MTX_INITIALIZER 2022-10-14 03:27:41 +00:00
etnaviv util/mesa/wide: Rename _SIMPLE_MTX_INITIALIZER_NP to SIMPLE_MTX_INITIALIZER 2022-10-14 03:27:41 +00:00
freedreno tu: Clean up variable usage in tu6_draw_common 2022-10-19 19:00:42 +00:00
gallium r300: fix generation of invalid swizzles in regalloc 2022-10-19 22:49:23 +00:00
gbm Android: Use libgbm_mesa name for SDK30+ 2022-09-12 07:37:27 +00:00
getopt
glx glapi: remove EXT and ARB suffixes from Draw functions 2022-10-19 04:23:05 +00:00
gtest gtest: Fix maybe-uninitialized compiler warning 2022-06-29 21:02:18 +00:00
hgl
imagination pvr: Remove outdated comments. 2022-10-19 16:07:26 +00:00
imgui
intel glsl: drop sub to add neg lowering in GLSL IR 2022-10-19 03:52:21 +00:00
loader loader: use os_get_option for driver override 2022-09-08 19:30:38 +00:00
mapi glthread remove the unused *last pointer from unmarshal functions 2022-10-19 04:23:05 +00:00
mesa mesa/st: ARB_vertex_attrib_64bit depend on glsl>=410 2022-10-19 12:23:40 +00:00
microsoft nir2dxil: Use native helper lane intrinsic on SM >= 6.6 2022-10-19 22:25:51 +00:00
nouveau nv50: call nir_lower_flrp 2022-10-10 17:22:49 +00:00
panfrost pan/mdg: Fix 16-bit alignment with spiller 2022-10-17 19:11:10 +00:00
tool pps: enable track_event in intel.cfg 2022-10-09 22:39:53 +03:00
util util/indicies: convert u_unfilled_gen.py to write a file 2022-10-19 20:21:08 +00:00
virtio util/mesa/wide: Rename _SIMPLE_MTX_INITIALIZER_NP to SIMPLE_MTX_INITIALIZER 2022-10-14 03:27:41 +00:00
vulkan vulkan/runtime: don't lookup the pipeline disk cache if disabled 2022-10-14 23:03:16 +00:00
meson.build meson: Remove usage of use_elf_tls 2022-07-29 23:59:11 +00:00