[LLVMdev] GCC/LLVM frame pointer incompatibility on ARM

Yury Gribov y.gribov at samsung.com
Thu Jul 17 07:13:01 PDT 2014


On 07/17/2014 05:10 PM, Renato Golin wrote:
> As you may imagine, changing how the FP behaves will have an impact
> not just in GCC itself, but many other tools (known and unknown) that
> rely on that behaviour.

Note that these tools wouldn't work with Clang then.
And vice verse: tools that are developed in Clang (Asan) won't work with 
GCC.

> On the other hand, eliminating the
> prologue when no local logic requires it is pointless

I think you meant "keeping prologue when no local logic requires it is 
pointless" ?

> and can be a big
> difference in performance on devices that are already restricted by
> extreme power constraints, so to produce really optimal code for ARM
> you have to be able to change that.

It's the same for x64 - if you need ability to do fast unwinding
you have to ask for it explicitly with -fno-omit-frame-pointer, 
otherwise compiler
is free to re-use rbp for general computations.

-Y



More information about the llvm-dev mailing list