diff --git a/lib/CodeGen/BackendUtil.cpp b/lib/CodeGen/BackendUtil.cpp
index a1521dc..cec48f3 100644
--- a/lib/CodeGen/BackendUtil.cpp
+++ b/lib/CodeGen/BackendUtil.cpp
@@ -383,7 +383,7 @@ TargetMachine *EmitAssemblyHelper::CreateTargetMachine(bool MustCreateTM) {
   for (unsigned i = 0, e = CodeGenOpts.BackendOptions.size(); i != e; ++i)
     BackendArgs.push_back(CodeGenOpts.BackendOptions[i].c_str());
   if (CodeGenOpts.NoGlobalMerge)
-    BackendArgs.push_back("-global-merge=false");
+    BackendArgs.push_back("-enable-global-merge=false");
   BackendArgs.push_back(nullptr);
   llvm::cl::ParseCommandLineOptions(BackendArgs.size() - 1,
                                     BackendArgs.data());
diff --git a/test/Driver/mno-global-merge.c b/test/Driver/mno-global-merge.c
index a17848f..daf029e 100644
--- a/test/Driver/mno-global-merge.c
+++ b/test/Driver/mno-global-merge.c
@@ -18,3 +18,8 @@
 
 // CHECK-GM-NOT: "-mglobal-merge"
 
+// RUN: %clang -target armv7-apple-darwin10 \
+// RUN:   -mno-global-merge -c %s
+
+// RUN: %clang -target armv7-apple-darwin10 \
+// RUN:   -mglobal-merge -c %s
