Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04a7052c authored by Ralf Baechle's avatar Ralf Baechle
Browse files

[MIPS] Fix register handling in syscalls when debugging.

parent ecd5a739
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -94,11 +94,13 @@ syscall_trace_entry:
	li	a1, 0
	jal	do_syscall_trace

	move	t0, s0
	RESTORE_STATIC
	lw	a0, PT_R4(sp)		# Restore argument registers
	lw	a1, PT_R5(sp)
	lw	a2, PT_R6(sp)
	lw	a3, PT_R7(sp)
	jalr	s0
	jalr	t0

	li	t0, -EMAXERRNO - 1	# error?
	sltu	t0, t0, v0
+3 −1
Original line number Diff line number Diff line
@@ -93,13 +93,15 @@ syscall_trace_entry:
	li	a1, 0
	jal	do_syscall_trace

	move	t0, s0
	RESTORE_STATIC
	ld	a0, PT_R4(sp)		# Restore argument registers
	ld	a1, PT_R5(sp)
	ld	a2, PT_R6(sp)
	ld	a3, PT_R7(sp)
	ld	a4, PT_R8(sp)
	ld	a5, PT_R9(sp)
	jalr	s0
	jalr	t0

	li	t0, -EMAXERRNO - 1	# error?
	sltu	t0, t0, v0
+3 −1
Original line number Diff line number Diff line
@@ -90,13 +90,15 @@ n32_syscall_trace_entry:
	li	a1, 0
	jal	do_syscall_trace

	move	t0, s0
	RESTORE_STATIC
	ld	a0, PT_R4(sp)		# Restore argument registers
	ld	a1, PT_R5(sp)
	ld	a2, PT_R6(sp)
	ld	a3, PT_R7(sp)
	ld	a4, PT_R8(sp)
	ld	a5, PT_R9(sp)
	jalr	s0
	jalr	t0

	li	t0, -EMAXERRNO - 1	# error?
	sltu	t0, t0, v0
+3 −1
Original line number Diff line number Diff line
@@ -124,6 +124,8 @@ trace_a_syscall:
	li	a1, 0
	jal	do_syscall_trace

	move	t0, s0
	RESTORE_STATIC
	ld	a0, PT_R4(sp)		# Restore argument registers
	ld	a1, PT_R5(sp)
	ld	a2, PT_R6(sp)
@@ -132,7 +134,7 @@ trace_a_syscall:
	ld	a5, PT_R9(sp)
	ld	a6, PT_R10(sp)
	ld	a7, PT_R11(sp)		# For indirect syscalls
	jalr	s0
	jalr	t0

	li	t0, -EMAXERRNO - 1	# error?
	sltu	t0, t0, v0