From 1d7e9203d067c5557f3a7e495ce7baa5c92b68f2 Mon Sep 17 00:00:00 2001 From: Qiang Yu Date: Tue, 5 Jul 2022 11:35:09 +0800 Subject: [PATCH] radeonsi: use replaced values when present MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Marek Olšák Signed-off-by: Qiang Yu Part-of: --- src/gallium/drivers/radeonsi/si_shader_llvm.c | 4 +++- src/gallium/drivers/radeonsi/si_shader_llvm_tess.c | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shader_llvm.c b/src/gallium/drivers/radeonsi/si_shader_llvm.c index 5b6f3f43c28..e78f83c2edb 100644 --- a/src/gallium/drivers/radeonsi/si_shader_llvm.c +++ b/src/gallium/drivers/radeonsi/si_shader_llvm.c @@ -391,7 +391,9 @@ LLVMValueRef si_get_primitive_id(struct si_shader_context *ctx, unsigned swizzle case MESA_SHADER_TESS_CTRL: return ac_get_arg(&ctx->ac, ctx->args.tcs_patch_id); case MESA_SHADER_TESS_EVAL: - return ac_get_arg(&ctx->ac, ctx->args.tes_patch_id); + return ctx->abi.tes_patch_id_replaced ? + ctx->abi.tes_patch_id_replaced : + ac_get_arg(&ctx->ac, ctx->args.tes_patch_id); case MESA_SHADER_GEOMETRY: return ac_get_arg(&ctx->ac, ctx->args.gs_prim_id); default: diff --git a/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c b/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c index 34f5175cbea..382ed80b8f1 100644 --- a/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c +++ b/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c @@ -33,7 +33,9 @@ LLVMValueRef si_get_rel_patch_id(struct si_shader_context *ctx) return si_unpack_param(ctx, ctx->args.tcs_rel_ids, 0, 8); case MESA_SHADER_TESS_EVAL: - return ac_get_arg(&ctx->ac, ctx->args.tes_rel_patch_id); + return ctx->abi.tes_rel_patch_id_replaced ? + ctx->abi.tes_rel_patch_id_replaced : + ac_get_arg(&ctx->ac, ctx->args.tes_rel_patch_id); default: assert(0);