[PATCH] D108019: [NFC][llvm-xray] add a llvm-xray convert option `no-symbolize-demangle`
Xu Mingjie via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Aug 15 23:22:05 PDT 2021
Enna1 updated this revision to Diff 366554.
Enna1 retitled this revision from "[NFC][llvm-xray] add a llvm-xray convert option `symbolize-no-demangle`" to "[NFC][llvm-xray] add a llvm-xray convert option `no-symbolize-demangle`".
Enna1 edited the summary of this revision.
Enna1 added a comment.
rename `--symbolize-no-demangle` to `--no-symbolize-demangle`
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D108019/new/
https://reviews.llvm.org/D108019
Files:
llvm/test/tools/llvm-xray/X86/convert-with-debug-syms.txt
llvm/tools/llvm-xray/xray-converter.cpp
Index: llvm/tools/llvm-xray/xray-converter.cpp
===================================================================
--- llvm/tools/llvm-xray/xray-converter.cpp
+++ llvm/tools/llvm-xray/xray-converter.cpp
@@ -57,6 +57,11 @@
cl::init(false), cl::sub(Convert));
static cl::alias ConvertSymbolize2("y", cl::aliasopt(ConvertSymbolize),
cl::desc("Alias for -symbolize"));
+static cl::opt<bool> ConvertNoSymbolizeDemangle(
+ "no-symbolize-demangle",
+ cl::desc("determines whether to demangle function name "
+ "when symbolizing function ids from the input log"),
+ cl::init(false), cl::sub(Convert));
static cl::opt<std::string>
ConvertInstrMap("instr_map",
@@ -373,7 +378,10 @@
}
const auto &FunctionAddresses = Map.getFunctionAddresses();
- symbolize::LLVMSymbolizer Symbolizer;
+ symbolize::LLVMSymbolizer::Options SymbolizerOpts;
+ if (ConvertNoSymbolizeDemangle)
+ SymbolizerOpts.Demangle = false;
+ symbolize::LLVMSymbolizer Symbolizer(SymbolizerOpts);
llvm::xray::FuncIdConversionHelper FuncIdHelper(ConvertInstrMap, Symbolizer,
FunctionAddresses);
llvm::xray::TraceConverter TC(FuncIdHelper, ConvertSymbolize);
Index: llvm/test/tools/llvm-xray/X86/convert-with-debug-syms.txt
===================================================================
--- llvm/test/tools/llvm-xray/X86/convert-with-debug-syms.txt
+++ llvm/test/tools/llvm-xray/X86/convert-with-debug-syms.txt
@@ -15,3 +15,21 @@
; CHECK-NEXT: - { type: 0, func-id: 1, function: {{.*bar.*}}, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454802, data: '' }
; CHECK-NEXT: - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841494828, data: '' }
; CHECK-NEXT: ...
+
+; RUN: llvm-xray convert -m %S/Inputs/elf64-sample-o2.bin --symbolize --no-symbolize-demangle %S/Inputs/naive-log-simple.xray -f=yaml -o - 2>&1 | FileCheck --check-prefix=MANGLED %s
+
+; MANGLED: ---
+; MANGLED-NEXT: header:
+; MANGLED-NEXT: version: 1
+; MANGLED-NEXT: type: 0
+; MANGLED-NEXT: constant-tsc: true
+; MANGLED-NEXT: nonstop-tsc: true
+; MANGLED-NEXT: cycle-frequency: 2601000000
+; MANGLED-NEXT: records:
+; MANGLED-NEXT: - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841453914, data: '' }
+; MANGLED-NEXT: - { type: 0, func-id: 2, function: _Z3foov, cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454542, data: '' }
+; MANGLED-NEXT: - { type: 0, func-id: 2, function: _Z3foov, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454670, data: '' }
+; MANGLED-NEXT: - { type: 0, func-id: 1, function: _Z3barv, cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454762, data: '' }
+; MANGLED-NEXT: - { type: 0, func-id: 1, function: _Z3barv, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454802, data: '' }
+; MANGLED-NEXT: - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841494828, data: '' }
+; MANGLED-NEXT: ...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D108019.366554.patch
Type: text/x-patch
Size: 3182 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210816/f42b2364/attachment.bin>
More information about the llvm-commits
mailing list