Commit graph

222524 commits

Author SHA1 Message Date
Kenneth Graunke
cee8d758ba anv: Use device->info.has_mesh_shading in key->mesh_input check
This is clearer than devinfo->verx10 >= 125.

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41535>
2026-05-13 23:03:15 +00:00
Kenneth Graunke
fe99b5a7d1 anv: Delete anv_instance::mesh_conv_prim_attrs_to_vert_attrs
Never used.

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41535>
2026-05-13 23:03:15 +00:00
Kenneth Graunke
faede3c3c1 intel/nir: Only add an explicit LOD 0 when lod/bias don't already exist
When lowering tg4 sparse testing to a non-gather opcode, we were adding
an explicit LOD 0 parameter.  But we might already have a LOD or bias.

Fixes tests like:
dEQP-VK.glsl.texture_gather.basic.2d.rgba8.base_level.sparse_level_1_amd_lod
dEQP-VK.glsl.texture_gather.basic.2d.rgba8.base_level.sparse_level_1_amd_bias

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41535>
2026-05-13 23:03:14 +00:00
Kenneth Graunke
f2c5410caf nir: Lower SSBO helper writes too
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41535>
2026-05-13 23:03:14 +00:00
Kenneth Graunke
9f56e4679e nir: Allow bias for nir_texop_sparse_residency_intel
Fixes validation errors in tests like:
dEQP-VK.glsl.texture_functions.textureoffset.clamp_to_edge.sparse_isampler2d_bias_fragment

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41535>
2026-05-13 23:03:14 +00:00
Christian Gmeiner
e201d4fa77 compiler/rust: Move VecPair from NAK to shared compiler crate
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Move the VecPair<A, B> data structure from NAK's ir.rs to the shared
compiler Rust crate so it can be reused by other backends.

The fields are private, and NAK's ir.rs (now in a different crate)
needs to read and mutate the inner Vecs. Add a_as_slice(..),
a_as_mut_slice(..), b_as_slice(..) and b_as_mut_slice(..), and update
NAK's SrcsAsSlice and DstsAsSlice impls to call them. Returning slices
keeps callers from changing the length of one side without the other,
which is what VecPair is built to prevent.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41435>
2026-05-13 22:32:44 +00:00
Tapani Pälli
a18c07dc36 anv: allocate tile sized temporary copy instead of whole size
This fixes dEQP-VK.image.host_image_copy.* tests that require temp_copy
on 32bit builds.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15409
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41533>
2026-05-13 22:14:20 +00:00
Olivia Lee
a17276037a panvk: add support for adjacency primitive topologies
These are not usable by applications until we advertise GS, but the
implementation is effectively independent of the rest of the GS
implementation.

Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41478>
2026-05-13 21:50:31 +00:00
Olivia Lee
04576a5b4f pan/genxml: add definitions for adjacency draw modes
There is hardware support for adjacency primitives on v9 and later.

Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41478>
2026-05-13 21:50:31 +00:00
Anna Maniscalco
47590e0d3e ir3: Skip preftech and and warmups for non bindless earlier
Previously, if only non bindless accesses where present, we would end up
emitting an empty preamble.

Also avoid emitting non binless textures.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40309>
2026-05-13 21:21:11 +00:00
Omar Rashwan
24669f2bbb intel: define type for std::max in eu stall viewer
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41550>
2026-05-13 20:57:29 +00:00
Omar Rashwan
da047e32a5 intel: Fix bit width of int literal in eu stall viewer
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15417
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41550>
2026-05-13 20:57:29 +00:00
Yiwei Zhang
4463f5d3b0 pan/nir/tex: use unsigned type for texture op lod_or_fetch
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This suppresses below compiler warnings:

../src/panfrost/compiler/pan_nir_lower_tex.c:552:30: warning: implicit
conversion from enumeration type 'enum bifrost_texture_fetch' to
different enumeration type 'enum bifrost_lod_mode' [-Wenum-conversion]
  552 |          desc.lod_or_fetch = BIFROST_TEXTURE_FETCH_TEXEL;
      |                            ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41446>
2026-05-13 20:32:55 +00:00
Dorinda Bassey
05cfc37da0 util/rust: Add atomic memory synchronization support
Add AtomicMemorySentinel for cross-platform atomic
memory synchronization. This provides a
platform-agnostic API over Linux futex syscalls,
allowing shared memory synchronization via
memory-mapped file descriptors.

Includes Linux futex implementation and stub
implementations for Windows and other platforms.

