This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Fix cfi for power{4,5} sqrt
- From: Andreas Schwab <aschwab at redhat dot com>
- To: libc-alpha at sourceware dot org
- Date: Wed, 24 Jun 2009 14:49:35 +0200
- Subject: Fix cfi for power{4,5} sqrt
The power4/power5 sqrt functions contain some wrong cfi directives.
Andreas.
2009-06-24 Andreas Schwab <aschwab@redhat.com>
* sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: Fix cfa offset
for saved registers.
* sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise.
* sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise.
* sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise.
diff --git i/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S w/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S
index 6aef4e3..95a0b39 100644
--- i/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S
+++ w/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S
@@ -60,8 +60,8 @@ EALIGN (__sqrt, 5, 0)
fmr fp12,fp2
stw r0,20(r1)
stw r30,8(r1)
- cfi_offset(lr,20)
- cfi_offset(r30,8)
+ cfi_offset(lr,20-16)
+ cfi_offset(r30,8-16)
#ifdef SHARED
# ifdef HAVE_ASM_PPC_REL16
bcl 20,31,.LCF1
diff --git i/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S w/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S
index e5b8b9d..c315551 100644
--- i/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S
+++ w/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S
@@ -60,8 +60,8 @@ EALIGN (__sqrtf, 5, 0)
fmr fp12,fp2
stw r0,20(r1)
stw r30,8(r1)
- cfi_offset(lr,20)
- cfi_offset(r30,8)
+ cfi_offset(lr,20-16)
+ cfi_offset(r30,8-16)
#ifdef SHARED
# ifdef HAVE_ASM_PPC_REL16
bcl 20,31,.LCF1
diff --git i/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S w/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S
index 925930b..105b591 100644
--- i/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S
+++ w/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S
@@ -60,8 +60,8 @@ EALIGN (__sqrt, 5, 0)
fmr fp12,fp2
stw r0,20(r1)
stw r30,8(r1)
- cfi_offset(lr,20)
- cfi_offset(r30,8)
+ cfi_offset(lr,20-16)
+ cfi_offset(r30,8-16)
#ifdef SHARED
# ifdef HAVE_ASM_PPC_REL16
bcl 20,31,.LCF1
diff --git i/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S w/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S
index 891e69c..14bc0a2 100644
--- i/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S
+++ w/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S
@@ -60,8 +60,8 @@ EALIGN (__sqrtf, 5, 0)
fmr fp12,fp2
stw r0,20(r1)
stw r30,8(r1)
- cfi_offset(lr,20)
- cfi_offset(r30,8)
+ cfi_offset(lr,20-16)
+ cfi_offset(r30,8-16)
#ifdef SHARED
# ifdef HAVE_ASM_PPC_REL16
bcl 20,31,.LCF1
--
Andreas Schwab, aschwab@redhat.com
GPG Key fingerprint = D4E8 DBE3 3813 BB5D FA84 5EC7 45C6 250E 6F00 984E
"And now for something completely different."