From: Samuel Pitoiset Date: Fri, 9 Feb 2018 12:54:19 +0000 (+0100) Subject: ac: move tg_size to the ABI X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=460d3ce7264f0da6db537fe8f99f6872d33ed269;p=mesa.git ac: move tg_size to the ABI Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen --- diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index e82348b83b0..9d149b49eab 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -87,7 +87,6 @@ struct nir_to_llvm_context { LLVMValueRef ring_offsets; LLVMValueRef push_constants; LLVMValueRef view_index; - LLVMValueRef tg_size; LLVMValueRef vertex_buffers; LLVMValueRef rel_auto_id; @@ -789,7 +788,7 @@ static void create_function(struct nir_to_llvm_context *ctx, } if (ctx->shader_info->info.cs.uses_local_invocation_idx) - add_arg(&args, ARG_SGPR, ctx->ac.i32, &ctx->tg_size); + add_arg(&args, ARG_SGPR, ctx->ac.i32, &ctx->abi.tg_size); add_arg(&args, ARG_VGPR, ctx->ac.v3i32, &ctx->abi.local_invocation_ids); break; @@ -3906,7 +3905,7 @@ visit_load_local_invocation_index(struct nir_to_llvm_context *ctx) { LLVMValueRef result; LLVMValueRef thread_id = ac_get_thread_id(&ctx->ac); - result = LLVMBuildAnd(ctx->builder, ctx->tg_size, + result = LLVMBuildAnd(ctx->builder, ctx->abi.tg_size, LLVMConstInt(ctx->ac.i32, 0xfc0, false), ""); return LLVMBuildAdd(ctx->builder, result, thread_id, ""); diff --git a/src/amd/common/ac_shader_abi.h b/src/amd/common/ac_shader_abi.h index 9499c1a15fd..5d525849966 100644 --- a/src/amd/common/ac_shader_abi.h +++ b/src/amd/common/ac_shader_abi.h @@ -58,6 +58,7 @@ struct ac_shader_abi { LLVMValueRef local_invocation_ids; LLVMValueRef num_work_groups; LLVMValueRef workgroup_ids[3]; + LLVMValueRef tg_size; /* For VS and PS: pre-loaded shader inputs. *