summaryrefslogtreecommitdiff
path: root/ports/sysdeps
diff options
context:
space:
mode:
authorjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2009-05-22 22:22:43 +0000
committerjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2009-05-22 22:22:43 +0000
commit445b39be94ce30bff84e1ea3c2ca8440dd467142 (patch)
treeb6978a75ab89eb58fd4fdb1d69bddbe7df4a800b /ports/sysdeps
parent6b946eeb50a57ee4ff8c50783d516bb03cf89b7a (diff)
downloadeglibc2-445b39be94ce30bff84e1ea3c2ca8440dd467142.tar.gz
* sysdeps/powerpc/powerpc32/e500/fpu/__longjmp-common.S: Use
CHECK_SP if defined. git-svn-id: svn://svn.eglibc.org/trunk@8488 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'ports/sysdeps')
-rw-r--r--ports/sysdeps/powerpc/powerpc32/e500/fpu/__longjmp-common.S12
1 files changed, 10 insertions, 2 deletions
diff --git a/ports/sysdeps/powerpc/powerpc32/e500/fpu/__longjmp-common.S b/ports/sysdeps/powerpc/powerpc32/e500/fpu/__longjmp-common.S
index fd786765e..93080c066 100644
--- a/ports/sysdeps/powerpc/powerpc32/e500/fpu/__longjmp-common.S
+++ b/ports/sysdeps/powerpc/powerpc32/e500/fpu/__longjmp-common.S
@@ -1,5 +1,5 @@
/* longjmp for PowerPC E500.
- Copyright (C) 2004, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2006, 2009 Free Software Foundation, Inc.
Contributed by Aldy Hernandez <aldyh@redhat.com>.
The GNU C Library is free software; you can redistribute it and/or
@@ -31,7 +31,7 @@
ENTRY (BP_SYM (__longjmp))
CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
-#ifdef PTR_DEMANGLE
+#if defined PTR_DEMANGLE || defined CHECK_SP
lwz r24,(JB_GPR1*4)(r3)
#else
lwz r1,(JB_GPR1*4)(r3)
@@ -59,9 +59,17 @@ ENTRY (BP_SYM (__longjmp))
evldd r20,((JB_FPRS+6*2)*4)(r3)
lwz r20,((JB_GPRS+6)*4)(r3)
#ifdef PTR_DEMANGLE
+# ifdef CHECK_SP
+ PTR_DEMANGLE3 (r24, r24, r25)
+# else
PTR_DEMANGLE3 (r1, r24, r25)
+# endif
PTR_DEMANGLE2 (r0, r25)
#endif
+#ifdef CHECK_SP
+ CHECK_SP (r24)
+ mr r1,r24
+#endif
mtlr r0
/*lfd fp21,((JB_FPRS+7*2)*4)(r3)*/
evldd r21,((JB_FPRS+7*2)*4)(r3)