Commit graph

222391 commits

Author SHA1 Message Date
Marek Olšák
f4f3326fa2 radeonsi: handle any size of shader args in the LLVM PS prolog
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
this will be needed for perspective-correct interpolation at offset/sample

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:46 +00:00
Marek Olšák
b0df142b93 radeonsi: stop using TGSI definitions for interpolation
define our own

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:46 +00:00
Marek Olšák
2fe4c47a21 radeonsi: simplify get_interp_info_from_input_load
it's only used for color inputs

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:46 +00:00
Marek Olšák
38cea8334e radeonsi: declare prolog LINEAR_SAMPLE/CENTER VGPRs only if used
Small PS have their VGPR usage equal to the number of input VGPRs,
and this reduces it.

4 input VGPRs removed in most cases.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:46 +00:00
Marek Olšák
cfc9038a3d radeonsi: declare prolog LINE_STIPPLE_TEX_ENA VGPR only if needed
Small PS have their VGPR usage equal to the number of input VGPRs,
and this reduces it.

1 input VGPR removed from the PS prolog in most cases.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:46 +00:00
Marek Olšák
e6db0492f6 radeonsi: declare prolog ANCILLARY & SAMPLE_COVERAGE VGPRs only if used
Small PS have their VGPR usage equal to the number of input VGPRs,
and this reduces it.

2 input VGPRs removed from the PS prolog in most cases.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
280f8e6ab5 aco,radeonsi: declare prolog CENTROID VGPRs only if used
Small PS have their VGPR usage equal to the number of input VGPRs,
and this reduces it.

4 input VGPRs removed in most cases.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
5126258f55 aco,radeonsi: don't forward LINE_STIPPLE_TEX_ENA VGPR from the PS prolog
It's unused. This frees 1 VGPR in the prolog for temps.

This only affects radeonsi.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
e50b114d25 radeonsi: move SI_SPI_PS_INPUT_ADDR_FOR_PROLOG into a helper function
it will be dynamic

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
c488d02c5e ac: add ac_shader_args::line_stipple_tex_ena
for later use

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
7376c311c4 radeonsi: use shader_info::fs::uses_sample_shading for ac_nir_lower_ps_early
This was missing and it slightly improves code generation.
8 is always correct with maximum sample shading.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
b63f866c84 radeonsi: remove dead get_frag_coord_from_pixel_coord optimization
It's applied unconditionally by ac_nir_lower_ps_early. It was probably
replaced by that at some point.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
c9c0dce948 aco,radeonsi: use enums for color barycentrics instead of input VGPR indices
The VGPR indices will be dynamic. This replaces hardcoded VGPR indices
with enums in the PS prolog key.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
97660e91b5 ac,radeonsi: add helpers to print SPI_SHADER_COL/Z_FORMAT
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
1c76351aee ac,radeonsi: add a helper to print PS input VGPR layout
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
5e6952307d radeonsi: fix a typo in si_shader_update_spi_shader_formats
The failure is reproducible with:
    AMD_DEBUG=mono piglit/bin/fbo-drawbuffers-none use_frag_out -auto -fbo

Fixes: 88986dcc9c - radeonsi: account for outputs_written when updating spi_shader_col_format

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
933b25b0b6 nir: add an option to ignore INTERP_MODE_NONE in nir_shader_gather_info
Color interpolation (INTERP_MODE_NONE) has unknown barycentrics
and it could be flat shading at runtime.

It's a problem when shader_info is expected to match what's actually
used.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41226>
2026-05-12 14:13:45 +00:00
Marek Olšák
feeaae1c28 nir/licm: allow speculative hoisting across terminate if the filter is set
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41453>
2026-05-12 13:41:06 +00:00
Marek Olšák
3c2786b76a nir/tests: add nir_opt_licm tests
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41453>
2026-05-12 13:41:06 +00:00
Marek Olšák
1dfc0e3c30 nir/opt_licm: add filter callback
Speculative hoisting is only possible with the filter callback.

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41453>
2026-05-12 13:41:06 +00:00
Erik Faye-Lund
bc841498f8 meson: update libdrm wrap
We require 2.4.133 on AMD now, so let's update the libdrm wrap.

