Darwin should use _setjmp/_longjmp instead of setjmp/longjmp.

llvm-svn: 26833
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index c17795f..a9f09b5 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -50,6 +50,10 @@
   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);