[Mesa-dev] [PATCH] gallivm: Do not use NoFramePointerElim with LLVM 3.7

Marek Olšák maraeo at gmail.com
Thu May 28 03:01:24 PDT 2015


The disassemble function does more harm than good and is often the
most often broken function after an LLVM update. Shouldn't we remove
it to make our lives easier?

Marek


On Wed, May 27, 2015 at 7:27 AM, Vinson Lee <vlee at freedesktop.org> wrote:
> TargetOptions::NoFramePointerElim was removed in llvm-3.7.0svn r238244
> "Remove NoFramePointerElim and NoFramePointerElimOverride from
> TargetOptions and remove ExecutionEngine's dependence on CodeGen. NFC."
>
> Signed-off-by: Vinson Lee <vlee at freedesktop.org>
> ---
>  src/gallium/auxiliary/gallivm/lp_bld_debug.cpp | 2 ++
>  src/gallium/auxiliary/gallivm/lp_bld_misc.cpp  | 2 ++
>  2 files changed, 4 insertions(+)
>
> diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
> index be3e834..76c302f 100644
> --- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
> +++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
> @@ -277,8 +277,10 @@ disassemble(const void* func, llvm::raw_ostream & Out)
>     options.StackAlignmentOverride = 4;
>  #endif
>  #if defined(DEBUG) || defined(PROFILE)
> +#if HAVE_LLVM < 0x0307
>     options.NoFramePointerElim = true;
>  #endif
> +#endif
>     OwningPtr<TargetMachine> TM(T->createTargetMachine(Triple, sys::getHostCPUName(), "", options));
>
>     /*
> diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
> index 5e8a634..ffed9e6 100644
> --- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
> +++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
> @@ -439,8 +439,10 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT,
>  #if HAVE_LLVM < 0x0304
>     options.NoFramePointerElimNonLeaf = true;
>  #endif
> +#if HAVE_LLVM < 0x0307
>     options.NoFramePointerElim = true;
>  #endif
> +#endif
>
>     builder.setEngineKind(EngineKind::JIT)
>            .setErrorStr(&Error)
> --
> 2.4.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list