diff options
author | Carmelo Amoroso <carmelo.amoroso@st.com> | 2008-06-18 15:52:41 +0000 |
---|---|---|
committer | Carmelo Amoroso <carmelo.amoroso@st.com> | 2008-06-18 15:52:41 +0000 |
commit | 43ee769f540704ccfc4e2a12ba11ed4b6eece196 (patch) | |
tree | 59e0fec96510e3f8c2cdb6dacbfb3031058ed092 /libc/sysdeps/linux/mips/syscall.S | |
parent | 80ee234a186cf81220a37cd561fb8c91f9e9cadc (diff) | |
download | uClibc-alpine-43ee769f540704ccfc4e2a12ba11ed4b6eece196.tar.bz2 uClibc-alpine-43ee769f540704ccfc4e2a12ba11ed4b6eece196.tar.xz |
Synch libc mips specific with trunk
Diffstat (limited to 'libc/sysdeps/linux/mips/syscall.S')
-rw-r--r-- | libc/sysdeps/linux/mips/syscall.S | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libc/sysdeps/linux/mips/syscall.S b/libc/sysdeps/linux/mips/syscall.S index 683529596..ff6f3d1b4 100644 --- a/libc/sysdeps/linux/mips/syscall.S +++ b/libc/sysdeps/linux/mips/syscall.S @@ -29,8 +29,10 @@ .type syscall,@function .ent syscall syscall: +#ifdef __PIC__ + SETUP_GP +#endif .set noreorder - .cpload t9; move v0, a0 /* Load system call number from first arg. */ move a0, a1 /* Move the next three args up a register. */ move a1, a2 @@ -68,7 +70,9 @@ syscall: move a0,v0 /* Pass return val to C function. */ #ifdef __PIC__ + SETUP_GP64(v0, syscall) PTR_LA t9, __syscall_error + RESTORE_GP64 jr t9 #else j __syscall_error |