sw:vec: Fix exception handler Need to return non-zero code and clear stack Also remove the extra custom3<func3=3>, or the CPU would be halted prematurely. Change-Id: Iaf731388cbe13e0033b16f25710a9cc256bfdb27
diff --git a/springbok/crt0.S b/springbok/crt0.S index 7e3ba79..f9e46f6 100644 --- a/springbok/crt0.S +++ b/springbok/crt0.S
@@ -246,13 +246,15 @@ .weak exception_handler exception_handler: - .word 0x0000307B # finish (encoded as custom3<func3=3>) li t4, 0 # ERROR logging level - li t5, 0 # Return 0 - la a0, exception_msg + la a0, exception_msg csrr t5, mcause .word 0x001E50EFB # simprint t4, a0, t5 (encoded as custom3<func3=0>) call print_csrs + # Store the return value as mcause to be used in _finish + mv a0, t5 + # Clear the stack + la sp, _stack_ptr j _finish .weak print_csrs