summaryrefslogtreecommitdiff
path: root/src/amd/vulkan/radv_nir_to_llvm.c
diff options
context:
space:
mode:
authorPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>2022-10-04 15:15:54 +0200
committerMarge Bot <emma+marge@anholt.net>2022-10-21 07:56:38 +0000
commit0f00f74b209a46791e5c30e3e7ea37009e2df293 (patch)
tree8dc3f1601d25c3b10516e23a20b035ee448e830d /src/amd/vulkan/radv_nir_to_llvm.c
parent174caabab721fc1b6c6bf7e181641c89978f0123 (diff)
ac/llvm: port functions to use ac_llvm_pointer
Reviewed-by: Mihai Preda <mhpreda@gmail.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Qiang Yu <yuq825@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035>
Diffstat (limited to 'src/amd/vulkan/radv_nir_to_llvm.c')
-rw-r--r--src/amd/vulkan/radv_nir_to_llvm.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c
index 08da30def76..c736926d2cb 100644
--- a/src/amd/vulkan/radv_nir_to_llvm.c
+++ b/src/amd/vulkan/radv_nir_to_llvm.c
@@ -52,7 +52,7 @@ struct radv_shader_context {
unsigned max_workgroup_size;
LLVMContextRef context;
- LLVMValueRef main_function;
+ struct ac_llvm_pointer main_function;
LLVMValueRef descriptor_sets[MAX_SETS];
@@ -83,20 +83,20 @@ radv_shader_context_from_abi(struct ac_shader_abi *abi)
return container_of(abi, struct radv_shader_context, abi);
}
-static LLVMValueRef
+static struct ac_llvm_pointer
create_llvm_function(struct ac_llvm_context *ctx, LLVMModuleRef module, LLVMBuilderRef builder,
const struct ac_shader_args *args, enum ac_llvm_calling_convention convention,
unsigned max_workgroup_size, const struct radv_nir_compiler_options *options)
{
- LLVMValueRef main_function = ac_build_main(args, ctx, convention, "main", ctx->voidt, module);
+ struct ac_llvm_pointer main_function = ac_build_main(args, ctx, convention, "main", ctx->voidt, module);
if (options->address32_hi) {
- ac_llvm_add_target_dep_function_attr(main_function, "amdgpu-32bit-address-high-bits",
+ ac_llvm_add_target_dep_function_attr(main_function.value, "amdgpu-32bit-address-high-bits",
options->address32_hi);
}
- ac_llvm_set_workgroup_size(main_function, max_workgroup_size);
- ac_llvm_set_target_features(main_function, ctx);
+ ac_llvm_set_workgroup_size(main_function.value, max_workgroup_size);
+ ac_llvm_set_target_features(main_function.value, ctx);
return main_function;
}
@@ -170,7 +170,7 @@ create_function(struct radv_shader_context *ctx, gl_shader_stage stage, bool has
ctx->main_function =
create_llvm_function(&ctx->ac, ctx->ac.module, ctx->ac.builder, &ctx->args->ac,
- get_llvm_calling_convention(ctx->main_function, stage),
+ get_llvm_calling_convention(ctx->main_function.value, stage),
ctx->max_workgroup_size, ctx->options);
ctx->ring_offsets = ac_build_intrinsic(&ctx->ac, "llvm.amdgcn.implicit.buffer.ptr",
@@ -1599,7 +1599,7 @@ ac_gs_copy_shader_emit(struct radv_shader_context *ctx)
LLVMBasicBlockRef end_bb;
LLVMValueRef switch_inst;
- end_bb = LLVMAppendBasicBlockInContext(ctx->ac.context, ctx->main_function, "end");
+ end_bb = LLVMAppendBasicBlockInContext(ctx->ac.context, ctx->main_function.value, "end");
switch_inst = LLVMBuildSwitch(ctx->ac.builder, stream_id, end_bb, 4);
for (unsigned stream = 0; stream < 4; stream++) {