Commit graph

192515 commits

Author SHA1 Message Date
Mary Guillemard
a3272cd0ce pan/genxml: Fix wrong size for compute size workgroup
Fix annoying warnings when decoding CSF.

Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Fixes: 486c341769 ("panfrost: Add architecture description XML for v10")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
2025-07-03 16:41:51 +00:00
Alyssa Rosenzweig
f853d285ef nir/lower_tex: optimize LOD bias lower for txl
make sure we can fold the f2f away. alternatively f2fmp would work
here but details.

elden ring:

Totals from 137 (4.27% of 3206) affected shaders:
Instrs: 485455 -> 484904 (-0.11%)
CodeSize: 3218638 -> 3215338 (-0.10%)
ALU: 308071 -> 307520 (-0.18%)
FSCIB: 308071 -> 307520 (-0.18%)

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
2025-07-03 16:41:51 +00:00
Alyssa Rosenzweig
b992703477 nir/lower_system_values: optimize global ID
for drivers where we need to lower a base_workgroup_id but not global IDs.
rather than lowering the whole global ID to stick the base workgroup ID in
there, just add the workgroup offset to the final thread position.

Elden ring fossils:

Totals from 52 (1.62% of 3206) affected shaders:
Instrs: 48355 -> 48233 (-0.25%); split: -0.31%, +0.06%
CodeSize: 331912 -> 331148 (-0.23%); split: -0.28%, +0.05%
ALU: 30853 -> 30674 (-0.58%); split: -0.70%, +0.12%
FSCIB: 30853 -> 30674 (-0.58%); split: -0.70%, +0.12%
IC: 9054 -> 8958 (-1.06%)
GPRs: 4184 -> 4216 (+0.76%)
Uniforms: 6703 -> 6677 (-0.39%); split: -1.61%, +1.22%

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
2025-07-03 16:41:51 +00:00
Erik Faye-Lund
96d124092f st/pbo: use sized nir-types for download-path
The Midgard compiler only deals with sized NIR types for image loads and
stores. Since we already have nir_get_nir_type_for_glsl_base_type()
which can provide us with the corresponding sized type, let's just use
that, and drop the extra table.

This fixes the following piglits on Mali-T760:
- spec/ext_texture_compression_s3tc/getteximage-targets 2d s3tc
- spec/ext_texture_compression_s3tc/getteximage-targets cube s3tc

Fixes: 9123ee0f18 ("st/mesa/pbo: Set src type on image_store")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35882>
2025-07-03 15:56:33 +00:00
Samuel Pitoiset
2af3ef9305 ac/surface: select a different swizzle mode for ASTC formats on GFX12
It seems only 4KiB swizzle works fine with ASTC.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34877>
2025-07-03 15:31:04 +00:00
Robert Mader
15f6652e12 llvmpipe: Fix parameter queries for mulitplanar formats
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
For emulated multiplanar formats like PIPE_FORMAT_IYUV /
DRM_FORMAT_YUV420 resource->format is set to one of the sub-
formats, PIPE_FORMAT_R8_UNORM in this case. As this has only
one plane, users like `dri2_from_planar()` fail for queries
where plane > 0. This in turn breaks queries like
gbm_dri_bo_get_handle_for_plane() which is commonly used
by Wayland compositors to offload client supplied DMABufs
to KMS, using drmModeAddFB2WithModifiers().

Follow the example of most other drivers and return the number
of resources instead.

Signed-off-by: Robert Mader <robert.mader@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35915>
2025-07-03 15:15:48 +00:00
Brian Paul
6fe6c18c12 util: add/use new os_mkdir() function
os_mkdir() is a simple wrapper around mkdir() or _mkdir().

Remove a bunch of unneeded #includes in dd_util.h.  Testing by
compiling llvmpipe and radeonsi (the only user of the dd_util.h
header).

There's a few other mkdir() callsites that I haven't touched but
could be updated to os_mkdir().

