From: Adhemerval Zanella Date: Fri, 22 Nov 2013 12:36:54 +0000 (-0600) Subject: PowerPC: Add systemtap static probe points in setjmp/longjmp X-Git-Tag: glibc-2.19~392 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=eb5ad6b9bcf579f1cb5c67ca4650ee4a0cf1b4b1;p=platform%2Fupstream%2Fglibc.git 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). --- diff --git a/ChangeLog b/ChangeLog index dc38e52..440e6e7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,34 @@ +2013-12-05 Adhemerval Zanella + + * sysdeps/powerpc/powerpc32/__longjmp-common.S: Add "longjmp" and + "longjmp_target" static probes. + (__longjmp): Rename to __longjmp_symbol. + * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise. + * sysdeps/powerpc/powerpc32/__longjmp.S: Define __longjmp_symbol based + on which longjmp to generate. + * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Add "setjmp" static + probe. + (__sigsetjmp): Rename to __sigsetjmp_symbol. + (__sigjmp_save): Rename to __sigjmp_save_symbol. + * sysdeps/powerpc/powerpc32/setjmp-common.S: Likewise. + * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Define __sigsetjmp_symbol + and __sigjmp_save_symbol based on which sigsetjmp to generated. + * sysdeps/powerpc/powerpc32/setjmp.S: Likewise + * sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: Define + __longjmp_symbol based on which __longjmp to generate. + * sysdeps/powerpc/powerpc64/setjmp-common.S: Add "setjmp" static + probe. + (setjmp): Rename to setjmp_symbol. + (__sigsetjmp): Rename to __sigsetjmp_symbol. + (_setjmp): Rename to _setjmp_symbol. + (__sigsetjmp): Rename to __sigsetjmp_symbol. + * sysdeps/powerpc/powerpc64/setjmp.S: Define setjmp_symbol, + _setjmp_symbol, __sigsetjmp_symbol, and __sigjmp_save_symbol based on + which setjmp to generate. + * sysdeps/powerpc/powerpc64/__longjmp-common.S: Add "longjmp" and + "longjmp_target" static probes. + 2013-12-05 Siddhesh Poyarekar * benchtests/README: Add note about output arguments. diff --git a/sysdeps/powerpc/powerpc32/__longjmp-common.S b/sysdeps/powerpc/powerpc32/__longjmp-common.S index df1d519..97c966d 100644 --- a/sysdeps/powerpc/powerpc32/__longjmp-common.S +++ b/sysdeps/powerpc/powerpc32/__longjmp-common.S @@ -17,6 +17,7 @@ . */ #include +#include #define _ASM #ifdef __NO_VMX__ # include @@ -30,7 +31,7 @@ # define LOAD_GP(N) lwz r##N,((JB_GPRS+(N)-14)*4)(r3) #endif -ENTRY (__longjmp) +ENTRY (__longjmp_symbol) #if defined PTR_DEMANGLE || defined CHECK_SP lwz r24,(JB_GPR1*4)(r3) @@ -58,20 +59,24 @@ ENTRY (__longjmp) # endif PTR_DEMANGLE2 (r0, r25) #endif + /* longjmp/longjmp_target probe expects longjmp first argument (4@3), + second argument (-4@4), and target address (4@0), respectively. */ + LIBC_PROBE (longjmp, 3, 4@3, -4@4, 4@0) mtlr r0 LOAD_GP (21) LOAD_GP (22) - lwz r0,(JB_CR*4)(r3) + lwz r5,(JB_CR*4)(r3) LOAD_GP (23) LOAD_GP (24) LOAD_GP (25) - mtcrf 0xFF,r0 + mtcrf 0xFF,r5 LOAD_GP (26) LOAD_GP (27) LOAD_GP (28) LOAD_GP (29) LOAD_GP (30) LOAD_GP (31) + LIBC_PROBE (longjmp_target, 3, 4@3, -4@4, 4@0) mr r3,r4 blr -END (__longjmp) +END (__longjmp_symbol) diff --git a/sysdeps/powerpc/powerpc32/__longjmp.S b/sysdeps/powerpc/powerpc32/__longjmp.S index 3ceeea7..8456cb5 100644 --- a/sysdeps/powerpc/powerpc32/__longjmp.S +++ b/sysdeps/powerpc/powerpc32/__longjmp.S @@ -21,18 +21,19 @@ #if defined NOT_IN_libc /* Build a non-versioned object for rtld-*. */ +# define __longjmp_symbol __longjmp # include "__longjmp-common.S" #else /* !NOT_IN_libc */ strong_alias (__vmx__longjmp, __longjmp); -# define __longjmp __vmx__longjmp +# define __longjmp_symbol __vmx__longjmp # include "__longjmp-common.S" # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) # define __NO_VMX__ # undef JB_SIZE -# undef __longjmp -# define __longjmp __novmx__longjmp +# undef __longjmp_symbol +# define __longjmp_symbol __novmx__longjmp # include "__longjmp-common.S" # endif #endif /* !NOT_IN_libc */ diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S index d02aa57..1361154 100644 --- a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S +++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S @@ -17,6 +17,7 @@ . */ #include +#include #define _ASM #ifdef __NO_VMX__ # include @@ -25,7 +26,7 @@ #endif .machine "altivec" -ENTRY (__longjmp) +ENTRY (__longjmp_symbol) #ifndef __NO_VMX__ # ifdef PIC mflr r6 @@ -143,19 +144,22 @@ L(no_vmx): # endif PTR_DEMANGLE2 (r0, r25) #endif + /* longjmp/longjmp_target probe expects longjmp first argument (4@3), + second argument (-4@4), and target address (4@0), respectively. */ + LIBC_PROBE (longjmp, 3, 4@3, -4@4, 4@0) mtlr r0 lwz r21,((JB_GPRS+7)*4)(r3) lfd fp21,((JB_FPRS+7*2)*4)(r3) lwz r22,((JB_GPRS+8)*4)(r3) lfd fp22,((JB_FPRS+8*2)*4)(r3) - lwz r0,(JB_CR*4)(r3) + lwz r5,(JB_CR*4)(r3) lwz r23,((JB_GPRS+9)*4)(r3) lfd fp23,((JB_FPRS+9*2)*4)(r3) lwz r24,((JB_GPRS+10)*4)(r3) lfd fp24,((JB_FPRS+10*2)*4)(r3) lwz r25,((JB_GPRS+11)*4)(r3) lfd fp25,((JB_FPRS+11*2)*4)(r3) - mtcrf 0xFF,r0 + mtcrf 0xFF,r5 lwz r26,((JB_GPRS+12)*4)(r3) lfd fp26,((JB_FPRS+12*2)*4)(r3) lwz r27,((JB_GPRS+13)*4)(r3) @@ -168,6 +172,7 @@ L(no_vmx): lfd fp30,((JB_FPRS+16*2)*4)(r3) lwz r31,((JB_GPRS+17)*4)(r3) lfd fp31,((JB_FPRS+17*2)*4)(r3) + LIBC_PROBE (longjmp_target, 3, 4@3, -4@4, 4@0) mr r3,r4 blr -END (__longjmp) +END (__longjmp_symbol) diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp.S index 27166c4..cbd42be 100644 --- a/sysdeps/powerpc/powerpc32/fpu/__longjmp.S +++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp.S @@ -22,20 +22,21 @@ #if defined NOT_IN_libc /* Build a non-versioned object for rtld-*. */ +# define __longjmp_symbol __longjmp # include "__longjmp-common.S" #else /* !NOT_IN_libc */ /* Build a versioned object for libc. */ versioned_symbol (libc, __vmx__longjmp, __longjmp, GLIBC_2_3_4); -# define __longjmp __vmx__longjmp +# define __longjmp_symbol __vmx__longjmp # include "__longjmp-common.S" # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) # define __NO_VMX__ # undef JB_SIZE compat_symbol (libc, __novmx__longjmp, __longjmp, GLIBC_2_0); -# undef __longjmp -# define __longjmp __novmx__longjmp +# undef __longjmp_symbol +# define __longjmp_symbol __novmx__longjmp # include "__longjmp-common.S" # endif #endif /* !NOT_IN_libc */ diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S index f324406..08efd64 100644 --- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S +++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S @@ -17,6 +17,7 @@ . */ #include +#include #define _ASM #ifdef __NO_VMX__ # include @@ -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) diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp.S b/sysdeps/powerpc/powerpc32/fpu/setjmp.S index 92acff1..566aa34 100644 --- a/sysdeps/powerpc/powerpc32/fpu/setjmp.S +++ b/sysdeps/powerpc/powerpc32/fpu/setjmp.S @@ -22,23 +22,25 @@ #if defined NOT_IN_libc /* Build a non-versioned object for rtld-*. */ +# define __sigsetjmp_symbol __sigsetjmp +# define __sigjmp_save_symbol __sigjmp_save # include "setjmp-common.S" #else /* !NOT_IN_libc */ /* Build a versioned object for libc. */ versioned_symbol (libc, __vmx__sigsetjmp, __sigsetjmp, GLIBC_2_3_4) -# define __sigsetjmp __vmx__sigsetjmp -# define __sigjmp_save __vmx__sigjmp_save +# define __sigsetjmp_symbol __vmx__sigsetjmp +# define __sigjmp_save_symbol __vmx__sigjmp_save # include "setjmp-common.S" # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) # define __NO_VMX__ -# undef __sigsetjmp -# undef __sigjmp_save +# undef __sigsetjmp_symbol +# undef __sigjmp_save_symbol # undef JB_SIZE compat_symbol (libc, __novmx__sigsetjmp, __sigsetjmp, GLIBC_2_0) -# define __sigsetjmp __novmx__sigsetjmp -# define __sigjmp_save __novmx__sigjmp_save +# define __sigsetjmp_symbol __novmx__sigsetjmp +# define __sigjmp_save_symbol __novmx__sigjmp_save # include "setjmp-common.S" # endif #endif /* !NOT_IN_libc */ diff --git a/sysdeps/powerpc/powerpc32/setjmp-common.S b/sysdeps/powerpc/powerpc32/setjmp-common.S index 3fb65b5..0c77029 100644 --- a/sysdeps/powerpc/powerpc32/setjmp-common.S +++ b/sysdeps/powerpc/powerpc32/setjmp-common.S @@ -17,6 +17,7 @@ . */ #include +#include #define _ASM #ifdef __NO_VMX__ # include @@ -30,7 +31,7 @@ # define SAVE_GP(N) stw r##N,((JB_GPRS+(N)-14)*4)(3) #endif -ENTRY (__sigsetjmp) +ENTRY (__sigsetjmp_symbol) #ifdef PTR_MANGLE mr r5,r1 @@ -40,6 +41,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) SAVE_GP (14) #ifdef PTR_MANGLE PTR_MANGLE2 (r0, r10) @@ -69,6 +73,6 @@ ENTRY (__sigsetjmp) li r3,0 blr #else - b __sigjmp_save@local + b __sigjmp_save_symbol@local #endif -END (__sigsetjmp) +END (__sigsetjmp_symbol) diff --git a/sysdeps/powerpc/powerpc32/setjmp.S b/sysdeps/powerpc/powerpc32/setjmp.S index 49b64ec..467d9c9 100644 --- a/sysdeps/powerpc/powerpc32/setjmp.S +++ b/sysdeps/powerpc/powerpc32/setjmp.S @@ -21,23 +21,25 @@ #if defined NOT_IN_libc /* Build a non-versioned object for rtld-*. */ +# define __sigsetjmp_symbol __sigsetjmp +# define __sigjmp_save_symbol __sigjmp_save # include "setjmp-common.S" #else /* !NOT_IN_libc */ /* Build a versioned object for libc. */ versioned_symbol (libc, __vmx__sigsetjmp, __sigsetjmp, GLIBC_2_3_4) -# define __sigsetjmp __vmx__sigsetjmp -# define __sigjmp_save __vmx__sigjmp_save +# define __sigsetjmp_symbol __vmx__sigsetjmp +# define __sigjmp_save_symbol __vmx__sigjmp_save # include "setjmp-common.S" # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) # define __NO_VMX__ -# undef __sigsetjmp -# undef __sigjmp_save +# undef __sigsetjmp_symbol +# undef __sigjmp_save_symbol # undef JB_SIZE compat_symbol (libc, __novmx__sigsetjmp, __sigsetjmp, GLIBC_2_0) -# define __sigsetjmp __novmx__sigsetjmp -# define __sigjmp_save __novmx__sigjmp_save +# define __sigsetjmp_symbol __novmx__sigsetjmp +# define __sigjmp_save_symbol __novmx__sigjmp_save # include "setjmp-common.S" # endif #endif /* !NOT_IN_libc */ diff --git a/sysdeps/powerpc/powerpc64/__longjmp-common.S b/sysdeps/powerpc/powerpc64/__longjmp-common.S index ce5a018..3c792b49 100644 --- a/sysdeps/powerpc/powerpc64/__longjmp-common.S +++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S @@ -17,6 +17,7 @@ . */ #include +#include #define _ASM #define _SETJMP_H #ifdef __NO_VMX__ @@ -147,20 +148,23 @@ L(no_vmx): #ifdef PTR_DEMANGLE PTR_DEMANGLE2 (r0, r25) #endif + /* longjmp/longjmp_target probe expects longjmp first argument (8@3), + second argument (-4@4), and target address (8@0), respectively. */ + LIBC_PROBE (longjmp, 3, 8@3, -4@4, 8@0) mtlr r0 /* std r2,FRAME_TOC_SAVE(r1) Restore the TOC save area. */ ld r21,((JB_GPRS+7)*8)(r3) lfd fp21,((JB_FPRS+7)*8)(r3) ld r22,((JB_GPRS+8)*8)(r3) lfd fp22,((JB_FPRS+8)*8)(r3) - lwz r0,((JB_CR*8)+4)(r3) /* 32-bit CR. */ + lwz r5,((JB_CR*8)+4)(r3) /* 32-bit CR. */ ld r23,((JB_GPRS+9)*8)(r3) lfd fp23,((JB_FPRS+9)*8)(r3) ld r24,((JB_GPRS+10)*8)(r3) lfd fp24,((JB_FPRS+10)*8)(r3) ld r25,((JB_GPRS+11)*8)(r3) lfd fp25,((JB_FPRS+11)*8)(r3) - mtcrf 0xFF,r0 + mtcrf 0xFF,r5 ld r26,((JB_GPRS+12)*8)(r3) lfd fp26,((JB_FPRS+12)*8)(r3) ld r27,((JB_GPRS+13)*8)(r3) @@ -173,6 +177,7 @@ L(no_vmx): lfd fp30,((JB_FPRS+16)*8)(r3) ld r31,((JB_GPRS+17)*8)(r3) lfd fp31,((JB_FPRS+17)*8)(r3) + LIBC_PROBE (longjmp_target, 3, 8@3, -4@4, 8@0) mr r3,r4 blr END (__longjmp) diff --git a/sysdeps/powerpc/powerpc64/setjmp-common.S b/sysdeps/powerpc/powerpc64/setjmp-common.S index 9e4fb02..6ab44d6 100644 --- a/sysdeps/powerpc/powerpc64/setjmp-common.S +++ b/sysdeps/powerpc/powerpc64/setjmp-common.S @@ -17,6 +17,7 @@ . */ #include +#include #define _ASM #ifdef __NO_VMX__ #include @@ -42,11 +43,11 @@ #endif .machine "altivec" -ENTRY (setjmp) +ENTRY (setjmp_symbol) CALL_MCOUNT 1 li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (GLUE(__sigsetjmp,_ent)) -END (setjmp) + b JUMPTARGET (GLUE(__sigsetjmp_symbol,_ent)) +END (setjmp_symbol) #if defined SHARED && !defined IS_IN_rtld && !defined __NO_VMX__ /* When called from within libc we need a special version of _setjmp @@ -57,20 +58,20 @@ ENTRY (__GI__setjmp) std r2,FRAME_TOC_SAVE(r1) /* Save the callers TOC in the save area. */ CALL_MCOUNT 1 li r4,0 /* Set second argument to 0. */ - b JUMPTARGET (GLUE(__sigsetjmp,_ent)) + b JUMPTARGET (GLUE(__sigsetjmp_symbol,_ent)) END (__GI__setjmp) #endif -ENTRY (_setjmp) +ENTRY (_setjmp_symbol) CALL_MCOUNT 1 li r4,0 /* Set second argument to 0. */ - b JUMPTARGET (GLUE(__sigsetjmp,_ent)) -END (_setjmp) -libc_hidden_def (_setjmp) + b JUMPTARGET (GLUE(__sigsetjmp_symbol,_ent)) +END (_setjmp_symbol) +libc_hidden_def (_setjmp_symbol) -ENTRY (__sigsetjmp) +ENTRY (__sigsetjmp_symbol) CALL_MCOUNT 2 -JUMPTARGET(GLUE(__sigsetjmp,_ent)): +JUMPTARGET(GLUE(__sigsetjmp_symbol,_ent)): #ifdef PTR_MANGLE mr r5, r1 PTR_MANGLE (r5, r6) @@ -85,6 +86,9 @@ JUMPTARGET(GLUE(__sigsetjmp,_ent)): #else std r2,(JB_GPR2*8)(3) #endif + /* setjmp probe expects longjmp first argument (8@3), second argument + (-4@4), and target address (8@0), respectively. */ + LIBC_PROBE (setjmp, 3, 8@3, -4@4, 8@0) std r14,((JB_GPRS+0)*8)(3) stfd fp14,((JB_FPRS+0)*8)(3) #ifdef PTR_MANGLE @@ -213,18 +217,18 @@ L(no_vmx): li r3,0 blr #elif defined SHARED - b JUMPTARGET (__sigjmp_save) + b JUMPTARGET (__sigjmp_save_symbol) #else mflr r0 std r0,FRAME_LR_SAVE(r1) stdu r1,-FRAME_MIN_SIZE(r1) cfi_adjust_cfa_offset(FRAME_MIN_SIZE) cfi_offset(lr,FRAME_LR_SAVE) - bl JUMPTARGET (__sigjmp_save) + bl JUMPTARGET (__sigjmp_save_symbol) nop ld r0,FRAME_MIN_SIZE+FRAME_LR_SAVE(r1) addi r1,r1,FRAME_MIN_SIZE mtlr r0 blr #endif -END (__sigsetjmp) +END (__sigsetjmp_symbol) diff --git a/sysdeps/powerpc/powerpc64/setjmp.S b/sysdeps/powerpc/powerpc64/setjmp.S index 0a3b2fc..5c6baf5 100644 --- a/sysdeps/powerpc/powerpc64/setjmp.S +++ b/sysdeps/powerpc/powerpc64/setjmp.S @@ -22,6 +22,10 @@ #if defined NOT_IN_libc /* Build a non-versioned object for rtld-*. */ +# define setjmp_symbol setjmp +# define _setjmp_symbol _setjmp +# define __sigsetjmp_symbol __sigsetjmp +# define __sigjmp_save_symbol __sigjmp_save # include "setjmp-common.S" #else /* !NOT_IN_libc */ @@ -29,28 +33,28 @@ versioned_symbol (libc, __vmxsetjmp, setjmp, GLIBC_2_3_4) versioned_symbol (libc, __vmx_setjmp, _setjmp, GLIBC_2_3_4) versioned_symbol (libc, __vmx__sigsetjmp, __sigsetjmp, GLIBC_2_3_4) -# define setjmp __vmxsetjmp -# define _setjmp __vmx_setjmp -# define __sigsetjmp __vmx__sigsetjmp -# define __sigjmp_save __vmx__sigjmp_save +# define setjmp_symbol __vmxsetjmp +# define _setjmp_symbol __vmx_setjmp +# define __sigsetjmp_symbol __vmx__sigsetjmp +# define __sigjmp_save_symbol __vmx__sigjmp_save # include "setjmp-common.S" strong_alias (__vmxsetjmp, __vmx__setjmp) strong_alias (__vmx__sigsetjmp, __setjmp) # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4) -# undef setjmp -# undef _setjmp -# undef __sigsetjmp -# undef __sigjmp_save +# undef setjmp_symbol +# undef _setjmp_symbol +# undef __sigsetjmp_symbol +# undef __sigjmp_save_symbol # undef JB_SIZE # define __NO_VMX__ compat_symbol (libc, __novmxsetjmp, setjmp, GLIBC_2_3) compat_symbol (libc, __novmx_setjmp,_setjmp, GLIBC_2_3); compat_symbol (libc, __novmx__sigsetjmp,__sigsetjmp, GLIBC_2_3) -# define setjmp __novmxsetjmp -# define _setjmp __novmx_setjmp -# define __sigsetjmp __novmx__sigsetjmp -# define __sigjmp_save __novmx__sigjmp_save +# define setjmp_symbol __novmxsetjmp +# define _setjmp_symbol __novmx_setjmp +# define __sigsetjmp_symbol __novmx__sigsetjmp +# define __sigjmp_save_symbol __novmx__sigjmp_save # include "setjmp-common.S" strong_alias (__novmxsetjmp, __novmx__setjmp) # endif diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S index 978370e..6e88b61 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S @@ -24,7 +24,7 @@ .string "longjmp causes uninitialized stack frame" .text -#define __longjmp ____longjmp_chk +#define __longjmp_symbol ____longjmp_chk #ifdef PIC # define LOAD_ARG \