Make clang -cc1 disable Objective-C exceptions by default, and add a -fobjc-exceptions flag to turn them on.

Update all tests accordingly.

llvm-svn: 126177
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 2f264e5..9f4a0bc 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -1546,10 +1546,10 @@
       CmdArgs.push_back("-fobjc-default-synthesize-properties");
     }
 
-    // -fobjc-exceptions is default.
-    if (!Args.hasFlag(options::OPT_fobjc_exceptions, 
-                      options::OPT_fno_objc_exceptions))
-      CmdArgs.push_back("-fno-objc-exceptions");
+    // -fno-objc-exceptions is default.
+    if (IsRewriter || Args.hasFlag(options::OPT_fobjc_exceptions, 
+                                   options::OPT_fno_objc_exceptions))
+      CmdArgs.push_back("-fobjc-exceptions");
   }
 
   if (!Args.hasFlag(options::OPT_fassume_sane_operator_new,