Fixes: e0b5724e85 ("meson: bump required libdrm to 2.4.133 for AMDGPU")
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41502>
2026-05-12 13:02:24 +00:00
Erik Faye-Lund
06280fb8c2 pan/ci: remove benign typoed flake
Seems I accidentally added two copies of the same test-name in
6661c59981 ("pan/ci: add some more flakes"), with the former one
missing the last character. This didn't cause any harm, because this
doesn't match any tests. But let's clean it up.

Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41020>
2026-05-12 12:42:58 +00:00
Erik Faye-Lund
250b1b178a pan/ci: update flakes based on nightly ci
We had a couple of nightly failure in these two tests. They don't seem
consistent, so let's mark them as flakes.

Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41020>
2026-05-12 12:42:58 +00:00
llyyr
b11f0ce609 vulkan/wsi/wayland: use mtx helpers in wait_for_present2
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
present_ids.lock is a mtx_t object, and the rest of the file already
uses mtx_(un)lock helpers.

Fixes: 3023f31cad ("wsi/wayland: Add support for PresentWait2")
Signed-off-by: llyyr <llyyr.public@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41486>
2026-05-12 12:17:09 +00:00
squidbus
6afe042105 kk: Enable VK_(EXT/KHR)_line_rasterization
For multi-sampled bresenham lines, we need to break the render pass to
center the sample positions.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41499>
2026-05-12 12:02:51 +00:00
Eric Engestrom
8b738d475f docs/ci: explain what Marge saying "Manual Step encountered" means
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41497>
2026-05-12 11:55:20 +00:00
Eric Engestrom
2551070ba3 docs/submittingpatches: fix section nesting
"The stable tag" is supposed to be at the same level as "The Fixes:
tag", not inside of it.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41497>
2026-05-12 11:55:20 +00:00
Erik Faye-Lund
4916cee439 mesa/main: remove unused array
The values here are only ever set to GL_TRUE, and never ever changed, so
let's just rip it out.

Fixes: 37190ad932 ("mesa: drop texformat code this isn't used.")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38656>
2026-05-12 11:06:04 +00:00
Erik Faye-Lund
b92719f926 Revert "mesa: check for ARB_ES3_compatibility in format checks"
This reverts commit d5916cb3ca.

The GL_ARB_ES3_compatibility spec, says the following:

> Issues
>
>     1) OpenGL-ES 3.0 contains several features that have been deprecated from
>        the latest OpenGL Core specification. These were retained in OpenGL-ES
>        3.0 in order to provide backwards compatibility with OpenGL-ES 2.0. Those
>        features are:
>
> [snip]
>
>         * Legacy pixel formats - all ALPHA, LUMINANCE, LUMINANCE_ALPHA
>
> [snip]
>
>        Should we bring these features back into the OpenGL 4.x Core specification
>        so that it is a complete super-set of OpenGL-ES 3.0?
>
>        RESOLVED: No, these will not be brought back into OpenGL 4.x Core. Apps
>        written for OpenGL-ES 3.0 that want to also be compatible with OpenGL
>        should make sure they don't use these features.

So, it seems pretty clear that we shouldn't have included these formats
here. So let's remove them.

Turns out, this is a CTS bug, see this for more details:
https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/6191

Fixes: d5916cb3ca ("mesa: check for ARB_ES3_compatibility in format checks")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38656>
2026-05-12 11:06:04 +00:00
Hans-Kristian Arntzen
7cbdb8e667 wsi/common: Report correct time domain in VkPresentTimingInfo.
During development of EXT_present_timing feature, we had to change
from CLOCK_MONOTONIC time domain to PRESENT_STAGE_LOCAL_EXT, and that is the only domain
reported to applications as being supported.

This case was missed when reporting the timestamps,
where applications can now get confused because we report the "actual" present timing
domain instead of PRESENT_STAGE_LOCAL_EXT as would be expected.
At the time, VVL didn't seem to catch this error in bringup-tests, but it does now.

The only known impact is some goofyness in VVL, but it's possible that some application would
have been broken by this bug.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
Fixes: 47d69664d8 ("vulkan/wsi: Add common infrastructure for EXT_present_timing.")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41465>
2026-05-12 10:24:41 +00:00
Georg Lehmann
e7a035df65 radv: fix amount of sample shading with required sample shaded inputs
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The Vulkan spec says:

If a fragment shader entry point statically uses an input variable
decorated with a BuiltIn of SampleId or SamplePosition,
sample shading is enabled and a value of 1.0 is used instead of minSampleShading.
If a fragment shader entry point statically uses an input variable decorated
with Sample, sample shading may be enabled and a value of 1.0 will be
used instead of minSampleShading if it is.

