From a814c94163cc12df9c7b533cec22ea7cc4c20688 Mon Sep 17 00:00:00 2001 From: Dean Michael Berris Date: Mon, 6 Mar 2017 07:25:41 +0000 Subject: [XRay] [compiler-rt] Allow logging the first argument of a function call. Summary: Functions with the LOG_ARGS_ENTRY sled kind at their beginning will be handled in a way to (optionally) pass their first call argument to your logging handler. For practical and performance reasons, only the first argument is supported, and only up to 64 bits. Reviewers: javed.absar, dberris Reviewed By: dberris Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D29703 llvm-svn: 297000 --- compiler-rt/lib/xray/xray_interface_internal.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'compiler-rt/lib/xray/xray_interface_internal.h') diff --git a/compiler-rt/lib/xray/xray_interface_internal.h b/compiler-rt/lib/xray/xray_interface_internal.h index c4f72433d17..0e3a251f3ad 100644 --- a/compiler-rt/lib/xray/xray_interface_internal.h +++ b/compiler-rt/lib/xray/xray_interface_internal.h @@ -49,7 +49,7 @@ struct XRaySledMap { }; bool patchFunctionEntry(bool Enable, uint32_t FuncId, - const XRaySledEntry &Sled); + const XRaySledEntry &Sled, void (*Trampoline)()); bool patchFunctionExit(bool Enable, uint32_t FuncId, const XRaySledEntry &Sled); bool patchFunctionTailExit(bool Enable, uint32_t FuncId, const XRaySledEntry &Sled); @@ -62,6 +62,7 @@ extern "C" { extern void __xray_FunctionEntry(); extern void __xray_FunctionExit(); extern void __xray_FunctionTailExit(); +extern void __xray_ArgLoggerEntry(); } #endif -- cgit v1.2.3