218 lines
10 KiB
Plaintext
218 lines
10 KiB
Plaintext
|
|
rv64mi-p-ma_fetch: file format elf64-littleriscv
|
|
|
|
|
|
Disassembly of section .text.init:
|
|
|
|
0000000080000000 <_start>:
|
|
80000000: 04c0006f j 8000004c <reset_vector>
|
|
|
|
0000000080000004 <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: 210f0f13 addi t5,t5,528 # 80000230 <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>
|
|
|
|
000000008000003c <handle_exception>:
|
|
8000003c: 5391e193 ori gp,gp,1337
|
|
|
|
0000000080000040 <write_tohost>:
|
|
80000040: 00001f17 auipc t5,0x1
|
|
80000044: fc3f2023 sw gp,-64(t5) # 80001000 <tohost>
|
|
80000048: ff9ff06f j 80000040 <write_tohost>
|
|
|
|
000000008000004c <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: 02428293 addi t0,t0,36 # 80000088 <reset_vector+0x3c>
|
|
8000006c: 30529073 csrw mtvec,t0
|
|
80000070: 0010029b addiw t0,zero,1
|
|
80000074: 03529293 slli t0,t0,0x35
|
|
80000078: fff28293 addi t0,t0,-1
|
|
8000007c: 3b029073 csrw pmpaddr0,t0
|
|
80000080: 01f00293 li t0,31
|
|
80000084: 3a029073 csrw pmpcfg0,t0
|
|
80000088: 00000297 auipc t0,0x0
|
|
8000008c: 01828293 addi t0,t0,24 # 800000a0 <reset_vector+0x54>
|
|
80000090: 30529073 csrw mtvec,t0
|
|
80000094: 30205073 csrwi medeleg,0
|
|
80000098: 30305073 csrwi mideleg,0
|
|
8000009c: 30405073 csrwi mie,0
|
|
800000a0: 00000193 li gp,0
|
|
800000a4: 00000297 auipc t0,0x0
|
|
800000a8: f6028293 addi t0,t0,-160 # 80000004 <trap_vector>
|
|
800000ac: 30529073 csrw mtvec,t0
|
|
800000b0: 00100513 li a0,1
|
|
800000b4: 01f51513 slli a0,a0,0x1f
|
|
800000b8: 00055863 bgez a0,800000c8 <reset_vector+0x7c>
|
|
800000bc: 0ff0000f fence
|
|
800000c0: 00100193 li gp,1
|
|
800000c4: 00000073 ecall
|
|
800000c8: 80000297 auipc t0,0x80000
|
|
800000cc: f3828293 addi t0,t0,-200 # 0 <_start-0x80000000>
|
|
800000d0: 00028e63 beqz t0,800000ec <reset_vector+0xa0>
|
|
800000d4: 10529073 csrw stvec,t0
|
|
800000d8: 0000b2b7 lui t0,0xb
|
|
800000dc: 1092829b addiw t0,t0,265
|
|
800000e0: 30229073 csrw medeleg,t0
|
|
800000e4: 30202373 csrr t1,medeleg
|
|
800000e8: f4629ae3 bne t0,t1,8000003c <handle_exception>
|
|
800000ec: 30005073 csrwi mstatus,0
|
|
800000f0: 00002537 lui a0,0x2
|
|
800000f4: 8005051b addiw a0,a0,-2048
|
|
800000f8: 30052073 csrs mstatus,a0
|
|
800000fc: 00000297 auipc t0,0x0
|
|
80000100: 01428293 addi t0,t0,20 # 80000110 <reset_vector+0xc4>
|
|
80000104: 34129073 csrw mepc,t0
|
|
80000108: f1402573 csrr a0,mhartid
|
|
8000010c: 30200073 mret
|
|
80000110: 00200193 li gp,2
|
|
80000114: 00000313 li t1,0
|
|
80000118: 00000297 auipc t0,0x0
|
|
8000011c: 00c28293 addi t0,t0,12 # 80000124 <reset_vector+0xd8>
|
|
80000120: 00228367 jalr t1,2(t0)
|
|
80000124: a011 j 80000128 <reset_vector+0xdc>
|
|
80000126: a019 j 8000012c <reset_vector+0xe0>
|
|
80000128: 0e80006f j 80000210 <fail>
|
|
8000012c: 00300193 li gp,3
|
|
80000130: 00000297 auipc t0,0x0
|
|
80000134: 00c28293 addi t0,t0,12 # 8000013c <reset_vector+0xf0>
|
|
80000138: 00128367 jalr t1,1(t0)
|
|
8000013c: 0080006f j 80000144 <reset_vector+0xf8>
|
|
80000140: 0d00006f j 80000210 <fail>
|
|
80000144: 00400193 li gp,4
|
|
80000148: 00000313 li t1,0
|
|
8000014c: 00000297 auipc t0,0x0
|
|
80000150: 00c28293 addi t0,t0,12 # 80000158 <reset_vector+0x10c>
|
|
80000154: 00328367 jalr t1,3(t0)
|
|
80000158: a011 j 8000015c <reset_vector+0x110>
|
|
8000015a: a019 j 80000160 <reset_vector+0x114>
|
|
8000015c: 0b40006f j 80000210 <fail>
|
|
80000160: 00500193 li gp,5
|
|
80000164: 00000313 li t1,0
|
|
80000168: 00000297 auipc t0,0x0
|
|
8000016c: 00c28293 addi t0,t0,12 # 80000174 <reset_vector+0x128>
|
|
80000170: 0060036f jal t1,80000176 <reset_vector+0x12a>
|
|
80000174: a011 j 80000178 <reset_vector+0x12c>
|
|
80000176: a019 j 8000017c <reset_vector+0x130>
|
|
80000178: 0980006f j 80000210 <fail>
|
|
8000017c: 00600193 li gp,6
|
|
80000180: 00000313 li t1,0
|
|
80000184: 00000297 auipc t0,0x0
|
|
80000188: 00c28293 addi t0,t0,12 # 80000190 <reset_vector+0x144>
|
|
8000018c: 00000363 beqz zero,80000192 <reset_vector+0x146>
|
|
80000190: a011 j 80000194 <reset_vector+0x148>
|
|
80000192: a019 j 80000198 <reset_vector+0x14c>
|
|
80000194: 07c0006f j 80000210 <fail>
|
|
80000198: 00700193 li gp,7
|
|
8000019c: 00001563 bnez zero,800001a6 <reset_vector+0x15a>
|
|
800001a0: 00c0006f j 800001ac <reset_vector+0x160>
|
|
800001a4: a009 j 800001a6 <reset_vector+0x15a>
|
|
800001a6: a009 j 800001a8 <reset_vector+0x15c>
|
|
800001a8: 0680006f j 80000210 <fail>
|
|
800001ac: 00800193 li gp,8
|
|
800001b0: 301023f3 csrr t2,misa
|
|
800001b4: 0043f393 andi t2,t2,4
|
|
800001b8: 04038863 beqz t2,80000208 <reset_vector+0x1bc>
|
|
800001bc: 0001 nop
|
|
800001be: 30127073 csrci misa,4
|
|
800001c2: 0001 nop
|
|
800001c4: 301023f3 csrr t2,misa
|
|
800001c8: 0043f393 andi t2,t2,4
|
|
800001cc: 04038263 beqz t2,80000210 <fail>
|
|
800001d0: 00000297 auipc t0,0x0
|
|
800001d4: 03428293 addi t0,t0,52 # 80000204 <reset_vector+0x1b8>
|
|
800001d8: ffe28293 addi t0,t0,-2
|
|
800001dc: 34129073 csrw mepc,t0
|
|
800001e0: 30127073 csrci misa,4
|
|
800001e4: 301023f3 csrr t2,misa
|
|
800001e8: 0043f393 andi t2,t2,4
|
|
800001ec: 00039e63 bnez t2,80000208 <reset_vector+0x1bc>
|
|
800001f0: 000023b7 lui t2,0x2
|
|
800001f4: 8003839b addiw t2,t2,-2048
|
|
800001f8: 3003a073 csrs mstatus,t2
|
|
800001fc: 30200073 mret
|
|
80000200: 00000263 beqz zero,80000204 <reset_vector+0x1b8>
|
|
80000204: 30126073 csrsi misa,4
|
|
80000208: 01c0006f j 80000224 <pass>
|
|
8000020c: 00301c63 bne zero,gp,80000224 <pass>
|
|
|
|
0000000080000210 <fail>:
|
|
80000210: 0ff0000f fence
|
|
80000214: 00018063 beqz gp,80000214 <fail+0x4>
|
|
80000218: 00119193 slli gp,gp,0x1
|
|
8000021c: 0011e193 ori gp,gp,1
|
|
80000220: 00000073 ecall
|
|
|
|
0000000080000224 <pass>:
|
|
80000224: 0ff0000f fence
|
|
80000228: 00100193 li gp,1
|
|
8000022c: 00000073 ecall
|
|
|
|
0000000080000230 <mtvec_handler>:
|
|
80000230: 00200513 li a0,2
|
|
80000234: 02a18063 beq gp,a0,80000254 <mtvec_handler+0x24>
|
|
80000238: 00400513 li a0,4
|
|
8000023c: 00a18c63 beq gp,a0,80000254 <mtvec_handler+0x24>
|
|
80000240: 00500513 li a0,5
|
|
80000244: 00a18863 beq gp,a0,80000254 <mtvec_handler+0x24>
|
|
80000248: 00600513 li a0,6
|
|
8000024c: 00a18463 beq gp,a0,80000254 <mtvec_handler+0x24>
|
|
80000250: fc1ff06f j 80000210 <fail>
|
|
80000254: fa031ee3 bnez t1,80000210 <fail>
|
|
80000258: 00000593 li a1,0
|
|
8000025c: 34202573 csrr a0,mcause
|
|
80000260: fab518e3 bne a0,a1,80000210 <fail>
|
|
80000264: 341025f3 csrr a1,mepc
|
|
80000268: 00458593 addi a1,a1,4
|
|
8000026c: fab292e3 bne t0,a1,80000210 <fail>
|
|
80000270: 34302573 csrr a0,mtval
|
|
80000274: 00050663 beqz a0,80000280 <mtvec_handler+0x50>
|
|
80000278: ffe50513 addi a0,a0,-2 # 1ffe <_start-0x7fffe002>
|
|
8000027c: f8551ae3 bne a0,t0,80000210 <fail>
|
|
80000280: 00c58593 addi a1,a1,12
|
|
80000284: 34159073 csrw mepc,a1
|
|
80000288: 30200073 mret
|
|
8000028c: c0001073 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
|