Apply Eric's experimental patch for <rdar://problem/7151726> for the SWB.

llvm-svn: 80850
diff --git a/llvm-gcc-4.2/gcc/except.c b/llvm-gcc-4.2/gcc/except.c
index 46968c2..fa97fe7 100644
--- a/llvm-gcc-4.2/gcc/except.c
+++ b/llvm-gcc-4.2/gcc/except.c
@@ -4085,7 +4085,7 @@
      and even requires additional instructions on some targets. */
   const char *name = USING_SJLJ_EXCEPTIONS ?
                        "_Unwind_SjLj_Resume"
-                       : "_Unwind_Resume_or_Rethrow";
+                       : "_Unwind_Resume";
   tree decl = build_decl (FUNCTION_DECL, get_identifier (name),
                           build_function_type_list (void_type_node,
                                                     ptr_type_node, NULL_TREE));
diff --git a/llvm-gcc-4.2/gcc/llvm-convert.cpp b/llvm-gcc-4.2/gcc/llvm-convert.cpp
index 5a26746..748edb2 100644
--- a/llvm-gcc-4.2/gcc/llvm-convert.cpp
+++ b/llvm-gcc-4.2/gcc/llvm-convert.cpp
@@ -1998,30 +1998,10 @@
             Args.push_back(Emit(TType, 0));
           }
         }
-      }
-    }
-
-    if (can_throw_external_1(i, false)) {
-      // Some exceptions from this region may not be caught by any handler.
-      // Since invokes are required to branch to the unwind label no matter
-      // what exception is being unwound, append a catch-all.
-
-      // The representation of a catch-all is language specific.
-      Value *CatchAll;
-      if (USING_SJLJ_EXCEPTIONS || !lang_eh_catch_all) {
-        // Use a "cleanup" - this should be good enough for most languages.
-        CatchAll = ConstantInt::get(Type::getInt32Ty(Context), 0);
       } else {
-        tree catch_all_type = lang_eh_catch_all();
-        if (catch_all_type == NULL_TREE)
-          // Use a C++ style null catch-all object.
-          CatchAll = Constant::getNullValue(
-                                    PointerType::getUnqual(Type::getInt8Ty(Context)));
-        else
-          // This language has a type that catches all others.
-          CatchAll = Emit(catch_all_type, 0);
+	// Cleanup region.
+	Args.push_back(ConstantInt::get(Type::getInt32Ty(Context), 0));
       }
-      Args.push_back(CatchAll);
     }
 
     // Emit the selector call.