diff options
author | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2013-11-22 06:36:54 -0600 |
---|---|---|
committer | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2013-12-05 07:44:07 -0600 |
commit | eb5ad6b9bcf579f1cb5c67ca4650ee4a0cf1b4b1 (patch) | |
tree | b82b8fbfb23fb60cc69d4bd06bf8ef13c471c9eb /sysdeps/powerpc/powerpc32/fpu/setjmp-common.S | |
parent | 76a4a26979e58132d500e700ac1637a09c6d9cef (diff) | |
download | glibc-eb5ad6b9bcf579f1cb5c67ca4650ee4a0cf1b4b1.tar.gz glibc-eb5ad6b9bcf579f1cb5c67ca4650ee4a0cf1b4b1.tar.xz glibc-eb5ad6b9bcf579f1cb5c67ca4650ee4a0cf1b4b1.zip |
PowerPC: Add systemtap static probe points in setjmp/longjmp
This patch add static probes for setjmp/longjmp in the way gdb expects,fixing the gdb.base/longjmp.exp gdb testcases. It changes the symbol_name and use macros to to avoid change the probe names and ending up adding more logic on GDB (since with the expected name GDB work seamlessly).
Diffstat (limited to 'sysdeps/powerpc/powerpc32/fpu/setjmp-common.S')
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/setjmp-common.S | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S index f3244060e0..08efd64920 100644 --- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S +++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S @@ -17,6 +17,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <stap-probe.h> #define _ASM #ifdef __NO_VMX__ # include <novmxsetjmp.h> @@ -25,7 +26,7 @@ #endif .machine "altivec" -ENTRY (__sigsetjmp) +ENTRY (__sigsetjmp_symbol) #ifdef PTR_MANGLE mr r5,r1 @@ -35,6 +36,9 @@ ENTRY (__sigsetjmp) stw r1,(JB_GPR1*4)(3) #endif mflr r0 + /* setjmp probe expects longjmp first argument (4@3), second argument + (-4@4), and target address (4@0), respectively. */ + LIBC_PROBE (setjmp, 3, 4@3, -4@4, 4@0) stw r14,((JB_GPRS+0)*4)(3) stfd fp14,((JB_FPRS+0*2)*4)(3) #ifdef PTR_MANGLE @@ -175,5 +179,5 @@ L(aligned_save_vmx): stvx 31,0,r6 L(no_vmx): #endif - b __sigjmp_save@local -END (__sigsetjmp) + b __sigjmp_save_symbol@local +END (__sigsetjmp_symbol) |