diff options
author | Jakub Jelinek <jakub@redhat.com> | 2005-05-23 14:27:15 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2005-05-23 14:27:15 +0000 |
commit | 9ebafd4bb2e316e73addd017b088c5e84cba7bad (patch) | |
tree | eaf1359d11ed34e8b3fb97ce3da3c40fcfc0ab61 /sysdeps/powerpc/powerpc32/fpu | |
parent | cbeae26ce77eb559b3a90ec31886dac15d2f9071 (diff) |
Updated to fedora-glibc-20050523T1354
Diffstat (limited to 'sysdeps/powerpc/powerpc32/fpu')
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_ceil.S | 19 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_ceilf.S | 7 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_floor.S | 19 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_floorf.S | 7 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_lround.S | 32 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_rint.S | 19 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_rintf.S | 8 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_round.S | 31 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_roundf.S | 19 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_trunc.S | 20 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_truncf.S | 8 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/setjmp-common.S | 2 |
12 files changed, 43 insertions, 148 deletions
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_ceil.S b/sysdeps/powerpc/powerpc32/fpu/s_ceil.S index 22cf76e54c..7924e34648 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_ceil.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_ceil.S @@ -19,19 +19,10 @@ #include <sysdep.h> - .section .rodata - .align 3 - .type TWO52.0,@object - .size TWO52.0,8 -TWO52.0: - .long 0x43300000 - .long 0 - - .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) @@ -42,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_ceilf.S b/sysdeps/powerpc/powerpc32/fpu/s_ceilf.S index e7a72186c9..9315d8d2df 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_ceilf.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_ceilf.S @@ -19,13 +19,6 @@ #include <sysdep.h> - .section .rodata - .align 2 - .type TWO23.0,@object - .size TWO23.0,4 -TWO23.0: - .long 0x4b000000 - .section .rodata.cst4,"aM",@progbits,4 .align 2 .LC0: /* 2**23 */ diff --git a/sysdeps/powerpc/powerpc32/fpu/s_floor.S b/sysdeps/powerpc/powerpc32/fpu/s_floor.S index 812ea7ced2..c8f59c24a6 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_floor.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_floor.S @@ -19,19 +19,10 @@ #include <sysdep.h> - .section .rodata - .align 3 - .type TWO52.0,@object - .size TWO52.0,8 -TWO52.0: - .long 0x43300000 - .long 0 - - .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) @@ -42,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_floorf.S b/sysdeps/powerpc/powerpc32/fpu/s_floorf.S index ead41d4657..8ee0644ac9 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_floorf.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_floorf.S @@ -19,13 +19,6 @@ #include <sysdep.h> - .section .rodata - .align 2 - .type TWO23.0,@object - .size TWO23.0,4 -TWO23.0: - .long 0x4b000000 - .section .rodata.cst4,"aM",@progbits,4 .align 2 .LC0: /* 2**23 */ diff --git a/sysdeps/powerpc/powerpc32/fpu/s_lround.S b/sysdeps/powerpc/powerpc32/fpu/s_lround.S index dcb97e373b..72fd49ba46 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_lround.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_lround.S @@ -19,27 +19,12 @@ #include <sysdep.h> - .section .rodata - .align 3 - .type NEGZERO.0,@object - .size NEGZERO.0,8 -NEGZERO.0: - .long 0x00000000 - .long 0 - .type POINTFIVE.0,@object - .size POINTFIVE.0,8 -POINTFIVE.0: - .long 0x3fe00000 - .long 0 - .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" @@ -60,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 @@ -78,8 +62,8 @@ ENTRY (__lround) .L9: fctiwz fp2,fp1 /* Convert To Integer DW lround toward 0. */ stfd fp2,-8(r1) - nop /* Insure the following load is in a different dispatch group */ - nop /* to avoid pipe stall on POWER4&5. */ + nop /* Ensure the following load is in a different dispatch */ + nop /* group to avoid pipe stall on POWER4&5. */ nop lwz r3,-4(r1) blr diff --git a/sysdeps/powerpc/powerpc32/fpu/s_rint.S b/sysdeps/powerpc/powerpc32/fpu/s_rint.S index fa02dbc59c..4abdcedfe8 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_rint.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_rint.S @@ -22,19 +22,10 @@ #include <sysdep.h> - .section .rodata - .align 3 - .type TWO52.0,@object - .size TWO52.0,8 -TWO52.0: - .long 0x43300000 - .long 0 - - .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) @@ -44,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_rintf.S b/sysdeps/powerpc/powerpc32/fpu/s_rintf.S index 7825951268..d02bd066b8 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_rintf.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_rintf.S @@ -19,14 +19,6 @@ #include <sysdep.h> - - .section .rodata - .align 2 - .type TWO23.0,@object - .size TWO23.0,4 -TWO23.0: - .long 0x4b000000 - .section .rodata.cst4,"aM",@progbits,4 .align 2 .LC0: /* 2**23 */ diff --git a/sysdeps/powerpc/powerpc32/fpu/s_round.S b/sysdeps/powerpc/powerpc32/fpu/s_round.S index 39eab232f6..96fc2984fd 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_round.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_round.S @@ -19,27 +19,12 @@ #include <sysdep.h> - .section .rodata - .align 3 - .type TWO52.0,@object - .size TWO52.0,8 -TWO52.0: - .long 0x43300000 - .long 0 - .type POINTFIVE.0,@object - .size POINTFIVE.0,8 -POINTFIVE.0: - .long 0x3fe00000 - .long 0 - .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 @@ -51,6 +36,7 @@ POINTFIVE.0: "Round toward Zero" mode and round by adding +-0.5 before rounding to the integer value. */ + .section ".text" ENTRY (__round) mffs fp11 /* Save current FPU rounding mode. */ #ifdef SHARED @@ -59,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 */ @@ -71,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 a9b42f0170..87965dea80 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_roundf.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_roundf.S @@ -19,19 +19,8 @@ #include <sysdep.h> - .section .rodata - .align 2 - .type TWO23.0,@object - .size TWO23.0,4 -TWO23.0: - .long 0x4b000000 - .type POINTFIVE.0,@object - .size POINTFIVE.0,4 -POINTFIVE.0: - .long 0x3f000000 - - .section .rodata.cst4,"aM",@progbits,4 - .align 2 + .section .rodata.cst8,"aM",@progbits,8 + .align 2 .LC0: /* 2**23 */ .long 0x4b000000 .LC1: /* 0.5 */ @@ -47,6 +36,7 @@ POINTFIVE.0: "Round toward Zero" mode and round by adding +-0.5 before rounding to the integer value. */ + .section ".text" ENTRY (__roundf ) mffs fp11 /* Save current FPU rounding mode. */ #ifdef SHARED @@ -67,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 08acc00cb2..7a3e705a81 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_trunc.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_trunc.S @@ -19,19 +19,10 @@ #include <sysdep.h> - .section .rodata - .align 3 - .type TWO52.0,@object - .size TWO52.0,8 -TWO52.0: - .long 0x43300000 - .long 0 - - .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 @@ -40,6 +31,7 @@ TWO52.0: We set "round toward Zero" mode and trunc by adding +-2**52 then subtracting +-2**52. */ + .section ".text" ENTRY (__trunc) mffs fp11 /* Save current FPU rounding mode. */ #ifdef SHARED @@ -48,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/s_truncf.S b/sysdeps/powerpc/powerpc32/fpu/s_truncf.S index 3b6fe731b4..5275c69d29 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_truncf.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_truncf.S @@ -19,13 +19,6 @@ #include <sysdep.h> - .section .rodata - .align 2 - .type TWO23.0,@object - .size TWO23.0,2 -TWO23.0: - .long 0x4b000000 - .section .rodata.cst4,"aM",@progbits,4 .align 2 .LC0: /* 2**23 */ @@ -38,6 +31,7 @@ TWO23.0: We set "round toward Zero" mode and trunc by adding +-2**23 then subtracting +-2**23. */ + .section ".text" ENTRY (__truncf) mffs fp11 /* Save current FPU rounding mode. */ #ifdef SHARED 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)) |