about summary refs log tree commit diff
path: root/sysdeps/aarch64/setjmp.S
diff options
context:
space:
mode:
authorVenkataramanan Kumar <venkataramanan.kumar@linaro.org>2014-04-08 14:11:44 +0100
committerWill Newton <will.newton@linaro.org>2014-04-22 11:13:16 +0100
commit140cc7abf7d15928b4c4a873d40a73b836685157 (patch)
tree6702f449ecdec39b5466c37ed69a34d6c9a8c75b /sysdeps/aarch64/setjmp.S
parentc54e5cf7db32709b4f04a117f44f69dc5684cbf2 (diff)
downloadglibc-140cc7abf7d15928b4c4a873d40a73b836685157.tar.gz
glibc-140cc7abf7d15928b4c4a873d40a73b836685157.tar.xz
glibc-140cc7abf7d15928b4c4a873d40a73b836685157.zip
aarch64: Add setjmp and longjmp SystemTap probes
Add setjmp, longjmp and longjmp_target SystemTap probes.

ChangeLog:

2014-04-22  Will Newton  <will.newton@linaro.org>
	    Venkataramanan Kumar  <venkataramanan.kumar@linaro.org>

	* sysdeps/aarch64/__longjmp.S: Include stap-probe.h.
	(__longjmp): Add longjmp and longjmp_target SystemTap
	probes.
	* sysdeps/aarch64/setjmp.S: Include stap-probe.h.
	(__sigsetjmp): Add setjmp SystemTap probe.
Diffstat (limited to 'sysdeps/aarch64/setjmp.S')
-rw-r--r--sysdeps/aarch64/setjmp.S5
1 files changed, 5 insertions, 0 deletions
diff --git a/sysdeps/aarch64/setjmp.S b/sysdeps/aarch64/setjmp.S
index 5822abd872..fd39319920 100644
--- a/sysdeps/aarch64/setjmp.S
+++ b/sysdeps/aarch64/setjmp.S
@@ -18,6 +18,7 @@
 
 #include <sysdep.h>
 #include <jmpbuf-offsets.h>
+#include <stap-probe.h>
 
         /* Keep traditional entry points in with sigsetjmp(). */
 ENTRY (setjmp)
@@ -46,6 +47,10 @@ ENTRY (__sigsetjmp)
 #else
 	stp	x29, x30, [x0, #JB_X29<<3]
 #endif
+	/* setjmp probe takes 3 arguments, address of jump buffer
+	   first argument (8@x0), return value second argument (-4@x1),
+	   and target address (8@x30), respectively.  */
+	LIBC_PROBE (setjmp, 3, 8@x0, -4@x1, 8@x30)
 	stp	 d8,  d9, [x0, #JB_D8<<3]
 	stp	d10, d11, [x0, #JB_D10<<3]
 	stp	d12, d13, [x0, #JB_D12<<3]