about summary refs log tree commit diff
path: root/src/internal/mips/syscall.s
diff options
context:
space:
mode:
Diffstat (limited to 'src/internal/mips/syscall.s')
-rw-r--r--src/internal/mips/syscall.s7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/internal/mips/syscall.s b/src/internal/mips/syscall.s
index 28575408..e18a382e 100644
--- a/src/internal/mips/syscall.s
+++ b/src/internal/mips/syscall.s
@@ -3,17 +3,20 @@
 .global __syscall
 .type   __syscall,@function
 __syscall:
-	move    $25, $4
+	move    $2, $4
 	move    $4, $5
 	move    $5, $6
 	move    $6, $7
 	lw      $7, 16($sp)
 	lw      $8, 20($sp)
 	lw      $9, 24($sp)
+	lw      $10,28($sp)
 	subu    $sp, $sp, 32
 	sw      $8, 16($sp)
 	sw      $9, 20($sp)
-	move    $2, $25
+	sw      $10,24($sp)
+	sw      $2 ,28($sp)
+	lw      $2, 28($sp)
 	syscall
 	beq     $7, $0, 1f
 	addu    $sp, $sp, 32