From f5f9eb801aee378c0a40c0c5da9191ab6e4026c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Fr=C3=B6schle?= Date: Tue, 19 Nov 2013 17:20:58 +0000 Subject: [PATCH] added register save and restore --- BaS_gcc/sources/exceptions.S | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/BaS_gcc/sources/exceptions.S b/BaS_gcc/sources/exceptions.S index 427004d..df08555 100644 --- a/BaS_gcc/sources/exceptions.S +++ b/BaS_gcc/sources/exceptions.S @@ -554,8 +554,17 @@ access_mmu: move.l MCF_MMU_MMUAR,d0 cmp.l #__FASTRAM_END,d0 // above max User RAM area? bge bus_error // -> bus error - bsr _mmutr_miss // else we have an MMU TLB miss + + lea -4*4(sp),sp + movem.l d0-d1/a0-a1,(sp) + + jsr _mmutr_miss // else we have an MMU TLB miss + + movem.l (sp),d0-d1/a0-a1 + lea 4*4(sp),sp + move.l (sp)+,d0 // restore register + rte bus_error: