mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
[TableGen] Return StringRef from ValueTypeByHwMode::getMVTName
Avoid unnecessary std::string creations during TypeSetByHwMode::writeToStream. Found during investigations into PR28222 Differential Revision: https://reviews.llvm.org/D38174 llvm-svn: 313983
This commit is contained in:
parent
98ceac3d19
commit
0a1c4b0914
@ -70,10 +70,9 @@ MVT &ValueTypeByHwMode::getOrCreateTypeForMode(unsigned Mode, MVT Type) {
|
||||
return Map.insert(std::make_pair(Mode, Type)).first->second;
|
||||
}
|
||||
|
||||
std::string ValueTypeByHwMode::getMVTName(MVT T) {
|
||||
std::string N = llvm::getEnumName(T.SimpleTy);
|
||||
if (N.substr(0,5) == "MVT::")
|
||||
N = N.substr(5);
|
||||
StringRef ValueTypeByHwMode::getMVTName(MVT T) {
|
||||
StringRef N = llvm::getEnumName(T.SimpleTy);
|
||||
N.consume_front("MVT::");
|
||||
return N;
|
||||
}
|
||||
|
||||
@ -91,7 +90,7 @@ std::string ValueTypeByHwMode::getAsString() const {
|
||||
for (unsigned i = 0, e = Pairs.size(); i != e; ++i) {
|
||||
const PairType *P = Pairs[i];
|
||||
str << '(' << getModeName(P->first)
|
||||
<< ':' << getMVTName(P->second) << ')';
|
||||
<< ':' << getMVTName(P->second).str() << ')';
|
||||
if (i != e-1)
|
||||
str << ',';
|
||||
}
|
||||
|
@ -129,7 +129,7 @@ struct ValueTypeByHwMode : public InfoByHwMode<MVT> {
|
||||
MVT getType(unsigned Mode) const { return get(Mode); }
|
||||
MVT &getOrCreateTypeForMode(unsigned Mode, MVT Type);
|
||||
|
||||
static std::string getMVTName(MVT T);
|
||||
static StringRef getMVTName(MVT T);
|
||||
std::string getAsString() const;
|
||||
void dump() const;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user