Index: docs/CommandGuide/llvm-symbolizer.rst =================================================================== --- docs/CommandGuide/llvm-symbolizer.rst +++ docs/CommandGuide/llvm-symbolizer.rst @@ -83,7 +83,7 @@ Prefer function names stored in symbol table to function names in debug info sections. Defaults to true. -.. option:: -demangle +.. option:: -demangle, -C Print demangled function names. Defaults to true. Index: test/DebugInfo/llvm-symbolizer.test =================================================================== --- test/DebugInfo/llvm-symbolizer.test +++ test/DebugInfo/llvm-symbolizer.test @@ -212,3 +212,9 @@ RUN: | FileCheck %s --check-prefix=SHORT_FUNCTION_NAME SHORT_FUNCTION_NAME-NOT: _Z1cv + +RUN: echo "%p/Inputs/dwarfdump-test4.elf-x86-64 0x62c" > %t.input7 +RUN: llvm-symbolizer --functions=short --use-symbol-table=false -C=false < %t.input7 \ +RUN: | FileCheck %s --check-prefix=DEMANGLE_ALIAS_SHORT_FUNCTION_NAME + +DEMANGLE_ALIAS_SHORT_FUNCTION_NAME-NOT: _Z1cv Index: test/tools/llvm-symbolizer/pdb/pdb.test =================================================================== --- test/tools/llvm-symbolizer/pdb/pdb.test +++ test/tools/llvm-symbolizer/pdb/pdb.test @@ -4,6 +4,9 @@ RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" -demangle=false \ RUN: | FileCheck %s --check-prefix=CHECK-NO-DEMANGLE +RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ +RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" -C=false \ +RUN: | FileCheck %s --check-prefix=CHECK-NO-DEMANGLE Subtract ImageBase from all the offsets and run the test again with --relative-address. Index: tools/llvm-symbolizer/llvm-symbolizer.cpp =================================================================== --- tools/llvm-symbolizer/llvm-symbolizer.cpp +++ tools/llvm-symbolizer/llvm-symbolizer.cpp @@ -55,8 +55,12 @@ ClPrintInlining("inlining", cl::init(true), cl::desc("Print all inlined frames for a given address")); +// -demangle, -C static cl::opt ClDemangle("demangle", cl::init(true), cl::desc("Demangle function names")); +static cl::alias +ClDemangleShort("C", cl::desc("Alias for -demangle"), + cl::NotHidden, cl::aliasopt(ClDemangle)); static cl::opt ClDefaultArch("default-arch", cl::init(""), cl::desc("Default architecture "