diff options
author | Dean Michael Berris <dberris@google.com> | 2016-11-21 03:20:43 +0000 |
---|---|---|
committer | Dean Michael Berris <dberris@google.com> | 2016-11-21 03:20:43 +0000 |
commit | 2a05c834ed840634ae1247f30179ba90d6255f34 (patch) | |
tree | 863976c50fce3366589c9cdd6cc5ba4b9b5015a1 /include/xray | |
parent | 8134888c4d01164a92fb590c8d2e8c277a55e233 (diff) | |
download | compiler-rt-2a05c834ed840634ae1247f30179ba90d6255f34.tar.gz |
[XRay] Support AArch64 in compiler-rt
This patch adds XRay support in compiler-rt for AArch64 targets.
This patch is one of a series:
LLVM: https://reviews.llvm.org/D26412
Clang: https://reviews.llvm.org/D26415
Author: rSerge
Reviewers: rengolin, dberris
Subscribers: aemerson, mgorny, llvm-commits, iid_iunknown
Differential Revision: https://reviews.llvm.org/D26413
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@287517 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/xray')
-rw-r--r-- | include/xray/xray_interface.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/xray/xray_interface.h b/include/xray/xray_interface.h index 680fcfdd5..9e712b1fa 100644 --- a/include/xray/xray_interface.h +++ b/include/xray/xray_interface.h @@ -32,6 +32,13 @@ enum XRayEntryType { ENTRY = 0, EXIT = 1, TAIL = 2 }; // (function entry, function exit, etc.). See the enum // XRayEntryType for more details. // +// The user handler must handle correctly spurious calls after this handler is +// removed or replaced with another handler, because it would be too costly for +// XRay runtime to avoid spurious calls. +// To prevent circular calling, the handler function itself and all its +// direct&indirect callees must not be instrumented with XRay, which can be +// achieved by marking them all with: __attribute__((xray_never_instrument)) +// // Returns 1 on success, 0 on error. extern int __xray_set_handler(void (*entry)(int32_t, XRayEntryType)); |