Changes in directory llvm/lib/Target/X86:
X86CodeEmitter.cpp updated: 1.111 -> 1.112 X86JITInfo.cpp updated: 1.24 -> 1.25 X86JITInfo.h updated: 1.9 -> 1.10 --- Log message: Resolve BB references with relocation. --- Diffs of the changes: (+2 -13) X86CodeEmitter.cpp | 3 ++- X86JITInfo.cpp | 10 ---------- X86JITInfo.h | 2 -- 3 files changed, 2 insertions(+), 13 deletions(-) Index: llvm/lib/Target/X86/X86CodeEmitter.cpp diff -u llvm/lib/Target/X86/X86CodeEmitter.cpp:1.111 llvm/lib/Target/X86/X86CodeEmitter.cpp:1.112 --- llvm/lib/Target/X86/X86CodeEmitter.cpp:1.111 Tue Jul 25 15:40:54 2006 +++ llvm/lib/Target/X86/X86CodeEmitter.cpp Thu Jul 27 13:21:10 2006 @@ -111,7 +111,8 @@ void Emitter::emitPCRelativeBlockAddress(MachineBasicBlock *MBB) { // Remember where this reference was and where it is to so we can // deal with it later. - TM.getJITInfo()->addBBRef(MBB, MCE.getCurrentPCValue()); + MCE.addRelocation(MachineRelocation::getBB(MCE.getCurrentPCOffset(), + X86::reloc_pcrel_word, MBB)); MCE.emitWordLE(0); } Index: llvm/lib/Target/X86/X86JITInfo.cpp diff -u llvm/lib/Target/X86/X86JITInfo.cpp:1.24 llvm/lib/Target/X86/X86JITInfo.cpp:1.25 --- llvm/lib/Target/X86/X86JITInfo.cpp:1.24 Tue Jul 25 15:40:54 2006 +++ llvm/lib/Target/X86/X86JITInfo.cpp Thu Jul 27 13:21:10 2006 @@ -203,13 +203,3 @@ } } } - -void X86JITInfo::resolveBBRefs(MachineCodeEmitter &MCE) { - // Resolve all forward branches now. - for (unsigned i = 0, e = BBRefs.size(); i != e; ++i) { - unsigned Location = MCE.getMachineBasicBlockAddress(BBRefs[i].first); - intptr_t Ref = BBRefs[i].second; - *((unsigned*)Ref) = Location-Ref-4; - } - BBRefs.clear(); -} Index: llvm/lib/Target/X86/X86JITInfo.h diff -u llvm/lib/Target/X86/X86JITInfo.h:1.9 llvm/lib/Target/X86/X86JITInfo.h:1.10 --- llvm/lib/Target/X86/X86JITInfo.h:1.9 Tue Jul 25 15:40:54 2006 +++ llvm/lib/Target/X86/X86JITInfo.h Thu Jul 27 13:21:10 2006 @@ -51,8 +51,6 @@ /// referenced global symbols. virtual void relocate(void *Function, MachineRelocation *MR, unsigned NumRelocs, unsigned char* GOTBase); - - virtual void resolveBBRefs(MachineCodeEmitter &MCE); }; } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits