diff options
author | Robert Morris <[email protected]> | 2019-06-11 09:57:14 -0400 |
---|---|---|
committer | Robert Morris <[email protected]> | 2019-06-11 09:57:14 -0400 |
commit | 5753553213df8f9de851adb68377db43faecb91f (patch) | |
tree | 3b629ff54897fca414146677532cb459a2ed11ba /kernelvec.S | |
parent | 91ba81110acd3163f7de3580b677eece0c57f5e7 (diff) | |
download | xv6-labs-5753553213df8f9de851adb68377db43faecb91f.tar.gz xv6-labs-5753553213df8f9de851adb68377db43faecb91f.tar.bz2 xv6-labs-5753553213df8f9de851adb68377db43faecb91f.zip |
separate source into kernel/ user/ mkfs/
Diffstat (limited to 'kernelvec.S')
-rw-r--r-- | kernelvec.S | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/kernelvec.S b/kernelvec.S deleted file mode 100644 index 4f52688..0000000 --- a/kernelvec.S +++ /dev/null @@ -1,112 +0,0 @@ - # - # interrupts and exceptions while in supervisor - # mode come here. - # - # push all registers, call kerneltrap(), restore, return. - # -.globl kerneltrap -.globl kernelvec -.align 4 -kernelvec: - addi sp, sp, -256 - - sd ra, 0(sp) - sd sp, 8(sp) - sd gp, 16(sp) - sd tp, 24(sp) - sd t0, 32(sp) - sd t1, 40(sp) - sd t2, 48(sp) - sd s0, 56(sp) - sd s1, 64(sp) - sd a0, 72(sp) - sd a1, 80(sp) - sd a2, 88(sp) - sd a3, 96(sp) - sd a4, 104(sp) - sd a5, 112(sp) - sd a6, 120(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 t4, 224(sp) - sd t5, 232(sp) - sd t6, 240(sp) - - call kerneltrap - - ld ra, 0(sp) - ld sp, 8(sp) - ld gp, 16(sp) - ld tp, 24(sp) - ld t0, 32(sp) - ld t1, 40(sp) - ld t2, 48(sp) - ld s0, 56(sp) - ld s1, 64(sp) - ld a0, 72(sp) - ld a1, 80(sp) - ld a2, 88(sp) - ld a3, 96(sp) - ld a4, 104(sp) - ld a5, 112(sp) - ld a6, 120(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 t4, 224(sp) - ld t5, 232(sp) - ld t6, 240(sp) - - addi sp, sp, 256 - - sret - - # - # machine-mode timer interrupt. - # -.globl machinevec -.align 4 -machinevec: - csrrw a0, mscratch, a0 - sd a1, 0(a0) - sd a2, 8(a0) - sd a3, 16(a0) - sd a4, 24(a0) - - # add another second to mtimecmp0. - ld a1, 32(a0) # CLINT_MTIMECMP(hart) - ld a2, 40(a0) # ticks per second - ld a3, 0(a1) - add a3, a3, a2 - sd a3, 0(a1) - - # raise a supervisor software interrupt. - li a1, 2 - csrw sip, a1 - - ld a4, 24(a0) - ld a3, 16(a0) - ld a2, 8(a0) - ld a1, 0(a0) - csrrw a0, mscratch, a0 - - mret |