I just ran a quick.tests run on evergreen without any regressions. Patch looks good to me, and doesn't seem to cause any regressions on the hardware I have available to test with.
--Aaron On Tue, Oct 22, 2013 at 11:28 AM, Tom Stellard <t...@stellard.net> wrote: > From: Tom Stellard <thomas.stell...@amd.com> > > Without DataLayout, a lot of optimization passes aren't run and the ones > that are don't work as well. > --- > src/gallium/drivers/radeon/radeon_llvm_util.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/src/gallium/drivers/radeon/radeon_llvm_util.c > b/src/gallium/drivers/radeon/radeon_llvm_util.c > index 25be245..7192dee 100644 > --- a/src/gallium/drivers/radeon/radeon_llvm_util.c > +++ b/src/gallium/drivers/radeon/radeon_llvm_util.c > @@ -29,6 +29,7 @@ > > #include <llvm-c/BitReader.h> > #include <llvm-c/Core.h> > +#include <llvm-c/Target.h> > #include <llvm-c/Transforms/PassManagerBuilder.h> > > LLVMModuleRef radeon_llvm_parse_bitcode(const unsigned char * bitcode, > @@ -53,8 +54,11 @@ unsigned radeon_llvm_get_num_kernels(const unsigned char > *bitcode, > > static void radeon_llvm_optimize(LLVMModuleRef mod) > { > + const char *data_layout = LLVMGetDataLayout(mod); > + LLVMTargetDataRef TD = LLVMCreateTargetData(data_layout); > LLVMPassManagerBuilderRef builder = LLVMPassManagerBuilderCreate(); > LLVMPassManagerRef pass_manager = LLVMCreatePassManager(); > + LLVMAddTargetData(TD, pass_manager); > > LLVMPassManagerBuilderUseInlinerWithThreshold(builder, 1000000000); > LLVMPassManagerBuilderPopulateModulePassManager(builder, > pass_manager); > -- > 1.7.11.4 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev