diff options
author | Alp Toker <alp@nuanti.com> | 2014-06-03 02:13:57 +0000 |
---|---|---|
committer | Alp Toker <alp@nuanti.com> | 2014-06-03 02:13:57 +0000 |
commit | 0e64e0d4fd7c5ae535ba8805c21146a9414f19b3 (patch) | |
tree | 54d206467fe4652a6c5341d4d867db16490f9126 /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 23487e878b0bbd012a756d92b10af8769d52cd1e (diff) | |
download | llvm-0e64e0d4fd7c5ae535ba8805c21146a9414f19b3.zip llvm-0e64e0d4fd7c5ae535ba8805c21146a9414f19b3.tar.gz llvm-0e64e0d4fd7c5ae535ba8805c21146a9414f19b3.tar.bz2 |
Eliminate redundant MangleBuffer class
The only remaining user didn't actually use the non-dynamic storage facility
this class provides.
The std::string is transitional and likely to be StringRefized shortly.
llvm-svn: 210058
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.cpp b/clang/lib/CodeGen/CodeGenModule.cpp index f42e67d..b0e08a2 100644 --- a/clang/lib/CodeGen/CodeGenModule.cpp +++ b/clang/lib/CodeGen/CodeGenModule.cpp @@ -489,11 +489,13 @@ StringRef CodeGenModule::getMangledName(GlobalDecl GD) { return Str; } -void CodeGenModule::getBlockMangledName(GlobalDecl GD, MangleBuffer &Buffer, - const BlockDecl *BD) { +std::string CodeGenModule::getBlockMangledName(GlobalDecl GD, + const BlockDecl *BD) { MangleContext &MangleCtx = getCXXABI().getMangleContext(); const Decl *D = GD.getDecl(); - llvm::raw_svector_ostream Out(Buffer.getBuffer()); + + std::string Buffer; + llvm::raw_string_ostream Out(Buffer); if (!D) MangleCtx.mangleGlobalBlock(BD, dyn_cast_or_null<VarDecl>(initializedGlobalDecl.getDecl()), Out); @@ -503,6 +505,8 @@ void CodeGenModule::getBlockMangledName(GlobalDecl GD, MangleBuffer &Buffer, MangleCtx.mangleDtorBlock(DD, GD.getDtorType(), BD, Out); else MangleCtx.mangleBlock(cast<DeclContext>(D), BD, Out); + + return Out.str(); } llvm::GlobalValue *CodeGenModule::GetGlobalValue(StringRef Name) { |