On 22/01/18 23:37, Nicolai Hähnle wrote:
Why hasn't this been noticed before?
I knew it was broken but the state tracker needed to be fixed first
which I hadn't gotten to, fortunately Rob fixed it for me :) [1]
[1]
https://cgit.freedesktop.org/mesa/mesa/commit/?id=4c69961daf45a6a64970e5831bd362307dca0cb2
Does Vulkan not have multiple streams?
Vulkan does not have transform feedback.
Anyway, series is:
Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com>
On 18.01.2018 23:26, Timothy Arceri wrote:
---
src/amd/common/ac_nir_to_llvm.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c
b/src/amd/common/ac_nir_to_llvm.c
index 12353943a5..9709514532 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -4206,10 +4206,9 @@ visit_emit_vertex(struct ac_shader_abi *abi,
unsigned stream, LLVMValueRef *addr
}
static void
-visit_end_primitive(struct nir_to_llvm_context *ctx,
- const nir_intrinsic_instr *instr)
+visit_end_primitive(struct nir_to_llvm_context *ctx, unsigned stream)
{
- ac_build_sendmsg(&ctx->ac, AC_SENDMSG_GS_OP_CUT | AC_SENDMSG_GS |
(0 << 8), ctx->gs_wave_id);
+ ac_build_sendmsg(&ctx->ac, AC_SENDMSG_GS_OP_CUT | AC_SENDMSG_GS |
(stream << 8), ctx->gs_wave_id);
}
static LLVMValueRef
@@ -4420,7 +4419,7 @@ static void visit_intrinsic(struct
ac_nir_context *ctx,
ctx->abi->emit_vertex(ctx->abi, 0, ctx->outputs);
break;
case nir_intrinsic_end_primitive:
- visit_end_primitive(ctx->nctx, instr);
+ visit_end_primitive(ctx->nctx, nir_intrinsic_stream_id(instr));
break;
case nir_intrinsic_load_tess_coord: {
LLVMTypeRef type = ctx->nctx ?
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev