[LLVMdev] ARM instructions clobbering frame pointer

Cameron Zwarich zwarich at apple.com
Sun Jun 26 12:52:39 PDT 2011


On 2011-06-26, at 8:44 AM, Jakob Stoklund Olesen wrote:

> On Jun 25, 2011, at 11:39 PM, Cameron Zwarich wrote:
> 
>> Someone hit a bug (not in bugs.llvm.org) caused by the non-Darwin call instructions not being marked as using the frame pointer. Is it safe to just add r11 / r7 as uses to the appropriate instructions like we do on Darwin? Does anyone care about the slight pessimization this would cause in the -fomit-frame-pointer case?
> 
> That sounds very odd, the frame pointer should be reserved so it shouldn't matter who clobbers it.
> 
> Are you calling a function that uses a frame pointer from a function that omits the frame pointer?

I guess it's not actually a clobber of the FP. The various call instructions are not marked as users of the FP, so post-RA scheduling will move the prologue FP setup code after the function call.

Cameron



More information about the llvm-dev mailing list