diff options
author | Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> | 2022-10-04 15:15:54 +0200 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2022-10-21 07:56:38 +0000 |
commit | 0f00f74b209a46791e5c30e3e7ea37009e2df293 (patch) | |
tree | 8dc3f1601d25c3b10516e23a20b035ee448e830d /src/amd/vulkan/radv_nir_to_llvm.c | |
parent | 174caabab721fc1b6c6bf7e181641c89978f0123 (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.c | 16 |
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++) { |