Signed-off-by: Brian Paul <brian.paul@broadcom.com>
Tested-by: Mauro Rossi <issor.oruam@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35841>
2025-07-03 14:30:17 +00:00
Brian Paul
b85265bbc2 gallivm: always use mkdir() instead of std::filesytem::create_directory()
Suse Linux Enterprise 15 is still on g++ 7.5 so std::filesystem
does not exist.  Just use mkdir() instead.

Signed-off-by: Brian Paul <brian.paul@broadcom.com>
Tested-by: Mauro Rossi <issor.oruam@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35841>
2025-07-03 14:30:16 +00:00
José Roberto de Souza
248462cbe3 iris: Reduce compiled code for Wa_16018063123
Wa_16018063123 is not a workaround that depends on stepping, so we
can use the INTEL_WA_16018063123_GFX_VER macro to reduce code generate
for non affected platforms.

Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35700>
2025-07-03 14:09:13 +00:00
José Roberto de Souza
4830aec8ad anv: Reduce compiled code for Wa_16018063123
Wa_16018063123 is not a workaround that depends on stepping, so we
can use the INTEL_WA_16018063123_GFX_VER macro to reduce code generate
for non affected platforms.

Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35700>
2025-07-03 14:09:13 +00:00
José Roberto de Souza
926e6a94ad anv: Do not emit batch_emit_fast_color_dummy_blit() for video engine
Wa_16018063123 don't apply to video engine also video engine don't
support XY_FAST_COLOR_BLT.

Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Fixes: ec43c20182 ("anv: implement dummy blit for Wa_16018063123")
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35700>
2025-07-03 14:09:12 +00:00
José Roberto de Souza
4618a99a4c anv: Flush before invalidate aux map in copy and video engines
BSpec: 43904
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 46f5359238 ("anv: Invalidate aux map for copy/video engine")
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35700>
2025-07-03 14:09:12 +00:00
José Roberto de Souza
e68f81eaf6 anv: Read the correct register for aux table invalidation when in GPGPU mode in render engine
For 3D or GPGPU modes the same render engine should be used, CCS
register should only be used when using compute engine.

Fixes: 46f5359238 ("anv: Invalidate aux map for copy/video engine")
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35700>
2025-07-03 14:09:12 +00:00
Eric Engestrom
2a269b2b5b freedreno: rename .gitlab-ci folder to tests
These are normal tests, that are part of anyone's `meson test`, not
related to the GitLab CI except that it also runs the tests.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35914>
2025-07-03 13:54:11 +00:00
Rob Clark
eb3e0b7164 freedreno/a6xx: Split descriptors out into their own file
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35899>
2025-07-03 12:50:05 +00:00
Rob Clark
d099bbd64d freedreno/a6xx: Split enums out of a6xx.xml
Give perfcntrs their own files, since they are a big chunk of enums.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35899>
2025-07-03 12:50:05 +00:00
Rob Clark
4b89184e9a freedreno/a6xx: Add single common source for a6xx.xml.h
In the following commits, as we split up a6xx.xml, the #include sequence
gets a bit more complicated.  Let's keep it in one place.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35899>
2025-07-03 12:50:04 +00:00
Rob Clark
0be21c91f4 freedreno: Add missing CP_INDIRECT_BUFFER
This was added on the kernel side in commit 9d78f0250322
("drm/msm/a6xx+: Don't let IB_SIZE overflow"), but didn't
end up in mesa.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35899>
2025-07-03 12:50:04 +00:00
Eric Engestrom
32fe81a02b freedreno/ci: fix a750-piglit-cl rules
Fixes: 5b3f7de99f ("ci/freedreno: Introduce OpenCL testing for Adreno 618, 660, and 750")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35888>
2025-07-03 11:40:55 +00:00
Martin Krastev
89f8c53fd7 svga/ci: drop 'fraction' from deqp-vmware-vmx-piglit job config
Drop fraction=1 as that is a default.

Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35860>
2025-07-03 11:23:11 +00:00
Martin Krastev
099ac9aa5c svga/ci: bump up FDO_CI_CONCURRENT to 2
Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35860>
2025-07-03 11:23:11 +00:00
Martin Krastev
38aa17619f svga/ci: bump up piglit coverage to 100%
Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35860>
2025-07-03 11:23:11 +00:00
Erik Faye-Lund
fcc0585195 panvk: implement VK_EXT_non_seamless_cube_map support
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This maps trivially to a sampler-bit, so let's just expose it.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Reviewed-by: John Anthony <john.anthony@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35886>
2025-07-03 10:54:50 +00:00
Erik Faye-Lund
618c137b29 panvk: pass flags to panvk_sampler_fill_desc
This will be useful in the next commit.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Reviewed-by: John Anthony <john.anthony@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35886>
2025-07-03 10:54:50 +00:00
Erik Faye-Lund
c30de16970 panvk: fixup bad indent
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Reviewed-by: John Anthony <john.anthony@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35886>
2025-07-03 10:54:50 +00:00
Samuel Pitoiset
cb6f2d9409 ac/surface: use align with NPOT for estimating surface size
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
ac_estimate_size() triggers an assertion because the block size isn't
aligned to a power of two for ASTC formats.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35879>
2025-07-03 08:02:17 +00:00
Boris Brezillon
25536c7d4d pan/kmod: Explicitly set the user MMIO offset when the KMD supports it
FEX is a 64-bit process potentially running x86 (32-bit) binary, in
which case the automatic user MMIO offset detection doesn't work, so
let's explicitly set the user MMIO offset when we can.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34573>
2025-07-03 07:34:18 +00:00
Boris Brezillon
465cda8237 panvk: Make imports strict at all times except for AFBC(RGB)
Enforce strictness while we still can. We can't enforce strictness
on AFBC(RGB) because the driver might be used by a compositor that
imports buffers from clients that were relying on the old behavior.

