summaryrefslogtreecommitdiff
path: root/compiler-rt/include
diff options
context:
space:
mode:
authorDean Michael Berris <dberris@google.com>2017-09-18 06:18:03 +0000
committerDean Michael Berris <dberris@google.com>2017-09-18 06:18:03 +0000
commit607b047ab74e4a63fe718a16e75161b0c5f0aee7 (patch)
treef50788d3a193def3878d4acd8fab7fd7571f0370 /compiler-rt/include
parent40e7b9961089ba66c46a3c30d8c1787aea68289e (diff)
[XRay][compiler-rt] Handle tail-call exits in the XRay runtime
Summary: This change starts differentiating tail exits from normal exits. We also increase the version number of the "naive" log to version 2, which will be the starting version where these records start appearing. In FDR mode we treat the tail exits as normal exits, and are thus subject to the same treatment with regard to record unwriting. Updating the version number is important to signal older builds of the llvm-xray tool that do not deal with the tail exit records must fail early (and that users should only use the llvm-xray tool built after the support for tail exits to get accurate handling of these records). Depends on D37964. Reviewers: kpw, pelikan Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D37965
Diffstat (limited to 'compiler-rt/include')
-rw-r--r--compiler-rt/include/xray/xray_records.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler-rt/include/xray/xray_records.h b/compiler-rt/include/xray/xray_records.h
index 506755dbd63..98e54cb6903 100644
--- a/compiler-rt/include/xray/xray_records.h
+++ b/compiler-rt/include/xray/xray_records.h
@@ -78,7 +78,10 @@ struct alignas(32) XRayRecord {
// The CPU where the thread is running. We assume number of CPUs <= 256.
uint8_t CPU = 0;
- // The type of the event. Usually either ENTER = 0 or EXIT = 1.
+ // The type of the event. One of the following:
+ // ENTER = 0
+ // EXIT = 1
+ // TAIL_EXIT = 2
uint8_t Type = 0;
// The function ID for the record.