arch: xtensa: Fix backtrace from ISR
a0 is used as scratch register. Restore value of a0 (return address) from stack frame before spilling registers on stack Signed-off-by: Shubham Kulkarni <shubham.kulkarni@espressif.com>
This commit is contained in:
parent
209e46c799
commit
26efef4f94
1 changed files with 2 additions and 0 deletions
|
@ -194,6 +194,7 @@
|
|||
|
||||
/* Recover the interrupted SP from the BSA */
|
||||
l32i a1, a1, 0
|
||||
l32i a0, a1, BSA_A0_OFF
|
||||
addi a1, a1, BASE_SAVE_AREA_SIZE
|
||||
|
||||
call4 _xstack_call0_\@
|
||||
|
@ -323,6 +324,7 @@ _do_call_\@:
|
|||
*/
|
||||
beq a6, a1, _restore_\@
|
||||
l32i a1, a1, 0
|
||||
l32i a0, a1, BSA_A0_OFF
|
||||
addi a1, a1, BASE_SAVE_AREA_SIZE
|
||||
SPILL_ALL_WINDOWS
|
||||
mov a1, a6
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue