]> granicus.if.org Git - clang/commitdiff
[CodeGen] Use llvm::join to simplify string joining.
authorBenjamin Kramer <benny.kra@googlemail.com>
Thu, 2 Jul 2015 21:02:39 +0000 (21:02 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Thu, 2 Jul 2015 21:02:39 +0000 (21:02 +0000)
While there replace stable_sort of std::string with just sort, stability
is not necessary for "simple" value types. No functional change intended.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@241299 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGCall.cpp

index fd20bf15e0d2b03ca4041d3669eea6b009761f88..142966e7c011d9443e26fe9b8ae56fb85dcd97e8 100644 (file)
@@ -32,7 +32,6 @@
 #include "llvm/IR/Intrinsics.h"
 #include "llvm/IR/IntrinsicInst.h"
 #include "llvm/Transforms/Utils/Local.h"
-#include <sstream>
 using namespace clang;
 using namespace CodeGen;
 
@@ -1544,14 +1543,9 @@ void CodeGenModule::ConstructAttributeList(const CGFunctionInfo &FI,
     if (TargetCPU != "")
       FuncAttrs.addAttribute("target-cpu", TargetCPU);
     if (!Features.empty()) {
-      std::stable_sort(Features.begin(), Features.end());
-      std::stringstream TargetFeatures;
-      std::copy(Features.begin(), Features.end(),
-                std::ostream_iterator<std::string>(TargetFeatures, ","));
-
-      // The drop_back gets rid of the trailing space.
+      std::sort(Features.begin(), Features.end());
       FuncAttrs.addAttribute("target-features",
-                             StringRef(TargetFeatures.str()).drop_back(1));
+                             llvm::join(Features.begin(), Features.end(), ","));
     }
   }