diff options
author | Roland McGrath <roland@gnu.org> | 1994-12-14 01:14:28 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1994-12-14 01:14:28 +0000 |
commit | 92fa42d19a726d9810db3853cbbf3d7356843217 (patch) | |
tree | 06087c8e61267623ec34e8c28127b24f932bc048 | |
parent | f9a06ffb8c931e687dce884e20a142ab0f599a53 (diff) |
Use sethi and or to put address of __sigsetjmp in %g1 and jmp there.
jmp cannot contain a complete absolute pointer.
-rw-r--r-- | sysdeps/sparc/bsd-_setjmp.S | 4 | ||||
-rw-r--r-- | sysdeps/sparc/bsd-setjmp.S | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/sysdeps/sparc/bsd-_setjmp.S b/sysdeps/sparc/bsd-_setjmp.S index 9fb05ee4e2..5b685d5496 100644 --- a/sysdeps/sparc/bsd-_setjmp.S +++ b/sysdeps/sparc/bsd-_setjmp.S @@ -20,5 +20,7 @@ Cambridge, MA 02139, USA. */ #include <sysdep.h> ENTRY (setjmp) - jmp C_SYMBOL_NAME (__sigsetjmp) + sethi %hi(C_SYMBOL_NAME (__sigsetjmp)), %g1 + or %lo(C_SYMBOL_NAME (__sigsetjmp)), %g1, %g1 + jmp %g1 mov %g0, %o1 /* Pass second argument of zero. */ diff --git a/sysdeps/sparc/bsd-setjmp.S b/sysdeps/sparc/bsd-setjmp.S index bf2918e2ef..b0a6326a2c 100644 --- a/sysdeps/sparc/bsd-setjmp.S +++ b/sysdeps/sparc/bsd-setjmp.S @@ -20,5 +20,7 @@ Cambridge, MA 02139, USA. */ #include <sysdep.h> ENTRY (setjmp) - jmp C_SYMBOL_NAME (__sigsetjmp) + sethi %hi(C_SYMBOL_NAME (__sigsetjmp)), %g1 + or %lo(C_SYMBOL_NAME (__sigsetjmp)), %g1, %g1 + jmp %g1 mov 1, %o1 /* Pass second argument of one. */ |