Commit graph

218371 commits

Author SHA1 Message Date
Eric Engestrom
2d1d94d3c2 ci: split get_job_seconds() computation out of get_current_minsec() formatting
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39395>
2026-02-09 20:22:27 +00:00
Caio Oliveira
6b0e29bc77 brw: Fix cooperative matrix constant sources other than src0
Code was wrongly using src0 to pick the constant value.

Fixes: bf9ad36f2d ("brw: Properly handle cooperative matrices created with constants")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39769>
2026-02-09 19:52:16 +00:00
Caio Oliveira
e2bf82f900 anv: Simplify cooperative matrix feature advertising
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39728>
2026-02-09 19:26:08 +00:00
Caio Oliveira
ab8fef23e6 anv: Don't enumerate cooperative matrix configurations if disabled
Instead of asserting, let's simply not enumerate any configuration if
cooperative matrix is disabled.  This can happen for example when
neither systolic nor software lowering is being used.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39728>
2026-02-09 19:26:08 +00:00
Eric Engestrom
1a7fa4974d pvr/ci: simplify the renderer string check
We don't need that much to make sure we're testing on the right driver,
and shortening it to only the "PowerVR" part means that it will work
with no modifications when the next pvr device is added to CI.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39787>
2026-02-09 18:58:14 +00:00
Eric Engestrom
2acda35230 pvr/ci: rename deqp suite to a less generic name
All the `deqp-*.toml` are copied into the same /install/ folder, so it's
best if they have names that are specific enough to not accidentally
pick the wrong one :)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39787>
2026-02-09 18:58:14 +00:00
Eric Engestrom
b2d99b9378 pick-ui: add Backport-to: * as a synonym to Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34598>
2026-02-09 18:46:20 +00:00
Faith Ekstrand
5ae89dbf48 pan/bi: Allow vector booleans
Lower booleans to their bit size before we lower ALU widths so the ALU
widths will use the final size of the boolean, not the bool size.  But
also, if we do have a boolean vector (the order in which these passes
get called isn't as obvious as you'd like), we want to let it stay
max-width and then lower it after we've converted it to a wide boolean.
Otherwise, we'll end up scalarizing lots of boolean stuff we don't mean
to just because it hits the else case.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
6847143847 pan/bi: Set lower_vector_cmp
This will get rid of ball_iequal and bany_inequal early instead of
waiting for it to happen as a side-effect of lowering ALU widths.  This
also enables some funky lowerings for fall_equal and friends but we'll
never see those because they're only ever generated by the bool-to-float
pass.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
dceee75f87 pan/bi: Vectorize comparisons
We've got vectorized comparison instructions going all the way back to
Bifrost.  We should probably stop splitting them.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
918624174b pan/bi: Don't attempt to fuse AND(ICMP, ICMP) if the AND is swizzled
There might be cases under which we can make this work but they're
tricky at best.  For now, don't even try.

Cc: mesa-stable
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
e0771615bc pan/bi: Stop calling nir_lower_pack()
This is no longer necessary now that we implement them all.  Also, it
was screwing up vectorization in some cases so it's better to just not
have it in the compile flow at all.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
41d173afef pan/bi: Add support for unpack_64_2x32
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
a3fa68502e pan/bi: Add support for unpack_32_4x8
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
deb9244436 pan/bi: Run lower_alu_width after opt_algebraic_late
It can generate extract instructions which we expect to be scalar.

Cc: mesa-stable
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
02bade5cfa nir/lower_bool_to_bit_size: Make smarter canonicalization choices
Instead of blindly taking the first source, take the first source that
isn't a constant.  That way we won't accidentally expand things to
32-bit just because a constant came first.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Faith Ekstrand
711b3358a8 nir/lower_bool_to_bit_size: Use the correct num_components for conversions
There's a nice little comment here saying we use the same write mask (an
out of date term in NIR) and swizzle but we're no longer actually doing
that.  Depending on nir_builder magic, we may actually generate a scalar
when we really want a vector.  The fix is to use more builder helpers
and just eat the potential copy.

Fixes: 3180656bbc ("nir: don't use nir_build_alu() with incomplete sources")
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39725>
2026-02-09 18:16:40 +00:00
Karol Herbst
240bae6b23 rusticl/mesa: only use resource_from_user_memory if the cap is advertised
Fixes some buffer tests on some iris configurations.

Cc: mesa-stable
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Tested-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39785>
2026-02-09 17:59:55 +00:00
Alyssa Rosenzweig
91550d0709 nir: disable fast-math for lowering conversions
the lowerings for e.g. f2f16_rtp have carefully written sequences using
Infinity. nir_opt_algebraic will stomp right through this. `feq x, inf`
without an exact flag is basically always a bug. Disable fast math here.
Fixes OpenCL CTS test_half on Iris.