Signed-off-by: Boris Brezillon <boris.brezillon@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/35762>
2025-07-03 09:10:05 +02:00
Boris Brezillon
53e4f4149b panfrost: Force strict import rules for AFBC(YUV)
AFBC(YUV) has been introduced after the stricter import rules. Let's
make them strict by default now, so we don't encourage exporters to pass
funky WSI pitch values.

We add a driconf option to allow relaxing this strictness on a per-app
basis.

Signed-off-by: Boris Brezillon <boris.brezillon@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/35762>
2025-07-03 09:09:31 +02:00
Karol Herbst
ec05d4b1fa rusticl: drop Arc around PipeResource
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/35812>
2025-07-02 22:52:16 +00:00
Karol Herbst
900dacb0ef rusticl/mesa: add PipeResource::new_ref
pipe_resources are already ref counted, so we can simply make use of that.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35812>
2025-07-02 22:52:16 +00:00
Karol Herbst
ff0d77d69d rusticl: reset VMA address of resource inside SVMAlloc::drop
If we want to use of the internal refcounting of pipe_resources, we have
to stop setting the resources's SVM address to 0 inside
PipeResource::drop.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35812>
2025-07-02 22:52:16 +00:00
Chia-I Wu
c8cc9e781d panvk/csf: add more utrace tracepoints
Add all newly defined tracepoints, including meta, render,
dispatch/dispatch_indirect, barrier, and sync_wait.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32693>
2025-07-02 22:31:12 +00:00
Chia-I Wu
67da3d3a4c panvk/csf: prepare for indirect dispatch tracing
Implement capture_data and get_data callbacks.  Pass
sizeof(VkDispatchIndirectCommand) for max_indirect_size_bytes.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32693>
2025-07-02 22:31:12 +00:00
Chia-I Wu
a74340d825 panvk/csf: add panvk_cache_flush_is_nop
Minor code cleanup.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32693>
2025-07-02 22:31:11 +00:00
Chia-I Wu
a68dcc5de3 panvk: define more utrace tracepoints
Define tracepoints for these higl-level api calls

 - meta
 - render
 - dispatch and dispatch_indirect
 - barrier

and these low-level cs cmds

 - sync_wait

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32693>
2025-07-02 22:31:11 +00:00
Chia-I Wu
356f08aeab panvk: propagate CS error in barrier sync wait
We don't want barriers to hide CS errors.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35606>
2025-07-02 22:13:57 +00:00
Chia-I Wu
7868a551ff panvk: remove debug_syncobjs
We can rely on panvk_per_arch(queue_check_status) to detect device lost.

