[Mesa-dev] [PATCH 1/1] gallium/gallivm: code generation options for LLVM 3.1+

Roland Scheidegger sroland at vmware.com
Mon Sep 24 13:16:23 PDT 2012


Am 24.09.2012 21:25, schrieb Alexander V. Nikolaev:
> On Mon, Sep 24, 2012 at 07:20:31AM -0700, Jose Fonseca wrote:
> 
>> Thanks for nailing this. There are still several outstanding bug 
>> reports for WINE and LLVM and I never managed to make much progress.
>>
>> This only covers the MCJIT case, but for LLVM 3.2 we no longer use 
>> MCJIT, and just call LLVMCreateJITCompiler (instead of
>> lp_build_create_mcjit_compiler_for_module). So I think we need to 
>> create another version of 
>> lp_build_create_mcjit_compiler_for_module/LLVMCreateJITCompiler that 
>> sets up the target as we need it.
>>
> 
> EngineBuilder in lp_build_create_mcjit_compiler_for_module 
> has option builder.setUseMCJIT(true); I think this behavior should be 
> configurable via GALLIVM_DEBUG or even via own variable.
> Or you plan to eliminate ExecutionEngine using at all?
José might have a more accurate answer but I guess this depends what happens
in the llvm codebase. Both using jit or mcjit have their own set of issues,
and at this time the old jit seems less problematic for llvmpipe.

> (btw -- what minimal LLVM version supported by gallium? maybe some 
> ifdef's are deprecated?)
In theory it should still work with llvm 2.6 (but definitely not recommended)
so all ifdefs are still necessary.
But yes at some point this stuff should be thrown out and the required llvm
version updated (probably to 3.0).

> Could I try to help with improvement of LLVM related stuff?
> (May be if someone gives me few hints).
> 
> Also I want to help with finishing autotooling src/gallium/ (just 
> because out-of-source building will be less painful, if we need to 
> build same source against many versions of LLVM)
Well with scons out-of-source building isn't painful :-).

Roland



More information about the mesa-dev mailing list