summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2015-12-17 01:00:50 +0000
committerGreg Clayton <gclayton@apple.com>2015-12-17 01:00:50 +0000
commit3feddff744316f6801e3640832cb7a8f9f0adfbc (patch)
tree1bf16630df647884c1ef5b99444cf623532f6c38 /lldb/source/Core
parent8b8874edbc6f86985d8155f1a88f2b33d5360c8c (diff)
downloadbcm5719-llvm-3feddff744316f6801e3640832cb7a8f9f0adfbc.tar.gz
bcm5719-llvm-3feddff744316f6801e3640832cb7a8f9f0adfbc.zip
Don't demangle a name when Mangled::GetName() is called with ePreferMangled. Only demangle if this isn't the the value for the "preference" argument indicating the user wants the demangled name. This will stop a lot of symbols from being demangled when parsing the symbol table in ObjectFileMachO.
llvm-svn: 255864
Diffstat (limited to 'lldb/source/Core')
-rw-r--r--lldb/source/Core/Mangled.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/lldb/source/Core/Mangled.cpp b/lldb/source/Core/Mangled.cpp
index cf351ba920c..bdc710c8f8e 100644
--- a/lldb/source/Core/Mangled.cpp
+++ b/lldb/source/Core/Mangled.cpp
@@ -362,6 +362,9 @@ Mangled::NameMatches (const RegularExpression& regex, lldb::LanguageType languag
ConstString
Mangled::GetName (lldb::LanguageType language, Mangled::NamePreference preference) const
{
+ if (preference == ePreferMangled && m_mangled)
+ return m_mangled;
+
ConstString demangled = GetDemangledName(language);
if (preference == ePreferDemangledWithoutArguments)
@@ -376,12 +379,7 @@ Mangled::GetName (lldb::LanguageType language, Mangled::NamePreference preferenc
return demangled;
return m_mangled;
}
- else
- {
- if (m_mangled)
- return m_mangled;
- return demangled;
- }
+ return demangled;
}
//----------------------------------------------------------------------
OpenPOWER on IntegriCloud