summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKanoj Sarcar <kanoj@engr.sgi.com>2000-01-24 01:21:18 +0000
committerKanoj Sarcar <kanoj@engr.sgi.com>2000-01-24 01:21:18 +0000
commitde660ee929996543c54446d1f413f9cba288c22d (patch)
tree2fb6aa3a8a37cc2421aad1ed49df8e051a174773
parent9f2daa69db3e192c8a3e4da35fb59a4c84918d5b (diff)
For system calls, need to do a stack switch, as well as save the
s-registers, at, sp, ra. Use SAVE_SOME to save these registers.
-rw-r--r--arch/mips64/kernel/scall_64.S4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mips64/kernel/scall_64.S b/arch/mips64/kernel/scall_64.S
index 3d49cbe07..9241797c7 100644
--- a/arch/mips64/kernel/scall_64.S
+++ b/arch/mips64/kernel/scall_64.S
@@ -31,7 +31,9 @@
.align 5
NESTED(handle_sys64, PT_SIZE, sp)
-
+ .set noat
+ SAVE_SOME
+ .set at
ld t1, PT_EPC(sp) # skip syscall on return
sltiu t0, v0, MAX_SYSCALL_NO + 1 # check syscall number