If radeonsi adds target library info, I highly recommend that radv does the same thing.
Marek On Mon, Jul 2, 2018, 8:48 PM Dave Airlie <airl...@gmail.com> wrote: > From: Dave Airlie <airl...@redhat.com> > > This adds a inline always pass, but otherwise should work the > same. > --- > src/amd/common/ac_llvm_util.c | 5 +++-- > src/amd/vulkan/radv_nir_to_llvm.c | 26 +++----------------------- > 2 files changed, 6 insertions(+), 25 deletions(-) > > diff --git a/src/amd/common/ac_llvm_util.c b/src/amd/common/ac_llvm_util.c > index adcdc730856..b1ae8ab9986 100644 > --- a/src/amd/common/ac_llvm_util.c > +++ b/src/amd/common/ac_llvm_util.c > @@ -172,8 +172,9 @@ LLVMPassManagerRef > ac_init_passmgr(LLVMTargetLibraryInfoRef target_library_info, > if (!passmgr) > return NULL; > > - LLVMAddTargetLibraryInfo(target_library_info, > - passmgr); > + if (target_library_info) > + LLVMAddTargetLibraryInfo(target_library_info, > + passmgr); > > if (check_ir) > LLVMAddVerifierPass(passmgr); > diff --git a/src/amd/vulkan/radv_nir_to_llvm.c > b/src/amd/vulkan/radv_nir_to_llvm.c > index ce6d5e1547d..d454040a05e 100644 > --- a/src/amd/vulkan/radv_nir_to_llvm.c > +++ b/src/amd/vulkan/radv_nir_to_llvm.c > @@ -2996,30 +2996,10 @@ static void ac_llvm_finalize_module(struct > radv_shader_context *ctx, > const struct radv_nir_compiler_options > *options) > { > LLVMPassManagerRef passmgr; > - /* Create the pass manager */ > - passmgr = LLVMCreateFunctionPassManagerForModule( > - ctx->ac.module); > - > - if (options->check_ir) > - LLVMAddVerifierPass(passmgr); > - > - /* This pass should eliminate all the load and store instructions > */ > - LLVMAddPromoteMemoryToRegisterPass(passmgr); > - > - /* Add some optimization passes */ > - LLVMAddScalarReplAggregatesPass(passmgr); > - LLVMAddLICMPass(passmgr); > - LLVMAddAggressiveDCEPass(passmgr); > - LLVMAddCFGSimplificationPass(passmgr); > - /* This is recommended by the instruction combining pass. */ > - LLVMAddEarlyCSEMemSSAPass(passmgr); > - LLVMAddInstructionCombiningPass(passmgr); > - > - /* Run the pass */ > - LLVMInitializeFunctionPassManager(passmgr); > - LLVMRunFunctionPassManager(passmgr, ctx->main_function); > - LLVMFinalizeFunctionPassManager(passmgr); > > + passmgr = ac_init_passmgr(NULL, options->check_ir); > + > + LLVMRunPassManager(passmgr, ctx->ac.module); > LLVMDisposeBuilder(ctx->ac.builder); > LLVMDisposePassManager(passmgr); > > -- > 2.17.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev