From cf1a9d9d16a79322df15b344a2617b79ebb12705 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sun, 19 Apr 2015 21:20:08 -0400 Subject: [PATCH] remove possible-textrels from powerpc asm these are perfectly fine with ld-time symbol binding, but otherwise result in textrels. they cannot be replaced with @PLT jump targets because the PLT thunks require a GOT register to be setup, so use a hidden alias instead. --- src/setjmp/powerpc/setjmp.s | 3 +++ src/signal/powerpc/sigsetjmp.s | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/setjmp/powerpc/setjmp.s b/src/setjmp/powerpc/setjmp.s index e39687aa..122177f1 100644 --- a/src/setjmp/powerpc/setjmp.s +++ b/src/setjmp/powerpc/setjmp.s @@ -1,9 +1,12 @@ + .global ___setjmp + .hidden ___setjmp .global __setjmp .global _setjmp .global setjmp .type __setjmp,@function .type _setjmp,@function .type setjmp,@function +___setjmp: __setjmp: _setjmp: setjmp: diff --git a/src/signal/powerpc/sigsetjmp.s b/src/signal/powerpc/sigsetjmp.s index 78acf590..152c3fed 100644 --- a/src/signal/powerpc/sigsetjmp.s +++ b/src/signal/powerpc/sigsetjmp.s @@ -12,7 +12,8 @@ __sigsetjmp: stw 16, 448+4+8(3) mr 16, 3 - bl setjmp +.hidden ___setjmp + bl ___setjmp mr 4, 3 mr 3, 16 @@ -23,4 +24,4 @@ __sigsetjmp: .hidden __sigsetjmp_tail b __sigsetjmp_tail -1: b setjmp +1: b ___setjmp -- 2.25.1