summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-xray
diff options
context:
space:
mode:
authorMartin Pelikan <martin.pelikan@gmail.com>2017-09-27 04:48:03 +0000
committerMartin Pelikan <martin.pelikan@gmail.com>2017-09-27 04:48:03 +0000
commit10c873f1d979c07b2e9d48e208f32dd075e64cab (patch)
treed270dc9bbbd657218123d3389c36355e53cda101 /llvm/test/tools/llvm-xray
parent015ccd08227972145381447b349c8bd07fcb6f01 (diff)
downloadbcm5719-llvm-10c873f1d979c07b2e9d48e208f32dd075e64cab.tar.gz
bcm5719-llvm-10c873f1d979c07b2e9d48e208f32dd075e64cab.zip
[XRay] convert FDR arg1 log entries
Summary: A new FDR metadata record will support logging a function call argument; appending multiple metadata records will represent a sequence of arguments meaning that "holes" are not representable by the buffer format. Each call argument is currently a 64-bit value (useful for "this" pointers and synchronization objects). If present, we put this argument to the function call "entry" record it belongs to, and alter its type to notify the user of its presence. Reviewers: dberris Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D32840 llvm-svn: 314269
Diffstat (limited to 'llvm/test/tools/llvm-xray')
-rw-r--r--llvm/test/tools/llvm-xray/X86/Inputs/fdr-log-arg1.xraybin0 -> 288 bytes
-rw-r--r--llvm/test/tools/llvm-xray/X86/convert-fdr-arg1-to-yaml.txt13
2 files changed, 13 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-xray/X86/Inputs/fdr-log-arg1.xray b/llvm/test/tools/llvm-xray/X86/Inputs/fdr-log-arg1.xray
new file mode 100644
index 00000000000..cd311cd0eb1
--- /dev/null
+++ b/llvm/test/tools/llvm-xray/X86/Inputs/fdr-log-arg1.xray
Binary files differ
diff --git a/llvm/test/tools/llvm-xray/X86/convert-fdr-arg1-to-yaml.txt b/llvm/test/tools/llvm-xray/X86/convert-fdr-arg1-to-yaml.txt
new file mode 100644
index 00000000000..06b5eb8904e
--- /dev/null
+++ b/llvm/test/tools/llvm-xray/X86/convert-fdr-arg1-to-yaml.txt
@@ -0,0 +1,13 @@
+; RUN: llvm-xray convert %S/Inputs/fdr-log-arg1.xray -f=yaml -o - | FileCheck %s
+
+; CHECK: ---
+; CHECK-NEXT: header:
+; CHECK-NEXT: version: 1
+; CHECK-NEXT: type: 1
+; CHECK-NEXT: constant-tsc: true
+; CHECK-NEXT: nonstop-tsc: true
+; CHECK-NEXT: cycle-frequency: 3500000000
+; CHECK-NEXT: records:
+; CHECK-NEXT: - { type: 0, func-id: 1, function: '1', args: [ 1 ], cpu: 49, thread: 14648, kind: function-enter-arg, tsc: 18828908666543318 }
+; CHECK-NEXT: - { type: 0, func-id: 1, function: '1', cpu: 49, thread: 14648, kind: function-exit, tsc: 18828908666595604 }
+; CHECK-NEXT: ...
OpenPOWER on IntegriCloud