Commit cb64795d authored by Zhi Tongze's avatar Zhi Tongze Committed by guzitao
Browse files

sw64: employ trick on regs.pc for specific exception

Sunway inclusion
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/IB73UR



--------------------------------

In order to ensure compatibility with firmware, this patch
implements special handing on regs.pc for specific exception
entries.

Signed-off-by: default avatarZhi Tongze <zhitongze@wxiat.com>
Reviewed-by: default avatarHe Sheng <hesheng@wxiat.com>
Signed-off-by: default avatarGu Zitao <guzitao@wxiat.com>
parent 1b40f281
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -153,6 +153,9 @@ entInt:
	.ent entArith
entArith:
	SAVE_ALL
	ldl     $1, PT_REGS_PC($sp)
	ldi	$1, 4($1)
	stl     $1, PT_REGS_PC($sp)
	br      $27, 1f
1:      ldgp    $29, 0($27)
	RESTORE_IRQ
@@ -179,6 +182,9 @@ entMM:
	.ent entIF
entIF:
	SAVE_ALL
	ldl     $1, PT_REGS_PC($sp)
	ldi	$1, 4($1)
	stl     $1, PT_REGS_PC($sp)
	br      $27, 1f
1:      ldgp    $29, 0($27)
	RESTORE_IRQ
@@ -198,6 +204,9 @@ entIF:
	.ent entUna
entUna:
	SAVE_ALL
	ldl     $1, PT_REGS_PC($sp)
	ldi	$1, 4($1)
	stl     $1, PT_REGS_PC($sp)
	br      $27, 1f
1:      ldgp    $29, 0($27)
	RESTORE_IRQ
@@ -230,6 +239,9 @@ entUna:
	.ent entSys
entSys:
	SAVE_ALL
	ldl     $1, PT_REGS_PC($sp)
	ldi	$1, 4($1)
	stl     $1, PT_REGS_PC($sp)
	br      $27, 1f
1:      ldgp    $29, 0($27)
	RESTORE_IRQ