Mesa (master): ac: fix emit vertex stream parameter

Timothy Arceri tarceri at kemper.freedesktop.org
Mon Jan 22 22:30:49 UTC 2018


Module: Mesa
Branch: master
Commit: 324d2fe6a754e84df79db75cdbc3a8c4c32a7279
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=324d2fe6a754e84df79db75cdbc3a8c4c32a7279

Author: Timothy Arceri <tarceri at itsqueeze.com>
Date:   Fri Jan 19 16:30:37 2018 +1100

ac: fix emit vertex stream parameter

Fixes the following piglit test on radeonsi:

./bin/arb_enhanced_layouts-gs-stream-location-aliasing

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

---

 src/amd/common/ac_nir_to_llvm.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index b90c31320c..53f5782eac 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -4162,6 +4162,8 @@ visit_emit_vertex(struct ac_shader_abi *abi, unsigned stream, LLVMValueRef *addr
 	int idx;
 	struct nir_to_llvm_context *ctx = nir_to_llvm_context_from_abi(abi);
 
+	assert(stream == 0);
+
 	/* Write vertex attribute values to GSVS ring */
 	gs_next_vertex = LLVMBuildLoad(ctx->builder,
 				       ctx->gs_next_vertex,
@@ -4468,8 +4470,7 @@ static void visit_intrinsic(struct ac_nir_context *ctx,
 		result = visit_interp(ctx->nctx, instr);
 		break;
 	case nir_intrinsic_emit_vertex:
-		assert(instr->const_index[0] == 0);
-		ctx->abi->emit_vertex(ctx->abi, 0, ctx->outputs);
+		ctx->abi->emit_vertex(ctx->abi, nir_intrinsic_stream_id(instr), ctx->outputs);
 		break;
 	case nir_intrinsic_end_primitive:
 		ctx->abi->emit_primitive(ctx->abi, nir_intrinsic_stream_id(instr));




More information about the mesa-commit mailing list