]> granicus.if.org Git - clang/commitdiff
Simplify.
authorDaniel Dunbar <daniel@zuster.org>
Wed, 9 Sep 2009 22:32:34 +0000 (22:32 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Wed, 9 Sep 2009 22:32:34 +0000 (22:32 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81386 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Driver/Tools.cpp

index ce99aa203bca11eae9102c7c101eecef7f0fdf62..31b6cb5a45728392f7abc2da511639c06b9df05e 100644 (file)
@@ -22,6 +22,7 @@
 #include "clang/Driver/Util.h"
 
 #include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/Twine.h"
 #include "llvm/Support/Format.h"
 #include "llvm/Support/raw_ostream.h"
 
@@ -383,22 +384,19 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
          it = Args.begin(), ie = Args.end(); it != ie; ++it) {
     const Arg *A = *it;
     if (A->getOption().matches(options::OPT_m_x86_Features_Group)) {
-      const char *Name = A->getOption().getName();
+      llvm::StringRef Name = A->getOption().getName();
 
       // Skip over "-m".
-      assert(Name[0] == '-' && Name[1] == 'm' && "Invalid feature name.");
-      Name += 2;
+      assert(Name.startswith("-m") && "Invalid feature name.");
+      Name = Name.substr(2);
 
-      bool IsNegative = memcmp(Name, "no-", 3) == 0;
+      bool IsNegative = Name.startswith("no-");
       if (IsNegative)
-        Name += 3;
+        Name = Name.substr(3);
 
       A->claim();
       CmdArgs.push_back("-target-feature");
-      CmdArgs.push_back(MakeFormattedString(Args,
-                                            llvm::format("%c%s",
-                                                         IsNegative ? '-' : '+',
-                                                         Name)));
+      CmdArgs.push_back(Args.MakeArgString((IsNegative ? "-" : "+") + Name));
     }
   }