From e732750b160f28270aaa86431d67fedccf1cfec6 Mon Sep 17 00:00:00 2001 From: Jonathan Marek Date: Thu, 9 Jul 2020 14:22:12 -0400 Subject: [PATCH] freedreno/ir3: allow layer/viewport output for VS/GS/DS With VK_EXT_shader_viewport_index_layer, these stages can all output the viewport or layer id, and not just GS anymore. Signed-off-by: Jonathan Marek Part-of: --- src/freedreno/ir3/ir3_compiler_nir.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/freedreno/ir3/ir3_compiler_nir.c b/src/freedreno/ir3/ir3_compiler_nir.c index 1438d31e74c..05613a8794f 100644 --- a/src/freedreno/ir3/ir3_compiler_nir.c +++ b/src/freedreno/ir3/ir3_compiler_nir.c @@ -3140,7 +3140,6 @@ setup_output(struct ir3_context *ctx, nir_intrinsic_instr *intr) so->writes_psize = true; break; case VARYING_SLOT_PRIMITIVE_ID: - case VARYING_SLOT_LAYER: case VARYING_SLOT_GS_VERTEX_FLAGS_IR3: debug_assert(ctx->so->type == MESA_SHADER_GEOMETRY); /* fall through */ @@ -3152,6 +3151,8 @@ setup_output(struct ir3_context *ctx, nir_intrinsic_instr *intr) case VARYING_SLOT_CLIP_DIST0: case VARYING_SLOT_CLIP_DIST1: case VARYING_SLOT_CLIP_VERTEX: + case VARYING_SLOT_LAYER: + case VARYING_SLOT_VIEWPORT: break; default: if (slot >= VARYING_SLOT_VAR0)