Signed-off-by: Dorinda Bassey <dbassey@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39653>
2026-05-13 19:57:51 +00:00
Job Noorman
32a817fe75 freedreno/computerator: fix UAV view size
The user supplied buffer size is in units of words, not bytes.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 469a19f66b ("freedreno/computerator: gen8 support")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41526>
2026-05-13 19:41:48 +00:00
Job Noorman
d1ab6937bc ir3: allow (ss) on all cat7 instructions
They all support it, not just alias.

Totals from 1034 (0.59% of 176266) affected shaders:
Instrs: 1191237 -> 1187463 (-0.32%); split: -0.32%, +0.00%
CodeSize: 1967434 -> 1957658 (-0.50%)
NOPs: 357507 -> 353733 (-1.06%); split: -1.07%, +0.01%
(ss)-stall: 162617 -> 162616 (-0.00%)
(sy)-stall: 701381 -> 701897 (+0.07%); split: -0.00%, +0.07%
Cat0: 391915 -> 388141 (-0.96%); split: -0.98%, +0.01%

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41536>
2026-05-13 19:11:10 +00:00
Collabora's Gfx CI Team
46607282f1 Uprev VVL to 6a6182c0edb35cba7bab0abc61eaff82d11022fb
4acd00c7a0...6a6182c0ed

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41521>
2026-05-13 18:33:57 +00:00
Hyunjun Ko
9836c70c56 anv/video: fix to set the upper bound of the bitstream of h265.
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fixes:
dEQP-VK.video.decode.h265.long_term_reference_separated_dpb_video_layout
dEQP-VK.video.decode.h265.long_term_reference_layered_dpb_video_layout

Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41537>
2026-05-13 18:02:11 +00:00
Marc Alcala Prieto
be2c07e4b7 docs/panfrost: Advertize Mali-G1-Pro support
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:36 +00:00
Marc Alcala Prieto
af8ee33d15 panfrost: Advertize Mali-G1-Pro support
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:36 +00:00
Marc Alcala Prieto
5666c0cafc panfrost: Build the Gallium driver for v14
Enable building panfrost for v14.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:36 +00:00
Marc Alcala Prieto
9d866a0729 panfrost: Implement RUN_FRAGMENT2 on the Gallium driver
Added structure pan_fb_state and related logic to store and emit the
fragment state.

Also, move some temporary registers to non-conflicting ones.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:36 +00:00
Marc Alcala Prieto
f36ba515d3 pan/bi,va: Use dedicated LD_VAR_BUF_FLAT* opcodes on v14+
On v14+, flat source formats are no longer supported by LD_VAR_BUF and
LD_VAR_BUF_IMM opcodes. This patch makes the compiler emit the
dedicated LD_VAR_BUF_FLAT* opcodes instead.

Add the ISA definitions, handle the new opcodes, and add packing tests
for both immediate and indirect forms.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:36 +00:00
Marc Alcala Prieto
aed500c3f7 pan/va: Fix packing test for LdVarBufImmF16 on v11
Encoding for LdVarBufImmF16 on v11 changed compared to v10. Updated the
test to check for the right encoding.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:36 +00:00
Marc Alcala Prieto
05faa0e648 pan: Add v14 support
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
0350d2d094 panvk: Build for v14
Enable building panvk for v14.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
9af40de9ef panvk: Handle provoking vertex and simultaneous reuse on v14
The provoking vertex bit in RUN_FRAGMENT2 is located in a register
instead of a descriptor stored in memory. That means we don't need to
patch memory, resulting in a much leaner implementation compared to
RUN_FRAGMENT.

Also, implement the simultaneous reuse copy path with the corresponding
tiler pointer patching.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
a7ae37656d panvk: Implement RUN_FRAGMENT2
Added structure panvk_fb_layer_state and related logic to store and emit
per-layer fragment state.

Also, move some temporary registers to non-conflicting ones.

