summaryrefslogtreecommitdiff
path: root/lib/Target/X86/X86CodeEmitter.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2007-03-14 20:20:19 +0000
committerEvan Cheng <evan.cheng@apple.com>2007-03-14 20:20:19 +0000
commite70ef980437fb4709c7f74460442a6d2666ea51d (patch)
tree9c14d5f73ce5e89bec1dafb197fa38bf7e2ad19c /lib/Target/X86/X86CodeEmitter.cpp
parent774be2976981b192f23463a34a08ddca53ada8db (diff)
downloadllvm-e70ef980437fb4709c7f74460442a6d2666ea51d.tar.gz
llvm-e70ef980437fb4709c7f74460442a6d2666ea51d.tar.bz2
llvm-e70ef980437fb4709c7f74460442a6d2666ea51d.tar.xz
Clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35105 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86CodeEmitter.cpp')
-rw-r--r--lib/Target/X86/X86CodeEmitter.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/Target/X86/X86CodeEmitter.cpp b/lib/Target/X86/X86CodeEmitter.cpp
index 719d621f97..899e30f6f4 100644
--- a/lib/Target/X86/X86CodeEmitter.cpp
+++ b/lib/Target/X86/X86CodeEmitter.cpp
@@ -656,9 +656,10 @@ void Emitter::emitInstruction(const MachineInstr &MI) {
if (MO.isMachineBasicBlock()) {
emitPCRelativeBlockAddress(MO.getMachineBasicBlock());
} else if (MO.isGlobalAddress()) {
- bool isTailCall = Opcode == X86::TAILJMPd ||
- Opcode == X86::TAILJMPr || Opcode == X86::TAILJMPm;
- emitGlobalAddressForCall(MO.getGlobal(), !isTailCall && !Is64BitMode);
+ bool NeedStub = Is64BitMode ||
+ Opcode == X86::TAILJMPd ||
+ Opcode == X86::TAILJMPr || Opcode == X86::TAILJMPm;
+ emitGlobalAddressForCall(MO.getGlobal(), !NeedStub);
} else if (MO.isExternalSymbol()) {
emitExternalSymbolAddress(MO.getSymbolName(), X86::reloc_pcrel_word);
} else if (MO.isImmediate()) {