This means we have to overwrite the command buffer state entirely.

Cc: mesa-stable

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41482>
2026-05-12 09:58:07 +00:00
Erik Faye-Lund
2d0e368937 mesa/main: remove low-value verbose-switch
This toggles a single, low-value print. Let's drop it to simplify things
a bit.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:58 +00:00
Erik Faye-Lund
1490ad5f09 mesa/main: remove mesa_print_display_list function
This function isn't exported, so applications can't, in fact use it. So
let's simplify the internals a bit here, remove the helper.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:58 +00:00
Erik Faye-Lund
ddbb14dc9d mesa/main: remove VERBOSE_API
This feature has been left to bitrot for a long time, and no longer
works consistently. Here's a few examples of things I found:

- Lots of newer GL commands never implement these
- It's very inconsistent what level of details about the command is
  logged: some print arguments, some print details about arguments, some
  print return-values, some print the function name, some print a
  slightly incorrect function name.
- Interactions with GL_KHR_no_error is entirely random; some no-error
  functions report, and some does not.

Realistically, this mechanism hasn't worked for a long time, and nobody
seems to care. If a user wants to trace what OpenGL calls are done, we
have tools like apitrace that are better suited for this purpose anyway.

Let's just rip it out. Since VERBOSE_TEXTURE is just a subset of
VERBOSE_API, rip that out as well.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:58 +00:00
Erik Faye-Lund
e33f163dfe mesa/main: remove unused verbose-flags
Most of these flags are no longer used, so let's remove them.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:57 +00:00
Erik Faye-Lund
daea144448 mesa/main: remove low-value debug-output
This isn't very useful as-is for a few reasons:
1. It only does something in debug-builds, which is not what most users
   (or application developers) is using.
2. It's undocumented.
3. Most of the information printed here is trivial to figure out with
   tools like glxinfo.
4. It's missing output for platforms like x86-64 and ARM...

So let's just axe this, it's unlikely anyone uses it.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:57 +00:00
Erik Faye-Lund
b9c445f361 mesa/main: do not gate performance warning
This warning effectively warns users about needless calls to
glGetGraphicsResetStatusARB(), which is nice. But it's currently gated
behind the undocumented VERBOSE_API flag, which also prints a whole lot
of API-call tracing, making this useful message drown in the noise.

So let's instead make this use the _mesa_perf_debug macro, which will
notify applications through the appropriate channels (GL_KHR_debug),
making it more likely to be picked up by developers.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:55 +00:00
Erik Faye-Lund
afe3f28013 mesa/main: remove incorrect debug-output
This message was incorrect from the time it was introduced; the function
can return other error messages. If that happened in reality or not was
a bit more unsure, but that's not a good reason to make a blanket
statement like this. In either case, we do track properly now, and we
have for a long time.

The other, similar message in this function is correct.

Fixes: 916bc4491a ("mesa: Implement proper tracking logic for glGetGraphicsResetStatusARB")
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:55 +00:00
Erik Faye-Lund
e76ff76475 mesa/main: remove stale prototypes
Fixes: 88b6e46ee3 ("mesa: remove unused image debug code")
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41129>
2026-05-12 09:26:54 +00:00
Danylo Piliaiev
98e30a598c tu: Fix BV/BR race in tu_clone_trace_range when waiting on barrier
Caused hangs in the following CTS test with CB enabled:
dEQP-VK.renderpasses.dynamic_rendering.primary_cmd_buff.random.seed1_geometry_tessellation_multiview

Fixes: 50cc9c723c ("tu/u_trace: Prevent cloning stale RB_DONE_TS results")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41490>
2026-05-12 09:01:58 +00:00
Valentine Burley
abcb0f6cf5 tu/autotune: Clear active_batches before history objects are freed
Fixes use-after-free errors during device destruction.

Fixes: 40ffc052af ("tu: Rewrite autotune in C++")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41476>
2026-05-12 08:37:31 +00:00
Samuel Pitoiset
975ae01208 spirv: preserve the explicit stride for untyped pointers with matrices
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Make sure to cast with the deref type that contains more information
than the returned type because it's valid in SPIR-V.

This fixes dEQP-VK.binding_model.descriptor_heap.graphics.*_vectors and
also the PositiveGpuAV.HeapWithUntypedPointers VVL test.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41469>
2026-05-12 06:15:45 +00:00
Ian Romanick
907cc49c32 brw: Calcuate divergence before brw_from_nir
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
We were previously assuming that potentially stale divergence data was
valid. On some paths the register pressure estimator would recalculate
this, but, as is obvious from the results, not always.

