219 lines
9.5 KiB
Plaintext
219 lines
9.5 KiB
Plaintext
|
|
rv32mi-p-ma_fetch: file format elf32-littleriscv
|
|
|
|
|
|
Disassembly of section .text.init:
|
|
|
|
80000000 <_start>:
|
|
80000000: 04c0006f j 8000004c <reset_vector>
|
|
|
|
80000004 <trap_vector>:
|
|
80000004: 34202f73 csrr t5,mcause
|
|
80000008: 00800f93 li t6,8
|
|
8000000c: 03ff0a63 beq t5,t6,80000040 <write_tohost>
|
|
80000010: 00900f93 li t6,9
|
|
80000014: 03ff0663 beq t5,t6,80000040 <write_tohost>
|
|
80000018: 00b00f93 li t6,11
|
|
8000001c: 03ff0263 beq t5,t6,80000040 <write_tohost>
|
|
80000020: 00000f17 auipc t5,0x0
|
|
80000024: 20cf0f13 addi t5,t5,524 # 8000022c <mtvec_handler>
|
|
80000028: 000f0463 beqz t5,80000030 <trap_vector+0x2c>
|
|
8000002c: 000f0067 jr t5
|
|
80000030: 34202f73 csrr t5,mcause
|
|
80000034: 000f5463 bgez t5,8000003c <handle_exception>
|
|
80000038: 0040006f j 8000003c <handle_exception>
|
|
|
|
8000003c <handle_exception>:
|
|
8000003c: 5391e193 ori gp,gp,1337
|
|
|
|
80000040 <write_tohost>:
|
|
80000040: 00001f17 auipc t5,0x1
|
|
80000044: fc3f2023 sw gp,-64(t5) # 80001000 <tohost>
|
|
80000048: ff9ff06f j 80000040 <write_tohost>
|
|
|
|
8000004c <reset_vector>:
|
|
8000004c: f1402573 csrr a0,mhartid
|
|
80000050: 00051063 bnez a0,80000050 <reset_vector+0x4>
|
|
80000054: 00000297 auipc t0,0x0
|
|
80000058: 01028293 addi t0,t0,16 # 80000064 <reset_vector+0x18>
|
|
8000005c: 30529073 csrw mtvec,t0
|
|
80000060: 18005073 csrwi satp,0
|
|
80000064: 00000297 auipc t0,0x0
|
|
80000068: 02028293 addi t0,t0,32 # 80000084 <reset_vector+0x38>
|
|
8000006c: 30529073 csrw mtvec,t0
|
|
80000070: 800002b7 lui t0,0x80000
|
|
80000074: fff28293 addi t0,t0,-1 # 7fffffff <_end+0xffffdfff>
|
|
80000078: 3b029073 csrw pmpaddr0,t0
|
|
8000007c: 01f00293 li t0,31
|
|
80000080: 3a029073 csrw pmpcfg0,t0
|
|
80000084: 00000297 auipc t0,0x0
|
|
80000088: 01828293 addi t0,t0,24 # 8000009c <reset_vector+0x50>
|
|
8000008c: 30529073 csrw mtvec,t0
|
|
80000090: 30205073 csrwi medeleg,0
|
|
80000094: 30305073 csrwi mideleg,0
|
|
80000098: 30405073 csrwi mie,0
|
|
8000009c: 00000193 li gp,0
|
|
800000a0: 00000297 auipc t0,0x0
|
|
800000a4: f6428293 addi t0,t0,-156 # 80000004 <trap_vector>
|
|
800000a8: 30529073 csrw mtvec,t0
|
|
800000ac: 00100513 li a0,1
|
|
800000b0: 01f51513 slli a0,a0,0x1f
|
|
800000b4: 00054863 bltz a0,800000c4 <reset_vector+0x78>
|
|
800000b8: 0ff0000f fence
|
|
800000bc: 00100193 li gp,1
|
|
800000c0: 00000073 ecall
|
|
800000c4: 80000297 auipc t0,0x80000
|
|
800000c8: f3c28293 addi t0,t0,-196 # 0 <_start-0x80000000>
|
|
800000cc: 00028e63 beqz t0,800000e8 <reset_vector+0x9c>
|
|
800000d0: 10529073 csrw stvec,t0
|
|
800000d4: 0000b2b7 lui t0,0xb
|
|
800000d8: 10928293 addi t0,t0,265 # b109 <_start-0x7fff4ef7>
|
|
800000dc: 30229073 csrw medeleg,t0
|
|
800000e0: 30202373 csrr t1,medeleg
|
|
800000e4: f4629ce3 bne t0,t1,8000003c <handle_exception>
|
|
800000e8: 30005073 csrwi mstatus,0
|
|
800000ec: 00002537 lui a0,0x2
|
|
800000f0: 80050513 addi a0,a0,-2048 # 1800 <_start-0x7fffe800>
|
|
800000f4: 30052073 csrs mstatus,a0
|
|
800000f8: 00000297 auipc t0,0x0
|
|
800000fc: 01428293 addi t0,t0,20 # 8000010c <reset_vector+0xc0>
|
|
80000100: 34129073 csrw mepc,t0
|
|
80000104: f1402573 csrr a0,mhartid
|
|
80000108: 30200073 mret
|
|
8000010c: 00200193 li gp,2
|
|
80000110: 00000313 li t1,0
|
|
80000114: 00000297 auipc t0,0x0
|
|
80000118: 00c28293 addi t0,t0,12 # 80000120 <reset_vector+0xd4>
|
|
8000011c: 00228367 jalr t1,2(t0)
|
|
80000120: a011 j 80000124 <reset_vector+0xd8>
|
|
80000122: a019 j 80000128 <reset_vector+0xdc>
|
|
80000124: 0e80006f j 8000020c <fail>
|
|
80000128: 00300193 li gp,3
|
|
8000012c: 00000297 auipc t0,0x0
|
|
80000130: 00c28293 addi t0,t0,12 # 80000138 <reset_vector+0xec>
|
|
80000134: 00128367 jalr t1,1(t0)
|
|
80000138: 0080006f j 80000140 <reset_vector+0xf4>
|
|
8000013c: 0d00006f j 8000020c <fail>
|
|
80000140: 00400193 li gp,4
|
|
80000144: 00000313 li t1,0
|
|
80000148: 00000297 auipc t0,0x0
|
|
8000014c: 00c28293 addi t0,t0,12 # 80000154 <reset_vector+0x108>
|
|
80000150: 00328367 jalr t1,3(t0)
|
|
80000154: a011 j 80000158 <reset_vector+0x10c>
|
|
80000156: a019 j 8000015c <reset_vector+0x110>
|
|
80000158: 0b40006f j 8000020c <fail>
|
|
8000015c: 00500193 li gp,5
|
|
80000160: 00000313 li t1,0
|
|
80000164: 00000297 auipc t0,0x0
|
|
80000168: 00c28293 addi t0,t0,12 # 80000170 <reset_vector+0x124>
|
|
8000016c: 0060036f jal t1,80000172 <reset_vector+0x126>
|
|
80000170: a011 j 80000174 <reset_vector+0x128>
|
|
80000172: a019 j 80000178 <reset_vector+0x12c>
|
|
80000174: 0980006f j 8000020c <fail>
|
|
80000178: 00600193 li gp,6
|
|
8000017c: 00000313 li t1,0
|
|
80000180: 00000297 auipc t0,0x0
|
|
80000184: 00c28293 addi t0,t0,12 # 8000018c <reset_vector+0x140>
|
|
80000188: 00000363 beqz zero,8000018e <reset_vector+0x142>
|
|
8000018c: a011 j 80000190 <reset_vector+0x144>
|
|
8000018e: a019 j 80000194 <reset_vector+0x148>
|
|
80000190: 07c0006f j 8000020c <fail>
|
|
80000194: 00700193 li gp,7
|
|
80000198: 00001563 bnez zero,800001a2 <reset_vector+0x156>
|
|
8000019c: 00c0006f j 800001a8 <reset_vector+0x15c>
|
|
800001a0: a009 j 800001a2 <reset_vector+0x156>
|
|
800001a2: a009 j 800001a4 <reset_vector+0x158>
|
|
800001a4: 0680006f j 8000020c <fail>
|
|
800001a8: 00800193 li gp,8
|
|
800001ac: 301023f3 csrr t2,misa
|
|
800001b0: 0043f393 andi t2,t2,4
|
|
800001b4: 04038863 beqz t2,80000204 <reset_vector+0x1b8>
|
|
800001b8: 0001 nop
|
|
800001ba: 30127073 csrci misa,4
|
|
800001be: 0001 nop
|
|
800001c0: 301023f3 csrr t2,misa
|
|
800001c4: 0043f393 andi t2,t2,4
|
|
800001c8: 04038263 beqz t2,8000020c <fail>
|
|
800001cc: 00000297 auipc t0,0x0
|
|
800001d0: 03428293 addi t0,t0,52 # 80000200 <reset_vector+0x1b4>
|
|
800001d4: ffe28293 addi t0,t0,-2
|
|
800001d8: 34129073 csrw mepc,t0
|
|
800001dc: 30127073 csrci misa,4
|
|
800001e0: 301023f3 csrr t2,misa
|
|
800001e4: 0043f393 andi t2,t2,4
|
|
800001e8: 00039e63 bnez t2,80000204 <reset_vector+0x1b8>
|
|
800001ec: 000023b7 lui t2,0x2
|
|
800001f0: 80038393 addi t2,t2,-2048 # 1800 <_start-0x7fffe800>
|
|
800001f4: 3003a073 csrs mstatus,t2
|
|
800001f8: 30200073 mret
|
|
800001fc: 00000263 beqz zero,80000200 <reset_vector+0x1b4>
|
|
80000200: 30126073 csrsi misa,4
|
|
80000204: 01c0006f j 80000220 <pass>
|
|
80000208: 00301c63 bne zero,gp,80000220 <pass>
|
|
|
|
8000020c <fail>:
|
|
8000020c: 0ff0000f fence
|
|
80000210: 00018063 beqz gp,80000210 <fail+0x4>
|
|
80000214: 00119193 slli gp,gp,0x1
|
|
80000218: 0011e193 ori gp,gp,1
|
|
8000021c: 00000073 ecall
|
|
|
|
80000220 <pass>:
|
|
80000220: 0ff0000f fence
|
|
80000224: 00100193 li gp,1
|
|
80000228: 00000073 ecall
|
|
|
|
8000022c <mtvec_handler>:
|
|
8000022c: 00200513 li a0,2
|
|
80000230: 02a18063 beq gp,a0,80000250 <mtvec_handler+0x24>
|
|
80000234: 00400513 li a0,4
|
|
80000238: 00a18c63 beq gp,a0,80000250 <mtvec_handler+0x24>
|
|
8000023c: 00500513 li a0,5
|
|
80000240: 00a18863 beq gp,a0,80000250 <mtvec_handler+0x24>
|
|
80000244: 00600513 li a0,6
|
|
80000248: 00a18463 beq gp,a0,80000250 <mtvec_handler+0x24>
|
|
8000024c: fc1ff06f j 8000020c <fail>
|
|
80000250: fa031ee3 bnez t1,8000020c <fail>
|
|
80000254: 00000593 li a1,0
|
|
80000258: 34202573 csrr a0,mcause
|
|
8000025c: fab518e3 bne a0,a1,8000020c <fail>
|
|
80000260: 341025f3 csrr a1,mepc
|
|
80000264: 00458593 addi a1,a1,4
|
|
80000268: fab292e3 bne t0,a1,8000020c <fail>
|
|
8000026c: 34302573 csrr a0,mtval
|
|
80000270: 00050663 beqz a0,8000027c <mtvec_handler+0x50>
|
|
80000274: ffe50513 addi a0,a0,-2
|
|
80000278: f8551ae3 bne a0,t0,8000020c <fail>
|
|
8000027c: 00c58593 addi a1,a1,12
|
|
80000280: 34159073 csrw mepc,a1
|
|
80000284: 30200073 mret
|
|
80000288: c0001073 unimp
|
|
8000028c: 0000 unimp
|
|
8000028e: 0000 unimp
|
|
80000290: 0000 unimp
|
|
80000292: 0000 unimp
|
|
80000294: 0000 unimp
|
|
80000296: 0000 unimp
|
|
80000298: 0000 unimp
|
|
8000029a: 0000 unimp
|
|
8000029c: 0000 unimp
|
|
8000029e: 0000 unimp
|
|
800002a0: 0000 unimp
|
|
800002a2: 0000 unimp
|
|
800002a4: 0000 unimp
|
|
800002a6: 0000 unimp
|
|
800002a8: 0000 unimp
|
|
800002aa: 0000 unimp
|
|
800002ac: 0000 unimp
|
|
800002ae: 0000 unimp
|
|
800002b0: 0000 unimp
|
|
800002b2: 0000 unimp
|
|
800002b4: 0000 unimp
|
|
800002b6: 0000 unimp
|
|
800002b8: 0000 unimp
|
|
800002ba: 0000 unimp
|
|
800002bc: 0000 unimp
|
|
800002be: 0000 unimp
|
|
800002c0: 0000 unimp
|
|
800002c2: 0000 unimp
|