radeonsi: implement nir_intrinsic_load_provoking_vtx_in_prim_amd
authorQiang Yu <yuq825@gmail.com>
Mon, 26 Sep 2022 06:36:55 +0000 (14:36 +0800)
committerMarge Bot <emma+marge@anholt.net>
Fri, 2 Dec 2022 04:37:23 +0000 (04:37 +0000)
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17109>

src/gallium/drivers/radeonsi/si_shader_llvm.c

index 075f8d1..681a6af 100644 (file)
@@ -900,6 +900,9 @@ static LLVMValueRef si_llvm_load_intrinsic(struct ac_shader_abi *abi, nir_intrin
       else
          return ctx->ac.i1true;
 
+   case nir_intrinsic_load_provoking_vtx_in_prim_amd:
+      return GET_FIELD(ctx, GS_STATE_PROVOKING_VTX_INDEX);
+
    case nir_intrinsic_load_pipeline_stat_query_enabled_amd: {
       LLVMValueRef enabled = GET_FIELD(ctx, GS_STATE_PIPELINE_STATS_EMU);
       return LLVMBuildTrunc(ctx->ac.builder, enabled, ctx->ac.i1, "");