diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp
index f31f920..bc2f7bd 100644
--- a/lib/Target/CBackend/CBackend.cpp
+++ b/lib/Target/CBackend/CBackend.cpp
@@ -1075,8 +1075,8 @@
   
   for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I) {
     // Don't print declarations for intrinsic functions.
-    if (!I->getIntrinsicID() &&
-        I->getName() != "setjmp" && I->getName() != "longjmp") {
+    if (!I->getIntrinsicID() && I->getName() != "setjmp" && 
+        I->getName() != "longjmp" && I->getName() != "_setjmp") {
       printFunctionSignature(I, true);
       if (I->hasWeakLinkage() || I->hasLinkOnceLinkage()) 
         Out << " __ATTRIBUTE_WEAK__";
diff --git a/lib/Target/CBackend/Writer.cpp b/lib/Target/CBackend/Writer.cpp
index f31f920..bc2f7bd 100644
--- a/lib/Target/CBackend/Writer.cpp
+++ b/lib/Target/CBackend/Writer.cpp
@@ -1075,8 +1075,8 @@
   
   for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I) {
     // Don't print declarations for intrinsic functions.
-    if (!I->getIntrinsicID() &&
-        I->getName() != "setjmp" && I->getName() != "longjmp") {
+    if (!I->getIntrinsicID() && I->getName() != "setjmp" && 
+        I->getName() != "longjmp" && I->getName() != "_setjmp") {
       printFunctionSignature(I, true);
       if (I->hasWeakLinkage() || I->hasLinkOnceLinkage()) 
         Out << " __ATTRIBUTE_WEAK__";
