diff options
| -rw-r--r-- | lld/ELF/Symbols.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lld/ELF/Symbols.cpp b/lld/ELF/Symbols.cpp index f7ef342edcc..1c5cae1b16f 100644 --- a/lld/ELF/Symbols.cpp +++ b/lld/ELF/Symbols.cpp @@ -145,6 +145,11 @@ std::string elf2::demangle(StringRef Name) { #else if (!Config->Demangle) return Name; + + // Return if it does not look like a C++ symbol. + if (!Name.startswith("_Z")) + return Name; + char *Buf = abi::__cxa_demangle(Name.str().c_str(), nullptr, nullptr, nullptr); if (!Buf) |

