From: Clement Courbet Date: Wed, 15 May 2019 14:00:45 +0000 (+0000) Subject: [MergeICmps] Fix r360771. X-Git-Tag: llvmorg-10-init~5491 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0d071be474864703a6333132b2df484985a47f3c;p=platform%2Fupstream%2Fllvm.git [MergeICmps] Fix r360771. Twine references a StringRef by reference, not value... llvm-svn: 360775 --- diff --git a/llvm/lib/Transforms/Scalar/MergeICmps.cpp b/llvm/lib/Transforms/Scalar/MergeICmps.cpp index d8baf504..82d1862 100644 --- a/llvm/lib/Transforms/Scalar/MergeICmps.cpp +++ b/llvm/lib/Transforms/Scalar/MergeICmps.cpp @@ -544,11 +544,11 @@ class MergedBlockName { public: explicit MergedBlockName(ArrayRef Comparisons) - : Name(makeTwine(Comparisons)) {} - const Twine Name; + : Name(makeName(Comparisons)) {} + const StringRef Name; private: - Twine makeTwine(ArrayRef Comparisons) { + StringRef makeName(ArrayRef Comparisons) { assert(!Comparisons.empty() && "no basic block"); // Fast path: only one block, or no names at all. if (Comparisons.size() == 1) @@ -558,7 +558,7 @@ private: return i + Cmp.BB->getName().size(); }); if (size == 0) - return Twine(); + return StringRef("", 0); // Slow path: at least two blocks, at least one block with a name. Scratch.clear(); @@ -576,7 +576,7 @@ private: append(BB->getName()); } } - return Twine(Scratch); + return StringRef(Scratch); } }; } // namespace