summaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/powerpc32
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/powerpc/powerpc32')
-rw-r--r--sysdeps/powerpc/powerpc32/bsd-_setjmp.S8
-rw-r--r--sysdeps/powerpc/powerpc32/bsd-setjmp.S4
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_ceil.S11
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_floor.S11
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_lround.S15
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_rint.S11
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_round.S17
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_roundf.S7
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_trunc.S11
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/setjmp-common.S2
-rw-r--r--sysdeps/powerpc/powerpc32/ppc-mcount.S2
-rw-r--r--sysdeps/powerpc/powerpc32/setjmp-common.S2
-rw-r--r--sysdeps/powerpc/powerpc32/sysdep.h2
13 files changed, 46 insertions, 57 deletions
diff --git a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
index 50deda8c90..4c28c2e547 100644
--- a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
@@ -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 */
diff --git a/sysdeps/powerpc/powerpc32/bsd-setjmp.S b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
index 159b122ca5..01b195d832 100644
--- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
@@ -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)
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_ceil.S b/sysdeps/powerpc/powerpc32/fpu/s_ceil.S
index b76e9ff421..7924e34648 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_ceil.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_ceil.S
@@ -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 */
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_floor.S b/sysdeps/powerpc/powerpc32/fpu/s_floor.S
index 6b79ca4f17..c8f59c24a6 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_floor.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_floor.S
@@ -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 */
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_lround.S b/sysdeps/powerpc/powerpc32/fpu/s_lround.S
index ddac896e87..72fd49ba46 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_lround.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_lround.S
@@ -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
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_rint.S b/sysdeps/powerpc/powerpc32/fpu/s_rint.S
index 5d65f12581..4abdcedfe8 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_rint.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_rint.S
@@ -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 */
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_round.S b/sysdeps/powerpc/powerpc32/fpu/s_round.S
index 7eec8c641e..96fc2984fd 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_round.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_round.S
@@ -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; */
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_roundf.S b/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
index 856be6f115..87965dea80 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
@@ -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)
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_trunc.S b/sysdeps/powerpc/powerpc32/fpu/s_trunc.S
index 59c71470be..7a3e705a81 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_trunc.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_trunc.S
@@ -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 */
diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
index 77ee05f487..e0c0606da4 100644
--- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
@@ -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))
diff --git a/sysdeps/powerpc/powerpc32/ppc-mcount.S b/sysdeps/powerpc/powerpc32/ppc-mcount.S
index a72d676bbe..314c8ee703 100644
--- a/sysdeps/powerpc/powerpc32/ppc-mcount.S
+++ b/sysdeps/powerpc/powerpc32/ppc-mcount.S
@@ -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)
diff --git a/sysdeps/powerpc/powerpc32/setjmp-common.S b/sysdeps/powerpc/powerpc32/setjmp-common.S
index 40f626498c..ad7113f461 100644
--- a/sysdeps/powerpc/powerpc32/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/setjmp-common.S
@@ -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))
diff --git a/sysdeps/powerpc/powerpc32/sysdep.h b/sysdeps/powerpc/powerpc32/sysdep.h
index 59761f75b9..775073f325 100644
--- a/sysdeps/powerpc/powerpc32/sysdep.h
+++ b/sysdeps/powerpc/powerpc32/sysdep.h
@@ -124,7 +124,7 @@
#define PSEUDO_RET \
bnslr+; \
- b JUMPTARGET(__syscall_error)
+ b __syscall_error@local
#define ret PSEUDO_RET
#undef PSEUDO_END