Convert StringMap to using StringRef for its APIs.
- Yay for '-'s and simplifications!
- I kept StringMap::GetOrCreateValue for compatibility purposes, this can
eventually go away. Likewise the StringMapEntry Create functions still follow
the old style.
- NIFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76888 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvm-mc/AsmLexer.cpp b/tools/llvm-mc/AsmLexer.cpp
index 6ee9145..e872090 100644
--- a/tools/llvm-mc/AsmLexer.cpp
+++ b/tools/llvm-mc/AsmLexer.cpp
@@ -107,8 +107,9 @@
*CurPtr == '.' || *CurPtr == '@')
++CurPtr;
// Unique string.
- CurStrVal =
- getSS(TheStringSet).GetOrCreateValue(TokStart, CurPtr, 0).getKeyData();
+ CurStrVal = getSS(TheStringSet).GetOrCreateValue(StringRef(TokStart,
+ CurPtr - TokStart),
+ 0).getKeyData();
return asmtok::Identifier;
}
@@ -121,8 +122,9 @@
++CurPtr;
// Unique string.
- CurStrVal =
- getSS(TheStringSet).GetOrCreateValue(TokStart, CurPtr, 0).getKeyData();
+ CurStrVal = getSS(TheStringSet).GetOrCreateValue(StringRef(TokStart,
+ CurPtr - TokStart),
+ 0).getKeyData();
return asmtok::Register;
}
@@ -249,8 +251,9 @@
}
// Unique string, include quotes for now.
- CurStrVal =
- getSS(TheStringSet).GetOrCreateValue(TokStart, CurPtr, 0).getKeyData();
+ CurStrVal = getSS(TheStringSet).GetOrCreateValue(StringRef(TokStart,
+ CurPtr - TokStart),
+ 0).getKeyData();
return asmtok::String;
}
diff --git a/tools/lto/LTOModule.cpp b/tools/lto/LTOModule.cpp
index 3637b9d..a72938a 100644
--- a/tools/lto/LTOModule.cpp
+++ b/tools/lto/LTOModule.cpp
@@ -379,7 +379,7 @@
void LTOModule::addAsmGlobalSymbol(const char *name) {
// only add new define if not already defined
- if ( _defines.count(name, &name[strlen(name)+1]) == 0 )
+ if ( _defines.count(name) == 0 )
return;
// string is owned by _defines
@@ -507,8 +507,7 @@
it != _undefines.end(); ++it) {
// if this symbol also has a definition, then don't make an undefine
// because it is a tentative definition
- if ( _defines.count(it->getKeyData(), it->getKeyData()+
- it->getKeyLength()) == 0 ) {
+ if ( _defines.count(it->getKey())) {
NameAndAttributes info = it->getValue();
_symbols.push_back(info);
}