Commit graph

222951 commits

Author SHA1 Message Date
Juan A. Suarez Romero
3df406633e vc4/ci: update expected results
Add new failures and timeouts.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41778>
2026-05-25 10:22:12 +02:00
Karol Herbst
64eba87a67 rusticl: more intel compat stuff
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41475>
2026-05-25 01:07:44 +00:00
Karol Herbst
b618cbb5e9 rusticl/kernel: handle nir shader compilation failures gracefully
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41475>
2026-05-25 01:07:44 +00:00
Mary Guillemard
b8fa4fd258 nak: Allow YY swizzle for SM20 and SM32 asserts
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
We now handle that specific form on F2F and F2I but were still
asserting.

Signed-off-by: Mary Guillemard <mary@mary.zone>
Fixes: 67bfbc7535 ("nak: rework swizzling on scalar FP16 ops")
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41771>
2026-05-24 12:48:01 +02:00
Vinson Lee
e0eefe5999 gfxstream: codegen: drop const from let-param scalar cast
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Let-parameters (e.g. hasRasterization, hasTessellation for
VkGraphicsPipelineCreateInfo) are local variables initialized by
reading a value from the stream. The codegen was creating them
with isConst=True, which caused streamPrimitive() to emit a cast
like:

    hasRasterization = (const uint32_t)vkStream->getBe32();

The const qualifier on a scalar rvalue cast result is discarded
and triggers -Werror=ignored-qualifiers once that flag is enabled
for Soong compatibility, breaking the build:

    src/gfxstream/guest/vulkan_enc/goldfish_vk_marshaling_guest.cpp:
    In function 'void gfxstream::vk::unmarshal_VkGraphicsPipelineCreateInfo(
    VulkanStreamGuest*, VkStructureType, VkGraphicsPipelineCreateInfo*)':
    goldfish_vk_marshaling_guest.cpp:4202:28: error: type qualifiers
    ignored on cast result type [-Werror=ignored-qualifiers]
     4202 |         hasRasterization = (const uint32_t)vkStream->getBe32();
          |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    goldfish_vk_marshaling_guest.cpp:4207:27: error: type qualifiers
    ignored on cast result type [-Werror=ignored-qualifiers]
     4207 |         hasTessellation = (const uint32_t)vkStream->getBe32();
          |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    cc1plus: some warnings being treated as errors

Mark the let-param as non-const since it is a local that gets
assigned.

Fixes: 190ce8280f ("meson: Add Soong compatibility compiler flags to Vulkan drivers")
Assisted-by: Claude Code (Opus 4.7)
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Gurchetan Singh <gurchetan.singh.foss@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41763>
2026-05-23 06:54:37 +00:00
Caio Oliveira
c88e30f0e4 anv, brw: Use previous shader VUE map for FS input layout when available
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The FS compilation needs the VUE map from the previous stage when the FS
has more inputs than SBE_SWIZ can remap.  Recomputing a VUE map just
from FS inputs loses certain slots like multiview slots and extra
position slots (for primitive replication), so high-numbered attributes
can read the wrong source.

When available, pass the previous stage VUE map to the FS compilation
and use it.  Make sure that the payload is sized based on what is read,
in case the previous stage has more outputs than FS reads.

Bugs did not surface when there were just 16 or fewer varying inputs,
because the driver can program SBE_SWIZ to translate the positions in
the previous shader VUE into what the FS wants.  For more inputs, this
mapping is not used, and the FS must use the exact same slots.

