summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/CodeGenDAGPatterns.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2015-11-28 08:23:02 +0000
committerCraig Topper <craig.topper@gmail.com>2015-11-28 08:23:02 +0000
commit3522ab30dbd7bdedde73bf8d0545bd5a978cccde (patch)
tree50c8f50f8641ec7bab0ebd40a321d72fb78302f2 /llvm/utils/TableGen/CodeGenDAGPatterns.cpp
parent017fffbd2a968de6aed705964ef4190e58782515 (diff)
downloadbcm5719-llvm-3522ab30dbd7bdedde73bf8d0545bd5a978cccde.tar.gz
bcm5719-llvm-3522ab30dbd7bdedde73bf8d0545bd5a978cccde.zip
[TableGen] Use SmallString instead of std::string to build up a string to avoid heap allocations. NFC
llvm-svn: 254221
Diffstat (limited to 'llvm/utils/TableGen/CodeGenDAGPatterns.cpp')
-rw-r--r--llvm/utils/TableGen/CodeGenDAGPatterns.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/utils/TableGen/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/CodeGenDAGPatterns.cpp
index 6ba4a8dbda7..3f74a9999c9 100644
--- a/llvm/utils/TableGen/CodeGenDAGPatterns.cpp
+++ b/llvm/utils/TableGen/CodeGenDAGPatterns.cpp
@@ -14,6 +14,7 @@
#include "CodeGenDAGPatterns.h"
#include "llvm/ADT/STLExtras.h"
+#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/Debug.h"
@@ -873,14 +874,14 @@ std::string PatternToMatch::getPredicateCheck() const {
// Sort so that different orders get canonicalized to the same string.
std::sort(PredicateRecs.begin(), PredicateRecs.end(), LessRecord());
- std::string PredicateCheck;
+ SmallString<128> PredicateCheck;
for (Record *Pred : PredicateRecs) {
if (!PredicateCheck.empty())
PredicateCheck += " && ";
PredicateCheck += "(" + Pred->getValueAsString("CondString") + ")";
}
- return PredicateCheck;
+ return PredicateCheck.str();
}
//===----------------------------------------------------------------------===//
OpenPOWER on IntegriCloud