Cc: mesa-stable
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39740>
2026-02-09 17:22:02 +00:00
Yiwei Zhang
3750e42f5c pan/kmod: clean up unused flags from bo import paths
Tested-by: Valentine Burley <valentine.burley@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39723>
2026-02-09 17:01:23 +00:00
Yiwei Zhang
8d25f9821b pan/kmod: drop pan_kmod_bo_check_import_flags validation
The passed flags is always zero on the import paths:
- panfrost_bo_import
- panvk_AllocateMemory
- panvk_GetMemoryFdPropertiesKHR

Fixes: 1c7793ea0b ("panvk: Advertise a HOST_CACHED memory type if we have WC maps")
Tested-by: Valentine Burley <valentine.burley@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39723>
2026-02-09 17:01:23 +00:00
Job Noorman
ea2507dd8b tu,ir3: lower multiview indirect stores to register indirects
nir_lower_multiview creates a loop that loops over the view mask and
uses indirect stores. Since we only support direct
store_per_view_output, we have to make sure these indirects are gone.
Lowering the IO vars to temporaries will replace them with indirects on
registers.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 6a1c8d3a0c ("ir3, freedreno, turnip: Lower io earlier")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14787
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39694>
2026-02-09 15:31:03 +00:00
Nick Hamilton
cf0786c766 pco: Fix multiview sampling of subpass input attachments
When sampling a subpass input attachment when multiview is been used
the the view index is required.

This becomes an extra output from the vertex shader which is then
iterated into the fragment shader input where it is then used as the
array layer index when sampling the subpass input attachment.

However this extra output was not having its interpolation mode
configured correctly leading to incorrect instructions being added
causing the view index to always be zero and thus sampling the
subpass input attachment incorrectly.

Fix is to make sure the view index interpolation mode is set to flat.

Fix:
dEQP-VK.multiview.input_attachments.no_queries.1_2_4_8_16_32
dEQP-VK.multiview.input_attachments.no_queries.1_2_4_8
dEQP-VK.multiview.input_attachments.no_queries.15_15_15_15
dEQP-VK.multiview.input_attachments.no_queries.15
dEQP-VK.multiview.input_attachments.no_queries.5_10_5_10
dEQP-VK.multiview.input_attachments.no_queries.8_1_1_8
dEQP-VK.multiview.input_attachments.no_queries.8
dEQP-VK.multiview.input_attachments.no_queries.max_multi_view_view_count
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.1_2_4_8_16_32
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.1_2_4_8
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.15_15_15_15
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.15
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.5_10_5_10
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.8_1_1_8
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.8
dEQP-VK.multiview.renderpass2.input_attachments.no_queries.max_multi_view_view_count

