about summary refs log tree commit diff
path: root/sysdeps/mips/mips64/setjmp_aux.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mips/mips64/setjmp_aux.c')
-rw-r--r--sysdeps/mips/mips64/setjmp_aux.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sysdeps/mips/mips64/setjmp_aux.c b/sysdeps/mips/mips64/setjmp_aux.c
index 6d1c9390bb..db75a21a30 100644
--- a/sysdeps/mips/mips64/setjmp_aux.c
+++ b/sysdeps/mips/mips64/setjmp_aux.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Brendan Kehoe (brendan@zen.org).
 
@@ -25,7 +25,8 @@
    access them in C.  */
 
 int
-__sigsetjmp_aux (jmp_buf env, int savemask, int sp, int fp)
+__sigsetjmp_aux (jmp_buf env, int savemask, long long sp, long long fp,
+		 long long gp)
 {
   /* Store the floating point callee-saved registers...  */
   asm volatile ("s.d $f24, %0" : : "m" (env[0].__jmpbuf[0].__fpregs[0]));
@@ -47,7 +48,7 @@ __sigsetjmp_aux (jmp_buf env, int savemask, int sp, int fp)
   env[0].__jmpbuf[0].__fp = fp;
 
   /* .. and the GP; */
-  asm volatile ("sd $gp, %0" : : "m" (env[0].__jmpbuf[0].__gp));
+  env[0].__jmpbuf[0].__gp = gp;
 
   /* .. and the callee-saved registers; */
   asm volatile ("sd $16, %0" : : "m" (env[0].__jmpbuf[0].__regs[0]));