Avoid double StringMap lookups. No functionality change.
llvm-svn: 194355
This commit is contained in:
@@ -1022,9 +1022,9 @@ void CodeGenModule::EmitGlobalAnnotations() {
|
||||
}
|
||||
|
||||
llvm::Constant *CodeGenModule::EmitAnnotationString(StringRef Str) {
|
||||
llvm::StringMap<llvm::Constant*>::iterator i = AnnotationStrings.find(Str);
|
||||
if (i != AnnotationStrings.end())
|
||||
return i->second;
|
||||
llvm::Constant *&AStr = AnnotationStrings[Str];
|
||||
if (AStr)
|
||||
return AStr;
|
||||
|
||||
// Not found yet, create a new global.
|
||||
llvm::Constant *s = llvm::ConstantDataArray::getString(getLLVMContext(), Str);
|
||||
@@ -1032,7 +1032,7 @@ llvm::Constant *CodeGenModule::EmitAnnotationString(StringRef Str) {
|
||||
true, llvm::GlobalValue::PrivateLinkage, s, ".str");
|
||||
gv->setSection(AnnotationSection);
|
||||
gv->setUnnamedAddr(true);
|
||||
AnnotationStrings[Str] = gv;
|
||||
AStr = gv;
|
||||
return gv;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user