diff options
author | Andreas Jaeger <aj@suse.de> | 2001-02-22 08:27:50 +0000 |
---|---|---|
committer | Andreas Jaeger <aj@suse.de> | 2001-02-22 08:27:50 +0000 |
commit | ba0b6741da1a44ff547f751b8a515c3fd687593a (patch) | |
tree | 63d857f1d62466e0f8bad7dbf76f4f7dbff49101 /sysdeps/mips | |
parent | bd8fbd5724003b8c49c949cbceb7f735eb90afb4 (diff) | |
download | glibc-ba0b6741da1a44ff547f751b8a515c3fd687593a.tar glibc-ba0b6741da1a44ff547f751b8a515c3fd687593a.tar.gz glibc-ba0b6741da1a44ff547f751b8a515c3fd687593a.tar.bz2 glibc-ba0b6741da1a44ff547f751b8a515c3fd687593a.zip |
* sysdeps/mips/bsd-_setjmp.S (_setjmp): Reorder instructions to
avoid problems on MIPS I.
* sysdeps/mips/bsd-setjmp.S (setjmp): Likewise.
* sysdeps/mips/dl-machine.h (RTLD_START): Remove duplicate ".set
noreorder".
Diffstat (limited to 'sysdeps/mips')
-rw-r--r-- | sysdeps/mips/bsd-_setjmp.S | 8 | ||||
-rw-r--r-- | sysdeps/mips/bsd-setjmp.S | 6 | ||||
-rw-r--r-- | sysdeps/mips/dl-machine.h | 1 |
3 files changed, 9 insertions, 6 deletions
diff --git a/sysdeps/mips/bsd-_setjmp.S b/sysdeps/mips/bsd-_setjmp.S index bf7cb159fa..919c8a28f8 100644 --- a/sysdeps/mips/bsd-_setjmp.S +++ b/sysdeps/mips/bsd-_setjmp.S @@ -27,14 +27,16 @@ .option pic2 #endif ENTRY (_setjmp) - .set noreorder #ifdef __PIC__ + .set noreorder .cpload t9 + .set reorder la t9, C_SYMBOL_NAME (__sigsetjmp) +#endif + move a1,zero /* Pass a second argument of zero. */ +#ifdef __PIC__ jr t9 #else j C_SYMBOL_NAME (__sigsetjmp) #endif - move a1,zero /* Pass a second argument of zero. */ - .set reorder .end _setjmp diff --git a/sysdeps/mips/bsd-setjmp.S b/sysdeps/mips/bsd-setjmp.S index bab312b0df..66a0daa23e 100644 --- a/sysdeps/mips/bsd-setjmp.S +++ b/sysdeps/mips/bsd-setjmp.S @@ -30,11 +30,13 @@ ENTRY (setjmp) .set noreorder #ifdef __PIC__ .cpload t9 + .set reorder la t9, C_SYMBOL_NAME (__sigsetjmp) +#endif + li a1, 1 /* Pass a second argument of one. */ +#ifdef __PIC__ jr t9 #else j C_SYMBOL_NAME (__sigsetjmp) #endif - li a1, 1 /* Pass a second argument of one. */ - .set reorder .end setjmp diff --git a/sysdeps/mips/dl-machine.h b/sysdeps/mips/dl-machine.h index cd8ee3c0e1..6a7d66c5b3 100644 --- a/sysdeps/mips/dl-machine.h +++ b/sysdeps/mips/dl-machine.h @@ -412,7 +412,6 @@ _dl_runtime_resolve:\n \ ".text\n"\ _RTLD_PROLOGUE(ENTRY_POINT)\ ".set noreorder\n\ - .set noreorder\n\ bltzal $0, 0f\n\ nop\n\ 0: .cpload $31\n\ |