[NFC] Generalize getIslCompatibleName interface.
authorJohannes Doerfert <doerfert@cs.uni-saarland.de>
Thu, 19 Feb 2015 18:09:39 +0000 (18:09 +0000)
committerJohannes Doerfert <doerfert@cs.uni-saarland.de>
Thu, 19 Feb 2015 18:09:39 +0000 (18:09 +0000)
llvm-svn: 229877

polly/include/polly/Support/GICHelper.h
polly/lib/Support/GICHelper.cpp

index c5fb4a1..a83588d 100644 (file)
@@ -72,8 +72,13 @@ inline llvm::raw_ostream &operator<<(llvm::raw_ostream &OS,
 }
 
 /// @brief Return @p Prefix + @p Val->getName() + @p Suffix but Isl compatible.
-std::string getIslCompatibleName(std::string Prefix, const llvm::Value *Val,
-                                 std::string Suffix);
+std::string getIslCompatibleName(const std::string &Prefix,
+                                 const llvm::Value *Val,
+                                 const std::string &Suffix);
+
+std::string getIslCompatibleName(const std::string &Prefix,
+                                 const std::string &Middle,
+                                 const std::string &Suffix);
 
 } // end namespace polly
 
index 0b7abc2..581d2e2 100644 (file)
@@ -136,15 +136,21 @@ static void makeIslCompatible(std::string &str) {
   replace(str, "\"", "_");
 }
 
-std::string polly::getIslCompatibleName(std::string Prefix, const Value *Val,
-                                        std::string Suffix) {
+std::string polly::getIslCompatibleName(const std::string &Prefix,
+                                        const std::string &Middle,
+                                        const std::string &Suffix) {
+  std::string S = Prefix + Middle + Suffix;
+  makeIslCompatible(S);
+  return S;
+}
+
+std::string polly::getIslCompatibleName(const std::string &Prefix, const Value *Val,
+                                        const std::string &Suffix) {
   std::string ValStr;
   raw_string_ostream OS(ValStr);
   Val->printAsOperand(OS, false);
   ValStr = OS.str();
   // Remove the leading %
   ValStr.erase(0, 1);
-  ValStr = Prefix + ValStr + Suffix;
-  makeIslCompatible(ValStr);
-  return ValStr;
+  return getIslCompatibleName(Prefix, ValStr, Suffix);
 }