kernelvec only needs to save caller-saved registers
This commit is contained in:
parent
74c1eba516
commit
0c32c04b29
1 changed files with 2 additions and 26 deletions
|
@ -3,7 +3,7 @@
|
||||||
# mode come here.
|
# mode come here.
|
||||||
#
|
#
|
||||||
# the current stack is a kernel stack.
|
# the current stack is a kernel stack.
|
||||||
# push all registers, call kerneltrap().
|
# push registers, call kerneltrap().
|
||||||
# when kerneltrap() returns, restore registers, return.
|
# when kerneltrap() returns, restore registers, return.
|
||||||
#
|
#
|
||||||
.globl kerneltrap
|
.globl kerneltrap
|
||||||
|
@ -13,7 +13,7 @@ kernelvec:
|
||||||
# make room to save registers.
|
# make room to save registers.
|
||||||
addi sp, sp, -256
|
addi sp, sp, -256
|
||||||
|
|
||||||
# save the registers.
|
# save caller-saved registers.
|
||||||
sd ra, 0(sp)
|
sd ra, 0(sp)
|
||||||
sd sp, 8(sp)
|
sd sp, 8(sp)
|
||||||
sd gp, 16(sp)
|
sd gp, 16(sp)
|
||||||
|
@ -21,8 +21,6 @@ kernelvec:
|
||||||
sd t0, 32(sp)
|
sd t0, 32(sp)
|
||||||
sd t1, 40(sp)
|
sd t1, 40(sp)
|
||||||
sd t2, 48(sp)
|
sd t2, 48(sp)
|
||||||
sd s0, 56(sp)
|
|
||||||
sd s1, 64(sp)
|
|
||||||
sd a0, 72(sp)
|
sd a0, 72(sp)
|
||||||
sd a1, 80(sp)
|
sd a1, 80(sp)
|
||||||
sd a2, 88(sp)
|
sd a2, 88(sp)
|
||||||
|
@ -31,16 +29,6 @@ kernelvec:
|
||||||
sd a5, 112(sp)
|
sd a5, 112(sp)
|
||||||
sd a6, 120(sp)
|
sd a6, 120(sp)
|
||||||
sd a7, 128(sp)
|
sd a7, 128(sp)
|
||||||
sd s2, 136(sp)
|
|
||||||
sd s3, 144(sp)
|
|
||||||
sd s4, 152(sp)
|
|
||||||
sd s5, 160(sp)
|
|
||||||
sd s6, 168(sp)
|
|
||||||
sd s7, 176(sp)
|
|
||||||
sd s8, 184(sp)
|
|
||||||
sd s9, 192(sp)
|
|
||||||
sd s10, 200(sp)
|
|
||||||
sd s11, 208(sp)
|
|
||||||
sd t3, 216(sp)
|
sd t3, 216(sp)
|
||||||
sd t4, 224(sp)
|
sd t4, 224(sp)
|
||||||
sd t5, 232(sp)
|
sd t5, 232(sp)
|
||||||
|
@ -57,8 +45,6 @@ kernelvec:
|
||||||
ld t0, 32(sp)
|
ld t0, 32(sp)
|
||||||
ld t1, 40(sp)
|
ld t1, 40(sp)
|
||||||
ld t2, 48(sp)
|
ld t2, 48(sp)
|
||||||
ld s0, 56(sp)
|
|
||||||
ld s1, 64(sp)
|
|
||||||
ld a0, 72(sp)
|
ld a0, 72(sp)
|
||||||
ld a1, 80(sp)
|
ld a1, 80(sp)
|
||||||
ld a2, 88(sp)
|
ld a2, 88(sp)
|
||||||
|
@ -67,16 +53,6 @@ kernelvec:
|
||||||
ld a5, 112(sp)
|
ld a5, 112(sp)
|
||||||
ld a6, 120(sp)
|
ld a6, 120(sp)
|
||||||
ld a7, 128(sp)
|
ld a7, 128(sp)
|
||||||
ld s2, 136(sp)
|
|
||||||
ld s3, 144(sp)
|
|
||||||
ld s4, 152(sp)
|
|
||||||
ld s5, 160(sp)
|
|
||||||
ld s6, 168(sp)
|
|
||||||
ld s7, 176(sp)
|
|
||||||
ld s8, 184(sp)
|
|
||||||
ld s9, 192(sp)
|
|
||||||
ld s10, 200(sp)
|
|
||||||
ld s11, 208(sp)
|
|
||||||
ld t3, 216(sp)
|
ld t3, 216(sp)
|
||||||
ld t4, 224(sp)
|
ld t4, 224(sp)
|
||||||
ld t5, 232(sp)
|
ld t5, 232(sp)
|
||||||
|
|
Loading…
Add table
Reference in a new issue