From 5d4f5c724533b994de05df49ae259120482ec366 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 21 Mar 2009 08:06:59 +0000 Subject: [PATCH] reduce redundant calls of getMangledName. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67440 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/CodeGenModule.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp index 38b8d36ed5..04b423eeb3 100644 --- a/lib/CodeGen/CodeGenModule.cpp +++ b/lib/CodeGen/CodeGenModule.cpp @@ -398,13 +398,13 @@ void CodeGenModule::EmitAliases() { continue; } + const char *MangledName = getMangledName(D); llvm::GlobalValue *GA = new llvm::GlobalAlias(aliasee->getType(), llvm::Function::ExternalLinkage, - getMangledName(D), aliasee, - &getModule()); + MangledName, aliasee, &getModule()); - llvm::GlobalValue *&Entry = GlobalDeclMap[getMangledName(D)]; + llvm::GlobalValue *&Entry = GlobalDeclMap[MangledName]; if (Entry) { // If we created a dummy function for this then replace it. GA->takeName(Entry); @@ -597,7 +597,8 @@ void CodeGenModule::EmitGlobalDefinition(const ValueDecl *D) { const llvm::Type *Ty = getTypes().ConvertTypeForMem(ASTTy); // Lookup the entry, lazily creating it if necessary. - llvm::GlobalValue *&Entry = GlobalDeclMap[getMangledName(D)]; + const char *MangledName = getMangledName(D); + llvm::GlobalValue *&Entry = GlobalDeclMap[MangledName]; if (Entry) { const llvm::Type *PTy = llvm::PointerType::get(Ty, ASTTy.getAddressSpace()); @@ -610,7 +611,7 @@ void CodeGenModule::EmitGlobalDefinition(const ValueDecl *D) { llvm::GlobalVariable *GV = new llvm::GlobalVariable(Ty, false, llvm::GlobalValue::ExternalLinkage, - 0, getMangledName(D), &getModule(), + 0, MangledName, &getModule(), 0, ASTTy.getAddressSpace()); // Handle things which are present even on external declarations. @@ -665,13 +666,14 @@ void CodeGenModule::EmitGlobalVarDefinition(const VarDecl *D) { } const llvm::Type* InitType = Init->getType(); - llvm::GlobalValue *&Entry = GlobalDeclMap[getMangledName(D)]; + const char *MangledName = getMangledName(D); + llvm::GlobalValue *&Entry = GlobalDeclMap[MangledName]; llvm::GlobalVariable *GV = cast_or_null(Entry); if (!GV) { GV = new llvm::GlobalVariable(InitType, false, llvm::GlobalValue::ExternalLinkage, - 0, getMangledName(D), + 0, MangledName, &getModule(), 0, ASTTy.getAddressSpace()); } else if (GV->hasInitializer() && !GV->getInitializer()->isNullValue()) { @@ -715,7 +717,7 @@ void CodeGenModule::EmitGlobalVarDefinition(const VarDecl *D) { // Make a new global with the correct type GV = new llvm::GlobalVariable(InitType, false, llvm::GlobalValue::ExternalLinkage, - 0, getMangledName(D), + 0, MangledName, &getModule(), 0, ASTTy.getAddressSpace()); // Steal the name of the old global GV->takeName(OldGV); -- 2.40.0