* sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Don't use

JUMPTARGET.  Instead append @local to __syscall_error.
	* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Delete all occurrences
	of JUMPTARGET.  Instead append @local to labels.
	* sysdeps/powerpc/powerpc32/bsd-setjmp.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
	* sysdeps/powerpc/powerpc32/ppc-mcount.S: Likewise.
	* sysdeps/powerpc/powerpc32/setjmp-common.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Likewise.

	* sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Use float constants.
	* sysdeps/powerpc/powerpc32/fpu/s_floor.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_rint.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise.  Use one GOT
	slot to access both constants.
	* sysdeps/powerpc/powerpc32/fpu/s_round.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise.
This commit is contained in:
Ulrich Drepper 2005-05-21 19:29:13 +00:00
parent f7d78e18aa
commit b0e196a46f
26 changed files with 111 additions and 86 deletions

View File

@ -1,5 +1,30 @@
2005-05-17 Alan Modra <amodra@bigpond.net.au>
* sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Don't use
JUMPTARGET. Instead append @local to __syscall_error.
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Delete all occurrences
of JUMPTARGET. Instead append @local to labels.
* sysdeps/powerpc/powerpc32/bsd-setjmp.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
* sysdeps/powerpc/powerpc32/ppc-mcount.S: Likewise.
* sysdeps/powerpc/powerpc32/setjmp-common.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Use float constants.
* sysdeps/powerpc/powerpc32/fpu/s_floor.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/s_rint.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise. Use one GOT
slot to access both constants.
* sysdeps/powerpc/powerpc32/fpu/s_round.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/s_ceil.S (TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_floor.S (TWO52.0): Delete.

View File

@ -1,3 +1,9 @@
2005-05-17 Alan Modra <amodra@bigpond.net.au>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: Delete
all occurrences of JUMPTARGET. Instead append @local to labels.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Likewise.
2005-05-19 Richard Henderson <rth@redhat.com>
* sysdeps/ia64/pspinlock.c (__pthread_spin_lock): Use

View File

@ -76,14 +76,14 @@
# define UNDOCARGS_6 lwz 8,40(1); UNDOCARGS_5
# ifdef IS_IN_libpthread
# define CENABLE bl JUMPTARGET(__pthread_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__pthread_disable_asynccancel)
# define CENABLE bl __pthread_enable_asynccancel@local
# define CDISABLE bl __pthread_disable_asynccancel@local
# elif !defined NOT_IN_libc
# define CENABLE bl JUMPTARGET(__libc_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__libc_disable_asynccancel)
# define CENABLE bl __libc_enable_asynccancel@local
# define CDISABLE bl __libc_disable_asynccancel@local
# else
# define CENABLE bl JUMPTARGET(__librt_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__librt_disable_asynccancel)
# define CENABLE bl __librt_enable_asynccancel@local
# define CDISABLE bl __librt_disable_asynccancel@local
# endif
# ifdef HAVE_TLS_SUPPORT

View File

@ -69,7 +69,7 @@ ENTRY (__vfork)
bnslr+
.Lsyscall_error:
b JUMPTARGET(__syscall_error)
b __syscall_error@local
#endif
PSEUDO_END (__vfork)

View File

@ -1,3 +1,8 @@
2005-05-17 Alan Modra <amodra@bigpond.net.au>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: Delete
all occurrences of JUMPTARGET. Instead append @local to labels.
2005-05-20 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/tls.h (TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN): Define to

View File

@ -85,14 +85,14 @@
# define UNDOCARGS_6 lwz 8,40(1); UNDOCARGS_5
# ifdef IS_IN_libpthread
# define CENABLE bl JUMPTARGET(__pthread_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__pthread_disable_asynccancel)
# define CENABLE bl __pthread_enable_asynccancel@local
# define CDISABLE bl __pthread_disable_asynccancel@local
# elif !defined NOT_IN_libc
# define CENABLE bl JUMPTARGET(__libc_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__libc_disable_asynccancel)
# define CENABLE bl __libc_enable_asynccancel@local
# define CDISABLE bl __libc_disable_asynccancel@local
# elif defined IS_IN_librt
# define CENABLE bl JUMPTARGET(__librt_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__librt_disable_asynccancel)
# define CENABLE bl __librt_enable_asynccancel@local
# define CDISABLE bl __librt_disable_asynccancel@local
# else
# error Unsupported library
# endif

View File

@ -26,7 +26,7 @@
/* Build a non-versioned object for rtld-*. */
ENTRY (BP_SYM (_setjmp))
li r4,0 /* Set second argument to 0. */
b JUMPTARGET(BP_SYM (__sigsetjmp))
b BP_SYM (__sigsetjmp@local)
END (BP_SYM (_setjmp))
libc_hidden_def (_setjmp)
#else
@ -37,7 +37,7 @@ symbol_version (__novmx_setjmp,_setjmp,GLIBC_2.0);
ENTRY (BP_SYM (__novmx_setjmp))
li r4,0 /* Set second argument to 0. */
b JUMPTARGET(BP_SYM (__novmx__sigsetjmp))
b BP_SYM (__novmx__sigsetjmp@local)
END (BP_SYM (__novmx_setjmp))
libc_hidden_def (__novmx_setjmp)
# endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */
@ -48,12 +48,12 @@ default_symbol_version (__vmx_setjmp,_setjmp,GLIBC_2.3.4)
if HAVE_CLEANUP_JMP_BUF is defined */
ENTRY (BP_SYM (__GI__setjmp))
li r4,0 /* Set second argument to 0. */
b JUMPTARGET(BP_SYM (__vmx__sigsetjmp))
b BP_SYM (__vmx__sigsetjmp@local)
END (BP_SYM (__GI__setjmp))
ENTRY (BP_SYM (__vmx_setjmp))
li r4,0 /* Set second argument to 0. */
b JUMPTARGET(BP_SYM (__vmx__sigsetjmp))
b BP_SYM (__vmx__sigsetjmp@local)
END (BP_SYM (__vmx_setjmp))
libc_hidden_def (__vmx_setjmp)
#endif /* !NOT_IN_libc */

View File

@ -25,7 +25,7 @@
ENTRY (__novmxsetjmp)
li r4,1 /* Set second argument to 1. */
b JUMPTARGET (__novmx__sigsetjmp)
b __novmx__sigsetjmp@local
END (__novmxsetjmp)
strong_alias (__novmxsetjmp, __novmx__setjmp)
symbol_version (__novmxsetjmp, setjmp, GLIBC_2.0)
@ -34,7 +34,7 @@ symbol_version (__novmxsetjmp, setjmp, GLIBC_2.0)
ENTRY (__vmxsetjmp)
li r4,1 /* Set second argument to 1. */
b JUMPTARGET (__vmx__sigsetjmp)
b __vmx__sigsetjmp@local
END (__vmxsetjmp)
strong_alias (__vmxsetjmp, __vmx__setjmp)
strong_alias (__vmx__setjmp, __setjmp)

View File

@ -19,11 +19,10 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
.align 3
.section .rodata.cst4,"aM",@progbits,4
.align 2
.LC0: /* 2**52 */
.long 0x43300000
.long 0
.long 0x59800000
.section ".text"
ENTRY (__ceil)
@ -34,10 +33,10 @@ ENTRY (__ceil)
mflr r10
lwz r9,.LC0@got(10)
mtlr r11
lfd fp13,0(r9)
lfs fp13,0(r9)
#else
lis r9,.LC0@ha
lfd fp13,.LC0@l(r9)
lfs fp13,.LC0@l(r9)
#endif
fabs fp0,fp1
fsub fp12,fp13,fp13 /* generate 0.0 */

View File

@ -19,11 +19,10 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
.align 3
.section .rodata.cst4,"aM",@progbits,4
.align 2
.LC0: /* 2**52 */
.long 0x43300000
.long 0
.long 0x59800000
.section ".text"
ENTRY (__floor)
@ -34,10 +33,10 @@ ENTRY (__floor)
mflr r10
lwz r9,.LC0@got(10)
mtlr r11
lfd fp13,0(r9)
lfs fp13,0(r9)
#else
lis r9,.LC0@ha
lfd fp13,.LC0@l(r9)
lfs fp13,.LC0@l(r9)
#endif
fabs fp0,fp1
fsub fp12,fp13,fp13 /* generate 0.0 */

View File

@ -20,13 +20,11 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
.align 3
.align 2
.LC0: /* 0.0 */
.long 0x00000000
.long 0
.LC1: /* 0.5 */
.long 0x3fe00000
.long 0
.long 0x3f000000
.section ".text"
@ -47,17 +45,16 @@ ENTRY (__lround)
mflr r10
lwz r9,.LC0@got(10)
mtlr r11
lfd fp12,0(r9)
lfs fp12,0(r9)
#else
lis r9,.LC0@ha
lfd fp12,.LC0@l(r9)
lfs fp12,.LC0@l(r9)
#endif
#ifdef SHARED
lwz r9,.LC1@got(10)
lfd fp10,0(r9)
lfs fp10,.LC1-.LC0(r9)
#else
lis r9,.LC1@ha
lfd fp10,.LC1@l(r9)
lfs fp10,.LC1@l(r9)
#endif
fcmpu cr6,fp1,fp12 /* if (x > 0.0) */
ble- cr6,.L4

View File

@ -22,11 +22,10 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
.align 3
.section .rodata.cst4,"aM",@progbits,4
.align 2
.LC0: /* 2**52 */
.long 0x43300000
.long 0
.long 0x59800000
.section ".text"
ENTRY (__rint)
@ -36,10 +35,10 @@ ENTRY (__rint)
mflr r10
lwz r9,.LC0@got(10)
mtlr r11
lfd fp13,0(r9)
lfs fp13,0(r9)
#else
lis r9,.LC0@ha
lfd fp13,.LC0@l(r9)
lfs fp13,.LC0@l(r9)
#endif
fabs fp0,fp1
fsub fp12,fp13,fp13 /* generate 0.0 */

View File

@ -20,13 +20,11 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
.align 3
.align 2
.LC0: /* 2**52 */
.long 0x43300000
.long 0
.long 0x59800000
.LC1: /* 0.5 */
.long 0x3fe00000
.long 0
.long 0x3f000000
/* double [fp1] round (double x [fp1])
IEEE 1003.1 round function. IEEE specifies "round to the nearest
@ -47,10 +45,10 @@ ENTRY (__round)
mflr r10
lwz r9,.LC0@got(10)
mtlr r11
lfd fp13,0(r9)
lfs fp13,0(r9)
#else
lis r9,.LC0@ha
lfd fp13,.LC0@l(r9)
lfs fp13,.LC0@l(r9)
#endif
fabs fp0,fp1
fsub fp12,fp13,fp13 /* generate 0.0 */
@ -59,11 +57,10 @@ ENTRY (__round)
bnllr- cr7
mtfsfi 7,1 /* Set rounding mode toward 0. */
#ifdef SHARED
lwz r9,.LC1@got(10)
lfd fp10,0(r9)
lfs fp10,.LC1-.LC0(r9)
#else
lis r9,.LC1@ha
lfd fp10,.LC1@l(r9)
lfs fp10,.LC1@l(r9)
#endif
ble- cr6,.L4
fadd fp1,fp1,fp10 /* x+= 0.5; */

View File

@ -19,8 +19,8 @@
#include <sysdep.h>
.section .rodata.cst4,"aM",@progbits,4
.align 2
.section .rodata.cst8,"aM",@progbits,8
.align 2
.LC0: /* 2**23 */
.long 0x4b000000
.LC1: /* 0.5 */
@ -57,8 +57,7 @@ ENTRY (__roundf )
bnllr- cr7
mtfsfi 7,1 /* Set rounding mode toward 0. */
#ifdef SHARED
lwz r9,.LC1@got(10)
lfs fp10,0(r9)
lfs fp10,.LC1-.LC0(r9)
#else
lis r9,.LC1@ha
lfs fp10,.LC1@l(r9)

View File

@ -19,11 +19,10 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
.align 3
.section .rodata.cst4,"aM",@progbits,4
.align 2
.LC0: /* 2**52 */
.long 0x43300000
.long 0
.long 0x59800000
/* double [fp1] trunc (double x [fp1])
IEEE 1003.1 trunc function. IEEE specifies "trunc to the integer
@ -41,10 +40,10 @@ ENTRY (__trunc)
mflr r10
lwz r9,.LC0@got(10)
mtlr r11
lfd fp13,0(r9)
lfs fp13,0(r9)
#else
lis r9,.LC0@ha
lfd fp13,.LC0@l(r9)
lfs fp13,.LC0@l(r9)
#endif
fabs fp0,fp1
fsub fp12,fp13,fp13 /* generate 0.0 */

View File

@ -164,5 +164,5 @@ L(aligned_save_vmx):
stvx 31,0,r6
L(no_vmx):
#endif
b JUMPTARGET (BP_SYM (__sigjmp_save))
b BP_SYM (__sigjmp_save@local)
END (BP_SYM (__sigsetjmp))

View File

@ -62,7 +62,7 @@ ENTRY(_mcount)
stw r10,40(r1)
stw r4, 44(r1)
stw r5, 8(r1)
bl JUMPTARGET(__mcount_internal)
bl __mcount_internal@local
nop
/* Restore the registers... */
lwz r6, 8(r1)

View File

@ -55,5 +55,5 @@ ENTRY (BP_SYM (__sigsetjmp))
stw r29,((JB_GPRS+15)*4)(3)
stw r30,((JB_GPRS+16)*4)(3)
stw r31,((JB_GPRS+17)*4)(3)
b JUMPTARGET (BP_SYM (__sigjmp_save))
b BP_SYM (__sigjmp_save@local)
END (BP_SYM (__sigsetjmp))

View File

@ -124,7 +124,7 @@
#define PSEUDO_RET \
bnslr+; \
b JUMPTARGET(__syscall_error)
b __syscall_error@local
#define ret PSEUDO_RET
#undef PSEUDO_END

View File

@ -48,7 +48,7 @@ ENTRY (BP_SYM (__brk))
li r3,0
blelr+
li r3,ENOMEM
b JUMPTARGET(__syscall_error)
b __syscall_error@local
END (BP_SYM (__brk))
weak_alias (BP_SYM (__brk), BP_SYM (brk))

View File

@ -132,11 +132,11 @@ L(parent):
#endif
addi r1,r1,32
bnslr+
b JUMPTARGET(__syscall_error)
b __syscall_error@local
L(badargs):
li r3,EINVAL
b JUMPTARGET(__syscall_error)
b __syscall_error@local
END (BP_SYM (__clone))
weak_alias (BP_SYM (__clone), BP_SYM (clone))

View File

@ -251,7 +251,7 @@ L(no_vec):
stw r3,_UC_REGS_PTR(r12)
addi r5,r12,_UC_SIGMASK
li r3,SIG_BLOCK
bl JUMPTARGET(__sigprocmask)
bl __sigprocmask@local
lwz r0,_FRAME_LR_SAVE+16(r1)
addi r1,r1,16
@ -363,7 +363,7 @@ ENTRY(__novec_getcontext)
addi r5,r3,_UC_SIGMASK - _UC_REG_SPACE
li r4,0
li r3,SIG_BLOCK
bl JUMPTARGET(__sigprocmask)
bl __sigprocmask@local
lwz r0,20(r1)
addi r1,r1,16
@ -384,7 +384,7 @@ compat_symbol (libc, __novec_getcontext, getcontext, GLIBC_2_3_3)
compat_text_section
ENTRY (__getcontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
b __syscall_error@local
END (__getcontext_stub)
.previous

View File

@ -101,7 +101,7 @@ ENTRY(__makecontext)
L(exitcode):
mr. r3,r31
beq 4f
bl JUMPTARGET(__setcontext)
bl __setcontext@local
4: bl HIDDEN_JUMPTARGET(exit)
b 4b
@ -188,7 +188,7 @@ ENTRY(__novec_makecontext)
L(novec_exitcode):
mr. r3,r31
beq 4f
bl JUMPTARGET(__novec_setcontext)
bl __novec_setcontext@local
4: bl HIDDEN_JUMPTARGET(exit)
b 4b
@ -206,7 +206,7 @@ compat_symbol (libc, __novec_makecontext, makecontext, GLIBC_2_3_3)
compat_text_section
ENTRY (__makecontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
b __syscall_error@local
END (__makecontext_stub)
.previous

View File

@ -52,7 +52,7 @@ ENTRY(__setcontext)
li r5,0
addi r4,r3,_UC_SIGMASK
li r3,SIG_SETMASK
bl JUMPTARGET(__sigprocmask)
bl __sigprocmask@local
cmpwi r3,0
bne L(error_exit)
@ -295,7 +295,7 @@ ENTRY(__novec_setcontext)
li r5,0
addi r4,r3,_UC_SIGMASK
li r3,SIG_SETMASK
bl JUMPTARGET(__sigprocmask)
bl __sigprocmask@local
cmpwi r3,0
bne L(novec_error_exit)
@ -405,7 +405,7 @@ compat_symbol (libc, __novec_setcontext, setcontext, GLIBC_2_3_3)
compat_text_section
ENTRY (__setcontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
b __syscall_error@local
END (__setcontext_stub)
.previous

View File

@ -249,7 +249,7 @@ L(no_vec):
stw r3,_UC_REGS_PTR(r12)
addi r5,r12,_UC_SIGMASK
li r3,SIG_SETMASK
bl JUMPTARGET(__sigprocmask)
bl __sigprocmask@local
cmpwi r3,0
bne L(error_exit)
@ -579,7 +579,7 @@ ENTRY(__novec_swapcontext)
addi r5,r3,_UC_SIGMASK - _UC_REG_SPACE
addi r4,r4,_UC_SIGMASK
li r3,SIG_SETMASK
bl JUMPTARGET(__sigprocmask)
bl __sigprocmask@local
cmpwi r3,0
bne L(novec_error_exit)
@ -706,7 +706,7 @@ compat_symbol (libc, __novec_swapcontext, swapcontext, GLIBC_2_3_3)
compat_text_section
ENTRY (__swapcontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
b __syscall_error@local
END (__swapcontext_stub)
.previous

View File

@ -50,7 +50,7 @@ ENTRY (__vfork)
bnslr+
.Lsyscall_error:
b JUMPTARGET(__syscall_error)
b __syscall_error@local
#endif
PSEUDO_END (__vfork)