mesa/src
Caio Oliveira b2a34da82f spirv: Fix spec constant to handle Select for non-native floats
There was an assumption that if the instruction had non-native float
as a source, the first source would have such type.  This doesn't
hold for Select, and the code failed in two ways

- The boolean source of Select was being converted to the non-native
  float type.

- The loop that resolves the bit-size for unsized operands would
  trip at `assert(i == 0)` because Select has more than one source.

Re-organize the code to track the types of the sources independently,
and fix both issues above.

Fixes: 90e1b12890 ("spirv: Add bfloat16 support to SpecConstantOp")
Fixes: 51d3c4c889 ("spirv: support float8 spec constant op")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
(cherry picked from commit 6affcb43a7)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40359>
2026-03-11 23:21:10 +01:00
..
amd ac: set the correct number of Z planes for ALLOW_EXPCLEAR 2026-03-11 23:21:09 +01:00
android_stub android_stub: fix missing prototypes issues 2025-12-02 20:03:02 +00:00
asahi hk: Fix crash in hk_handle_passthrough_gs 2026-02-25 14:22:24 +01:00
broadcom v3d: reject fast TLB blit when RT formats don't match 2026-03-11 23:21:09 +01:00
c11 c11/threads: fix build on c23 2025-11-10 07:01:50 +10:00
compiler spirv: Fix spec constant to handle Select for non-native floats 2026-03-11 23:21:10 +01:00
drm-shim drm-shim: handle DRM_CAP_ADDFB2_MODIFIERS 2025-11-24 12:34:08 +00:00
egl mesa: retain const qualifier from pointer 2026-02-11 14:54:47 +00:00
etnaviv etnaviv/ci: Add gitlab-ci-inc.yml to file list 2026-01-19 20:46:38 +00:00
freedreno ir3: Fix constlen trimming when more than one stage is trimmed 2026-03-11 23:21:08 +01:00
gallium glsl: add workaround for MDK2 HD 2026-03-11 23:21:10 +01:00
gbm gbm: Make documentation for gbm_bo_map more explicit 2025-12-29 10:05:38 +00:00
getopt
gfxstream gfxstream: Add VK_EXT_frame_boundary support 2026-01-20 20:27:10 +00:00
glx glx: fix const qualifier warnings found with C23 glibc support 2026-02-11 14:54:47 +00:00
gtest
imagination pvr: only specially handle gfx subcmd for BeginQuery 2026-03-11 23:21:08 +01:00
imgui imgui: Silence build warnings for imgui 2025-09-16 06:16:19 +00:00
intel brw: Also check for ADDRESS file in update_for_reads 2026-03-11 23:21:10 +01:00
kosmickrisp kk: Fix graphics pipeline serialization 2026-02-25 14:22:22 +01:00
loader loader: fix UB in wayland helper code. 2026-01-03 07:56:38 +00:00
mesa glsl: add workaround for MDK2 HD 2026-03-11 23:21:10 +01:00
microsoft vk: descriptors: sort bindings along with flags 2026-01-20 15:55:47 +00:00
nouveau nvk: Reenable compression support with nouveau 1.4.2 2026-02-11 14:54:47 +00:00
panfrost pan/kmod: Allow mmap() on foreign buffers 2026-03-11 23:21:09 +01:00
poly panvk/csf: implement VK_EXT_primitives_generated_query primitive restart 2026-01-21 09:03:34 +00:00
tool pps/meson: minor refactor for pps_deps 2025-11-08 18:39:00 -08:00
util glsl: add workaround for MDK2 HD 2026-03-11 23:21:10 +01:00
virtio venus: sync protocol for strict aliasing compliance 2026-02-25 14:22:22 +01:00
vulkan vulkan/cmd_queue: Fixup stride for multi draws 2026-02-25 14:22:20 +01:00
x11 treewide: strip unneeded inc_gallium inc_gallium_aux 2025-11-13 22:01:43 +00:00
.clang-format util: Add sparse bitset data structure 2025-11-06 21:34:33 +00:00
meson.build kk: Add KosmicKrisp 2025-10-20 17:46:38 +00:00