Incremental rendering is left as TODO for later.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
1f2edeb54a pan/lib: Build for v14
Enable building libpanfrost for v14. Also, modify format mappings to
account for the new architecture specification.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
bc5d206eb5 pan/afrc: Add v14+ AFRC YUV compression mappings
v14+ no longer uses specific AFRC compression formats for YUV. Instead,
generic R8/R8G8 and R10/R10G10 formats are used.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
8e9d2326ba pan/afbc: Add v14+ AFBC YUV compression mappings
On v14+, many AFBC YUV modes map to generic RGB compression modes.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
ce3f5b2ba3 pan/format: Add v14+ YUV pipe format mappings
Map the multiplane and special internal formats to the new v14+ YUV
formats. Note v14+ has a much simplified list of formats.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
37b5cb614d pan/texture: Add v14+ YUV pipe format mappings
v14+ no longer uses specific clump formats for YUV.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
af35fc44a7 pan/desc: Implement pan_emit_fbd for v14+
Also, modify pan_emit_fbd's signature to take a pointer to
pan_fbd_descs.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
9421888623 pan/fb: Implement pan_emit_fb_desc for v14+
Also, modify pan_emit_fb_desc's signature to take a pointer to
pan_fb_descs.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:35 +00:00
Marc Alcala Prieto
50a3f5ccdb pan/clc: Build for v14
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:34 +00:00
Marc Alcala Prieto
68c17e0157 pan/genxml: Build libpanfrost_decode for v14
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:34 +00:00
Marc Alcala Prieto
53f95c5646 pan/decode: Remove progress-related decoding logic
Progress is no longer encoded by the CS builder.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:34 +00:00
Marc Alcala Prieto
a5681aade4 pan/genxml: Implement RUN_FRAGMENT2
Add support for emitting and decoding RUN_FRAGMENT2 instructions.

Some existing decoding logic from decode.c is modified to be reusable
by the new RUN_FRAGMENT2 decoding logic.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:34 +00:00
Marc Alcala Prieto
4258888f4d pan/genxml: Add v14 definition
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:34 +00:00
Marc Alcala Prieto
f27d5b5884 pan/genxml: Add missing enum values on v9-v13
Note block-linear interleaved clump orderings are not supported on all
v10 architectures.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41081>
2026-05-13 17:37:33 +00:00
johniyoods
fb0123f42e egl/dri2: require valid render fd before advertising EGL_WL_bind_wayland_display
Commit 718ef151f2 removed the legacy non-dmabuf wl_drm path and now
gates the extension on has_dmabuf_import && has_dmabuf_export. These
flags reflect driver capability and do not depend on whether a valid DRM
render fd was assigned during display initialization.
Before commit 718ef151f2, dri2_get_capabilities() returned 0 for
kms_swrast paths because can_share_buffer is false there, so the
__DRI_IMAGE_CAP_GLOBAL_NAMES check naturally excluded software-only
devices. The replacement dmabuf flags do not have this property.

On a software-only device (e.g., vgem), fd_render_gpu stays -1 and
device_name is NULL, yet both dmabuf flags are true, causing the
extension to be incorrectly advertised. When a Wayland compositor calls
eglBindWaylandDisplayWL(), drmGetRenderDeviceNameFromFd(-1) returns NULL
and strdup(device_name) is called on a NULL pointer, causing a SIGSEGV.

Add an additional guard when setting WL_bind_wayland_display,
so the extension is only advertised when a valid DRM render fd is present

Fixes: 718ef151f2 ("egl/wayland: Remove support for non-dmabuf wl_drm")

Signed-off-by: johniyoods <johniyoods@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41527>
2026-05-13 16:16:48 +00:00
Rhys Perry
171210e36a aco/ra: remove precolored checks in get_reg_impl()
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Since tied definitions no longer use precoloring, I don't think this is
needed anymore.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:24 +00:00
Rhys Perry
faf8926ec8 aco/ra: use phi_dummy instead of is_phi()
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:23 +00:00
Rhys Perry
53cd74c284 aco/ra: don't rename phi operands in get_reg_phi()
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Backport-to: *
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:22 +00:00
Rhys Perry
638cefc8f2 aco: fix regclasses for spill/reload subdword temporaries
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:21 +00:00
Rhys Perry
46047cf5ca aco/ra: fix fill() with certain subdword cases
If div_ceil(start.byte() + num_bytes, 4) != div_ceil(num_bytes, 4), like
v3b at byte=2.

Also, the non-const operator[] was unused and unsafe.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:21 +00:00
Rhys Perry
528aabb056 aco/ra: fix compact_relocate_vars path for get_reg_for_operand
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:20 +00:00
Rhys Perry
7c4429d21a aco: rework subdword definition RA validation a bit
Some issues fixed:
- check that byte=0 for p_as_uniform/etc
- validate 5+ byte definitions
- fix v3b pseudo definition validation
- fix validation when the index of the definition is not 0

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:19 +00:00
Rhys Perry
4249daeedd aco: add helpers to get instruction subdword capabilities
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41018>
2026-05-13 15:53:19 +00:00