[llvm-commits] [llvm] r58949 - in /llvm/trunk: include/llvm/CodeGen/MachineRelocation.h include/llvm/Target/TargetJITInfo.h lib/Target/ARM/ARMCodeEmitter.cpp lib/Target/ARM/ARMJITInfo.cpp lib/Target/ARM/ARMJITInfo.h lib/Target/X86/X86CodeEmitter.

Evan Cheng evan.cheng at apple.com
Sun Nov 9 17:52:32 PST 2008


Fixed.

Evan
On Nov 9, 2008, at 5:41 PM, Daniel Berlin wrote:

> Broke build
>
> http://google1.osuosl.org:8011/builders/llvm-x86_64-linux/builds/226
> errors: http://google1.osuosl.org:8011/builders/llvm-x86_64-linux/builds/226/steps/compile/logs/errors
>
>
> On Sun, Nov 9, 2008 at 8:08 PM, Evan Cheng <evan.cheng at apple.com>  
> wrote:
>> Author: evancheng
>> Date: Sun Nov  9 19:08:07 2008
>> New Revision: 58949
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=58949&view=rev
>> Log:
>> Rename isGVNonLazyPtr to isIndirectSym to reflect how it will be  
>> used.
>>
>> Modified:
>>   llvm/trunk/include/llvm/CodeGen/MachineRelocation.h
>>   llvm/trunk/include/llvm/Target/TargetJITInfo.h
>>   llvm/trunk/lib/Target/ARM/ARMCodeEmitter.cpp
>>   llvm/trunk/lib/Target/ARM/ARMJITInfo.cpp
>>   llvm/trunk/lib/Target/ARM/ARMJITInfo.h
>>   llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp
>>   llvm/trunk/lib/Target/X86/X86JITInfo.cpp
>>   llvm/trunk/lib/Target/X86/X86JITInfo.h
>>
>> Modified: llvm/trunk/include/llvm/CodeGen/MachineRelocation.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/MachineRelocation.h?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/include/llvm/CodeGen/MachineRelocation.h (original)
>> +++ llvm/trunk/include/llvm/CodeGen/MachineRelocation.h Sun Nov  9  
>> 19:08:07 2008
>> @@ -39,7 +39,7 @@
>>  enum AddressType {
>>    isResult,         // Relocation has be transformed into its  
>> result pointer.
>>    isGV,             // The Target.GV field is valid.
>> -    isGVNonLazyPtr,   // Relocation of a Mac OS X NonLazy indirect  
>> reference.
>> +    isIndirectSym,    // Relocation of an indirect symbol.
>>    isBB,             // Relocation of BB address.
>>    isExtSym,         // The Target.ExtSym field is valid.
>>    isConstPool,      // Relocation of constant pool address.
>> @@ -56,7 +56,7 @@
>>
>>  union {
>>    void *Result;           // If this has been resolved to a  
>> resolved pointer
>> -    GlobalValue *GV;        // If this is a pointer to a GV or a  
>> GV nonlazy ptr
>> +    GlobalValue *GV;        // If this is a pointer to a GV or an  
>> indirect ref.
>>    MachineBasicBlock *MBB; // If this is a pointer to a LLVM BB
>>    const char *ExtSym;     // If this is a pointer to a named symbol
>>    unsigned Index;         // Constant pool / jump table index
>> @@ -96,19 +96,19 @@
>>    return Result;
>>  }
>>
>> -  /// MachineRelocation::getGVNonLazyPtr - Return a relocation  
>> entry for a
>> -  /// Mac OS X non-lazy GlobalValue indirect reference.
>> -  static MachineRelocation getGVNonLazyPtr(intptr_t offset,
>> -                                           unsigned RelocationType,
>> -                                           GlobalValue *GV,  
>> intptr_t cst = 0,
>> -                                           bool NeedStub = 0,
>> -                                           bool GOTrelative = 0) {
>> +  /// MachineRelocation::getIndirectSymbol - Return a relocation  
>> entry for an
>> +  /// indirect symbol.
>> +  static MachineRelocation getIndirectSymbol(intptr_t offset,
>> +                                             unsigned  
>> RelocationType,
>> +                                             GlobalValue *GV,  
>> intptr_t cst = 0,
>> +                                             bool NeedStub = 0,
>> +                                             bool GOTrelative = 0) {
>>    assert((RelocationType & ~63) == 0 && "Relocation type too  
>> large!");
>>    MachineRelocation Result;
>>    Result.Offset = offset;
>>    Result.ConstantVal = cst;
>>    Result.TargetReloType = RelocationType;
>> -    Result.AddrType = isGVNonLazyPtr;
>> +    Result.AddrType = isIndirectSym;
>>    Result.NeedStub = NeedStub;
>>    Result.GOTRelative = GOTrelative;
>>    Result.TargetResolve = false;
>> @@ -222,10 +222,10 @@
>>    return AddrType == isGV;
>>  }
>>
>> -  /// isGlobalValueNonLazyPtr - Return true if this relocation is  
>> the address
>> -  /// of a Mac OS X non-lazy indirect reference.
>> -  bool isGlobalValueNonLazyPtr() const {
>> -    return AddrType == isGVNonLazyPtr;
>> +  /// isIndirectSymbol - Return true if this relocation is the  
>> address an
>> +  /// indirect symbol
>> +  bool isIndirectSymbol() const {
>> +    return AddrType == isIndirectSym;
>>  }
>>
>>  /// isBasicBlock - Return true if this relocation is a basic block  
>> reference.
>> @@ -275,7 +275,7 @@
>>  /// getGlobalValue - If this is a global value reference, return the
>>  /// referenced global.
>>  GlobalValue *getGlobalValue() const {
>> -    assert((isGlobalValue() || isGlobalValueNonLazyPtr()) &&
>> +    assert((isGlobalValue() || isIndirectSymbol()) &&
>>           "This is not a global value reference!");
>>    return Target.GV;
>>  }
>>
>> Modified: llvm/trunk/include/llvm/Target/TargetJITInfo.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetJITInfo.h?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/include/llvm/Target/TargetJITInfo.h (original)
>> +++ llvm/trunk/include/llvm/Target/TargetJITInfo.h Sun Nov  9  
>> 19:08:07 2008
>> @@ -40,12 +40,12 @@
>>    ///
>>    virtual void replaceMachineCodeForFunction(void *Old, void *New)  
>> = 0;
>>
>> -    /// emitGlobalValueNonLazyPtr - Use the specified  
>> MachineCodeEmitter object
>> -    /// to emit a Mac OS X non-lazy pointer which contains the  
>> address of the
>> -    /// specified ptr.
>> -    virtual void *emitGlobalValueNonLazyPtr(const GlobalValue* GV,  
>> void *ptr,
>> -                                            MachineCodeEmitter  
>> &MCE) {
>> -      assert(0 && "This target doesn't implement  
>> emitGlobalValueNonLazyPtr!");
>> +    /// emitGlobalValueIndirectSym - Use the specified  
>> MachineCodeEmitter object
>> +    /// to emit an indirect symbol which contains the address of  
>> the specified
>> +    /// ptr.
>> +    virtual void *emitGlobalValueIndirectSym(const GlobalValue*  
>> GV, void *ptr,
>> +                                             MachineCodeEmitter  
>> &MCE) {
>> +      assert(0 && "This target doesn't implement  
>> emitGlobalValueIndirectSym!");
>>      return 0;
>>    }
>>
>>
>> Modified: llvm/trunk/lib/Target/ARM/ARMCodeEmitter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMCodeEmitter.cpp?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/ARM/ARMCodeEmitter.cpp (original)
>> +++ llvm/trunk/lib/Target/ARM/ARMCodeEmitter.cpp Sun Nov  9  
>> 19:08:07 2008
>> @@ -337,7 +337,7 @@
>>    if (GV) {
>>      assert(!ACPV->isStub() && "Don't know how to deal this yet!");
>>      if (ACPV->isNonLazyPointer())
>> -        MCE.addRelocation(MachineRelocation::getGVNonLazyPtr(
>> +        MCE.addRelocation(MachineRelocation::getIndirectSymbol(
>>                  MCE.getCurrentPCOffset(),  
>> ARM::reloc_arm_machine_cp_entry, GV,
>>                  (intptr_t)ACPV, false));
>>      else
>>
>> Modified: llvm/trunk/lib/Target/ARM/ARMJITInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMJITInfo.cpp?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/ARM/ARMJITInfo.cpp (original)
>> +++ llvm/trunk/lib/Target/ARM/ARMJITInfo.cpp Sun Nov  9 19:08:07 2008
>> @@ -129,8 +129,8 @@
>>  return ARMCompilationCallback;
>> }
>>
>> -void *ARMJITInfo::emitGlobalValueNonLazyPtr(const GlobalValue *GV,  
>> void *Ptr,
>> -                                            MachineCodeEmitter  
>> &MCE) {
>> +void *ARMJITInfo::emitGlobalValueIndirectSym(const GlobalValue  
>> *GV, void *Ptr,
>> +                                             MachineCodeEmitter  
>> &MCE) {
>>  MCE.startGVStub(GV, 4, 4);
>>  MCE.emitWordLE((intptr_t)Ptr);
>>  return MCE.finishGVStub(GV);
>>
>> Modified: llvm/trunk/lib/Target/ARM/ARMJITInfo.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMJITInfo.h?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/ARM/ARMJITInfo.h (original)
>> +++ llvm/trunk/lib/Target/ARM/ARMJITInfo.h Sun Nov  9 19:08:07 2008
>> @@ -51,10 +51,10 @@
>>    ///
>>    virtual void replaceMachineCodeForFunction(void *Old, void *New);
>>
>> -    /// emitGlobalValueNonLazyPtr - Use the specified  
>> MachineCodeEmitter object
>> -    /// to emit a Mac OS X non-lazy pointer which contains the  
>> address of the
>> -    /// specified ptr.
>> -    virtual void *emitGlobalValueNonLazyPtr(const GlobalValue *GV,  
>> void *Ptr,
>> +    /// emitGlobalValueIndirectSym - Use the specified  
>> MachineCodeEmitter object
>> +    /// to emit an indirect symbol which contains the address of  
>> the specified
>> +    /// ptr.
>> +    virtual void *emitGlobalValueIndirectSym(const GlobalValue*  
>> GV, void *ptr,
>>                                            MachineCodeEmitter &MCE);
>>
>>    /// emitFunctionStub - Use the specified MachineCodeEmitter  
>> object to emit a
>>
>> Modified: llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp (original)
>> +++ llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp Sun Nov  9  
>> 19:08:07 2008
>> @@ -73,7 +73,7 @@
>>    void emitPCRelativeBlockAddress(MachineBasicBlock *MBB);
>>    void emitGlobalAddress(GlobalValue *GV, unsigned Reloc,
>>                           intptr_t Disp = 0, intptr_t PCAdj = 0,
>> -                           bool NeedStub = false, bool IsNonLazy =  
>> false);
>> +                           bool NeedStub = false, bool Indirect =  
>> false);
>>    void emitExternalSymbolAddress(const char *ES, unsigned Reloc);
>>    void emitConstPoolAddress(unsigned CPI, unsigned Reloc, intptr_t  
>> Disp = 0,
>>                              intptr_t PCAdj = 0);
>> @@ -155,15 +155,15 @@
>>                                intptr_t Disp /* = 0 */,
>>                                intptr_t PCAdj /* = 0 */,
>>                                bool NeedStub /* = false */,
>> -                                bool isNonLazy /* = false */) {
>> +                                bool Indirect /* = false */) {
>>  intptr_t RelocCST = 0;
>>  if (Reloc == X86::reloc_picrel_word)
>>    RelocCST = PICBaseOffset;
>>  else if (Reloc == X86::reloc_pcrel_word)
>>    RelocCST = PCAdj;
>> -  MachineRelocation MR = isNonLazy
>> -    ? MachineRelocation::getGVNonLazyPtr(MCE.getCurrentPCOffset(),  
>> Reloc,
>> -                                         GV, RelocCST, NeedStub)
>> +  MachineRelocation MR = Indirect
>> +    ?  
>> MachineRelocation::getIndirectSymbol(MCE.getCurrentPCOffset(), Reloc,
>> +                                           GV, RelocCST, NeedStub)
>>    : MachineRelocation::getGV(MCE.getCurrentPCOffset(), Reloc,
>>                               GV, RelocCST, NeedStub);
>>  MCE.addRelocation(MR);
>> @@ -289,9 +289,9 @@
>>    unsigned rt = Is64BitMode ? X86::reloc_pcrel_word
>>      : (IsPIC ? X86::reloc_picrel_word : X86::reloc_absolute_word);
>>    bool NeedStub = isa<Function>(RelocOp->getGlobal());
>> -    bool isNonLazy = gvNeedsNonLazyPtr(RelocOp->getGlobal());
>> +    bool Indirect = gvNeedsNonLazyPtr(RelocOp->getGlobal());
>>    emitGlobalAddress(RelocOp->getGlobal(), rt, RelocOp->getOffset(),
>> -                      PCAdj, NeedStub, isNonLazy);
>> +                      PCAdj, NeedStub, Indirect);
>>  } else if (RelocOp->isCPI()) {
>>    unsigned rt = Is64BitMode ? X86::reloc_pcrel_word :  
>> X86::reloc_picrel_word;
>>    emitConstPoolAddress(RelocOp->getIndex(), rt,
>> @@ -610,9 +610,9 @@
>>          rt = X86::reloc_absolute_dword;  // FIXME: add X86II flag?
>>        if (MO1.isGlobal()) {
>>          bool NeedStub = isa<Function>(MO1.getGlobal());
>> -          bool isNonLazy = gvNeedsNonLazyPtr(MO1.getGlobal());
>> +          bool Indirect = gvNeedsNonLazyPtr(MO1.getGlobal());
>>          emitGlobalAddress(MO1.getGlobal(), rt, MO1.getOffset(), 0,
>> -                            NeedStub, isNonLazy);
>> +                            NeedStub, Indirect);
>>        } else if (MO1.isSymbol())
>>          emitExternalSymbolAddress(MO1.getSymbolName(), rt);
>>        else if (MO1.isCPI())
>> @@ -688,9 +688,9 @@
>>          rt = X86::reloc_absolute_word;  // FIXME: add X86II flag?
>>        if (MO1.isGlobal()) {
>>          bool NeedStub = isa<Function>(MO1.getGlobal());
>> -          bool isNonLazy = gvNeedsNonLazyPtr(MO1.getGlobal());
>> +          bool Indirect = gvNeedsNonLazyPtr(MO1.getGlobal());
>>          emitGlobalAddress(MO1.getGlobal(), rt, MO1.getOffset(), 0,
>> -                            NeedStub, isNonLazy);
>> +                            NeedStub, Indirect);
>>        } else if (MO1.isSymbol())
>>          emitExternalSymbolAddress(MO1.getSymbolName(), rt);
>>        else if (MO1.isCPI())
>> @@ -726,9 +726,9 @@
>>          rt = X86::reloc_absolute_word;  // FIXME: add X86II flag?
>>        if (MO.isGlobal()) {
>>          bool NeedStub = isa<Function>(MO.getGlobal());
>> -          bool isNonLazy = gvNeedsNonLazyPtr(MO.getGlobal());
>> +          bool Indirect = gvNeedsNonLazyPtr(MO.getGlobal());
>>          emitGlobalAddress(MO.getGlobal(), rt, MO.getOffset(), 0,
>> -                            NeedStub, isNonLazy);
>> +                            NeedStub, Indirect);
>>        } else if (MO.isSymbol())
>>          emitExternalSymbolAddress(MO.getSymbolName(), rt);
>>        else if (MO.isCPI())
>>
>> Modified: llvm/trunk/lib/Target/X86/X86JITInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86JITInfo.cpp?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86JITInfo.cpp (original)
>> +++ llvm/trunk/lib/Target/X86/X86JITInfo.cpp Sun Nov  9 19:08:07 2008
>> @@ -413,8 +413,8 @@
>>  return X86CompilationCallback;
>> }
>>
>> -void *X86JITInfo::emitGlobalValueNonLazyPtr(const GlobalValue* GV,  
>> void *ptr,
>> -                                            MachineCodeEmitter  
>> &MCE) {
>> +void *X86JITInfo::emitGlobalValueIndirectSym(const GlobalValue*  
>> GV, void *ptr,
>> +                                             MachineCodeEmitter  
>> &MCE) {
>> #if defined (X86_64_JIT)
>>  MCE.startGVStub(GV, 8, 8);
>>  MCE.emitWordLE((unsigned)(intptr_t)ptr);
>>
>> Modified: llvm/trunk/lib/Target/X86/X86JITInfo.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86JITInfo.h?rev=58949&r1=58948&r2=58949&view=diff
>>
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86JITInfo.h (original)
>> +++ llvm/trunk/lib/Target/X86/X86JITInfo.h Sun Nov  9 19:08:07 2008
>> @@ -37,11 +37,11 @@
>>    ///
>>    virtual void replaceMachineCodeForFunction(void *Old, void *New);
>>
>> -    /// emitGlobalValueNonLazyPtr - Use the specified  
>> MachineCodeEmitter object
>> -    /// to emit a Mac OS X non-lazy pointer which contains the  
>> address of the
>> -    /// specified ptr.
>> -    virtual void *emitGlobalValueNonLazyPtr(const GlobalValue* GV,  
>> void *ptr,
>> -                                            MachineCodeEmitter  
>> &MCE);
>> +    /// emitGlobalValueIndirectSym - Use the specified  
>> MachineCodeEmitter object
>> +    /// to emit an indirect symbol which contains the address of  
>> the specified
>> +    /// ptr.
>> +    virtual void *emitGlobalValueIndirectSym(const GlobalValue*  
>> GV, void *ptr,
>> +                                             MachineCodeEmitter  
>> &MCE);
>>
>>    /// emitFunctionStub - Use the specified MachineCodeEmitter  
>> object to emit a
>>    /// small native function that simply calls the function at the  
>> specified
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list