Signed-off-by: Nick Hamilton <nick.hamilton@imgtec.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39715>
2026-02-09 14:14:55 +00:00
Maíra Canal
ba102224ab broadcom/compiler: Don't lower to LCSSA before calling nir_divergence_analysis()
Since commit 87cb42f9 ("treewide: don't lower to LCSSA before calling
nir_divergence_analysis()"), NIR can calculate divergence without
converting to LCSSA beforehand. Therefore, remove LCSSA lowering from
Broadcom's compiler.

Signed-off-by: Maíra Canal <mcanal@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39765>
2026-02-09 13:49:02 +00:00
Aitor Camacho
cc6c200719 kk: Expose sampleRateShading
Reviewed-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39699>
2026-02-09 13:35:01 +00:00
Aitor Camacho
f0b038cb7f kk: Expose VK_EXT_image_2d_view_of_3d
Add missing flag for the 2d_view_of_3d, no further changes needed.

Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:39 +00:00
Aitor Camacho
65bb2cd51e kk: Expose largePoints
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:39 +00:00
Aitor Camacho
575dd21e11 kk: Expose depthBiasClamp
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:39 +00:00
Aitor Camacho
e11fd9a178 kk: Expose VK_EXT_texel_buffer_alignment
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:38 +00:00
Aitor Camacho
93d8c652da kk: Expose VK_EXT_extended_dynamic_state2
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:37 +00:00
Aitor Camacho
d0291969ff kk: Expose pushDescriptor from 1.4
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:36 +00:00
OPNA2608
41b9dc3a2c rocket: Fix printing of rknpu_mem_create.dma_addr
The Linux kernel's __u64 isn't always implemented as a long long, and there's no nice define for printing it like with uint64_t.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39119>
2026-02-09 11:26:01 +00:00
OPNA2608
4c699087d4 vc4: Fix printing of get_tiling.modifier
The Linux kernel's __u64 isn't always implemented as a long long, and there's no nice define for printing it like with uint64_t.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38151>
2026-02-09 11:08:52 +00:00
Vinson Lee
bc34a122f3 freedreno/decode: Fix const correctness in get_tex_count
Fix compiler error:

../src/freedreno/decode/cffdec.c:580:7: error: assigning to 'char *'
from 'const char *' discards qualifiers
[-Werror,-Wincompatible-pointer-types-discards-qualifiers]
  580 |    p = strstr(name, "CONST");
      |      ^ ~~~~~~~~~~~~~~~~~~~~~

glibc now provides C23-style type-generic string functions. strstr
returns const char * when passed a const char * argument. Update p
declaration to const since it's only used for offset calculation.

Fixes: 1ea4ef0d3b ("freedreno: slurp in decode tools")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39770>
2026-02-09 10:05:54 +00:00
Samuel Pitoiset
17bbd45d59 radv: emit the framebuffer state when rendering begins
Much better.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39731>
2026-02-09 09:43:02 +00:00
Samuel Pitoiset
e178382fb8 radv: add a new dirty bit for the GFX12 HiZ workaround
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39731>
2026-02-09 09:43:02 +00:00
Samuel Pitoiset
a010c2694a radv: move {depth,stencil}_compress_disable to the image view extra info
Doesn't have to be a pipeline parameter.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39731>
2026-02-09 09:43:01 +00:00
Samuel Pitoiset
9abe6d4dc2 radv: remove declared but unused radv_get_dcc_max_uncompressed_block_size()
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39731>
2026-02-09 09:43:01 +00:00
Samuel Pitoiset
8d9fb0744e radv: move color/depth-stencil init surface helpers to radv_image_view.c/h
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39731>
2026-02-09 09:43:01 +00:00
Samuel Pitoiset
39719c6c44 radv/meta: remove dead code in the gfx depth/stencil clear path
The driver either does a fast-clear using compute or a slow clear
using graphics, so the "fast" clear using graphics isn't used at all.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39731>
2026-02-09 09:43:00 +00:00
Eric Engestrom
a9bf70486d pvr/drm-shim: avoid trying a random bvnc by default
If `PVR_SHIM_DEVICE_BVNC` is not set, we would try the bvnc
corresponding to whatever was in uninitialised memory, which would
likely fail, and then fallback to `DEFAULT_DEVICE_BVNC`.

Instead, initialize to `DEFAULT_DEVICE_BVNC` so that "unset bvnc" and
"invalid bvnc" behave the same.

Fixes: ba104d3e92 ("pvr: add support for drm-shim")
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39766>
2026-02-09 09:23:42 +00:00
Khem Raj
268e19378f glx: fix const qualifier warnings found with C23 glibc support
glibc master has been C23'fying the functions which is resulting errors

Several functions assigned results of bsearch/strstr/strpbrk/memchr to
non-const pointers, triggering -Wincompatible-pointer-types-discards-qualifiers
under clang/gcc with -Werror. Cast bsearch return values where needed and
propagate const correctness for strstr/strpbrk/memchr results.

Removes build failures with strict warning flags without changing behavior.

Signed-off-by: Khem Raj <raj.khem@gmail.com>

[Eric: changed the glxglvnd.c hunk to add the missing `const` instead of casting it away]

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38594>
2026-02-09 09:00:43 +00:00
Samuel Pitoiset
5a9e1db405 zink/ci: update checksum of one trace running on VANGOGH
It's actually an unrelated change, it's a weird difference between
fast-clears and slow clears, but it looks exactly the same for humans.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39729>
2026-02-09 08:41:07 +00:00
Samuel Pitoiset
e488085942 radv/meta: remove unused saving/restoring rendering state logic
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39729>
2026-02-09 08:41:07 +00:00
Samuel Pitoiset
98186aba36 radv/meta: stop saving/restoring rendering state for color/depth decompressions
These should always happen outside of rendering.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39729>
2026-02-09 08:41:07 +00:00
Samuel Pitoiset
04d5077b00 radv: emit late decompressions for fbfetch slightly earlier
Right after "normal" layout transitions and just before the rendering
state is set, mostly because it doesn't need to be saved/restored
either.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39729>
2026-02-09 08:41:07 +00:00
Samuel Pitoiset
04f6bfae51 radv: only pass custom sample locations when relevant
Custom sample locations are only needed for depth decompression.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39729>
2026-02-09 08:41:07 +00:00
Samuel Pitoiset
ce3539b54f radv: fix late decompressions for fbfetch with more corner cases
With layers, or custom sample locations for depth.
Found this by inspection.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39729>
2026-02-09 08:41:06 +00:00
Iago Toral Quiroga
f6a2d14008 nir/opt_vectorize_load_store: allow sizes unaligned with high offset for loads
This was added specifically for vectorized stores, so allow for loads.

Without this, the pass will fail to vectorize 2 consecutive 16-bit loads
into a single 32-bit load.

Fixes: 2ed79f80ba ("nir/load_store_vectorize: Skip new bit-sizes that are unaligned with high_offset")
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39713>
2026-02-09 07:59:21 +00:00
Tapani Pälli
fc814fa828 anv: skip compressed flag for bo if not supported by modifier
This has not been problem before the compression hint given to kernel
but now that we set it we hit problems when allocating bo if modifier
does not support compression.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14625
Fixes: f91de58818 ("anv: Add support to DRM_XE_GEM_CREATE_FLAG_NO_COMPRESSION")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39710>
2026-02-09 07:19:34 +02:00