Rhys Perry
b03e071583
aco/gfx11: create waitcnt for workgroup vmem barriers
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
It seems this is necessary on GFX11.
Similar to 576a2e798c
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Backport-to: 25.0
Backport-to: 25.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34634 >
2025-04-25 10:41:52 +00:00
Georg Lehmann
65411350ac
aco/insert_exec: disable empty quads when leaving divergent control, even if not top level
...
We don't restore exec after uniform top level branches, so nothing disabled
empty quads after a demote in divergent control flow in a uniform branch.
Foz-DB Navi31:
Totals from 17 (0.02% of 79789) affected shaders:
Instrs: 34573 -> 34572 (-0.00%)
CodeSize: 186876 -> 186872 (-0.00%)
Latency: 324145 -> 324141 (-0.00%)
Copies: 1467 -> 1458 (-0.61%)
PreSGPRs: 802 -> 800 (-0.25%)
SALU: 2531 -> 2530 (-0.04%)
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34670 >
2025-04-24 15:43:09 +00:00
Timur Kristóf
3ad385b9cc
radv: Clear dirty flag for clip rects state after emitting it.
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Tested-by: Marcus Seyfarth <m.seyfarth@gmail.com>
Fixes: 0ba3a8b3cc
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34686 >
2025-04-24 15:13:44 +00:00
Timur Kristóf
3a05477ac6
radv: Clear dirty flag for MSAA state after emitting it.
...
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Tested-by: Marcus Seyfarth <m.seyfarth@gmail.com>
Fixes: 08918f0880
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13022
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34686 >
2025-04-24 15:13:44 +00:00
Georg Lehmann
6d2190300a
radv/nir/lower_cmat: tightly pack 8bit gfx11 acc matrix
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Invalid for now, but used by vkd3d-proton, where the use case is to convert
a result matrix to lower precision, followed by a store.
For 16bit accumulation matrices, GFX11 only uses 16bits per 32bit register.
RADV's coop matrix code pads the unused space with undefs and uses a vector
with twice as many elements as the matrix length. Extending that to 8bit by
leaving 24 bits unused is unnecessary as these matrices as there
is no hw unit that requires it. And in wave32, it would also result in
vectors larger than NIR's limit.
So tightly pack 8bit matrices without any undef padding.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34382 >
2025-04-24 06:37:44 +00:00
Georg Lehmann
bbc9bc9d24
radv/nir/lower_cmat: use cmat_mul instead of duplicating hw details for type conversion
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34382 >
2025-04-24 06:37:44 +00:00
Georg Lehmann
31a3430570
radv/nir/lower_cmat: use radv_nir_cmat_bits consistently
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34382 >
2025-04-24 06:37:44 +00:00
Rhys Perry
62e50de5d0
aco: use v_perm_b32 for byte swaps within a VGPR on gfx10
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34636 >
2025-04-23 18:23:18 +00:00
Rhys Perry
a43783fd76
aco: use v_perm_b32 for do_pack_2x16 on gfx10+
...
fossil-db (gfx1201);
Totals from 93 (0.12% of 79377) affected shaders:
Instrs: 373212 -> 372761 (-0.12%)
CodeSize: 2062752 -> 2063704 (+0.05%); split: -0.00%, +0.05%
Latency: 4172059 -> 4171993 (-0.00%); split: -0.00%, +0.00%
InvThroughput: 1299144 -> 1299093 (-0.00%)
Copies: 51268 -> 50831 (-0.85%)
Branches: 10980 -> 10979 (-0.01%)
VALU: 220192 -> 219756 (-0.20%)
VOPD: 48 -> 47 (-2.08%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34636 >
2025-04-23 18:23:18 +00:00
Georg Lehmann
dd3e1190a2
aco/insert_exec: reset temporary when recreating wqm mask from exact mask
...
The old, now incorrect temporary was still used for invert blocks and loop masks.
Foz-DB Navi31:
Totals from 379 (0.48% of 79789) affected shaders:
Instrs: 399471 -> 399897 (+0.11%); split: -0.00%, +0.11%
CodeSize: 2197292 -> 2198908 (+0.07%); split: -0.00%, +0.08%
Latency: 2500636 -> 2500895 (+0.01%); split: -0.00%, +0.01%
SClause: 7912 -> 7918 (+0.08%); split: -0.04%, +0.11%
Copies: 25687 -> 26068 (+1.48%); split: -0.04%, +1.53%
PreSGPRs: 15648 -> 15562 (-0.55%)
SALU: 35125 -> 35517 (+1.12%)
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12901
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13019
Fixes: b872ff6ef2 ("aco/insert_exec_mask: if applicable, use s_wqm to restore exec after divergent CF")
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34659 >
2025-04-23 09:37:50 +00:00
Georg Lehmann
13f6be262a
aco/insert_exec: only restore wqm mask after control flow if necessary
...
The next commit will make this not free, so we should avoid it if possible.
Foz-DB Navi31:
Totals from 3933 (4.93% of 79789) affected shaders:
Instrs: 5726914 -> 5727295 (+0.01%); split: -0.00%, +0.01%
CodeSize: 31307100 -> 31308884 (+0.01%); split: -0.00%, +0.01%
SpillSGPRs: 1797 -> 1793 (-0.22%); split: -0.33%, +0.11%
Latency: 58973929 -> 58974343 (+0.00%); split: -0.00%, +0.00%
InvThroughput: 8591893 -> 8591911 (+0.00%); split: -0.00%, +0.00%
SClause: 209074 -> 209115 (+0.02%); split: -0.00%, +0.02%
Copies: 423965 -> 432420 (+1.99%)
Branches: 149976 -> 149979 (+0.00%); split: -0.00%, +0.00%
PreSGPRs: 200175 -> 200663 (+0.24%)
VALU: 3440165 -> 3440156 (-0.00%); split: -0.00%, +0.00%
SALU: 555727 -> 556143 (+0.07%); split: -0.00%, +0.08%
Fixes: b872ff6ef2 ("aco/insert_exec_mask: if applicable, use s_wqm to restore exec after divergent CF")
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34659 >
2025-04-23 09:37:50 +00:00
Pierre-Eric Pelloux-Prayer
992a340eab
ac/nir: init blake3 for cs blit shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34574 >
2025-04-23 07:59:10 +00:00
Karol Herbst
e3edc6029b
ac/llvm: use mul24 intrinsics
...
With the current code in clpeak LLVM ended up generating v_mad_u64_u32
instructions, with this we get nice v_mad_u32_s24 ones instead and an 4x
performance increase in the int24 benchmark.
Suggested-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34630 >
2025-04-23 01:11:48 +00:00
Georg Lehmann
8f3489f351
aco/isel: create WMMA with constant C matrix if possible
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34396 >
2025-04-22 16:08:57 +00:00
Georg Lehmann
4fa3fb87c7
aco/insert_NOPs: allow WMMA with constant C matrix
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34396 >
2025-04-22 16:08:56 +00:00
Georg Lehmann
c3964e87f8
radv: apply fneg/fabs modifiers to wmma
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34396 >
2025-04-22 16:08:55 +00:00
Georg Lehmann
6d7e67d986
nir,amd: add neg_lo/hi modifiers to cmat_matmul_amd
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34396 >
2025-04-22 16:08:55 +00:00
Georg Lehmann
b0c8f31600
aco: set opsel_hi to 1 for WMMA
...
This is ignored by the hardware but LLVM requires it to disassemble GFX12 WMMA.
Cc: mesa-stable
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34396 >
2025-04-22 16:08:54 +00:00
Eric Engestrom
2bcb55f3f6
aco: help clang 20 do some additions and subtractions
...
clang 20 complains:
../src/amd/compiler/aco_assembler.cpp:837:28: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
837 | vaddr[num_vaddr + i] = reg(ctx, instr->operands.back(), 8) + i + 1;
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/amd/compiler/aco_assembler.cpp:832:12: note: at offset 5 into destination object ‘vaddr’ of size 5
832 | uint8_t vaddr[5] = {0, 0, 0, 0, 0};
| ^~~~~
../src/amd/compiler/aco_assembler.cpp:837:28: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
837 | vaddr[num_vaddr + i] = reg(ctx, instr->operands.back(), 8) + i + 1;
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/amd/compiler/aco_assembler.cpp:832:12: note: at offset 6 into destination object ‘vaddr’ of size 5
832 | uint8_t vaddr[5] = {0, 0, 0, 0, 0};
| ^~~~~
../src/amd/compiler/aco_assembler.cpp:837:28: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
837 | vaddr[num_vaddr + i] = reg(ctx, instr->operands.back(), 8) + i + 1;
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/amd/compiler/aco_assembler.cpp:832:12: note: at offset 7 into destination object ‘vaddr’ of size 5
832 | uint8_t vaddr[5] = {0, 0, 0, 0, 0};
| ^~~~~
But `i < MIN2(instr->operands.back().size() - 1, 5 - num_vaddr)` means `i` is
at most `5 - num_vaddr - 1`, which means `vaddr[num_vaddr + i]` =>
`vaddr[num_vaddr + 5 - num_vaddr - 1]` => `vaddr[5 - 1]` => `vaddr[4]` which
is within the valid indices.
For some reason, using signed `int` instead allows clang to figure this
out, so let's do that since we don't need the extra range.
While at it, use ARRAY_SIZE(vaddr) instead of hard-coding the same `5`
in several places.
Backport-to: 25.0
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34625 >
2025-04-21 15:16:02 +00:00
Marek Olšák
4a51089f30
radv: fix incorrect patch_outputs_read for TCS with dynamic state
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fixes: 8c2f9f0665 - radv: switch to the new TCS LDS/offchip size computation
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
2948f7ce96
ac/gpu_info: rename tess ring variables, fold double_offchip_wg
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
d2e016c37d
ac/nir: don't store tess levels for TES in TCS if no_varying is set
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
be8977811b
ac/nir: remove shader_info parameter from ac_nir_compute_tess_wg_info
...
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/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
6d9e708642
ac/gpu_info: reduce the tess offchip ring size and compute it proportionately
...
.. to the CU count. We allocated too much.
This reduces the tess offchip ring size as follows (examples):
- GFX11-12:
- Navi31, Navi33, and Navi48 get 75% decrease.
- Navi32 gets 68.75% decrease.
- Phoenix gets 81.25% decrease.
- Phoenix2 gets 93.75% decrease.
- GFX10.3:
- Navi21 and Navi22 get 37.5% decrease.
- Navi23 and Navi24 get 50% decrease.
- Rembrandt gets 62.5% decrease.
- VanGogh gets 75% decrease.
- Raphael gets 93.75% decrease.
- GFX8-9:
- Vega10 gets 0% decrease.
- Vega20 gets 49.6% decrease.
- Raven gets 65.3% decrease.
- Raven2 gets 93.7% decrease.
- Stoney gets 81% decrease.
No difference in performance was measured.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
9333c0a1ed
ac/gpu_info: compute the tess factor ring size proportionately to the CU count
...
No change in the size on GPUs with 16 CUs per SE such as Navi31 and Navi48.
Navi21 and Navi32 get 25% increase. (20 CUs per SE)
APUs get a significant decrease. For example:
- Phoenix gets 25% decrease
- Vangogh gets 50% decrease
- Phoenix2 gets 75% decrease
- Raphael and Stoney get 87.5% decrease
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
5fb2de9454
ac/nir: don't include TCS offchip size in LDS_SIZE
...
This drastically reduces LDS usage for TCS.
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/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
b8f2fb81f6
ac/gpu_info: print tessellation ring info
...
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/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
b8d15fee3d
ac: minor cleanup of ac_compute_num_tess_patches
...
No change in behavior.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
a905a17f39
ac: use HS offchip wg size from radeon_info in ac_compute_num_tess_patches
...
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/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
d82eda72a1
ac/gpu_info: move HS info into radeon_info
...
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/34544 >
2025-04-19 22:55:00 -04:00
Marek Olšák
ea294349bd
radv: move the tess factor ring after the tess offchip ring
...
to match radeonsi
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:54:59 -04:00
Marek Olšák
c057d9105f
ac/gpu_info: add total_tess_ring_size
...
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/34544 >
2025-04-19 22:54:59 -04:00
Marek Olšák
97119d980c
ac/gpu_info: clean up ac_get_hs_info, use standard terms like workgroup
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34544 >
2025-04-19 22:54:59 -04:00
Samuel Pitoiset
792c30dd32
radv/meta: remove redundant parameter to blit_surf_for_image_level_layer()
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34558 >
2025-04-18 17:21:24 +02:00
Samuel Pitoiset
a3f2c5f05e
radv/meta: remove unnecessary radv_meta_blit2d_buffer::bs
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34558 >
2025-04-18 17:21:24 +02:00
Samuel Pitoiset
78c2feed00
radv/meta: rename more buffer->memory for fill/copy/update operations
...
Recently, I renamed most of the helpers for future work but I forgot
few things like meta keys, etc.
This is for consistency.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34558 >
2025-04-18 17:21:24 +02:00
Samuel Pitoiset
43c8cb1ae2
radv/meta: remove unused functions/prototypes
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34558 >
2025-04-18 17:21:24 +02:00
Samuel Pitoiset
78f03dcf70
radv/meta: simplify dealing with image layouts for blits/resolves
...
This doesn't do anything useful.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34558 >
2025-04-18 17:21:24 +02:00
Yogesh Mohan Marimuthu
e63b24bee8
ac,radeonsi: clear_state is not supported in user queue
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34370 >
2025-04-18 07:45:33 +00:00
Yogesh Mohan Marimuthu
61fd80a42e
ac,winsys/amdgpu: get userq_ip_mask supported from kernel info ioctl
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34370 >
2025-04-18 07:45:33 +00:00
Konstantin Seurer
76031ba53d
radv: Optimize the gfx12 encode shader
...
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
97f6287827
radv: Use the BVH8 format on GFX12
...
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
95e7343a7d
radv/bvh: Add helpers for encoding
...
The build and update paths can use the same code.
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
3af19f336c
radv/bvh: Document GFX12 BVH encoding
...
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
2942e3affb
radv/rra: Set rra_accel_struct_header::rtip_level
...
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
fa99eeb2b4
radv/rra: Move gfx10_3 specific code to a new file
...
gfx12 needs completely different code and having them in different files
is cleaner.
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
9d157173b2
radv: Refactor create_bvh_descriptor
...
Make it a bit more extendable since GFX12 introduced more fields.
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Konstantin Seurer
978e9b670e
aco,nir: Add support for new GFX12 ray tracing instructions
...
Adds image_bvh_dual_intersect_ray and image_bvh8_intersect_ray which can
handle the new BVH format. Both instructions write up to 10 VGPRs so
they need to use a vec16 definition in nir.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Natalie Vock
ee0f784858
aco/ra: Don't consider precolored ops/defs in get_reg_impl
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00
Natalie Vock
b9e506afd4
aco: Add support for multiple definitions in emit_mimg
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34273 >
2025-04-17 20:20:40 +00:00