Note this is not a problem for pipeline libraries because they use
a different fixed layout.  This is also not an issue with
EXT_shader_object because multiview draws are not allowed with that
extension.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41747>
2026-05-23 05:17:37 +00:00
Caio Oliveira
3ded84870f spirv: Stop warning about ignored invalid ArrayStride decorations
In practice, these warnings produce more noise than signal.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41758>
2026-05-23 04:39:46 +00:00
Nanley Chery
d74a03a70d anv: Flush previous aux-mode changes
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
If the aux-usage changes, we need to flush out the previous mode from
the cache (see iris's flush_previous_aux_mode()).

I ran into this while testing layout-based compression toggling with the
Hogwarts Legacy trace on DG2. The trace exhibited graphical corruption
unless the DATA_CACHE was flushed.

On an unmodified driver, this currently only affects transitions from
AUX_NONE->AUX_CCS_D.

Backport-to: *
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41034>
2026-05-22 20:51:27 +00:00
Nanley Chery
c49674188e anv: Move storage check out of CCS-compat helper
Provides clearer reasons for INTEL_DEBUG=perf.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41034>
2026-05-22 20:51:27 +00:00
Nanley Chery
4b9561c733 anv: Allow CCS on more storage images for gfx12.5
To do this, we use a heuristic that depends on the image format and size
(see HSD 18014810884).

Average of two runs on an A750 from the performance CI:

* Naraka    +0.89%
* TWWH3     +0.45%
* Control   +0.37%
* Cyberpunk +0.35%

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41034>
2026-05-22 20:51:27 +00:00
Nanley Chery
df446326f8 anv: Avoid aux-disabling paths for block-compression
We don't support CCS on block-compressed textures prior to Xe2. On Xe2,
CCS is enabled on every image.

Improves INTEL_DEBUG=perf outputs. For example, in the Naraka trace on
DG2, we now report that r32_uint is CCS_E-incompatible instead of
bptc_rgba. This incompatibility is due to the storage usage flag and
will be clarified in future commits.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41034>
2026-05-22 20:51:27 +00:00
Nanley Chery
8e736f4d0d anv: Improve the CCS_E-incompatible perf-warn
Print the image format which is incompatible (or has an incompatible
list). On gfx12+, the format list shouldn't impact CCS_E-compatibility.
So, not printing the entire list should be sufficient on those
platforms.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41034>
2026-05-22 20:51:27 +00:00
Nanley Chery
ab9a1b4c92 anv: Improve the fast clear layout perf-warn
anv emits performance warnings earlier about compression being disabled,
so no need to emit this for AUX_NONE. Do provide the tiling however as
Xe2+ supports compressed linear surfaces.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41034>
2026-05-22 20:51:27 +00:00
Lakshman Chandu Kondreddy
8055fefea1 freedreno: Add support for A704
Add initial changes to enable basic functionality of A704.

Signed-off-by: Lakshman Chandu Kondreddy <lkondred@qti.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41762>
2026-05-22 20:14:35 +00:00
Faith Ekstrand
d90cbf263f panvk/csf: Inline the SPD addr helpers
We're already grabbing the VS for VERTEX_VARY_SPD on v11 and earlier and
we're already carrying the code to check for IA_PRIMITIVE_TOPOLOGY.  It
makes sense to have the code which selects shader descriptor there, too.
Otherwise the helper is a little too magic and can lead to bugs if
someone isn't paying attention. (See also the previous commit.)

Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41638>
2026-05-22 19:54:53 +00:00
Faith Ekstrand
a56b15edc6 panvk/csf: fix VERTEX_SPD dirty tracking when topology changes
Fixes: c7b94b098c ("panvk: Add v12 support")
Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41638>
2026-05-22 19:54:53 +00:00
Sagar Ghuge
04fe65e2bb brw/rt: Use BLAS(Object) level to get the ray address
Intersection shader works on custom procedural geometries which are
present only in BLAS (Object) level not in the TLAS (World) level.

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41739>
2026-05-22 19:26:59 +00:00
Valentine Burley
7395ae7494 tu/kgsl: Fix memory type support detection for unsupported flags
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Stops incorrectly assuming cached-coherent memory is supported on
hardware that does not support it, such as a610 and a619-holi.

Fixes: 5a59410962 ("turnip: add cached and cached-coherent memory types")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41761>
2026-05-22 18:58:53 +00:00
Lakshman Chandu Kondreddy
9ff0cd7b4d zink: Query external memory handle type compatibility
Zink sets multiple external memory handle types(like Opaque FD,DMA-BUF)
without confirming if the Vulkan driver actually supports them. This may lead
to failures when attempting to allocate external memory with vkAllocateMemory.

This patch introduces query_external_memory_compatibility() to verify
handle type support via VkPhysicalDeviceImageFormatProperties2.
Combine handle types only if they are compatible; otherwise, use a single
supported type as a fallback.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40212>
2026-05-22 18:39:19 +00:00
Mike Blumenkrantz
cafa22142b zink: create views for samplers lazily
pipe_context::create_sampler_view can be called from different threads,
so the vulkan object must not be accessed in order to avoid conflicts
with driver thread operations

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15337

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41759>
2026-05-22 18:19:13 +00:00
Adam Jackson
319011d690 zink: stop find_good_mod from mutating ici in place
find_good_mod was accumulating DISJOINT_BIT across iterations and
setting ici->usage on success. Change it to return results via
out-parameters and save/restore ici->flags around each modifier
attempt. The caller (negotiate_image_config) now explicitly sets
ici->usage and ici->flags after find_good_mod returns.

Also save/restore flags in the LINEAR modifier fallback path.

Assisted-by: Claude
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41734>
2026-05-22 18:01:17 +00:00
Adam Jackson
d305e6d7b1 zink: replace image negotiation with candidate-based approach
Replace the nested retry loops (eval_ici, set_image_usage,
double_check_ici, suboptimal_check_ici, try_set_image_usage_or_EXTENDED)
with a flat candidate array that encodes the same fallback order.

Instead of mutating a shared VkImageCreateInfo through deeply nested
function calls and retrying with toggled flags, we now:
1. build_usage_candidates() generates an array of (tiling, usage,
   flags, has_format_list) tuples in preference order
2. try_image_config() applies each candidate and calls check_ici
3. negotiate_image_config() iterates tiling/extended combos, builds
   candidates for each, and takes the first passing one

The modifier path (find_good_mod) is kept separate since it iterates
modifiers and takes the last good one (max-by-position, matching
the GBM worst-to-best convention), which is fundamentally different
from the candidate model's first-match-from-fallback-chain.

Duplicate candidates from the old code's redundant retry paths are
eliminated via dedup_configs(). The pNext chain surgery in
double_check_ici (manually unlinking VkImageFormatListCreateInfo) is
replaced by try_image_config's explicit format list chain/unchain.

The cube-compatible post-pass is simplified to a single check_ici
call instead of re-running the full negotiation.

Assisted-by: Claude
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41734>
2026-05-22 18:01:17 +00:00
Adam Jackson
f5943e9dbb zink: extract memory binding from create_image
Move disjoint/non-disjoint BindImageMemory into bind_image_memory().
create_image now reads as a clear sequence: format list, init_ici,
negotiate, pNext chain, CreateImage, allocate, bind. No functional
change.

Assisted-by: Claude
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41734>
2026-05-22 18:01:16 +00:00
Adam Jackson
d0311ff971 zink: extract pNext chain construction from create_image
Move VkExternalMemoryImageCreateInfo, DRM modifier explicit/list
create info, and user memory pNext chain building into
setup_image_pnext(). The Vk*Info structs now live in
image_pnext_state on the caller's stack. No functional change.

Assisted-by: Claude
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41734>
2026-05-22 18:01:16 +00:00
Adam Jackson
9716630b41 zink: extract format list setup from create_image
Move sRGB pair computation, video plane format enumeration, and
VkImageFormatListCreateInfo population into setup_format_list().
No functional change.

Assisted-by: Claude
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41734>
2026-05-22 18:01:16 +00:00
Adam Jackson
b0d80d9b70 zink: consolidate resource_create error paths
Replace four copy-pasted cleanup sequences with goto fail/fail_obj
labels. No functional change.

Assisted-by: Claude
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41734>
2026-05-22 18:01:16 +00:00
Rob Clark
a573e25b6d freedreno/registers: Gen8 perfcntr fixes
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Correct # of UCHE counters, and fix pipe for CMP counters.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41757>
2026-05-22 16:47:04 +00:00
Rob Clark
9260c8b145 freedreno/registers: Add a6xx CMP counter group
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41757>
2026-05-22 16:47:04 +00:00
Rob Clark
96c5179c02 freedreno/registers: Skip deprecated warns for kernel
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41757>
2026-05-22 16:47:04 +00:00
Lionel Landwerlin
fd11e4b4d3 intel: switch shader hash to 64bit value
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41748>
2026-05-22 15:05:30 +00:00
Lionel Landwerlin
c09f00d339 anv: use shader source hash rather than cmd_buffer fields
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41748>
2026-05-22 15:05:28 +00:00
Lionel Landwerlin
88418718a9 spirv: fixup infinite recursion with shader replacement
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
While trying to use that feature on RADV I ran into an infinite
recursion.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 97b4a6d0e3 ("compiler: SPIR-V shader replacement")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41751>
2026-05-22 14:31:22 +00:00
Daniel Stone
5b07e5e8e4 ci/panfrost: Add two T860 OpenCL fails
I've seen these for at least a couple of days now.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41749>
2026-05-22 13:31:37 +00:00
Daniel Stone
404a4f4d22 ci/panfrost: Switch T860 jobs to another RK3399 device type
The kevins are increasingly creaky and unreliable after a decade of
excellent service, so it's time to send them off to the farm and move
our T860 jobs to a device type which can actually run jobs.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41749>
2026-05-22 13:31:37 +00:00
David Rosca
998e2a70e7 radeonsi: Add RADEON_FLUSH_FORCE and use it to force flush
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Forcing flush by setting initial_gfx_cs_size to zero requires
there are always packets emitted on starting new gfx IB.
But this is not the case with userq, as there is no preamble.
Add a new flag to be used with si_flush_gfx_cs to force flush.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41530>
2026-05-22 10:49:22 +00:00
Lionel Landwerlin
294644643e brw: avoid requiring a valid render target for empty fragment shaders
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Dishonered 2 or DXVK is creating pipelines with empty fragment
shaders. With alpha-to-coverage a dynamic state, we currently consider
there is a need for a render target but if the shader is not writing
anything, it's not needed.

This change only considers the color output writes as it's the alpha
channel there that is used for coverage computation.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41711>
2026-05-22 09:53:33 +00:00
Lionel Landwerlin
f34dd96ab5 anv: fix render target remapping tracking at the beginning of render passes
At the beginning of render passes we need to consider all entries as
unknown because it's all new color outputs.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: d2f7b6d5a7 ("anv: implement VK_KHR_dynamic_rendering_local_read")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15475
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41711>
2026-05-22 09:53:33 +00:00
Lionel Landwerlin
f35a0f3ba5 anv: fix missing bindless flag hashing
It got dropped in a rebase it seems...

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41711>
2026-05-22 09:53:33 +00:00
Caio Oliveira
e46b43080b iris: Simplify code that calls brw/jay
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Iván Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41633>
2026-05-22 00:57:20 -07:00
Caio Oliveira
ffa4bc7d6a anv: Simplify code that calls brw/jay
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Iván Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41633>
2026-05-22 00:57:20 -07:00
Caio Oliveira
33475c0cce brw: Move key and prog_data to base compile params
Reviewed-by: Iván Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41633>
2026-05-22 00:57:20 -07:00
Caio Oliveira
7893eefa3b brw: Use a single brw_compile entrypoint
Reviewed-by: Iván Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41633>
2026-05-22 00:57:20 -07:00
Valentine Burley
190ce8280f meson: Add Soong compatibility compiler flags to Vulkan drivers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Suggested by @gurchetansingh.

Android's Soong build system treats several compiler warnings as errors
by default: https://android.googlesource.com/platform/build/soong/+/27f57506/cc/config/global.go/#218

To catch these issues in Mesa, introduce `soong_compat_c_args`
and `soong_compat_cpp_args` with the following flags treated as errors:
 -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 -Werror=date-time
 -Werror=gnu-alignof-expression
 -Werror=ignored-qualifiers
 -Werror=implicit-fallthrough
 -Werror=int-conversion
 -Werror=missing-prototypes
 -Werror=pragma-pack
 -Werror=pragma-pack-suspicious-include
 -Werror=sizeof-array-div
 -Werror=string-plus-int
 -Werror=unreachable-code-loop-increment

These compatibility flags are added to the meson configurations
for ANV, Gfxstream, Lavapipe, PanVK, Turnip, and Venus.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Acked-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Gurchetan Singh <gurchetan.singh.foss@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41644>
2026-05-22 07:09:49 +00:00
Valentine Burley
64afecc4f9 panvk: Fix ignored qualifier warnings
Fixes:

src/panfrost/lib/pan_image.h:133:15: error: 'const' type qualifier on return type has no effect [-Werror,-Wignored-qualifiers]
  133 | static inline const struct pan_image_plane_ref
      |               ^~~~~

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Gurchetan Singh <gurchetan.singh.foss@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41644>
2026-05-22 07:09:49 +00:00
Valentine Burley
8cd6e3ac08 tu: Disable -Wmisleading-indentation when compiling with GCC
Based on the approach in e0eea5ea4e.

When a file is too large, -Wmisleading-indentantion will give the warning
below, that we can't prevent from a #pragma:

../src/freedreno/vulkan/tu_perfetto.cc: In function 'void setup_incremental_state(MesaRenderpassDataSource<TuRenderpassDataSource, TuRenderpassTraits>::TraceContext&, tu_device*)':
../src/freedreno/vulkan/tu_perfetto.cc:162: note: '-Wmisleading-indentation' is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers
  162 |    if (!state->was_cleared)
../src/freedreno/vulkan/tu_perfetto.cc:162: note: adding '-flarge-source-files' will allow for more column-tracking support, at the expense of compilation time and memory

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89549 for details.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41644>
2026-05-22 07:09:49 +00:00
Lionel Landwerlin
dd41fde91d anv: use the new generation script for drirc
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41664>
2026-05-22 06:32:39 +00:00
Lionel Landwerlin
d8ab38e5e3 drirc: remove non Anv option in the Anv section
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41664>
2026-05-22 06:32:39 +00:00
Lionel Landwerlin
83ed74b5df hasvk: add a driver section for drirc
Only adding the workarounds that have an actual effect on that driver.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41664>
2026-05-22 06:32:39 +00:00
Lionel Landwerlin
af88ba317d hasvk: rename a couple of drirc options
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41664>
2026-05-22 06:32:39 +00:00
Lionel Landwerlin
61267c69db util/drirc_gen: enable validation for a specific driver
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41664>
2026-05-22 06:32:39 +00:00