diff options
author | Ulrich Drepper <drepper@redhat.com> | 2008-06-13 01:18:22 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2008-06-13 01:18:22 +0000 |
commit | 9ea8bfec35c54cb5769209227d94ab61f9efb935 (patch) | |
tree | 525f11bc410f0a9b42f882d961ff0e5dfe600e55 /sysdeps/powerpc/powerpc32 | |
parent | 5228ba2fe881133ccc0f9b3ad8a1ebbe9112a6f2 (diff) | |
download | glibc-9ea8bfec35c54cb5769209227d94ab61f9efb935.tar.gz glibc-9ea8bfec35c54cb5769209227d94ab61f9efb935.tar.xz glibc-9ea8bfec35c54cb5769209227d94ab61f9efb935.zip |
* sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Avoid using
cr[34] registers. * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise. * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround): Likewise. * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Avoid using cr3 register.
Diffstat (limited to 'sysdeps/powerpc/powerpc32')
-rw-r--r-- | sysdeps/powerpc/powerpc32/fpu/s_lround.S | 6 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S | 10 |
2 files changed, 8 insertions, 8 deletions
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_lround.S b/sysdeps/powerpc/powerpc32/fpu/s_lround.S index ebaccccd9b..d73749e134 100644 --- a/sysdeps/powerpc/powerpc32/fpu/s_lround.S +++ b/sysdeps/powerpc/powerpc32/fpu/s_lround.S @@ -1,5 +1,5 @@ /* lround function. PowerPC32 version. - Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2004, 2006, 2007, 2008 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -65,10 +65,10 @@ ENTRY (__lround) fabs fp2, fp1 /* Get the absolute value of x. */ fsub fp12,fp10,fp10 /* Compute 0.0. */ fcmpu cr6, fp2, fp10 /* if |x| < 0.5 */ - fcmpu cr3, fp1, fp12 /* x is negative? x < 0.0 */ + fcmpu cr7, fp1, fp12 /* x is negative? x < 0.0 */ blt- cr6,.Lretzero fadd fp3,fp2,fp10 /* |x|+=0.5 bias to prepare to round. */ - bge cr3,.Lconvert /* x is positive so don't negate x. */ + bge cr7,.Lconvert /* x is positive so don't negate x. */ fnabs fp3,fp3 /* -(|x|+=0.5) */ .Lconvert: fctiwz fp4,fp3 /* Convert to Integer word lround toward 0. */ diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S b/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S index 4b1691efd3..e10a37977a 100644 --- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S +++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S @@ -1,5 +1,5 @@ /* llround function. PowerPC32 on PowerPC64 version. - Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2004, 2006, 2007, 2008 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -75,12 +75,12 @@ ENTRY (__llround) fabs fp2,fp1 /* Get the absolute value of x. */ fsub fp12,fp10,fp10 /* Compute 0.0 into fpr12. */ fcmpu cr6,fp2,fp10 /* if |x| < 0.5 */ - fcmpu cr4,fp2,fp9 /* if |x| >= 2^52 */ - fcmpu cr3,fp1,fp12 /* x is negative? x < 0.0 */ + fcmpu cr7,fp2,fp9 /* if |x| >= 2^52 */ + fcmpu cr1,fp1,fp12 /* x is negative? x < 0.0 */ blt- cr6,.Lretzero /* 0.5 > x < -0.5 so just return 0. */ - bge- cr4,.Lnobias /* 2^52 > x < -2^52 just convert with no bias. */ + bge- cr7,.Lnobias /* 2^52 > x < -2^52 just convert with no bias. */ fadd fp3,fp2,fp10 /* |x|+=0.5 bias to prepare to round. */ - bge cr3,.Lconvert /* x is positive so don't negate x. */ + bge cr1,.Lconvert /* x is positive so don't negate x. */ fnabs fp3,fp3 /* -(|x|+=0.5) */ .Lconvert: fctidz fp4,fp3 /* Convert to Integer double word round toward 0. */ |