diff options
author | Craig Topper <craig.topper@gmail.com> | 2015-11-28 08:23:02 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2015-11-28 08:23:02 +0000 |
commit | 3522ab30dbd7bdedde73bf8d0545bd5a978cccde (patch) | |
tree | 50c8f50f8641ec7bab0ebd40a321d72fb78302f2 /llvm/utils/TableGen/CodeGenDAGPatterns.cpp | |
parent | 017fffbd2a968de6aed705964ef4190e58782515 (diff) | |
download | bcm5719-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.cpp | 5 |
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(); } //===----------------------------------------------------------------------===// |