[LLVMdev] External constants and RIP relative addressing
    Chris Lattner 
    clattner at apple.com
       
    Mon May 16 08:46:10 PDT 2011
    
    
  
On May 16, 2011, at 6:24 AM, Chris Stavrakakis wrote:
> Hi all,
> 
> in llvm-2.8, i declare an external constant of i64 and i want the 
> instructions that use the value of this constant to use absolute 
> addressing instead of RIP relative, that is:
> 
> I get: "48 8b 35 00 00 00 00     mov    0x0(%rip),%rsi"  #AT&T syntax
> But i would prefer: "48 BE 00 00 00 00 00 00      mov     0x0, %rsi"
> 
> The reason i want this is that i use a specific loader that expects 
> absolute addressing for patching constants.
> 
> Is there any way to achieve this?
Hi Chris,
You'll have to hack up the code generator, there is no user visible knob to turn off rip relative addressing.
-Chris
    
    
More information about the llvm-dev
mailing list