From 7cd13a5d04fbcf3178038a770c5edde423b4a542 Mon Sep 17 00:00:00 2001 From: Christian Cunningham Date: Sun, 23 Jan 2022 01:21:58 -0700 Subject: Handler returns to correct instruction --- src/boot.S | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/boot.S b/src/boot.S index e97ddcb..d8ebba4 100644 --- a/src/boot.S +++ b/src/boot.S @@ -168,7 +168,8 @@ io_halt_prefetch: pop {lr} mov r0, lr bl uart_hexn - ldmfd sp!, {r0-r12,pc}^ + ldmfd sp!, {r0-r12,lr} + subs pc, lr, #4 io_halt_data: stmfd sp!, {r0-r12,lr} ldr r0, =data_msg @@ -178,7 +179,8 @@ io_halt_data: ldr r0, [r1, #-4] sub r0, #8 bl uart_hexn - ldmfd sp!, {r0-r12,pc}^ + ldmfd sp!, {r0-r12,lr} + subs pc, lr, #4 // Should be 8 once I can actually handle the abort fiq: stmfd sp!, {r0-r12,lr} //ldr r0, =fiq_msg -- cgit v1.2.1