Because we no longer emit cs_sync32_add from finish_cs to increment
debug syncobj, if an instr between the last draw/dispatch and
end-of-stream causes a CS error, the CS error is ignored.  This is fine
because the instr should have no side effect and the kernel emits
ERROR_BARRIER to recover from the CS error.

If that is undesirable, we can restore the old behavior by emitting
cs_sync64_add from finish_cs to increment regular syncobj (and fix
cs_progress_seqno_reg) when PANVK_DEBUG is set.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35606>
2025-07-02 22:13:57 +00:00
Chia-I Wu
6f21c4a549 panvk: check for CS error
If panvk_cs_sync64::error is non-zero at the end of a primary cmdbuf,
copy the error to panvk_cs_subqueue_context::last_error.

Update panvk_per_arch(queue_check_status) to check the last_error and
treat it as device lost if non-zero.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35606>
2025-07-02 22:13:56 +00:00
Faith Ekstrand
d433f4e8bf nak: Encode ureg handle sources for surface ops on Blackwell
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
At least I assume this is a handle.  It shows up on SM120 and it looks
very much like the texture thing.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35895>
2025-07-02 21:57:35 +00:00
Faith Ekstrand
19bee26056 nak: Surface handles are not allowed to be rZ
The chances of this happening are near zero with the way we do surface
ops today but I have seen it in the wild and this is apparently a rule.
The hardware throws an illegal instruction encoding if it sees 255.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35895>
2025-07-02 21:57:34 +00:00
Karol Herbst
c1ba062a30 rusticl: use image_copy_buffer
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35809>
2025-07-02 21:42:28 +00:00
Alejandro Piñeiro
0003e16fc6 nir/lower_clip: update comment
As the lowering mentioned there got renamed twice:

  commit b085016f94
  Author: Rob Clark <robclark@freedesktop.org>
  Date:   Fri Mar 25 13:52:26 2016 -0400

    nir: rename lower_outputs_to_temporaries -> lower_io_to_temporaries

    Since it will gain support to lower inputs, give it a more generic name.

  commit 1754507d49
  Author: Marek Ol¨ák <maraeo@gmail.com>
  Date:   Wed Jun 25 19:05:19 2025 -0400

    nir: rename nir_lower_io_to_temporaries -> nir_lower_io_vars_to_temporaries

    Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35760>

Reviewed-by: Marek Ol¨ák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35855>
2025-07-02 20:56:53 +00:00
Marek Olšák
028591aead ac/nir: remove kill_pointsize and kill_layer options from lowering passes
The outputs are removed by a separate pass.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:46 +00:00
Marek Olšák
42ad7543b8 ac/nir: switch legacy GS lowering to ac_nir_prerast_out completely
This changes legacy GS outputs to use the same logic as NGG GS.
It enables the same optimizations that NGG has such as forwarding
constant GS output components to the GS copy shader at compile time.

ac_nir_gs_output_info is removed.

GS output info is no longer passed to ac_nir_lower_legacy_gs and
ac_nir_create_gs_copy_shader separately.

ac_nir_lower_legacy_gs now gathers ac_nir_prerast_out, generates GSVS ring
stores, and also generates the GS copy shader with GSVS ring loads.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:45 +00:00
Marek Olšák
723ce13f90 ac/nir: move gs_output_component_mask_with_stream to prerast utils
Legacy GS will use it.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:45 +00:00
Marek Olšák
2c64cdc047 ac/nir: return the GS copy shader from ac_nir_lower_legacy_gs
This way we won't have to pass output info between the two functions.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:44 +00:00
Marek Olšák
98f3fc494e ac/nir: remove no-op loop from ac_nir_create_gs_copy_shader
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:43 +00:00
Marek Olšák
098d33766a ac: add legacy GS subgroup size computation from radeonsi
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:43 +00:00
Marek Olšák
fa8db1ccd3 ac: add NGG subgroup size computation from radeonsi
RADV will use it.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352>
2025-07-02 20:27:42 +00:00