xtensa_user_handler: Save PS correctly
"EPS" is not a real register. It's just a base value of EPS_{2..7}.
This commit is contained in:
parent
951cfbd1d5
commit
3b528c6010
|
@ -196,7 +196,7 @@ _xtensa_user_handler:
|
||||||
mov a0, sp /* sp == a1 */
|
mov a0, sp /* sp == a1 */
|
||||||
addi sp, sp, -(4 * XCPTCONTEXT_SIZE) /* Allocate interrupt stack frame */
|
addi sp, sp, -(4 * XCPTCONTEXT_SIZE) /* Allocate interrupt stack frame */
|
||||||
s32i a0, sp, (4 * REG_A1) /* Save pre-interrupt SP */
|
s32i a0, sp, (4 * REG_A1) /* Save pre-interrupt SP */
|
||||||
rsr a0, EPS /* Save interruptee's PS */
|
rsr a0, PS /* Save interruptee's PS */
|
||||||
s32i a0, sp, (4 * REG_PS)
|
s32i a0, sp, (4 * REG_PS)
|
||||||
rsr a0, EPC_1 /* Save interruptee's PC */
|
rsr a0, EPC_1 /* Save interruptee's PC */
|
||||||
s32i a0, sp, (4 * REG_PC)
|
s32i a0, sp, (4 * REG_PC)
|
||||||
|
|
Loading…
Reference in New Issue