aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-03-17 20:31:41 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-03-17 20:31:41 +0000
commitdf57fa0c7d44a90ed8c0271a4a78fd5de8eea995 (patch)
treef00dc442a931d0dc8f61504ca29b2bdb91ea64e3
parent95ab26859483eb2621398aa1ad504bf8aec3768d (diff)
Darwin should use _setjmp/_longjmp instead of setjmp/longjmp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26833 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86ISelLowering.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp
index c17795f394..a9f09b5ee6 100644
--- a/lib/Target/X86/X86ISelLowering.cpp
+++ b/lib/Target/X86/X86ISelLowering.cpp
@@ -50,6 +50,10 @@ X86TargetLowering::X86TargetLowering(TargetMachine &TM)
setShiftAmountFlavor(Mask); // shl X, 32 == shl X, 0
setStackPointerRegisterToSaveRestore(X86::ESP);
+ if (!TM.getSubtarget<X86Subtarget>().isTargetDarwin())
+ // Darwin should use _setjmp/_longjmp instead of setjmp/longjmp.
+ setUseUnderscoreSetJmpLongJmp(true);
+
// Add legal addressing mode scale values.
addLegalAddressScale(8);
addLegalAddressScale(4);