radv/gfx10: Simplify output mask handling for NGG GS.
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Thu, 11 Jul 2019 06:44:18 +0000 (08:44 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Thu, 11 Jul 2019 13:45:58 +0000 (15:45 +0200)
We only ever get in this function for a NGG GS proper.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
src/amd/vulkan/radv_nir_to_llvm.c

index 490b16a1f25dfd4c78a192deb285b2feabee53cf..b5469677d2b23590ac3adf09c3ded03a929812c0 100644 (file)
@@ -3626,18 +3626,7 @@ static void gfx10_ngg_gs_emit_epilogue_2(struct radv_shader_context *ctx)
                        outputs[noutput].slot_name = i;
                        outputs[noutput].slot_index = i == VARYING_SLOT_CLIP_DIST1;
 
-                       if (ctx->stage == MESA_SHADER_VERTEX &&
-                           !ctx->is_gs_copy_shader) {
-                               outputs[noutput].usage_mask =
-                                       ctx->shader_info->info.vs.output_usage_mask[i];
-                       } else if (ctx->stage == MESA_SHADER_TESS_EVAL) {
-                               outputs[noutput].usage_mask =
-                                       ctx->shader_info->info.tes.output_usage_mask[i];
-                       } else {
-                               assert(ctx->is_gs_copy_shader || ctx->options->key.vs_common_out.as_ngg);
-                               outputs[noutput].usage_mask =
-                                       ctx->shader_info->info.gs.output_usage_mask[i];
-                       }
+                       outputs[noutput].usage_mask = ctx->shader_info->info.gs.output_usage_mask[i];
 
                        for (unsigned j = 0; j < 4; j++, out_idx++) {
                                gep_idx[2] = LLVMConstInt(ctx->ac.i32, out_idx, false);