Files
Toooba/Tests/isa/rv64ui-v-sd.dump

1334 lines
63 KiB
Plaintext

rv64ui-v-sd: file format elf64-littleriscv
Disassembly of section .text.init:
0000000080000000 <_start>:
80000000: 00c0006f j 8000000c <handle_reset>
0000000080000004 <nmi_vector>:
80000004: 25c0206f j 80002260 <wtf>
0000000080000008 <trap_vector>:
80000008: 2580206f j 80002260 <wtf>
000000008000000c <handle_reset>:
8000000c: 00000297 auipc t0,0x0
80000010: ffc28293 addi t0,t0,-4 # 80000008 <trap_vector>
80000014: 30529073 csrw mtvec,t0
80000018: 0000a117 auipc sp,0xa
8000001c: 6b810113 addi sp,sp,1720 # 8000a6d0 <_end+0xee0>
80000020: f14022f3 csrr t0,mhartid
80000024: 00c29293 slli t0,t0,0xc
80000028: 00510133 add sp,sp,t0
8000002c: 34011073 csrw mscratch,sp
80000030: 2a9020ef jal ra,80002ad8 <extra_boot>
80000034: 00003517 auipc a0,0x3
80000038: aa850513 addi a0,a0,-1368 # 80002adc <userstart>
8000003c: 0a50206f j 800028e0 <vm_boot>
0000000080000040 <pop_tf>:
80000040: 10853283 ld t0,264(a0)
80000044: 14129073 csrw sepc,t0
80000048: 00853083 ld ra,8(a0)
8000004c: 01053103 ld sp,16(a0)
80000050: 01853183 ld gp,24(a0)
80000054: 02053203 ld tp,32(a0)
80000058: 02853283 ld t0,40(a0)
8000005c: 03053303 ld t1,48(a0)
80000060: 03853383 ld t2,56(a0)
80000064: 04053403 ld s0,64(a0)
80000068: 04853483 ld s1,72(a0)
8000006c: 05853583 ld a1,88(a0)
80000070: 06053603 ld a2,96(a0)
80000074: 06853683 ld a3,104(a0)
80000078: 07053703 ld a4,112(a0)
8000007c: 07853783 ld a5,120(a0)
80000080: 08053803 ld a6,128(a0)
80000084: 08853883 ld a7,136(a0)
80000088: 09053903 ld s2,144(a0)
8000008c: 09853983 ld s3,152(a0)
80000090: 0a053a03 ld s4,160(a0)
80000094: 0a853a83 ld s5,168(a0)
80000098: 0b053b03 ld s6,176(a0)
8000009c: 0b853b83 ld s7,184(a0)
800000a0: 0c053c03 ld s8,192(a0)
800000a4: 0c853c83 ld s9,200(a0)
800000a8: 0d053d03 ld s10,208(a0)
800000ac: 0d853d83 ld s11,216(a0)
800000b0: 0e053e03 ld t3,224(a0)
800000b4: 0e853e83 ld t4,232(a0)
800000b8: 0f053f03 ld t5,240(a0)
800000bc: 0f853f83 ld t6,248(a0)
800000c0: 05053503 ld a0,80(a0)
800000c4: 10200073 sret
00000000800000c8 <trap_entry>:
800000c8: 14011173 csrrw sp,sscratch,sp
800000cc: 00113423 sd ra,8(sp)
800000d0: 00313c23 sd gp,24(sp)
800000d4: 02413023 sd tp,32(sp)
800000d8: 02513423 sd t0,40(sp)
800000dc: 02613823 sd t1,48(sp)
800000e0: 02713c23 sd t2,56(sp)
800000e4: 04813023 sd s0,64(sp)
800000e8: 04913423 sd s1,72(sp)
800000ec: 04a13823 sd a0,80(sp)
800000f0: 04b13c23 sd a1,88(sp)
800000f4: 06c13023 sd a2,96(sp)
800000f8: 06d13423 sd a3,104(sp)
800000fc: 06e13823 sd a4,112(sp)
80000100: 06f13c23 sd a5,120(sp)
80000104: 09013023 sd a6,128(sp)
80000108: 09113423 sd a7,136(sp)
8000010c: 09213823 sd s2,144(sp)
80000110: 09313c23 sd s3,152(sp)
80000114: 0b413023 sd s4,160(sp)
80000118: 0b513423 sd s5,168(sp)
8000011c: 0b613823 sd s6,176(sp)
80000120: 0b713c23 sd s7,184(sp)
80000124: 0d813023 sd s8,192(sp)
80000128: 0d913423 sd s9,200(sp)
8000012c: 0da13823 sd s10,208(sp)
80000130: 0db13c23 sd s11,216(sp)
80000134: 0fc13023 sd t3,224(sp)
80000138: 0fd13423 sd t4,232(sp)
8000013c: 0fe13823 sd t5,240(sp)
80000140: 0ff13c23 sd t6,248(sp)
80000144: 140112f3 csrrw t0,sscratch,sp
80000148: 00513823 sd t0,16(sp)
8000014c: 100022f3 csrr t0,sstatus
80000150: 10513023 sd t0,256(sp)
80000154: 141022f3 csrr t0,sepc
80000158: 10513423 sd t0,264(sp)
8000015c: 143022f3 csrr t0,stval
80000160: 10513823 sd t0,272(sp)
80000164: 142022f3 csrr t0,scause
80000168: 10513c23 sd t0,280(sp)
8000016c: 00010513 mv a0,sp
80000170: 4380206f j 800025a8 <handle_trap>
Disassembly of section .text:
0000000080002000 <memcpy>:
80002000: 00c5e7b3 or a5,a1,a2
80002004: 00f567b3 or a5,a0,a5
80002008: 0077f793 andi a5,a5,7
8000200c: 00c506b3 add a3,a0,a2
80002010: 02078463 beqz a5,80002038 <memcpy+0x38>
80002014: 00c58633 add a2,a1,a2
80002018: 00050793 mv a5,a0
8000201c: 02d57e63 bgeu a0,a3,80002058 <memcpy+0x58>
80002020: 00158593 addi a1,a1,1
80002024: fff5c703 lbu a4,-1(a1)
80002028: 00178793 addi a5,a5,1
8000202c: fee78fa3 sb a4,-1(a5)
80002030: feb618e3 bne a2,a1,80002020 <memcpy+0x20>
80002034: 00008067 ret
80002038: fed57ee3 bgeu a0,a3,80002034 <memcpy+0x34>
8000203c: 00050793 mv a5,a0
80002040: 00858593 addi a1,a1,8
80002044: ff85b703 ld a4,-8(a1)
80002048: 00878793 addi a5,a5,8
8000204c: fee7bc23 sd a4,-8(a5)
80002050: fed7e8e3 bltu a5,a3,80002040 <memcpy+0x40>
80002054: 00008067 ret
80002058: 00008067 ret
000000008000205c <memset>:
8000205c: 00c567b3 or a5,a0,a2
80002060: 0077f793 andi a5,a5,7
80002064: 00c50633 add a2,a0,a2
80002068: 0ff5f593 andi a1,a1,255
8000206c: 00078e63 beqz a5,80002088 <memset+0x2c>
80002070: 00050793 mv a5,a0
80002074: 04c57263 bgeu a0,a2,800020b8 <memset+0x5c>
80002078: 00178793 addi a5,a5,1
8000207c: feb78fa3 sb a1,-1(a5)
80002080: fef61ce3 bne a2,a5,80002078 <memset+0x1c>
80002084: 00008067 ret
80002088: 00859793 slli a5,a1,0x8
8000208c: 00b7e5b3 or a1,a5,a1
80002090: 01059793 slli a5,a1,0x10
80002094: 00b7e7b3 or a5,a5,a1
80002098: 02079593 slli a1,a5,0x20
8000209c: 00f5e5b3 or a1,a1,a5
800020a0: fec572e3 bgeu a0,a2,80002084 <memset+0x28>
800020a4: 00050793 mv a5,a0
800020a8: 00878793 addi a5,a5,8
800020ac: feb7bc23 sd a1,-8(a5)
800020b0: fec7ece3 bltu a5,a2,800020a8 <memset+0x4c>
800020b4: 00008067 ret
800020b8: 00008067 ret
00000000800020bc <strlen>:
800020bc: 00054783 lbu a5,0(a0)
800020c0: 00078e63 beqz a5,800020dc <strlen+0x20>
800020c4: 00050793 mv a5,a0
800020c8: 00178793 addi a5,a5,1
800020cc: 0007c703 lbu a4,0(a5)
800020d0: fe071ce3 bnez a4,800020c8 <strlen+0xc>
800020d4: 40a78533 sub a0,a5,a0
800020d8: 00008067 ret
800020dc: 00000513 li a0,0
800020e0: 00008067 ret
00000000800020e4 <strcmp>:
800020e4: 00150513 addi a0,a0,1
800020e8: fff54783 lbu a5,-1(a0)
800020ec: 00158593 addi a1,a1,1
800020f0: fff5c703 lbu a4,-1(a1)
800020f4: 00078a63 beqz a5,80002108 <strcmp+0x24>
800020f8: fee786e3 beq a5,a4,800020e4 <strcmp>
800020fc: 0007851b sext.w a0,a5
80002100: 40e5053b subw a0,a0,a4
80002104: 00008067 ret
80002108: 00000513 li a0,0
8000210c: ff5ff06f j 80002100 <strcmp+0x1c>
0000000080002110 <memcmp>:
80002110: 00b567b3 or a5,a0,a1
80002114: 0077f793 andi a5,a5,7
80002118: 04079463 bnez a5,80002160 <memcmp+0x50>
8000211c: ff867813 andi a6,a2,-8
80002120: 01050833 add a6,a0,a6
80002124: 03057e63 bgeu a0,a6,80002160 <memcmp+0x50>
80002128: 0005b703 ld a4,0(a1)
8000212c: 00053783 ld a5,0(a0)
80002130: 02f71863 bne a4,a5,80002160 <memcmp+0x50>
80002134: 00050793 mv a5,a0
80002138: 0100006f j 80002148 <memcmp+0x38>
8000213c: 0007b683 ld a3,0(a5)
80002140: 0005b703 ld a4,0(a1)
80002144: 00e69863 bne a3,a4,80002154 <memcmp+0x44>
80002148: 00878793 addi a5,a5,8
8000214c: 00858593 addi a1,a1,8
80002150: ff07e6e3 bltu a5,a6,8000213c <memcmp+0x2c>
80002154: 40a78533 sub a0,a5,a0
80002158: 40a60633 sub a2,a2,a0
8000215c: 00078513 mv a0,a5
80002160: 00c58633 add a2,a1,a2
80002164: 0140006f j 80002178 <memcmp+0x68>
80002168: 00158593 addi a1,a1,1
8000216c: fff54783 lbu a5,-1(a0)
80002170: fff5c703 lbu a4,-1(a1)
80002174: 00e79a63 bne a5,a4,80002188 <memcmp+0x78>
80002178: 00150513 addi a0,a0,1
8000217c: fec596e3 bne a1,a2,80002168 <memcmp+0x58>
80002180: 00000513 li a0,0
80002184: 00008067 ret
80002188: 40e7853b subw a0,a5,a4
8000218c: 00008067 ret
0000000080002190 <strcpy>:
80002190: 00050793 mv a5,a0
80002194: 00158593 addi a1,a1,1
80002198: fff5c703 lbu a4,-1(a1)
8000219c: 00178793 addi a5,a5,1
800021a0: fee78fa3 sb a4,-1(a5)
800021a4: fe0718e3 bnez a4,80002194 <strcpy+0x4>
800021a8: 00008067 ret
00000000800021ac <atol>:
800021ac: 00054783 lbu a5,0(a0)
800021b0: 02000713 li a4,32
800021b4: 00e79863 bne a5,a4,800021c4 <atol+0x18>
800021b8: 00150513 addi a0,a0,1
800021bc: 00054783 lbu a5,0(a0)
800021c0: fee78ce3 beq a5,a4,800021b8 <atol+0xc>
800021c4: fd57871b addiw a4,a5,-43
800021c8: 0fd77713 andi a4,a4,253
800021cc: 04070263 beqz a4,80002210 <atol+0x64>
800021d0: 00054683 lbu a3,0(a0)
800021d4: 00050793 mv a5,a0
800021d8: 00000613 li a2,0
800021dc: 04068863 beqz a3,8000222c <atol+0x80>
800021e0: 00000513 li a0,0
800021e4: 00178793 addi a5,a5,1
800021e8: fd06859b addiw a1,a3,-48
800021ec: 00251713 slli a4,a0,0x2
800021f0: 0007c683 lbu a3,0(a5)
800021f4: 00a70533 add a0,a4,a0
800021f8: 00151513 slli a0,a0,0x1
800021fc: 00a58533 add a0,a1,a0
80002200: fe0692e3 bnez a3,800021e4 <atol+0x38>
80002204: 00060463 beqz a2,8000220c <atol+0x60>
80002208: 40a00533 neg a0,a0
8000220c: 00008067 ret
80002210: 00154683 lbu a3,1(a0)
80002214: fd378793 addi a5,a5,-45
80002218: 0017b613 seqz a2,a5
8000221c: 00150793 addi a5,a0,1
80002220: fc0690e3 bnez a3,800021e0 <atol+0x34>
80002224: 00000513 li a0,0
80002228: fddff06f j 80002204 <atol+0x58>
8000222c: 00000513 li a0,0
80002230: 00008067 ret
0000000080002234 <terminate>:
80002234: fffff797 auipc a5,0xfffff
80002238: dcc78793 addi a5,a5,-564 # 80001000 <tohost>
8000223c: 0007b703 ld a4,0(a5)
80002240: 00070a63 beqz a4,80002254 <terminate+0x20>
80002244: fffff717 auipc a4,0xfffff
80002248: de073e23 sd zero,-516(a4) # 80001040 <fromhost>
8000224c: 0007b703 ld a4,0(a5)
80002250: fe071ae3 bnez a4,80002244 <terminate+0x10>
80002254: fffff797 auipc a5,0xfffff
80002258: daa7b623 sd a0,-596(a5) # 80001000 <tohost>
8000225c: 0000006f j 8000225c <terminate+0x28>
0000000080002260 <wtf>:
80002260: ff010113 addi sp,sp,-16
80002264: 34900513 li a0,841
80002268: 00113423 sd ra,8(sp)
8000226c: fc9ff0ef jal ra,80002234 <terminate>
0000000080002270 <printhex>:
80002270: fe010113 addi sp,sp,-32
80002274: 00810613 addi a2,sp,8
80002278: 01710713 addi a4,sp,23
8000227c: 00900813 li a6,9
80002280: 0080006f j 80002288 <printhex+0x18>
80002284: 00078713 mv a4,a5
80002288: 00f57793 andi a5,a0,15
8000228c: 03000593 li a1,48
80002290: 0ff7f693 andi a3,a5,255
80002294: 00f87463 bgeu a6,a5,8000229c <printhex+0x2c>
80002298: 05700593 li a1,87
8000229c: 00b687bb addw a5,a3,a1
800022a0: 00f70023 sb a5,0(a4)
800022a4: 00455513 srli a0,a0,0x4
800022a8: fff70793 addi a5,a4,-1
800022ac: fce61ce3 bne a2,a4,80002284 <printhex+0x14>
800022b0: 00814783 lbu a5,8(sp)
800022b4: 00010c23 sb zero,24(sp)
800022b8: 04078463 beqz a5,80002300 <printhex+0x90>
800022bc: 10100513 li a0,257
800022c0: 00060693 mv a3,a2
800022c4: fffff717 auipc a4,0xfffff
800022c8: d3c70713 addi a4,a4,-708 # 80001000 <tohost>
800022cc: 03051513 slli a0,a0,0x30
800022d0: 00073583 ld a1,0(a4)
800022d4: 00168693 addi a3,a3,1
800022d8: 00a7e633 or a2,a5,a0
800022dc: 00058a63 beqz a1,800022f0 <printhex+0x80>
800022e0: fffff797 auipc a5,0xfffff
800022e4: d607b023 sd zero,-672(a5) # 80001040 <fromhost>
800022e8: 00073783 ld a5,0(a4)
800022ec: fe079ae3 bnez a5,800022e0 <printhex+0x70>
800022f0: 0006c783 lbu a5,0(a3)
800022f4: fffff597 auipc a1,0xfffff
800022f8: d0c5b623 sd a2,-756(a1) # 80001000 <tohost>
800022fc: fc079ae3 bnez a5,800022d0 <printhex+0x60>
80002300: 02010113 addi sp,sp,32
80002304: 00008067 ret
0000000080002308 <handle_fault>:
80002308: fffff6b7 lui a3,0xfffff
8000230c: 00d50733 add a4,a0,a3
80002310: 0003e7b7 lui a5,0x3e
80002314: 14f77463 bgeu a4,a5,8000245c <handle_fault+0x154>
80002318: 00c55893 srli a7,a0,0xc
8000231c: 60088613 addi a2,a7,1536
80002320: 00003817 auipc a6,0x3
80002324: ce080813 addi a6,a6,-800 # 80005000 <pt>
80002328: 00361793 slli a5,a2,0x3
8000232c: 00f807b3 add a5,a6,a5
80002330: 0007b703 ld a4,0(a5) # 3e000 <_start-0x7ffc2000>
80002334: 00d57533 and a0,a0,a3
80002338: 02070663 beqz a4,80002364 <handle_fault+0x5c>
8000233c: 04077693 andi a3,a4,64
80002340: 10068063 beqz a3,80002440 <handle_fault+0x138>
80002344: 08077693 andi a3,a4,128
80002348: 16069863 bnez a3,800024b8 <handle_fault+0x1b0>
8000234c: 00f00693 li a3,15
80002350: 16d59463 bne a1,a3,800024b8 <handle_fault+0x1b0>
80002354: 08076713 ori a4,a4,128
80002358: 00e7b023 sd a4,0(a5)
8000235c: 12050073 sfence.vma a0
80002360: 00008067 ret
80002364: 00007797 auipc a5,0x7
80002368: 48478793 addi a5,a5,1156 # 800097e8 <freelist_head>
8000236c: 0007b703 ld a4,0(a5)
80002370: 18070c63 beqz a4,80002508 <handle_fault+0x200>
80002374: 00873783 ld a5,8(a4)
80002378: 00007697 auipc a3,0x7
8000237c: 46868693 addi a3,a3,1128 # 800097e0 <freelist_tail>
80002380: 0006b683 ld a3,0(a3)
80002384: 00007597 auipc a1,0x7
80002388: 46f5b223 sd a5,1124(a1) # 800097e8 <freelist_head>
8000238c: 0cd78263 beq a5,a3,80002450 <handle_fault+0x148>
80002390: 00073783 ld a5,0(a4)
80002394: 00361593 slli a1,a2,0x3
80002398: 00b805b3 add a1,a6,a1
8000239c: 00c7d793 srli a5,a5,0xc
800023a0: 00a79793 slli a5,a5,0xa
800023a4: 0df7e313 ori t1,a5,223
800023a8: 01f7e693 ori a3,a5,31
800023ac: 0065b023 sd t1,0(a1)
800023b0: 12050073 sfence.vma a0
800023b4: 00007797 auipc a5,0x7
800023b8: 03c78793 addi a5,a5,60 # 800093f0 <user_mapping>
800023bc: 00489893 slli a7,a7,0x4
800023c0: 011788b3 add a7,a5,a7
800023c4: 0008b783 ld a5,0(a7)
800023c8: 18079863 bnez a5,80002558 <handle_fault+0x250>
800023cc: 00073783 ld a5,0(a4)
800023d0: 00f8b023 sd a5,0(a7)
800023d4: 00873783 ld a5,8(a4)
800023d8: 00f8b423 sd a5,8(a7)
800023dc: 000408b7 lui a7,0x40
800023e0: 1008a8f3 csrrs a7,sstatus,a7
800023e4: ffe007b7 lui a5,0xffe00
800023e8: 00f507b3 add a5,a0,a5
800023ec: 000015b7 lui a1,0x1
800023f0: 00050713 mv a4,a0
800023f4: 00b785b3 add a1,a5,a1
800023f8: 0007bf03 ld t5,0(a5) # ffffffffffe00000 <_end+0xffffffff7fdf6810>
800023fc: 0087be83 ld t4,8(a5)
80002400: 0107be03 ld t3,16(a5)
80002404: 0187b303 ld t1,24(a5)
80002408: 01e73023 sd t5,0(a4)
8000240c: 01d73423 sd t4,8(a4)
80002410: 01c73823 sd t3,16(a4)
80002414: 00673c23 sd t1,24(a4)
80002418: 02078793 addi a5,a5,32
8000241c: 02070713 addi a4,a4,32
80002420: fcb79ce3 bne a5,a1,800023f8 <handle_fault+0xf0>
80002424: 10089073 csrw sstatus,a7
80002428: 00361613 slli a2,a2,0x3
8000242c: 00c807b3 add a5,a6,a2
80002430: 00d7b023 sd a3,0(a5)
80002434: 12050073 sfence.vma a0
80002438: 0000100f fence.i
8000243c: 00008067 ret
80002440: 04076713 ori a4,a4,64
80002444: 00e7b023 sd a4,0(a5)
80002448: 12050073 sfence.vma a0
8000244c: 00008067 ret
80002450: 00007797 auipc a5,0x7
80002454: 3807b823 sd zero,912(a5) # 800097e0 <freelist_tail>
80002458: f39ff06f j 80002390 <handle_fault+0x88>
8000245c: 10100613 li a2,257
80002460: 04100713 li a4,65
80002464: 00001697 auipc a3,0x1
80002468: cdc68693 addi a3,a3,-804 # 80003140 <pass+0x10>
8000246c: fffff797 auipc a5,0xfffff
80002470: b9478793 addi a5,a5,-1132 # 80001000 <tohost>
80002474: 03061613 slli a2,a2,0x30
80002478: 0007b503 ld a0,0(a5)
8000247c: 00168693 addi a3,a3,1
80002480: 00c765b3 or a1,a4,a2
80002484: 00050a63 beqz a0,80002498 <handle_fault+0x190>
80002488: fffff717 auipc a4,0xfffff
8000248c: ba073c23 sd zero,-1096(a4) # 80001040 <fromhost>
80002490: 0007b703 ld a4,0(a5)
80002494: fe071ae3 bnez a4,80002488 <handle_fault+0x180>
80002498: 0006c703 lbu a4,0(a3)
8000249c: fffff517 auipc a0,0xfffff
800024a0: b6b53223 sd a1,-1180(a0) # 80001000 <tohost>
800024a4: fc071ae3 bnez a4,80002478 <handle_fault+0x170>
800024a8: ff010113 addi sp,sp,-16
800024ac: 00300513 li a0,3
800024b0: 00113423 sd ra,8(sp)
800024b4: d81ff0ef jal ra,80002234 <terminate>
800024b8: 10100613 li a2,257
800024bc: 04100713 li a4,65
800024c0: 00001697 auipc a3,0x1
800024c4: cc868693 addi a3,a3,-824 # 80003188 <pass+0x58>
800024c8: fffff797 auipc a5,0xfffff
800024cc: b3878793 addi a5,a5,-1224 # 80001000 <tohost>
800024d0: 03061613 slli a2,a2,0x30
800024d4: 0007b503 ld a0,0(a5)
800024d8: 00168693 addi a3,a3,1
800024dc: 00c765b3 or a1,a4,a2
800024e0: 00050a63 beqz a0,800024f4 <handle_fault+0x1ec>
800024e4: fffff717 auipc a4,0xfffff
800024e8: b4073e23 sd zero,-1188(a4) # 80001040 <fromhost>
800024ec: 0007b703 ld a4,0(a5)
800024f0: fe071ae3 bnez a4,800024e4 <handle_fault+0x1dc>
800024f4: 0006c703 lbu a4,0(a3)
800024f8: fffff517 auipc a0,0xfffff
800024fc: b0b53423 sd a1,-1272(a0) # 80001000 <tohost>
80002500: fc071ae3 bnez a4,800024d4 <handle_fault+0x1cc>
80002504: fa5ff06f j 800024a8 <handle_fault+0x1a0>
80002508: 10100693 li a3,257
8000250c: 04100713 li a4,65
80002510: 00001617 auipc a2,0x1
80002514: cc060613 addi a2,a2,-832 # 800031d0 <pass+0xa0>
80002518: fffff797 auipc a5,0xfffff
8000251c: ae878793 addi a5,a5,-1304 # 80001000 <tohost>
80002520: 03069693 slli a3,a3,0x30
80002524: 0007b503 ld a0,0(a5)
80002528: 00160613 addi a2,a2,1
8000252c: 00d765b3 or a1,a4,a3
80002530: 00050a63 beqz a0,80002544 <handle_fault+0x23c>
80002534: fffff717 auipc a4,0xfffff
80002538: b0073623 sd zero,-1268(a4) # 80001040 <fromhost>
8000253c: 0007b703 ld a4,0(a5)
80002540: fe071ae3 bnez a4,80002534 <handle_fault+0x22c>
80002544: 00064703 lbu a4,0(a2)
80002548: fffff517 auipc a0,0xfffff
8000254c: aab53c23 sd a1,-1352(a0) # 80001000 <tohost>
80002550: fc071ae3 bnez a4,80002524 <handle_fault+0x21c>
80002554: f55ff06f j 800024a8 <handle_fault+0x1a0>
80002558: 10100693 li a3,257
8000255c: 04100713 li a4,65
80002560: 00001617 auipc a2,0x1
80002564: c8860613 addi a2,a2,-888 # 800031e8 <pass+0xb8>
80002568: fffff797 auipc a5,0xfffff
8000256c: a9878793 addi a5,a5,-1384 # 80001000 <tohost>
80002570: 03069693 slli a3,a3,0x30
80002574: 0007b503 ld a0,0(a5)
80002578: 00160613 addi a2,a2,1
8000257c: 00d765b3 or a1,a4,a3
80002580: 00050a63 beqz a0,80002594 <handle_fault+0x28c>
80002584: fffff717 auipc a4,0xfffff
80002588: aa073e23 sd zero,-1348(a4) # 80001040 <fromhost>
8000258c: 0007b703 ld a4,0(a5)
80002590: fe071ae3 bnez a4,80002584 <handle_fault+0x27c>
80002594: 00064703 lbu a4,0(a2)
80002598: fffff517 auipc a0,0xfffff
8000259c: a6b53423 sd a1,-1432(a0) # 80001000 <tohost>
800025a0: fc071ae3 bnez a4,80002574 <handle_fault+0x26c>
800025a4: f05ff06f j 800024a8 <handle_fault+0x1a0>
00000000800025a8 <handle_trap>:
800025a8: 11853583 ld a1,280(a0)
800025ac: f9010113 addi sp,sp,-112
800025b0: 06813023 sd s0,96(sp)
800025b4: 06113423 sd ra,104(sp)
800025b8: 04913c23 sd s1,88(sp)
800025bc: 05213823 sd s2,80(sp)
800025c0: 05313423 sd s3,72(sp)
800025c4: 05413023 sd s4,64(sp)
800025c8: 03513c23 sd s5,56(sp)
800025cc: 03613823 sd s6,48(sp)
800025d0: 03713423 sd s7,40(sp)
800025d4: 03813023 sd s8,32(sp)
800025d8: 01913c23 sd s9,24(sp)
800025dc: 01a13823 sd s10,16(sp)
800025e0: 01b13423 sd s11,8(sp)
800025e4: 00800793 li a5,8
800025e8: 00050413 mv s0,a0
800025ec: 12f58a63 beq a1,a5,80002720 <handle_trap+0x178>
800025f0: 00200793 li a5,2
800025f4: 06f58063 beq a1,a5,80002654 <handle_trap+0xac>
800025f8: ff458793 addi a5,a1,-12 # ff4 <_start-0x7ffff00c>
800025fc: 00100713 li a4,1
80002600: 00f77663 bgeu a4,a5,8000260c <handle_trap+0x64>
80002604: 00f00793 li a5,15
80002608: 1ef59463 bne a1,a5,800027f0 <handle_trap+0x248>
8000260c: 11043503 ld a0,272(s0)
80002610: cf9ff0ef jal ra,80002308 <handle_fault>
80002614: 00040513 mv a0,s0
80002618: 06013403 ld s0,96(sp)
8000261c: 06813083 ld ra,104(sp)
80002620: 05813483 ld s1,88(sp)
80002624: 05013903 ld s2,80(sp)
80002628: 04813983 ld s3,72(sp)
8000262c: 04013a03 ld s4,64(sp)
80002630: 03813a83 ld s5,56(sp)
80002634: 03013b03 ld s6,48(sp)
80002638: 02813b83 ld s7,40(sp)
8000263c: 02013c03 ld s8,32(sp)
80002640: 01813c83 ld s9,24(sp)
80002644: 01013d03 ld s10,16(sp)
80002648: 00813d83 ld s11,8(sp)
8000264c: 07010113 addi sp,sp,112
80002650: 9f1fd06f j 80000040 <pop_tf>
80002654: 10853703 ld a4,264(a0)
80002658: 00377793 andi a5,a4,3
8000265c: 06079a63 bnez a5,800026d0 <handle_trap+0x128>
80002660: 008007ef jal a5,80002668 <handle_trap+0xc0>
80002664: 00301073 fssr zero
80002668: 00072703 lw a4,0(a4)
8000266c: 0007a783 lw a5,0(a5)
80002670: 04f70c63 beq a4,a5,800026c8 <handle_trap+0x120>
80002674: 10100513 li a0,257
80002678: 04100793 li a5,65
8000267c: 00001697 auipc a3,0x1
80002680: c4468693 addi a3,a3,-956 # 800032c0 <pass+0x190>
80002684: fffff717 auipc a4,0xfffff
80002688: 97c70713 addi a4,a4,-1668 # 80001000 <tohost>
8000268c: 03051513 slli a0,a0,0x30
80002690: 00073583 ld a1,0(a4)
80002694: 00168693 addi a3,a3,1
80002698: 00a7e633 or a2,a5,a0
8000269c: 00058a63 beqz a1,800026b0 <handle_trap+0x108>
800026a0: fffff797 auipc a5,0xfffff
800026a4: 9a07b023 sd zero,-1632(a5) # 80001040 <fromhost>
800026a8: 00073783 ld a5,0(a4)
800026ac: fe079ae3 bnez a5,800026a0 <handle_trap+0xf8>
800026b0: 0006c783 lbu a5,0(a3)
800026b4: fffff597 auipc a1,0xfffff
800026b8: 94c5b623 sd a2,-1716(a1) # 80001000 <tohost>
800026bc: fc079ae3 bnez a5,80002690 <handle_trap+0xe8>
800026c0: 00300513 li a0,3
800026c4: b71ff0ef jal ra,80002234 <terminate>
800026c8: 00100513 li a0,1
800026cc: b69ff0ef jal ra,80002234 <terminate>
800026d0: 10100793 li a5,257
800026d4: 00001617 auipc a2,0x1
800026d8: bc460613 addi a2,a2,-1084 # 80003298 <pass+0x168>
800026dc: 04100693 li a3,65
800026e0: fffff717 auipc a4,0xfffff
800026e4: 92070713 addi a4,a4,-1760 # 80001000 <tohost>
800026e8: 03079793 slli a5,a5,0x30
800026ec: 00073503 ld a0,0(a4)
800026f0: 00160613 addi a2,a2,1
800026f4: 00f6e5b3 or a1,a3,a5
800026f8: 00050a63 beqz a0,8000270c <handle_trap+0x164>
800026fc: fffff697 auipc a3,0xfffff
80002700: 9406b223 sd zero,-1724(a3) # 80001040 <fromhost>
80002704: 00073683 ld a3,0(a4)
80002708: fe069ae3 bnez a3,800026fc <handle_trap+0x154>
8000270c: 00064683 lbu a3,0(a2)
80002710: fffff517 auipc a0,0xfffff
80002714: 8eb53823 sd a1,-1808(a0) # 80001000 <tohost>
80002718: fc069ae3 bnez a3,800026ec <handle_trap+0x144>
8000271c: fa5ff06f j 800026c0 <handle_trap+0x118>
80002720: 05052903 lw s2,80(a0)
80002724: 00001c37 lui s8,0x1
80002728: 00007497 auipc s1,0x7
8000272c: cc848493 addi s1,s1,-824 # 800093f0 <user_mapping>
80002730: 00003b97 auipc s7,0x3
80002734: 8d0b8b93 addi s7,s7,-1840 # 80005000 <pt>
80002738: 00040b37 lui s6,0x40
8000273c: ffe00ab7 lui s5,0xffe00
80002740: 00007a17 auipc s4,0x7
80002744: 0a0a0a13 addi s4,s4,160 # 800097e0 <freelist_tail>
80002748: 0003f9b7 lui s3,0x3f
8000274c: 01c0006f j 80002768 <handle_trap+0x1c0>
80002750: 00f73423 sd a5,8(a4)
80002754: 00007717 auipc a4,0x7
80002758: 08f73623 sd a5,140(a4) # 800097e0 <freelist_tail>
8000275c: 000017b7 lui a5,0x1
80002760: 00fc0c33 add s8,s8,a5
80002764: 173c0a63 beq s8,s3,800028d8 <handle_trap+0x330>
80002768: 00cc5793 srli a5,s8,0xc
8000276c: 00479413 slli s0,a5,0x4
80002770: 00848733 add a4,s1,s0
80002774: 00073703 ld a4,0(a4)
80002778: fe0702e3 beqz a4,8000275c <handle_trap+0x1b4>
8000277c: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00>
80002780: 00379793 slli a5,a5,0x3
80002784: 00fb87b3 add a5,s7,a5
80002788: 0007bc83 ld s9,0(a5)
8000278c: 040cf793 andi a5,s9,64
80002790: 0e078e63 beqz a5,8000288c <handle_trap+0x2e4>
80002794: 100b2d73 csrrs s10,sstatus,s6
80002798: 015c0db3 add s11,s8,s5
8000279c: 00001637 lui a2,0x1
800027a0: 000d8593 mv a1,s11
800027a4: 000c0513 mv a0,s8
800027a8: 969ff0ef jal ra,80002110 <memcmp>
800027ac: 00050e63 beqz a0,800027c8 <handle_trap+0x220>
800027b0: 080cfc93 andi s9,s9,128
800027b4: 080c8663 beqz s9,80002840 <handle_trap+0x298>
800027b8: 00001637 lui a2,0x1
800027bc: 000d8593 mv a1,s11
800027c0: 000c0513 mv a0,s8
800027c4: 83dff0ef jal ra,80002000 <memcpy>
800027c8: 008487b3 add a5,s1,s0
800027cc: 100d1073 csrw sstatus,s10
800027d0: 000a3703 ld a4,0(s4)
800027d4: 0007b023 sd zero,0(a5)
800027d8: f6071ce3 bnez a4,80002750 <handle_trap+0x1a8>
800027dc: 00007717 auipc a4,0x7
800027e0: 00f73223 sd a5,4(a4) # 800097e0 <freelist_tail>
800027e4: 00007717 auipc a4,0x7
800027e8: 00f73223 sd a5,4(a4) # 800097e8 <freelist_head>
800027ec: f71ff06f j 8000275c <handle_trap+0x1b4>
800027f0: 10100793 li a5,257
800027f4: 04100613 li a2,65
800027f8: 00001697 auipc a3,0x1
800027fc: af868693 addi a3,a3,-1288 # 800032f0 <pass+0x1c0>
80002800: fffff717 auipc a4,0xfffff
80002804: 80070713 addi a4,a4,-2048 # 80001000 <tohost>
80002808: 03079793 slli a5,a5,0x30
8000280c: 00073503 ld a0,0(a4)
80002810: 00168693 addi a3,a3,1
80002814: 00f665b3 or a1,a2,a5
80002818: 00050a63 beqz a0,8000282c <handle_trap+0x284>
8000281c: fffff617 auipc a2,0xfffff
80002820: 82063223 sd zero,-2012(a2) # 80001040 <fromhost>
80002824: 00073603 ld a2,0(a4)
80002828: fe061ae3 bnez a2,8000281c <handle_trap+0x274>
8000282c: 0006c603 lbu a2,0(a3)
80002830: ffffe517 auipc a0,0xffffe
80002834: 7cb53823 sd a1,2000(a0) # 80001000 <tohost>
80002838: fc061ae3 bnez a2,8000280c <handle_trap+0x264>
8000283c: e85ff06f j 800026c0 <handle_trap+0x118>
80002840: 10100793 li a5,257
80002844: 04100613 li a2,65
80002848: 00001697 auipc a3,0x1
8000284c: a1868693 addi a3,a3,-1512 # 80003260 <pass+0x130>
80002850: ffffe717 auipc a4,0xffffe
80002854: 7b070713 addi a4,a4,1968 # 80001000 <tohost>
80002858: 03079793 slli a5,a5,0x30
8000285c: 00168693 addi a3,a3,1
80002860: 00f665b3 or a1,a2,a5
80002864: 00c0006f j 80002870 <handle_trap+0x2c8>
80002868: ffffe617 auipc a2,0xffffe
8000286c: 7c063c23 sd zero,2008(a2) # 80001040 <fromhost>
80002870: 00073603 ld a2,0(a4)
80002874: fe061ae3 bnez a2,80002868 <handle_trap+0x2c0>
80002878: 0006c603 lbu a2,0(a3)
8000287c: ffffe517 auipc a0,0xffffe
80002880: 78b53223 sd a1,1924(a0) # 80001000 <tohost>
80002884: fc061ce3 bnez a2,8000285c <handle_trap+0x2b4>
80002888: e39ff06f j 800026c0 <handle_trap+0x118>
8000288c: 10100793 li a5,257
80002890: 04100613 li a2,65
80002894: 00001697 auipc a3,0x1
80002898: 99468693 addi a3,a3,-1644 # 80003228 <pass+0xf8>
8000289c: ffffe717 auipc a4,0xffffe
800028a0: 76470713 addi a4,a4,1892 # 80001000 <tohost>
800028a4: 03079793 slli a5,a5,0x30
800028a8: 00168693 addi a3,a3,1
800028ac: 00f665b3 or a1,a2,a5
800028b0: 00c0006f j 800028bc <handle_trap+0x314>
800028b4: ffffe617 auipc a2,0xffffe
800028b8: 78063623 sd zero,1932(a2) # 80001040 <fromhost>
800028bc: 00073603 ld a2,0(a4)
800028c0: fe061ae3 bnez a2,800028b4 <handle_trap+0x30c>
800028c4: 0006c603 lbu a2,0(a3)
800028c8: ffffe517 auipc a0,0xffffe
800028cc: 72b53c23 sd a1,1848(a0) # 80001000 <tohost>
800028d0: fc061ce3 bnez a2,800028a8 <handle_trap+0x300>
800028d4: dedff06f j 800026c0 <handle_trap+0x118>
800028d8: 00090513 mv a0,s2
800028dc: 959ff0ef jal ra,80002234 <terminate>
00000000800028e0 <vm_boot>:
800028e0: f14027f3 csrr a5,mhartid
800028e4: 18079c63 bnez a5,80002a7c <vm_boot+0x19c>
800028e8: 00003697 auipc a3,0x3
800028ec: 71868693 addi a3,a3,1816 # 80006000 <pt+0x1000>
800028f0: 00004717 auipc a4,0x4
800028f4: 71070713 addi a4,a4,1808 # 80007000 <pt+0x2000>
800028f8: 00c6d693 srli a3,a3,0xc
800028fc: 00c75713 srli a4,a4,0xc
80002900: 00005797 auipc a5,0x5
80002904: 70078793 addi a5,a5,1792 # 80008000 <pt+0x3000>
80002908: 00a69693 slli a3,a3,0xa
8000290c: 00a71713 slli a4,a4,0xa
80002910: 0016e693 ori a3,a3,1
80002914: 00176713 ori a4,a4,1
80002918: 00c7d793 srli a5,a5,0xc
8000291c: 00002897 auipc a7,0x2
80002920: 6ed8b223 sd a3,1764(a7) # 80005000 <pt>
80002924: 00a79793 slli a5,a5,0xa
80002928: 00003697 auipc a3,0x3
8000292c: 6ce6b823 sd a4,1744(a3) # 80005ff8 <pt+0xff8>
80002930: 20000737 lui a4,0x20000
80002934: 0cf70713 addi a4,a4,207 # 200000cf <_start-0x5fffff31>
80002938: fff00593 li a1,-1
8000293c: 0017e793 ori a5,a5,1
80002940: 00002617 auipc a2,0x2
80002944: 6c060613 addi a2,a2,1728 # 80005000 <pt>
80002948: ed010113 addi sp,sp,-304
8000294c: 03f59813 slli a6,a1,0x3f
80002950: 00005697 auipc a3,0x5
80002954: 6ae6b423 sd a4,1704(a3) # 80007ff8 <pt+0x2ff8>
80002958: 00003717 auipc a4,0x3
8000295c: 6af73423 sd a5,1704(a4) # 80006000 <pt+0x1000>
80002960: 00c65793 srli a5,a2,0xc
80002964: 12113423 sd ra,296(sp)
80002968: 12813023 sd s0,288(sp)
8000296c: 0107e7b3 or a5,a5,a6
80002970: 18079073 csrw satp,a5
80002974: 01f00793 li a5,31
80002978: 00b5d593 srli a1,a1,0xb
8000297c: 00000297 auipc t0,0x0
80002980: 01428293 addi t0,t0,20 # 80002990 <vm_boot+0xb0>
80002984: 305292f3 csrrw t0,mtvec,t0
80002988: 3b059073 csrw pmpaddr0,a1
8000298c: 3a079073 csrw pmpcfg0,a5
80002990: bff00813 li a6,-1025
80002994: 01581813 slli a6,a6,0x15
80002998: ffffd797 auipc a5,0xffffd
8000299c: 73078793 addi a5,a5,1840 # 800000c8 <trap_entry>
800029a0: 010787b3 add a5,a5,a6
800029a4: 10579073 csrw stvec,a5
800029a8: 340027f3 csrr a5,mscratch
800029ac: 010787b3 add a5,a5,a6
800029b0: 14079073 csrw sscratch,a5
800029b4: 0000b7b7 lui a5,0xb
800029b8: 1007879b addiw a5,a5,256
800029bc: 30279073 csrw medeleg,a5
800029c0: 0001e7b7 lui a5,0x1e
800029c4: 30079073 csrw mstatus,a5
800029c8: 30405073 csrwi mie,0
800029cc: 00006697 auipc a3,0x6
800029d0: 63468693 addi a3,a3,1588 # 80009000 <freelist_nodes>
800029d4: 010687b3 add a5,a3,a6
800029d8: 3e078713 addi a4,a5,992 # 1e3e0 <_start-0x7ffe1c20>
800029dc: 00007617 auipc a2,0x7
800029e0: e0f63623 sd a5,-500(a2) # 800097e8 <freelist_head>
800029e4: 00007797 auipc a5,0x7
800029e8: dee7be23 sd a4,-516(a5) # 800097e0 <freelist_tail>
800029ec: 00007317 auipc t1,0x7
800029f0: a0430313 addi t1,t1,-1532 # 800093f0 <user_mapping>
800029f4: 00a00793 li a5,10
800029f8: 000808b7 lui a7,0x80
800029fc: 01080813 addi a6,a6,16
80002a00: 03f7871b addiw a4,a5,63
80002a04: 02071713 slli a4,a4,0x20
80002a08: 0017d61b srliw a2,a5,0x1
80002a0c: 02075713 srli a4,a4,0x20
80002a10: 00c7c7b3 xor a5,a5,a2
80002a14: 01170733 add a4,a4,a7
80002a18: 010685b3 add a1,a3,a6
80002a1c: 00c71713 slli a4,a4,0xc
80002a20: 0057979b slliw a5,a5,0x5
80002a24: 00e6b023 sd a4,0(a3)
80002a28: 00b6b423 sd a1,8(a3)
80002a2c: 0207f793 andi a5,a5,32
80002a30: 01068693 addi a3,a3,16
80002a34: 00c7e7b3 or a5,a5,a2
80002a38: fcd314e3 bne t1,a3,80002a00 <vm_boot+0x120>
80002a3c: 00050413 mv s0,a0
80002a40: 12000613 li a2,288
80002a44: 00000593 li a1,0
80002a48: 00010513 mv a0,sp
80002a4c: 00007797 auipc a5,0x7
80002a50: 9807be23 sd zero,-1636(a5) # 800093e8 <freelist_nodes+0x3e8>
80002a54: e08ff0ef jal ra,8000205c <memset>
80002a58: 800007b7 lui a5,0x80000
80002a5c: 00f40433 add s0,s0,a5
80002a60: 00010513 mv a0,sp
80002a64: 10813423 sd s0,264(sp)
80002a68: dd8fd0ef jal ra,80000040 <pop_tf>
80002a6c: 12813083 ld ra,296(sp)
80002a70: 12013403 ld s0,288(sp)
80002a74: 13010113 addi sp,sp,304
80002a78: 00008067 ret
80002a7c: 036b47b7 lui a5,0x36b4
80002a80: 000805b7 lui a1,0x80
80002a84: c8578793 addi a5,a5,-891 # 36b3c85 <_start-0x7c94c37b>
80002a88: ffc58593 addi a1,a1,-4 # 7fffc <_start-0x7ff80004>
80002a8c: 00100613 li a2,1
80002a90: 00b7f733 and a4,a5,a1
80002a94: 01f61613 slli a2,a2,0x1f
80002a98: 0017f693 andi a3,a5,1
80002a9c: 02079793 slli a5,a5,0x20
80002aa0: 0207d793 srli a5,a5,0x20
80002aa4: 00c70733 add a4,a4,a2
80002aa8: 02068263 beqz a3,80002acc <vm_boot+0x1ec>
80002aac: 0007202f amoadd.w zero,zero,(a4)
80002ab0: 0017d793 srli a5,a5,0x1
80002ab4: 00b7f733 and a4,a5,a1
80002ab8: 0017f693 andi a3,a5,1
80002abc: 02079793 slli a5,a5,0x20
80002ac0: 0207d793 srli a5,a5,0x20
80002ac4: 00c70733 add a4,a4,a2
80002ac8: fe0692e3 bnez a3,80002aac <vm_boot+0x1cc>
80002acc: 00072003 lw zero,0(a4)
80002ad0: 0017d793 srli a5,a5,0x1
80002ad4: fe1ff06f j 80002ab4 <vm_boot+0x1d4>
0000000080002ad8 <extra_boot>:
80002ad8: 00008067 ret
0000000080002adc <userstart>:
80002adc: 00001097 auipc ra,0x1
80002ae0: 52408093 addi ra,ra,1316 # 80004000 <begin_signature>
80002ae4: 00550137 lui sp,0x550
80002ae8: 0551011b addiw sp,sp,85
80002aec: 01011113 slli sp,sp,0x10
80002af0: 05510113 addi sp,sp,85 # 550055 <_start-0x7faaffab>
80002af4: 01111113 slli sp,sp,0x11
80002af8: 0aa10113 addi sp,sp,170
80002afc: 0020b023 sd sp,0(ra)
80002b00: 0000bf03 ld t5,0(ra)
80002b04: 00550eb7 lui t4,0x550
80002b08: 055e8e9b addiw t4,t4,85
80002b0c: 010e9e93 slli t4,t4,0x10
80002b10: 055e8e93 addi t4,t4,85 # 550055 <_start-0x7faaffab>
80002b14: 011e9e93 slli t4,t4,0x11
80002b18: 0aae8e93 addi t4,t4,170
80002b1c: 00200193 li gp,2
80002b20: 61df1063 bne t5,t4,80003120 <fail>
0000000080002b24 <test_3>:
80002b24: 00001097 auipc ra,0x1
80002b28: 4dc08093 addi ra,ra,1244 # 80004000 <begin_signature>
80002b2c: ffd50137 lui sp,0xffd50
80002b30: 0551011b addiw sp,sp,85
80002b34: 01011113 slli sp,sp,0x10
80002b38: 05510113 addi sp,sp,85 # ffffffffffd50055 <_end+0xffffffff7fd46865>
80002b3c: 00d11113 slli sp,sp,0xd
80002b40: 00b10113 addi sp,sp,11
80002b44: 00c11113 slli sp,sp,0xc
80002b48: a0010113 addi sp,sp,-1536
80002b4c: 0020b423 sd sp,8(ra)
80002b50: 0080bf03 ld t5,8(ra)
80002b54: ffd50eb7 lui t4,0xffd50
80002b58: 055e8e9b addiw t4,t4,85
80002b5c: 010e9e93 slli t4,t4,0x10
80002b60: 055e8e93 addi t4,t4,85 # ffffffffffd50055 <_end+0xffffffff7fd46865>
80002b64: 00de9e93 slli t4,t4,0xd
80002b68: 00be8e93 addi t4,t4,11
80002b6c: 00ce9e93 slli t4,t4,0xc
80002b70: a00e8e93 addi t4,t4,-1536
80002b74: 00300193 li gp,3
80002b78: 5bdf1463 bne t5,t4,80003120 <fail>
0000000080002b7c <test_4>:
80002b7c: 00001097 auipc ra,0x1
80002b80: 48408093 addi ra,ra,1156 # 80004000 <begin_signature>
80002b84: 00550137 lui sp,0x550
80002b88: 0551011b addiw sp,sp,85
80002b8c: 00d11113 slli sp,sp,0xd
80002b90: 00b10113 addi sp,sp,11 # 55000b <_start-0x7faafff5>
80002b94: 00c11113 slli sp,sp,0xc
80002b98: a0110113 addi sp,sp,-1535
80002b9c: 00c11113 slli sp,sp,0xc
80002ba0: aa010113 addi sp,sp,-1376
80002ba4: 0020b823 sd sp,16(ra)
80002ba8: 0100bf03 ld t5,16(ra)
80002bac: 00550eb7 lui t4,0x550
80002bb0: 055e8e9b addiw t4,t4,85
80002bb4: 00de9e93 slli t4,t4,0xd
80002bb8: 00be8e93 addi t4,t4,11 # 55000b <_start-0x7faafff5>
80002bbc: 00ce9e93 slli t4,t4,0xc
80002bc0: a01e8e93 addi t4,t4,-1535
80002bc4: 00ce9e93 slli t4,t4,0xc
80002bc8: aa0e8e93 addi t4,t4,-1376
80002bcc: 00400193 li gp,4
80002bd0: 55df1863 bne t5,t4,80003120 <fail>
0000000080002bd4 <test_5>:
80002bd4: 00001097 auipc ra,0x1
80002bd8: 42c08093 addi ra,ra,1068 # 80004000 <begin_signature>
80002bdc: fffd0137 lui sp,0xfffd0
80002be0: 0551011b addiw sp,sp,85
80002be4: 01011113 slli sp,sp,0x10
80002be8: 05510113 addi sp,sp,85 # fffffffffffd0055 <_end+0xffffffff7ffc6865>
80002bec: 01011113 slli sp,sp,0x10
80002bf0: 05510113 addi sp,sp,85
80002bf4: 00d11113 slli sp,sp,0xd
80002bf8: 00a10113 addi sp,sp,10
80002bfc: 0020bc23 sd sp,24(ra)
80002c00: 0180bf03 ld t5,24(ra)
80002c04: fffd0eb7 lui t4,0xfffd0
80002c08: 055e8e9b addiw t4,t4,85
80002c0c: 010e9e93 slli t4,t4,0x10
80002c10: 055e8e93 addi t4,t4,85 # fffffffffffd0055 <_end+0xffffffff7ffc6865>
80002c14: 010e9e93 slli t4,t4,0x10
80002c18: 055e8e93 addi t4,t4,85
80002c1c: 00de9e93 slli t4,t4,0xd
80002c20: 00ae8e93 addi t4,t4,10
80002c24: 00500193 li gp,5
80002c28: 4fdf1c63 bne t5,t4,80003120 <fail>
0000000080002c2c <test_6>:
80002c2c: 00001097 auipc ra,0x1
80002c30: 40c08093 addi ra,ra,1036 # 80004038 <tdat8>
80002c34: 00550137 lui sp,0x550
80002c38: 0551011b addiw sp,sp,85
80002c3c: 01011113 slli sp,sp,0x10
80002c40: 05510113 addi sp,sp,85 # 550055 <_start-0x7faaffab>
80002c44: 01111113 slli sp,sp,0x11
80002c48: 0aa10113 addi sp,sp,170
80002c4c: fe20b423 sd sp,-24(ra)
80002c50: fe80bf03 ld t5,-24(ra)
80002c54: 00550eb7 lui t4,0x550
80002c58: 055e8e9b addiw t4,t4,85
80002c5c: 010e9e93 slli t4,t4,0x10
80002c60: 055e8e93 addi t4,t4,85 # 550055 <_start-0x7faaffab>
80002c64: 011e9e93 slli t4,t4,0x11
80002c68: 0aae8e93 addi t4,t4,170
80002c6c: 00600193 li gp,6
80002c70: 4bdf1863 bne t5,t4,80003120 <fail>
0000000080002c74 <test_7>:
80002c74: 00001097 auipc ra,0x1
80002c78: 3c408093 addi ra,ra,964 # 80004038 <tdat8>
80002c7c: ffd50137 lui sp,0xffd50
80002c80: 0551011b addiw sp,sp,85
80002c84: 01011113 slli sp,sp,0x10
80002c88: 05510113 addi sp,sp,85 # ffffffffffd50055 <_end+0xffffffff7fd46865>
80002c8c: 00d11113 slli sp,sp,0xd
80002c90: 00b10113 addi sp,sp,11
80002c94: 00c11113 slli sp,sp,0xc
80002c98: a0010113 addi sp,sp,-1536
80002c9c: fe20b823 sd sp,-16(ra)
80002ca0: ff00bf03 ld t5,-16(ra)
80002ca4: ffd50eb7 lui t4,0xffd50
80002ca8: 055e8e9b addiw t4,t4,85
80002cac: 010e9e93 slli t4,t4,0x10
80002cb0: 055e8e93 addi t4,t4,85 # ffffffffffd50055 <_end+0xffffffff7fd46865>
80002cb4: 00de9e93 slli t4,t4,0xd
80002cb8: 00be8e93 addi t4,t4,11
80002cbc: 00ce9e93 slli t4,t4,0xc
80002cc0: a00e8e93 addi t4,t4,-1536
80002cc4: 00700193 li gp,7
80002cc8: 45df1c63 bne t5,t4,80003120 <fail>
0000000080002ccc <test_8>:
80002ccc: 00001097 auipc ra,0x1
80002cd0: 36c08093 addi ra,ra,876 # 80004038 <tdat8>
80002cd4: 00550137 lui sp,0x550
80002cd8: 0551011b addiw sp,sp,85
80002cdc: 00d11113 slli sp,sp,0xd
80002ce0: 00b10113 addi sp,sp,11 # 55000b <_start-0x7faafff5>
80002ce4: 00c11113 slli sp,sp,0xc
80002ce8: a0110113 addi sp,sp,-1535
80002cec: 00c11113 slli sp,sp,0xc
80002cf0: aa010113 addi sp,sp,-1376
80002cf4: fe20bc23 sd sp,-8(ra)
80002cf8: ff80bf03 ld t5,-8(ra)
80002cfc: 00550eb7 lui t4,0x550
80002d00: 055e8e9b addiw t4,t4,85
80002d04: 00de9e93 slli t4,t4,0xd
80002d08: 00be8e93 addi t4,t4,11 # 55000b <_start-0x7faafff5>
80002d0c: 00ce9e93 slli t4,t4,0xc
80002d10: a01e8e93 addi t4,t4,-1535
80002d14: 00ce9e93 slli t4,t4,0xc
80002d18: aa0e8e93 addi t4,t4,-1376
80002d1c: 00800193 li gp,8
80002d20: 41df1063 bne t5,t4,80003120 <fail>
0000000080002d24 <test_9>:
80002d24: 00001097 auipc ra,0x1
80002d28: 31408093 addi ra,ra,788 # 80004038 <tdat8>
80002d2c: fffd0137 lui sp,0xfffd0
80002d30: 0551011b addiw sp,sp,85
80002d34: 01011113 slli sp,sp,0x10
80002d38: 05510113 addi sp,sp,85 # fffffffffffd0055 <_end+0xffffffff7ffc6865>
80002d3c: 01011113 slli sp,sp,0x10
80002d40: 05510113 addi sp,sp,85
80002d44: 00d11113 slli sp,sp,0xd
80002d48: 00a10113 addi sp,sp,10
80002d4c: 0020b023 sd sp,0(ra)
80002d50: 0000bf03 ld t5,0(ra)
80002d54: fffd0eb7 lui t4,0xfffd0
80002d58: 055e8e9b addiw t4,t4,85
80002d5c: 010e9e93 slli t4,t4,0x10
80002d60: 055e8e93 addi t4,t4,85 # fffffffffffd0055 <_end+0xffffffff7ffc6865>
80002d64: 010e9e93 slli t4,t4,0x10
80002d68: 055e8e93 addi t4,t4,85
80002d6c: 00de9e93 slli t4,t4,0xd
80002d70: 00ae8e93 addi t4,t4,10
80002d74: 00900193 li gp,9
80002d78: 3bdf1463 bne t5,t4,80003120 <fail>
0000000080002d7c <test_10>:
80002d7c: 00001097 auipc ra,0x1
80002d80: 2c408093 addi ra,ra,708 # 80004040 <tdat9>
80002d84: 00247137 lui sp,0x247
80002d88: 8ad1011b addiw sp,sp,-1875
80002d8c: 00e11113 slli sp,sp,0xe
80002d90: c0910113 addi sp,sp,-1015 # 246c09 <_start-0x7fdb93f7>
80002d94: 00d11113 slli sp,sp,0xd
80002d98: 34510113 addi sp,sp,837
80002d9c: 00c11113 slli sp,sp,0xc
80002da0: 67810113 addi sp,sp,1656
80002da4: fe008213 addi tp,ra,-32
80002da8: 02223023 sd sp,32(tp) # 20 <_start-0x7fffffe0>
80002dac: 0000b283 ld t0,0(ra)
80002db0: 00247eb7 lui t4,0x247
80002db4: 8ade8e9b addiw t4,t4,-1875
80002db8: 00ee9e93 slli t4,t4,0xe
80002dbc: c09e8e93 addi t4,t4,-1015 # 246c09 <_start-0x7fdb93f7>
80002dc0: 00de9e93 slli t4,t4,0xd
80002dc4: 345e8e93 addi t4,t4,837
80002dc8: 00ce9e93 slli t4,t4,0xc
80002dcc: 678e8e93 addi t4,t4,1656
80002dd0: 00a00193 li gp,10
80002dd4: 35d29663 bne t0,t4,80003120 <fail>
0000000080002dd8 <test_11>:
80002dd8: 00001097 auipc ra,0x1
80002ddc: 26808093 addi ra,ra,616 # 80004040 <tdat9>
80002de0: 00b04137 lui sp,0xb04
80002de4: 2611011b addiw sp,sp,609
80002de8: 00c11113 slli sp,sp,0xc
80002dec: 30b10113 addi sp,sp,779 # b0430b <_start-0x7f4fbcf5>
80002df0: 00f11113 slli sp,sp,0xf
80002df4: 21310113 addi sp,sp,531
80002df8: 00c11113 slli sp,sp,0xc
80002dfc: 09810113 addi sp,sp,152
80002e00: ffd08093 addi ra,ra,-3
80002e04: 0020b5a3 sd sp,11(ra)
80002e08: 00001217 auipc tp,0x1
80002e0c: 24020213 addi tp,tp,576 # 80004048 <tdat10>
80002e10: 00023283 ld t0,0(tp) # 0 <_start-0x80000000>
80002e14: 00b04eb7 lui t4,0xb04
80002e18: 261e8e9b addiw t4,t4,609
80002e1c: 00ce9e93 slli t4,t4,0xc
80002e20: 30be8e93 addi t4,t4,779 # b0430b <_start-0x7f4fbcf5>
80002e24: 00fe9e93 slli t4,t4,0xf
80002e28: 213e8e93 addi t4,t4,531
80002e2c: 00ce9e93 slli t4,t4,0xc
80002e30: 098e8e93 addi t4,t4,152
80002e34: 00b00193 li gp,11
80002e38: 2fd29463 bne t0,t4,80003120 <fail>
0000000080002e3c <test_12>:
80002e3c: 00c00193 li gp,12
80002e40: 00000213 li tp,0
80002e44: 0abbd0b7 lui ra,0xabbd
80002e48: cdd0809b addiw ra,ra,-803
80002e4c: 00001117 auipc sp,0x1
80002e50: 1b410113 addi sp,sp,436 # 80004000 <begin_signature>
80002e54: 00113023 sd ra,0(sp)
80002e58: 00013f03 ld t5,0(sp)
80002e5c: 0abbdeb7 lui t4,0xabbd
80002e60: cdde8e9b addiw t4,t4,-803
80002e64: 2bdf1e63 bne t5,t4,80003120 <fail>
80002e68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002e6c: 00200293 li t0,2
80002e70: fc521ae3 bne tp,t0,80002e44 <test_12+0x8>
0000000080002e74 <test_13>:
80002e74: 00d00193 li gp,13
80002e78: 00000213 li tp,0
80002e7c: 0aabc0b7 lui ra,0xaabc
80002e80: ccd0809b addiw ra,ra,-819
80002e84: 00001117 auipc sp,0x1
80002e88: 17c10113 addi sp,sp,380 # 80004000 <begin_signature>
80002e8c: 00000013 nop
80002e90: 00113423 sd ra,8(sp)
80002e94: 00813f03 ld t5,8(sp)
80002e98: 0aabceb7 lui t4,0xaabc
80002e9c: ccde8e9b addiw t4,t4,-819
80002ea0: 29df1063 bne t5,t4,80003120 <fail>
80002ea4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002ea8: 00200293 li t0,2
80002eac: fc5218e3 bne tp,t0,80002e7c <test_13+0x8>
0000000080002eb0 <test_14>:
80002eb0: 00e00193 li gp,14
80002eb4: 00000213 li tp,0
80002eb8: 0daac0b7 lui ra,0xdaac
80002ebc: bcc0809b addiw ra,ra,-1076
80002ec0: 00001117 auipc sp,0x1
80002ec4: 14010113 addi sp,sp,320 # 80004000 <begin_signature>
80002ec8: 00000013 nop
80002ecc: 00000013 nop
80002ed0: 00113823 sd ra,16(sp)
80002ed4: 01013f03 ld t5,16(sp)
80002ed8: 0daaceb7 lui t4,0xdaac
80002edc: bcce8e9b addiw t4,t4,-1076
80002ee0: 25df1063 bne t5,t4,80003120 <fail>
80002ee4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002ee8: 00200293 li t0,2
80002eec: fc5216e3 bne tp,t0,80002eb8 <test_14+0x8>
0000000080002ef0 <test_15>:
80002ef0: 00f00193 li gp,15
80002ef4: 00000213 li tp,0
80002ef8: 0ddab0b7 lui ra,0xddab
80002efc: bbc0809b addiw ra,ra,-1092
80002f00: 00000013 nop
80002f04: 00001117 auipc sp,0x1
80002f08: 0fc10113 addi sp,sp,252 # 80004000 <begin_signature>
80002f0c: 00113c23 sd ra,24(sp)
80002f10: 01813f03 ld t5,24(sp)
80002f14: 0ddabeb7 lui t4,0xddab
80002f18: bbce8e9b addiw t4,t4,-1092
80002f1c: 21df1263 bne t5,t4,80003120 <fail>
80002f20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002f24: 00200293 li t0,2
80002f28: fc5218e3 bne tp,t0,80002ef8 <test_15+0x8>
0000000080002f2c <test_16>:
80002f2c: 01000193 li gp,16
80002f30: 00000213 li tp,0
80002f34: 0cddb0b7 lui ra,0xcddb
80002f38: abb0809b addiw ra,ra,-1349
80002f3c: 00000013 nop
80002f40: 00001117 auipc sp,0x1
80002f44: 0c010113 addi sp,sp,192 # 80004000 <begin_signature>
80002f48: 00000013 nop
80002f4c: 02113023 sd ra,32(sp)
80002f50: 02013f03 ld t5,32(sp)
80002f54: 0cddbeb7 lui t4,0xcddb
80002f58: abbe8e9b addiw t4,t4,-1349
80002f5c: 1ddf1263 bne t5,t4,80003120 <fail>
80002f60: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002f64: 00200293 li t0,2
80002f68: fc5216e3 bne tp,t0,80002f34 <test_16+0x8>
0000000080002f6c <test_17>:
80002f6c: 01100193 li gp,17
80002f70: 00000213 li tp,0
80002f74: 0ccde0b7 lui ra,0xccde
80002f78: aab0809b addiw ra,ra,-1365
80002f7c: 00000013 nop
80002f80: 00000013 nop
80002f84: 00001117 auipc sp,0x1
80002f88: 07c10113 addi sp,sp,124 # 80004000 <begin_signature>
80002f8c: 02113423 sd ra,40(sp)
80002f90: 02813f03 ld t5,40(sp)
80002f94: 0ccdeeb7 lui t4,0xccde
80002f98: aabe8e9b addiw t4,t4,-1365
80002f9c: 19df1263 bne t5,t4,80003120 <fail>
80002fa0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002fa4: 00200293 li t0,2
80002fa8: fc5216e3 bne tp,t0,80002f74 <test_17+0x8>
0000000080002fac <test_18>:
80002fac: 01200193 li gp,18
80002fb0: 00000213 li tp,0
80002fb4: 00001117 auipc sp,0x1
80002fb8: 04c10113 addi sp,sp,76 # 80004000 <begin_signature>
80002fbc: 001120b7 lui ra,0x112
80002fc0: 2330809b addiw ra,ra,563
80002fc4: 00113023 sd ra,0(sp)
80002fc8: 00013f03 ld t5,0(sp)
80002fcc: 00112eb7 lui t4,0x112
80002fd0: 233e8e9b addiw t4,t4,563
80002fd4: 15df1663 bne t5,t4,80003120 <fail>
80002fd8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80002fdc: 00200293 li t0,2
80002fe0: fc521ae3 bne tp,t0,80002fb4 <test_18+0x8>
0000000080002fe4 <test_19>:
80002fe4: 01300193 li gp,19
80002fe8: 00000213 li tp,0
80002fec: 00001117 auipc sp,0x1
80002ff0: 01410113 addi sp,sp,20 # 80004000 <begin_signature>
80002ff4: 300110b7 lui ra,0x30011
80002ff8: 2230809b addiw ra,ra,547
80002ffc: 00000013 nop
80003000: 00113423 sd ra,8(sp)
80003004: 00813f03 ld t5,8(sp)
80003008: 30011eb7 lui t4,0x30011
8000300c: 223e8e9b addiw t4,t4,547
80003010: 11df1863 bne t5,t4,80003120 <fail>
80003014: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80003018: 00200293 li t0,2
8000301c: fc5218e3 bne tp,t0,80002fec <test_19+0x8>
0000000080003020 <test_20>:
80003020: 01400193 li gp,20
80003024: 00000213 li tp,0
80003028: 00001117 auipc sp,0x1
8000302c: fd810113 addi sp,sp,-40 # 80004000 <begin_signature>
80003030: 330010b7 lui ra,0x33001
80003034: 1220809b addiw ra,ra,290
80003038: 00000013 nop
8000303c: 00000013 nop
80003040: 00113823 sd ra,16(sp)
80003044: 01013f03 ld t5,16(sp)
80003048: 33001eb7 lui t4,0x33001
8000304c: 122e8e9b addiw t4,t4,290
80003050: 0ddf1863 bne t5,t4,80003120 <fail>
80003054: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80003058: 00200293 li t0,2
8000305c: fc5216e3 bne tp,t0,80003028 <test_20+0x8>
0000000080003060 <test_21>:
80003060: 01500193 li gp,21
80003064: 00000213 li tp,0
80003068: 00001117 auipc sp,0x1
8000306c: f9810113 addi sp,sp,-104 # 80004000 <begin_signature>
80003070: 00000013 nop
80003074: 233000b7 lui ra,0x23300
80003078: 1120809b addiw ra,ra,274
8000307c: 00113c23 sd ra,24(sp)
80003080: 01813f03 ld t5,24(sp)
80003084: 23300eb7 lui t4,0x23300
80003088: 112e8e9b addiw t4,t4,274
8000308c: 09df1a63 bne t5,t4,80003120 <fail>
80003090: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80003094: 00200293 li t0,2
80003098: fc5218e3 bne tp,t0,80003068 <test_21+0x8>
000000008000309c <test_22>:
8000309c: 01600193 li gp,22
800030a0: 00000213 li tp,0
800030a4: 00001117 auipc sp,0x1
800030a8: f5c10113 addi sp,sp,-164 # 80004000 <begin_signature>
800030ac: 00000013 nop
800030b0: 223300b7 lui ra,0x22330
800030b4: 0110809b addiw ra,ra,17
800030b8: 00000013 nop
800030bc: 02113023 sd ra,32(sp)
800030c0: 02013f03 ld t5,32(sp)
800030c4: 22330eb7 lui t4,0x22330
800030c8: 011e8e9b addiw t4,t4,17
800030cc: 05df1a63 bne t5,t4,80003120 <fail>
800030d0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
800030d4: 00200293 li t0,2
800030d8: fc5216e3 bne tp,t0,800030a4 <test_22+0x8>
00000000800030dc <test_23>:
800030dc: 01700193 li gp,23
800030e0: 00000213 li tp,0
800030e4: 00001117 auipc sp,0x1
800030e8: f1c10113 addi sp,sp,-228 # 80004000 <begin_signature>
800030ec: 00000013 nop
800030f0: 00000013 nop
800030f4: 122330b7 lui ra,0x12233
800030f8: 0010809b addiw ra,ra,1
800030fc: 02113423 sd ra,40(sp)
80003100: 02813f03 ld t5,40(sp)
80003104: 12233eb7 lui t4,0x12233
80003108: 001e8e9b addiw t4,t4,1
8000310c: 01df1a63 bne t5,t4,80003120 <fail>
80003110: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff>
80003114: 00200293 li t0,2
80003118: fc5216e3 bne tp,t0,800030e4 <test_23+0x8>
8000311c: 00301a63 bne zero,gp,80003130 <pass>
0000000080003120 <fail>:
80003120: 00119513 slli a0,gp,0x1
80003124: 00050063 beqz a0,80003124 <fail+0x4>
80003128: 00156513 ori a0,a0,1
8000312c: 00000073 ecall
0000000080003130 <pass>:
80003130: 00100513 li a0,1
80003134: 00000073 ecall
80003138: c0001073 unimp
Disassembly of section .data:
0000000080004000 <begin_signature>:
80004000: deadbeef jal t4,7ffdf5ea <_start-0x20a16>
80004004: deadbeef jal t4,7ffdf5ee <_start-0x20a12>
0000000080004008 <tdat2>:
80004008: deadbeef jal t4,7ffdf5f2 <_start-0x20a0e>
8000400c: deadbeef jal t4,7ffdf5f6 <_start-0x20a0a>
0000000080004010 <tdat3>:
80004010: deadbeef jal t4,7ffdf5fa <_start-0x20a06>
80004014: deadbeef jal t4,7ffdf5fe <_start-0x20a02>
0000000080004018 <tdat4>:
80004018: deadbeef jal t4,7ffdf602 <_start-0x209fe>
8000401c: deadbeef jal t4,7ffdf606 <_start-0x209fa>
0000000080004020 <tdat5>:
80004020: deadbeef jal t4,7ffdf60a <_start-0x209f6>
80004024: deadbeef jal t4,7ffdf60e <_start-0x209f2>
0000000080004028 <tdat6>:
80004028: deadbeef jal t4,7ffdf612 <_start-0x209ee>
8000402c: deadbeef jal t4,7ffdf616 <_start-0x209ea>
0000000080004030 <tdat7>:
80004030: deadbeef jal t4,7ffdf61a <_start-0x209e6>
80004034: deadbeef jal t4,7ffdf61e <_start-0x209e2>
0000000080004038 <tdat8>:
80004038: deadbeef jal t4,7ffdf622 <_start-0x209de>
8000403c: deadbeef jal t4,7ffdf626 <_start-0x209da>
0000000080004040 <tdat9>:
80004040: deadbeef jal t4,7ffdf62a <_start-0x209d6>
80004044: deadbeef jal t4,7ffdf62e <_start-0x209d2>
0000000080004048 <tdat10>:
80004048: deadbeef jal t4,7ffdf632 <_start-0x209ce>
8000404c: deadbeef jal t4,7ffdf636 <_start-0x209ca>