diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2011-10-14 18:45:16 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2011-10-14 18:45:16 +0000 |
commit | 47b5b31e616488865468dcec195b3d16b1a15fce (patch) | |
tree | 460611a784402b1ef8ed2825644fdf83992498e9 /clang/lib/CodeGen | |
parent | fd0b05f341f840c1cf90b59c40b8ccc7fbd49dde (diff) | |
download | bcm5719-llvm-47b5b31e616488865468dcec195b3d16b1a15fce.tar.gz bcm5719-llvm-47b5b31e616488865468dcec195b3d16b1a15fce.zip |
Simplify code to avoid a useless string copy.
llvm-svn: 141970
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r-- | clang/lib/CodeGen/CGDebugInfo.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/clang/lib/CodeGen/CGDebugInfo.cpp b/clang/lib/CodeGen/CGDebugInfo.cpp index 5ae4dfe83c8..39a9ef788f9 100644 --- a/clang/lib/CodeGen/CGDebugInfo.cpp +++ b/clang/lib/CodeGen/CGDebugInfo.cpp @@ -156,12 +156,10 @@ StringRef CGDebugInfo::getObjCMethodName(const ObjCMethodDecl *OMD) { /// getSelectorName - Return selector name. This is used for debugging /// info. StringRef CGDebugInfo::getSelectorName(Selector S) { - llvm::SmallString<256> SName; - llvm::raw_svector_ostream OS(SName); - OS << S.getAsString(); - char *StrPtr = DebugInfoNames.Allocate<char>(OS.tell()); - memcpy(StrPtr, SName.begin(), OS.tell()); - return StringRef(StrPtr, OS.tell()); + const std::string &SName = S.getAsString(); + char *StrPtr = DebugInfoNames.Allocate<char>(SName.size()); + memcpy(StrPtr, SName.data(), SName.size()); + return StringRef(StrPtr, SName.size()); } /// getClassName - Get class name including template argument list. |