v2: Add an assertion in brw_from_nir_emit_impl to ensure we don't end
up in this situation again.

v3: Call nir_divergence_analysis from
brw_nir_lower_deferred_urb_writes. This fixes assertion failures (the
assertion added in v2) in basically every graphics shader. The
altnerative was to call it from brw_compile_vs, brw_compile_gs, and
brw_compile_tes.

shader-db:

All Intel platformms had similar results. (Lunar Lake shown)
total instructions in shared programs: 17050403 -> 17054033 (0.02%)
instructions in affected programs: 296344 -> 299974 (1.22%)
helped: 0 / HURT: 376

total cycles in shared programs: 876063126 -> 875817316 (-0.03%)
cycles in affected programs: 78627328 -> 78381518 (-0.31%)
helped: 91 / HURT: 276

LOST:   1
GAINED: 10

fossil-db:

All Intel platformms had similar results. (Lunar Lake shown)
Totals:
Instrs: 913770429 -> 916075391 (+0.25%); split: -0.00%, +0.26%
CodeSize: 14647414640 -> 14726176320 (+0.54%); split: -0.02%, +0.56%
Cycle count: 102308091527 -> 102290664775 (-0.02%); split: -0.26%, +0.24%
Spill count: 3469632 -> 3469124 (-0.01%); split: -0.08%, +0.07%
Fill count: 5007038 -> 4998674 (-0.17%); split: -0.51%, +0.34%
Max live registers: 192568853 -> 192595355 (+0.01%); split: -0.00%, +0.02%
Max dispatch width: 48713168 -> 48712880 (-0.00%); split: +0.00%, -0.00%
Non SSA regs after NIR: 140252767 -> 140253718 (+0.00%)

Totals from 223099 (11.11% of 2007586) affected shaders:
Instrs: 314077245 -> 316382207 (+0.73%); split: -0.01%, +0.75%
CodeSize: 5335583824 -> 5414345504 (+1.48%); split: -0.06%, +1.54%
Cycle count: 45868025821 -> 45850599069 (-0.04%); split: -0.58%, +0.54%
Spill count: 2062649 -> 2062141 (-0.02%); split: -0.14%, +0.11%
Fill count: 3343019 -> 3334655 (-0.25%); split: -0.76%, +0.51%
Max live registers: 36762498 -> 36789000 (+0.07%); split: -0.02%, +0.09%
Max dispatch width: 5542224 -> 5541936 (-0.01%); split: +0.03%, -0.03%
Non SSA regs after NIR: 43727142 -> 43728093 (+0.00%)

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> [v1]
Fixes: 1bff4f93ca ("brw: Basic infrastructure to store convergent values as scalars")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41370>
2026-05-11 21:03:19 +00:00
Caio Oliveira
d08d345686 brw: Remove references to SIMD4x2
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
In Gfx9 the enum value was changed to mean SIMD8 double precision, so
drop the old unused enum.  At least on Gfx9 there is an extension bit
to set to use the old SIMD4x2 mode, we can recover if we ever need this
in the future.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41457>
2026-05-11 20:16:02 +00:00
Iván Briano
756343271a anv: add and use a drirc option to enable FullyCovered for vkd3d
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38879>
2026-05-11 18:15:50 +00:00
Iván Briano
2ad92e3ea4 anv/brw: handle FullyCoveredEXT
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38879>
2026-05-11 18:15:50 +00:00
Iván Briano
58006eaaa4 anv/brw: add conservative raster on/off to FS_CONFIG
FullyCovered will need to know if conservative rasterization is enabled,
so pass it on to the shader.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38879>
2026-05-11 18:15:50 +00:00
Iván Briano
fea8830946 intel/brw: add load_frag_shading_rate_intel
Add a new intrinsic to read the raw shading rate provided to the FS
payload, and lower load_frag_shading_rate in NIR using it.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38879>
2026-05-11 18:15:49 +00:00
Iván Briano
5383afadbf intel/brw: add load_msaa_rate_intel intrinsic
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38879>
2026-05-11 18:15:49 +00:00
Iván Briano
3448f3ce4a intel/brw: add load_coverage_mask_intel intrinsic
We'll need the raw coverage mask provided to the fragment shader in a
future patch.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38879>
2026-05-11 18:15:49 +00:00