From 9a6416b3746cb90b544518643677a4b53666b1dc Mon Sep 17 00:00:00 2001 From: Qiang Yu Date: Mon, 5 Dec 2022 19:03:15 +0800 Subject: [PATCH] nir,ac/llvm,radv: add stream id index to nir_load_ring_gsvs_amd MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit For used by legacy GS to store output to different ring according to stream id. Reviewed-by: Rhys Perry Reviewed-by: Marek Olšák Signed-off-by: Qiang Yu Part-of: --- src/amd/vulkan/radv_nir_to_llvm.c | 2 +- src/compiler/nir/nir_intrinsics.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c index 6f5f0a3..522a2cd 100644 --- a/src/amd/vulkan/radv_nir_to_llvm.c +++ b/src/amd/vulkan/radv_nir_to_llvm.c @@ -1223,7 +1223,7 @@ static LLVMValueRef radv_intrinsic_load(struct ac_shader_abi *abi, nir_intrinsic case nir_intrinsic_load_ring_attr_amd: return ctx->attr_ring; case nir_intrinsic_load_ring_gsvs_amd: - return ctx->gsvs_ring[0]; + return ctx->gsvs_ring[nir_intrinsic_stream_id(intrin)]; default: return NULL; } diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py index 0447f17..211afb9 100644 --- a/src/compiler/nir/nir_intrinsics.py +++ b/src/compiler/nir/nir_intrinsics.py @@ -1373,7 +1373,7 @@ system_value("gs_vertex_offset_amd", 1, [BASE]) system_value("rasterization_samples_amd", 1) # Descriptor where GS outputs are stored for GS copy shader to read on GFX6-9 -system_value("ring_gsvs_amd", 4) +system_value("ring_gsvs_amd", 4, indices=[STREAM_ID]) # Write offset in gsvs ring for legacy GS shader system_value("ring_gs2vs_offset_amd", 1) -- 2.7.4