diff options
author | Nick Desaulniers <ndesaulniers@google.com> | 2023-05-02 11:10:43 -0700 |
---|---|---|
committer | Nick Desaulniers <ndesaulniers@google.com> | 2023-05-02 11:20:15 -0700 |
commit | c117c2c8ba4afd45a006043ec6dd858652b2ffcc (patch) | |
tree | eaf2bca8cf17d405cadb6ad2d34bf7c20b9912db /llvm/tools/llvm-objdump/ELFDump.cpp | |
parent | 1f74964b403c615c121c0adbd06661adaae14667 (diff) | |
download | llvm-c117c2c8ba4afd45a006043ec6dd858652b2ffcc.zip llvm-c117c2c8ba4afd45a006043ec6dd858652b2ffcc.tar.gz llvm-c117c2c8ba4afd45a006043ec6dd858652b2ffcc.tar.bz2 |
[Demangle] make llvm::demangle take std::string_view rather than const std::string&
As suggested by @erichkeane in
https://reviews.llvm.org/D141451#inline-1429549
There's potential for a lot more cleanups around these APIs. This is
just a start.
Callers need to be more careful about sub-expressions producing strings
that don't outlast the expression using ``llvm::demangle``. Add a
release note.
Reviewed By: MaskRay, #lld-macho
Differential Revision: https://reviews.llvm.org/D149104
Diffstat (limited to 'llvm/tools/llvm-objdump/ELFDump.cpp')
-rw-r--r-- | llvm/tools/llvm-objdump/ELFDump.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/tools/llvm-objdump/ELFDump.cpp b/llvm/tools/llvm-objdump/ELFDump.cpp index b0dd0dc..6e42204 100644 --- a/llvm/tools/llvm-objdump/ELFDump.cpp +++ b/llvm/tools/llvm-objdump/ELFDump.cpp @@ -108,10 +108,7 @@ static Error getRelocationValueString(const ELFObjectFile<ELFT> *Obj, Expected<StringRef> SymName = SI->getName(); if (!SymName) return SymName.takeError(); - if (Demangle) - Fmt << demangle(std::string(*SymName)); - else - Fmt << *SymName; + Fmt << (Demangle ? demangle(*SymName) : *SymName); } } else { Fmt << "*ABS*"; |