From ba2adf540ec8aa5455d09c729c948f9b6742e42e Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 19 Jan 1999 20:09:33 +0000 Subject: Patch from Jiri Gaisler : getting the spurious trap handling to work required a couple more fixes - I have attached a patch against rtems-4.0.0 with the necessary changes. I also added functionality so that the address of the trapped instruction is reported and in case of a data access error, the data address is also reported. --- c/src/exec/score/cpu/sparc/cpu_asm.S | 2 ++ 1 file changed, 2 insertions(+) (limited to 'c/src/exec/score/cpu/sparc/cpu_asm.S') diff --git a/c/src/exec/score/cpu/sparc/cpu_asm.S b/c/src/exec/score/cpu/sparc/cpu_asm.S index 39962eedeb..d980d4bff7 100644 --- a/c/src/exec/score/cpu/sparc/cpu_asm.S +++ b/c/src/exec/score/cpu/sparc/cpu_asm.S @@ -336,6 +336,7 @@ SYM(_ISR_Handler): ! Is this a synchronous trap? be,a win_ovflow ! No, then skip the adjustment nop ! DELAY + mov %l1, %l6 ! save trapped pc for debug info mov %l2, %l1 ! do not return to the instruction add %l2, 4, %l2 ! indicated @@ -441,6 +442,7 @@ save_isf: rd %y, %g1 st %g1, [%sp + ISF_Y_OFFSET] ! save y + st %l6, [%sp + ISF_TPC_OFFSET] ! save real trapped pc mov %sp, %o1 ! 2nd arg to ISR Handler -- cgit v1.2.3