[llvm-commits] [llvm] r45576 - /llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp

Evan Cheng evan.cheng at apple.com
Fri Jan 4 02:50:32 PST 2008


Author: evancheng
Date: Fri Jan  4 04:50:28 2008
New Revision: 45576

URL: http://llvm.org/viewvc/llvm-project?rev=45576&view=rev
Log:
Unbreak tailcall opt in JIT.

Modified:
    llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp

Modified: llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp?rev=45576&r1=45575&r2=45576&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86CodeEmitter.cpp Fri Jan  4 04:50:28 2008
@@ -619,7 +619,8 @@
       if (MO.isMachineBasicBlock()) {
         emitPCRelativeBlockAddress(MO.getMBB());
       } else if (MO.isGlobalAddress()) {
-        bool NeedStub = Is64BitMode && TM.getCodeModel() == CodeModel::Large;
+        bool NeedStub = (Is64BitMode && TM.getCodeModel() == CodeModel::Large)
+          || Opcode == X86::TAILJMPd;
         emitGlobalAddress(MO.getGlobal(), X86::reloc_pcrel_word,
                           0, 0, NeedStub);
       } else if (MO.isExternalSymbol()) {





More information about the llvm-commits mailing list