Files
vortex/driver/tests/demo/kernel.dump

814 lines
34 KiB
Plaintext

kernel.elf: file format elf32-littleriscv
Disassembly of section .init:
80000000 <_start>:
80000000: 00000597 auipc a1,0x0
80000004: 0e058593 addi a1,a1,224 # 800000e0 <vx_set_sp>
80000008: fc102573 csrr a0,0xfc1
8000000c: 00b5106b 0xb5106b
80000010: 0d0000ef jal ra,800000e0 <vx_set_sp>
80000014: 00100513 li a0,1
80000018: 0005006b 0x5006b
8000001c: 00002517 auipc a0,0x2
80000020: ef050513 addi a0,a0,-272 # 80001f0c <g_wspawn_args>
80000024: 00002617 auipc a2,0x2
80000028: f6860613 addi a2,a2,-152 # 80001f8c <__BSS_END__>
8000002c: 40a60633 sub a2,a2,a0
80000030: 00000593 li a1,0
80000034: 009000ef jal ra,8000083c <memset>
80000038: 00000517 auipc a0,0x0
8000003c: 70c50513 addi a0,a0,1804 # 80000744 <__libc_fini_array>
80000040: 6bc000ef jal ra,800006fc <atexit>
80000044: 75c000ef jal ra,800007a0 <__libc_init_array>
80000048: 008000ef jal ra,80000050 <main>
8000004c: 6c40006f j 80000710 <exit>
Disassembly of section .text:
80000050 <main>:
80000050: 7ffff7b7 lui a5,0x7ffff
80000054: 0007a503 lw a0,0(a5) # 7ffff000 <__stack_size+0x7fffec00>
80000058: 800005b7 lui a1,0x80000
8000005c: 7ffff637 lui a2,0x7ffff
80000060: 08058593 addi a1,a1,128 # 80000080 <__stack_top+0x81000080>
80000064: 3100006f j 80000374 <vx_spawn_tasks>
80000068 <register_fini>:
80000068: 00000793 li a5,0
8000006c: 00078863 beqz a5,8000007c <register_fini+0x14>
80000070: 80000537 lui a0,0x80000
80000074: 74450513 addi a0,a0,1860 # 80000744 <__stack_top+0x81000744>
80000078: 6840006f j 800006fc <atexit>
8000007c: 00008067 ret
80000080 <kernel_body>:
80000080: 0045a683 lw a3,4(a1)
80000084: 0085a603 lw a2,8(a1)
80000088: 00c5a703 lw a4,12(a1)
8000008c: 02d50533 mul a0,a0,a3
80000090: 0105a803 lw a6,16(a1)
80000094: 04068063 beqz a3,800000d4 <kernel_body+0x54>
80000098: 00a686b3 add a3,a3,a0
8000009c: 00269693 slli a3,a3,0x2
800000a0: 00251513 slli a0,a0,0x2
800000a4: 00c507b3 add a5,a0,a2
800000a8: 00c686b3 add a3,a3,a2
800000ac: 40c80833 sub a6,a6,a2
800000b0: 40c70533 sub a0,a4,a2
800000b4: 00f50733 add a4,a0,a5
800000b8: 0007a583 lw a1,0(a5)
800000bc: 00072703 lw a4,0(a4)
800000c0: 00f80633 add a2,a6,a5
800000c4: 00478793 addi a5,a5,4
800000c8: 00b70733 add a4,a4,a1
800000cc: 00e62023 sw a4,0(a2) # 7ffff000 <__stack_size+0x7fffec00>
800000d0: fef692e3 bne a3,a5,800000b4 <kernel_body+0x34>
800000d4: 00008067 ret
800000d8 <_exit>:
800000d8: 00000513 li a0,0
800000dc: 0005006b 0x5006b
800000e0 <vx_set_sp>:
800000e0: fc002573 csrr a0,0xfc0
800000e4: 0005006b 0x5006b
800000e8: 00002197 auipc gp,0x2
800000ec: 1f818193 addi gp,gp,504 # 800022e0 <__global_pointer>
800000f0: 7f000117 auipc sp,0x7f000
800000f4: f1010113 addi sp,sp,-240 # ff000000 <__stack_top>
800000f8: 40000593 li a1,1024
800000fc: cc102673 csrr a2,0xcc1
80000100: 02c585b3 mul a1,a1,a2
80000104: 40b10133 sub sp,sp,a1
80000108: cc3026f3 csrr a3,0xcc3
8000010c: 00068663 beqz a3,80000118 <RETURN>
80000110: 00000513 li a0,0
80000114: 0005006b 0x5006b
80000118 <RETURN>:
80000118: 00008067 ret
8000011c <spawn_tasks_callback>:
8000011c: fe010113 addi sp,sp,-32
80000120: 00112e23 sw ra,28(sp)
80000124: 00812c23 sw s0,24(sp)
80000128: 00912a23 sw s1,20(sp)
8000012c: 01212823 sw s2,16(sp)
80000130: 01312623 sw s3,12(sp)
80000134: fc0027f3 csrr a5,0xfc0
80000138: 0007806b 0x7806b
8000013c: cc5026f3 csrr a3,0xcc5
80000140: cc3029f3 csrr s3,0xcc3
80000144: cc002773 csrr a4,0xcc0
80000148: fc002673 csrr a2,0xfc0
8000014c: 800027b7 lui a5,0x80002
80000150: 00269693 slli a3,a3,0x2
80000154: f0c78793 addi a5,a5,-244 # 80001f0c <__stack_top+0x81001f0c>
80000158: 00d787b3 add a5,a5,a3
8000015c: 0007a483 lw s1,0(a5)
80000160: 0104a403 lw s0,16(s1)
80000164: 00c4a683 lw a3,12(s1)
80000168: 0089a933 slt s2,s3,s0
8000016c: 00040793 mv a5,s0
80000170: 00d90933 add s2,s2,a3
80000174: 03368433 mul s0,a3,s3
80000178: 00f9d463 bge s3,a5,80000180 <spawn_tasks_callback+0x64>
8000017c: 00098793 mv a5,s3
80000180: 00f40433 add s0,s0,a5
80000184: 0084a683 lw a3,8(s1)
80000188: 02c40433 mul s0,s0,a2
8000018c: 02e907b3 mul a5,s2,a4
80000190: 00d40433 add s0,s0,a3
80000194: 00f40433 add s0,s0,a5
80000198: 00890933 add s2,s2,s0
8000019c: 01245e63 bge s0,s2,800001b8 <spawn_tasks_callback+0x9c>
800001a0: 0004a783 lw a5,0(s1)
800001a4: 0044a583 lw a1,4(s1)
800001a8: 00040513 mv a0,s0
800001ac: 00140413 addi s0,s0,1
800001b0: 000780e7 jalr a5
800001b4: fe8916e3 bne s2,s0,800001a0 <spawn_tasks_callback+0x84>
800001b8: 0019b993 seqz s3,s3
800001bc: 0009806b 0x9806b
800001c0: 01c12083 lw ra,28(sp)
800001c4: 01812403 lw s0,24(sp)
800001c8: 01412483 lw s1,20(sp)
800001cc: 01012903 lw s2,16(sp)
800001d0: 00c12983 lw s3,12(sp)
800001d4: 02010113 addi sp,sp,32
800001d8: 00008067 ret
800001dc <spawn_kernel_callback>:
800001dc: fe010113 addi sp,sp,-32
800001e0: 00112e23 sw ra,28(sp)
800001e4: 00812c23 sw s0,24(sp)
800001e8: 00912a23 sw s1,20(sp)
800001ec: 01212823 sw s2,16(sp)
800001f0: 01312623 sw s3,12(sp)
800001f4: 01412423 sw s4,8(sp)
800001f8: 01512223 sw s5,4(sp)
800001fc: fc0027f3 csrr a5,0xfc0
80000200: 0007806b 0x7806b
80000204: cc5026f3 csrr a3,0xcc5
80000208: cc302af3 csrr s5,0xcc3
8000020c: cc002773 csrr a4,0xcc0
80000210: fc002673 csrr a2,0xfc0
80000214: 800027b7 lui a5,0x80002
80000218: 00269693 slli a3,a3,0x2
8000021c: f0c78793 addi a5,a5,-244 # 80001f0c <__stack_top+0x81001f0c>
80000220: 00d787b3 add a5,a5,a3
80000224: 0007a403 lw s0,0(a5)
80000228: 01442483 lw s1,20(s0)
8000022c: 01042683 lw a3,16(s0)
80000230: 009aa9b3 slt s3,s5,s1
80000234: 00048793 mv a5,s1
80000238: 00d989b3 add s3,s3,a3
8000023c: 035684b3 mul s1,a3,s5
80000240: 00fad463 bge s5,a5,80000248 <spawn_kernel_callback+0x6c>
80000244: 000a8793 mv a5,s5
80000248: 00f484b3 add s1,s1,a5
8000024c: 00042583 lw a1,0(s0)
80000250: 00c42683 lw a3,12(s0)
80000254: 0005aa03 lw s4,0(a1)
80000258: 0045a903 lw s2,4(a1)
8000025c: 02c484b3 mul s1,s1,a2
80000260: 02e987b3 mul a5,s3,a4
80000264: 00d484b3 add s1,s1,a3
80000268: 00f484b3 add s1,s1,a5
8000026c: 009989b3 add s3,s3,s1
80000270: 032a0933 mul s2,s4,s2
80000274: 0534cc63 blt s1,s3,800002cc <spawn_kernel_callback+0xf0>
80000278: 0800006f j 800002f8 <spawn_kernel_callback+0x11c>
8000027c: 0324c733 div a4,s1,s2
80000280: 01944683 lbu a3,25(s0)
80000284: 032707b3 mul a5,a4,s2
80000288: 40f487b3 sub a5,s1,a5
8000028c: 06068063 beqz a3,800002ec <spawn_kernel_callback+0x110>
80000290: 0347c6b3 div a3,a5,s4
80000294: 0145ae03 lw t3,20(a1)
80000298: 0105a303 lw t1,16(a1)
8000029c: 00c5a603 lw a2,12(a1)
800002a0: 00442803 lw a6,4(s0)
800002a4: 00842503 lw a0,8(s0)
800002a8: 00148493 addi s1,s1,1
800002ac: 01c70733 add a4,a4,t3
800002b0: 034688b3 mul a7,a3,s4
800002b4: 006686b3 add a3,a3,t1
800002b8: 411787b3 sub a5,a5,a7
800002bc: 00c78633 add a2,a5,a2
800002c0: 000800e7 jalr a6
800002c4: 02998a63 beq s3,s1,800002f8 <spawn_kernel_callback+0x11c>
800002c8: 00042583 lw a1,0(s0)
800002cc: 01844783 lbu a5,24(s0)
800002d0: fa0796e3 bnez a5,8000027c <spawn_kernel_callback+0xa0>
800002d4: 01a44703 lbu a4,26(s0)
800002d8: 01944683 lbu a3,25(s0)
800002dc: 40e4d733 sra a4,s1,a4
800002e0: 032707b3 mul a5,a4,s2
800002e4: 40f487b3 sub a5,s1,a5
800002e8: fa0694e3 bnez a3,80000290 <spawn_kernel_callback+0xb4>
800002ec: 01b44683 lbu a3,27(s0)
800002f0: 40d7d6b3 sra a3,a5,a3
800002f4: fa1ff06f j 80000294 <spawn_kernel_callback+0xb8>
800002f8: 001aba93 seqz s5,s5
800002fc: 000a806b 0xa806b
80000300: 01c12083 lw ra,28(sp)
80000304: 01812403 lw s0,24(sp)
80000308: 01412483 lw s1,20(sp)
8000030c: 01012903 lw s2,16(sp)
80000310: 00c12983 lw s3,12(sp)
80000314: 00812a03 lw s4,8(sp)
80000318: 00412a83 lw s5,4(sp)
8000031c: 02010113 addi sp,sp,32
80000320: 00008067 ret
80000324 <spawn_remaining_tasks_callback>:
80000324: ff010113 addi sp,sp,-16
80000328: 00112623 sw ra,12(sp)
8000032c: 0005006b 0x5006b
80000330: cc502773 csrr a4,0xcc5
80000334: cc202573 csrr a0,0xcc2
80000338: 800027b7 lui a5,0x80002
8000033c: 00271713 slli a4,a4,0x2
80000340: f0c78793 addi a5,a5,-244 # 80001f0c <__stack_top+0x81001f0c>
80000344: 00e787b3 add a5,a5,a4
80000348: 0007a783 lw a5,0(a5)
8000034c: 0087a683 lw a3,8(a5)
80000350: 0007a703 lw a4,0(a5)
80000354: 0047a583 lw a1,4(a5)
80000358: 00d50533 add a0,a0,a3
8000035c: 000700e7 jalr a4
80000360: 00100793 li a5,1
80000364: 0007806b 0x7806b
80000368: 00c12083 lw ra,12(sp)
8000036c: 01010113 addi sp,sp,16
80000370: 00008067 ret
80000374 <vx_spawn_tasks>:
80000374: fc010113 addi sp,sp,-64
80000378: 02112e23 sw ra,60(sp)
8000037c: 02812c23 sw s0,56(sp)
80000380: 02912a23 sw s1,52(sp)
80000384: 03212823 sw s2,48(sp)
80000388: 03312623 sw s3,44(sp)
8000038c: fc2026f3 csrr a3,0xfc2
80000390: fc102873 csrr a6,0xfc1
80000394: fc002473 csrr s0,0xfc0
80000398: cc5027f3 csrr a5,0xcc5
8000039c: 01f00713 li a4,31
800003a0: 0cf74463 blt a4,a5,80000468 <vx_spawn_tasks+0xf4>
800003a4: 030408b3 mul a7,s0,a6
800003a8: 00100713 li a4,1
800003ac: 00a8d463 bge a7,a0,800003b4 <vx_spawn_tasks+0x40>
800003b0: 03154733 div a4,a0,a7
800003b4: 0ce6c863 blt a3,a4,80000484 <vx_spawn_tasks+0x110>
800003b8: 0ae7d863 bge a5,a4,80000468 <vx_spawn_tasks+0xf4>
800003bc: fff68693 addi a3,a3,-1
800003c0: 02e54333 div t1,a0,a4
800003c4: 00030893 mv a7,t1
800003c8: 00f69663 bne a3,a5,800003d4 <vx_spawn_tasks+0x60>
800003cc: 02e56533 rem a0,a0,a4
800003d0: 006508b3 add a7,a0,t1
800003d4: 0288c4b3 div s1,a7,s0
800003d8: 0288e933 rem s2,a7,s0
800003dc: 0b04ca63 blt s1,a6,80000490 <vx_spawn_tasks+0x11c>
800003e0: 00100693 li a3,1
800003e4: 0304c733 div a4,s1,a6
800003e8: 00070663 beqz a4,800003f4 <vx_spawn_tasks+0x80>
800003ec: 00070693 mv a3,a4
800003f0: 0304e733 rem a4,s1,a6
800003f4: 800029b7 lui s3,0x80002
800003f8: f0c98993 addi s3,s3,-244 # 80001f0c <__stack_top+0x81001f0c>
800003fc: 00e12e23 sw a4,28(sp)
80000400: 00c10713 addi a4,sp,12
80000404: 00b12623 sw a1,12(sp)
80000408: 00c12823 sw a2,16(sp)
8000040c: 00d12c23 sw a3,24(sp)
80000410: 02f30333 mul t1,t1,a5
80000414: 00279793 slli a5,a5,0x2
80000418: 00f987b3 add a5,s3,a5
8000041c: 00e7a023 sw a4,0(a5)
80000420: 00612a23 sw t1,20(sp)
80000424: 06904c63 bgtz s1,8000049c <vx_spawn_tasks+0x128>
80000428: 04090063 beqz s2,80000468 <vx_spawn_tasks+0xf4>
8000042c: 02848433 mul s0,s1,s0
80000430: 00812a23 sw s0,20(sp)
80000434: 0009006b 0x9006b
80000438: cc5027f3 csrr a5,0xcc5
8000043c: cc202573 csrr a0,0xcc2
80000440: 00279793 slli a5,a5,0x2
80000444: 00f989b3 add s3,s3,a5
80000448: 0009a783 lw a5,0(s3)
8000044c: 0087a683 lw a3,8(a5)
80000450: 0007a703 lw a4,0(a5)
80000454: 0047a583 lw a1,4(a5)
80000458: 00d50533 add a0,a0,a3
8000045c: 000700e7 jalr a4
80000460: 00100793 li a5,1
80000464: 0007806b 0x7806b
80000468: 03c12083 lw ra,60(sp)
8000046c: 03812403 lw s0,56(sp)
80000470: 03412483 lw s1,52(sp)
80000474: 03012903 lw s2,48(sp)
80000478: 02c12983 lw s3,44(sp)
8000047c: 04010113 addi sp,sp,64
80000480: 00008067 ret
80000484: 00068713 mv a4,a3
80000488: f2e7cae3 blt a5,a4,800003bc <vx_spawn_tasks+0x48>
8000048c: fddff06f j 80000468 <vx_spawn_tasks+0xf4>
80000490: 00000713 li a4,0
80000494: 00100693 li a3,1
80000498: f5dff06f j 800003f4 <vx_spawn_tasks+0x80>
8000049c: 00048713 mv a4,s1
800004a0: 00985463 bge a6,s1,800004a8 <vx_spawn_tasks+0x134>
800004a4: 00080713 mv a4,a6
800004a8: 800007b7 lui a5,0x80000
800004ac: 11c78793 addi a5,a5,284 # 8000011c <__stack_top+0x8100011c>
800004b0: 00f7106b 0xf7106b
800004b4: c69ff0ef jal ra,8000011c <spawn_tasks_callback>
800004b8: f71ff06f j 80000428 <vx_spawn_tasks+0xb4>
800004bc <spawn_kernel_remaining_callback>:
800004bc: ff010113 addi sp,sp,-16
800004c0: 00112623 sw ra,12(sp)
800004c4: 0005006b 0x5006b
800004c8: cc5026f3 csrr a3,0xcc5
800004cc: cc2027f3 csrr a5,0xcc2
800004d0: 80002737 lui a4,0x80002
800004d4: 00269693 slli a3,a3,0x2
800004d8: f0c70713 addi a4,a4,-244 # 80001f0c <__stack_top+0x81001f0c>
800004dc: 00d70733 add a4,a4,a3
800004e0: 00072503 lw a0,0(a4)
800004e4: 00052583 lw a1,0(a0)
800004e8: 00c52683 lw a3,12(a0)
800004ec: 01854703 lbu a4,24(a0)
800004f0: 0005a803 lw a6,0(a1)
800004f4: 0045a603 lw a2,4(a1)
800004f8: 00d787b3 add a5,a5,a3
800004fc: 02c80633 mul a2,a6,a2
80000500: 04070e63 beqz a4,8000055c <spawn_kernel_remaining_callback+0xa0>
80000504: 01954683 lbu a3,25(a0)
80000508: 02c7c733 div a4,a5,a2
8000050c: 02c70633 mul a2,a4,a2
80000510: 40c787b3 sub a5,a5,a2
80000514: 06068063 beqz a3,80000574 <spawn_kernel_remaining_callback+0xb8>
80000518: 0307c6b3 div a3,a5,a6
8000051c: 0145ae03 lw t3,20(a1)
80000520: 0105a303 lw t1,16(a1)
80000524: 00c5a603 lw a2,12(a1)
80000528: 00452883 lw a7,4(a0)
8000052c: 00852503 lw a0,8(a0)
80000530: 01c70733 add a4,a4,t3
80000534: 03068833 mul a6,a3,a6
80000538: 006686b3 add a3,a3,t1
8000053c: 410787b3 sub a5,a5,a6
80000540: 00c78633 add a2,a5,a2
80000544: 000880e7 jalr a7
80000548: 00100793 li a5,1
8000054c: 0007806b 0x7806b
80000550: 00c12083 lw ra,12(sp)
80000554: 01010113 addi sp,sp,16
80000558: 00008067 ret
8000055c: 01a54703 lbu a4,26(a0)
80000560: 01954683 lbu a3,25(a0)
80000564: 40e7d733 sra a4,a5,a4
80000568: 02c70633 mul a2,a4,a2
8000056c: 40c787b3 sub a5,a5,a2
80000570: fa0694e3 bnez a3,80000518 <spawn_kernel_remaining_callback+0x5c>
80000574: 01b54683 lbu a3,27(a0)
80000578: 40d7d6b3 sra a3,a5,a3
8000057c: fa1ff06f j 8000051c <spawn_kernel_remaining_callback+0x60>
80000580 <vx_spawn_kernel>:
80000580: fd010113 addi sp,sp,-48
80000584: 02112623 sw ra,44(sp)
80000588: 02812423 sw s0,40(sp)
8000058c: 02912223 sw s1,36(sp)
80000590: 03212023 sw s2,32(sp)
80000594: fc202373 csrr t1,0xfc2
80000598: fc102e73 csrr t3,0xfc1
8000059c: fc002473 csrr s0,0xfc0
800005a0: cc502773 csrr a4,0xcc5
800005a4: 01f00793 li a5,31
800005a8: 0ce7ce63 blt a5,a4,80000684 <vx_spawn_kernel+0x104>
800005ac: 00052803 lw a6,0(a0)
800005b0: 00452783 lw a5,4(a0)
800005b4: 00852883 lw a7,8(a0)
800005b8: 028e0eb3 mul t4,t3,s0
800005bc: 00100693 li a3,1
800005c0: 02f807b3 mul a5,a6,a5
800005c4: 031788b3 mul a7,a5,a7
800005c8: 011ed463 bge t4,a7,800005d0 <vx_spawn_kernel+0x50>
800005cc: 03d8c6b3 div a3,a7,t4
800005d0: 0cd34663 blt t1,a3,8000069c <vx_spawn_kernel+0x11c>
800005d4: 0ad75863 bge a4,a3,80000684 <vx_spawn_kernel+0x104>
800005d8: fff30313 addi t1,t1,-1
800005dc: 02d8ceb3 div t4,a7,a3
800005e0: 000e8493 mv s1,t4
800005e4: 00e31663 bne t1,a4,800005f0 <vx_spawn_kernel+0x70>
800005e8: 02d8e6b3 rem a3,a7,a3
800005ec: 01d684b3 add s1,a3,t4
800005f0: 0284c933 div s2,s1,s0
800005f4: 0284e4b3 rem s1,s1,s0
800005f8: 0bc94863 blt s2,t3,800006a8 <vx_spawn_kernel+0x128>
800005fc: 00100893 li a7,1
80000600: 03c946b3 div a3,s2,t3
80000604: 00068663 beqz a3,80000610 <vx_spawn_kernel+0x90>
80000608: 00068893 mv a7,a3
8000060c: 03c966b3 rem a3,s2,t3
80000610: fff78f13 addi t5,a5,-1
80000614: 00ff7f33 and t5,t5,a5
80000618: 80002337 lui t1,0x80002
8000061c: 4177d793 srai a5,a5,0x17
80000620: f8178793 addi a5,a5,-127
80000624: f0c30313 addi t1,t1,-244 # 80001f0c <__stack_top+0x81001f0c>
80000628: 001f3f13 seqz t5,t5
8000062c: 00f10f23 sb a5,30(sp)
80000630: 00410793 addi a5,sp,4
80000634: 00a12223 sw a0,4(sp)
80000638: 00b12423 sw a1,8(sp)
8000063c: 00c12623 sw a2,12(sp)
80000640: 01112a23 sw a7,20(sp)
80000644: 00d12c23 sw a3,24(sp)
80000648: 01e10e23 sb t5,28(sp)
8000064c: 02ee8fb3 mul t6,t4,a4
80000650: fff80e93 addi t4,a6,-1
80000654: 010efeb3 and t4,t4,a6
80000658: 00271713 slli a4,a4,0x2
8000065c: 41785813 srai a6,a6,0x17
80000660: 001ebe93 seqz t4,t4
80000664: f8180813 addi a6,a6,-127
80000668: 00e30733 add a4,t1,a4
8000066c: 01d10ea3 sb t4,29(sp)
80000670: 01010fa3 sb a6,31(sp)
80000674: 01f12823 sw t6,16(sp)
80000678: 00f72023 sw a5,0(a4)
8000067c: 03204c63 bgtz s2,800006b4 <vx_spawn_kernel+0x134>
80000680: 04049a63 bnez s1,800006d4 <vx_spawn_kernel+0x154>
80000684: 02c12083 lw ra,44(sp)
80000688: 02812403 lw s0,40(sp)
8000068c: 02412483 lw s1,36(sp)
80000690: 02012903 lw s2,32(sp)
80000694: 03010113 addi sp,sp,48
80000698: 00008067 ret
8000069c: 00030693 mv a3,t1
800006a0: f2d74ce3 blt a4,a3,800005d8 <vx_spawn_kernel+0x58>
800006a4: fe1ff06f j 80000684 <vx_spawn_kernel+0x104>
800006a8: 00000693 li a3,0
800006ac: 00100893 li a7,1
800006b0: f61ff06f j 80000610 <vx_spawn_kernel+0x90>
800006b4: 00090713 mv a4,s2
800006b8: 012e5463 bge t3,s2,800006c0 <vx_spawn_kernel+0x140>
800006bc: 000e0713 mv a4,t3
800006c0: 800007b7 lui a5,0x80000
800006c4: 1dc78793 addi a5,a5,476 # 800001dc <__stack_top+0x810001dc>
800006c8: 00f7106b 0xf7106b
800006cc: b11ff0ef jal ra,800001dc <spawn_kernel_callback>
800006d0: fa048ae3 beqz s1,80000684 <vx_spawn_kernel+0x104>
800006d4: 02890433 mul s0,s2,s0
800006d8: 00048513 mv a0,s1
800006dc: 00812823 sw s0,16(sp)
800006e0: dddff0ef jal ra,800004bc <spawn_kernel_remaining_callback>
800006e4: 02c12083 lw ra,44(sp)
800006e8: 02812403 lw s0,40(sp)
800006ec: 02412483 lw s1,36(sp)
800006f0: 02012903 lw s2,32(sp)
800006f4: 03010113 addi sp,sp,48
800006f8: 00008067 ret
800006fc <atexit>:
800006fc: 00050593 mv a1,a0
80000700: 00000693 li a3,0
80000704: 00000613 li a2,0
80000708: 00000513 li a0,0
8000070c: 20c0006f j 80000918 <__register_exitproc>
80000710 <exit>:
80000710: ff010113 addi sp,sp,-16
80000714: 00000593 li a1,0
80000718: 00812423 sw s0,8(sp)
8000071c: 00112623 sw ra,12(sp)
80000720: 00050413 mv s0,a0
80000724: 290000ef jal ra,800009b4 <__call_exitprocs>
80000728: 800027b7 lui a5,0x80002
8000072c: f087a503 lw a0,-248(a5) # 80001f08 <__stack_top+0x81001f08>
80000730: 03c52783 lw a5,60(a0)
80000734: 00078463 beqz a5,8000073c <exit+0x2c>
80000738: 000780e7 jalr a5
8000073c: 00040513 mv a0,s0
80000740: 999ff0ef jal ra,800000d8 <_exit>
80000744 <__libc_fini_array>:
80000744: ff010113 addi sp,sp,-16
80000748: 00812423 sw s0,8(sp)
8000074c: 800027b7 lui a5,0x80002
80000750: 80002437 lui s0,0x80002
80000754: adc40413 addi s0,s0,-1316 # 80001adc <__stack_top+0x81001adc>
80000758: adc78793 addi a5,a5,-1316 # 80001adc <__stack_top+0x81001adc>
8000075c: 408787b3 sub a5,a5,s0
80000760: 00912223 sw s1,4(sp)
80000764: 00112623 sw ra,12(sp)
80000768: 4027d493 srai s1,a5,0x2
8000076c: 02048063 beqz s1,8000078c <__libc_fini_array+0x48>
80000770: ffc78793 addi a5,a5,-4
80000774: 00878433 add s0,a5,s0
80000778: 00042783 lw a5,0(s0)
8000077c: fff48493 addi s1,s1,-1
80000780: ffc40413 addi s0,s0,-4
80000784: 000780e7 jalr a5
80000788: fe0498e3 bnez s1,80000778 <__libc_fini_array+0x34>
8000078c: 00c12083 lw ra,12(sp)
80000790: 00812403 lw s0,8(sp)
80000794: 00412483 lw s1,4(sp)
80000798: 01010113 addi sp,sp,16
8000079c: 00008067 ret
800007a0 <__libc_init_array>:
800007a0: ff010113 addi sp,sp,-16
800007a4: 00812423 sw s0,8(sp)
800007a8: 01212023 sw s2,0(sp)
800007ac: 80002437 lui s0,0x80002
800007b0: 80002937 lui s2,0x80002
800007b4: ad840793 addi a5,s0,-1320 # 80001ad8 <__stack_top+0x81001ad8>
800007b8: ad890913 addi s2,s2,-1320 # 80001ad8 <__stack_top+0x81001ad8>
800007bc: 40f90933 sub s2,s2,a5
800007c0: 00112623 sw ra,12(sp)
800007c4: 00912223 sw s1,4(sp)
800007c8: 40295913 srai s2,s2,0x2
800007cc: 02090063 beqz s2,800007ec <__libc_init_array+0x4c>
800007d0: ad840413 addi s0,s0,-1320
800007d4: 00000493 li s1,0
800007d8: 00042783 lw a5,0(s0)
800007dc: 00148493 addi s1,s1,1
800007e0: 00440413 addi s0,s0,4
800007e4: 000780e7 jalr a5
800007e8: fe9918e3 bne s2,s1,800007d8 <__libc_init_array+0x38>
800007ec: 80002437 lui s0,0x80002
800007f0: 80002937 lui s2,0x80002
800007f4: ad840793 addi a5,s0,-1320 # 80001ad8 <__stack_top+0x81001ad8>
800007f8: adc90913 addi s2,s2,-1316 # 80001adc <__stack_top+0x81001adc>
800007fc: 40f90933 sub s2,s2,a5
80000800: 40295913 srai s2,s2,0x2
80000804: 02090063 beqz s2,80000824 <__libc_init_array+0x84>
80000808: ad840413 addi s0,s0,-1320
8000080c: 00000493 li s1,0
80000810: 00042783 lw a5,0(s0)
80000814: 00148493 addi s1,s1,1
80000818: 00440413 addi s0,s0,4
8000081c: 000780e7 jalr a5
80000820: fe9918e3 bne s2,s1,80000810 <__libc_init_array+0x70>
80000824: 00c12083 lw ra,12(sp)
80000828: 00812403 lw s0,8(sp)
8000082c: 00412483 lw s1,4(sp)
80000830: 00012903 lw s2,0(sp)
80000834: 01010113 addi sp,sp,16
80000838: 00008067 ret
8000083c <memset>:
8000083c: 00f00313 li t1,15
80000840: 00050713 mv a4,a0
80000844: 02c37e63 bgeu t1,a2,80000880 <memset+0x44>
80000848: 00f77793 andi a5,a4,15
8000084c: 0a079063 bnez a5,800008ec <memset+0xb0>
80000850: 08059263 bnez a1,800008d4 <memset+0x98>
80000854: ff067693 andi a3,a2,-16
80000858: 00f67613 andi a2,a2,15
8000085c: 00e686b3 add a3,a3,a4
80000860: 00b72023 sw a1,0(a4)
80000864: 00b72223 sw a1,4(a4)
80000868: 00b72423 sw a1,8(a4)
8000086c: 00b72623 sw a1,12(a4)
80000870: 01070713 addi a4,a4,16
80000874: fed766e3 bltu a4,a3,80000860 <memset+0x24>
80000878: 00061463 bnez a2,80000880 <memset+0x44>
8000087c: 00008067 ret
80000880: 40c306b3 sub a3,t1,a2
80000884: 00269693 slli a3,a3,0x2
80000888: 00000297 auipc t0,0x0
8000088c: 005686b3 add a3,a3,t0
80000890: 00c68067 jr 12(a3)
80000894: 00b70723 sb a1,14(a4)
80000898: 00b706a3 sb a1,13(a4)
8000089c: 00b70623 sb a1,12(a4)
800008a0: 00b705a3 sb a1,11(a4)
800008a4: 00b70523 sb a1,10(a4)
800008a8: 00b704a3 sb a1,9(a4)
800008ac: 00b70423 sb a1,8(a4)
800008b0: 00b703a3 sb a1,7(a4)
800008b4: 00b70323 sb a1,6(a4)
800008b8: 00b702a3 sb a1,5(a4)
800008bc: 00b70223 sb a1,4(a4)
800008c0: 00b701a3 sb a1,3(a4)
800008c4: 00b70123 sb a1,2(a4)
800008c8: 00b700a3 sb a1,1(a4)
800008cc: 00b70023 sb a1,0(a4)
800008d0: 00008067 ret
800008d4: 0ff5f593 andi a1,a1,255
800008d8: 00859693 slli a3,a1,0x8
800008dc: 00d5e5b3 or a1,a1,a3
800008e0: 01059693 slli a3,a1,0x10
800008e4: 00d5e5b3 or a1,a1,a3
800008e8: f6dff06f j 80000854 <memset+0x18>
800008ec: 00279693 slli a3,a5,0x2
800008f0: 00000297 auipc t0,0x0
800008f4: 005686b3 add a3,a3,t0
800008f8: 00008293 mv t0,ra
800008fc: fa0680e7 jalr -96(a3)
80000900: 00028093 mv ra,t0
80000904: ff078793 addi a5,a5,-16
80000908: 40f70733 sub a4,a4,a5
8000090c: 00f60633 add a2,a2,a5
80000910: f6c378e3 bgeu t1,a2,80000880 <memset+0x44>
80000914: f3dff06f j 80000850 <memset+0x14>
80000918 <__register_exitproc>:
80000918: 800027b7 lui a5,0x80002
8000091c: f087a703 lw a4,-248(a5) # 80001f08 <__stack_top+0x81001f08>
80000920: 14872783 lw a5,328(a4)
80000924: 04078c63 beqz a5,8000097c <__register_exitproc+0x64>
80000928: 0047a703 lw a4,4(a5)
8000092c: 01f00813 li a6,31
80000930: 06e84e63 blt a6,a4,800009ac <__register_exitproc+0x94>
80000934: 00271813 slli a6,a4,0x2
80000938: 02050663 beqz a0,80000964 <__register_exitproc+0x4c>
8000093c: 01078333 add t1,a5,a6
80000940: 08c32423 sw a2,136(t1)
80000944: 1887a883 lw a7,392(a5)
80000948: 00100613 li a2,1
8000094c: 00e61633 sll a2,a2,a4
80000950: 00c8e8b3 or a7,a7,a2
80000954: 1917a423 sw a7,392(a5)
80000958: 10d32423 sw a3,264(t1)
8000095c: 00200693 li a3,2
80000960: 02d50463 beq a0,a3,80000988 <__register_exitproc+0x70>
80000964: 00170713 addi a4,a4,1
80000968: 00e7a223 sw a4,4(a5)
8000096c: 010787b3 add a5,a5,a6
80000970: 00b7a423 sw a1,8(a5)
80000974: 00000513 li a0,0
80000978: 00008067 ret
8000097c: 14c70793 addi a5,a4,332
80000980: 14f72423 sw a5,328(a4)
80000984: fa5ff06f j 80000928 <__register_exitproc+0x10>
80000988: 18c7a683 lw a3,396(a5)
8000098c: 00170713 addi a4,a4,1
80000990: 00e7a223 sw a4,4(a5)
80000994: 00c6e633 or a2,a3,a2
80000998: 18c7a623 sw a2,396(a5)
8000099c: 010787b3 add a5,a5,a6
800009a0: 00b7a423 sw a1,8(a5)
800009a4: 00000513 li a0,0
800009a8: 00008067 ret
800009ac: fff00513 li a0,-1
800009b0: 00008067 ret
800009b4 <__call_exitprocs>:
800009b4: fd010113 addi sp,sp,-48
800009b8: 800027b7 lui a5,0x80002
800009bc: 01412c23 sw s4,24(sp)
800009c0: f087aa03 lw s4,-248(a5) # 80001f08 <__stack_top+0x81001f08>
800009c4: 03212023 sw s2,32(sp)
800009c8: 02112623 sw ra,44(sp)
800009cc: 148a2903 lw s2,328(s4)
800009d0: 02812423 sw s0,40(sp)
800009d4: 02912223 sw s1,36(sp)
800009d8: 01312e23 sw s3,28(sp)
800009dc: 01512a23 sw s5,20(sp)
800009e0: 01612823 sw s6,16(sp)
800009e4: 01712623 sw s7,12(sp)
800009e8: 01812423 sw s8,8(sp)
800009ec: 04090063 beqz s2,80000a2c <__call_exitprocs+0x78>
800009f0: 00050b13 mv s6,a0
800009f4: 00058b93 mv s7,a1
800009f8: 00100a93 li s5,1
800009fc: fff00993 li s3,-1
80000a00: 00492483 lw s1,4(s2)
80000a04: fff48413 addi s0,s1,-1
80000a08: 02044263 bltz s0,80000a2c <__call_exitprocs+0x78>
80000a0c: 00249493 slli s1,s1,0x2
80000a10: 009904b3 add s1,s2,s1
80000a14: 040b8463 beqz s7,80000a5c <__call_exitprocs+0xa8>
80000a18: 1044a783 lw a5,260(s1)
80000a1c: 05778063 beq a5,s7,80000a5c <__call_exitprocs+0xa8>
80000a20: fff40413 addi s0,s0,-1
80000a24: ffc48493 addi s1,s1,-4
80000a28: ff3416e3 bne s0,s3,80000a14 <__call_exitprocs+0x60>
80000a2c: 02c12083 lw ra,44(sp)
80000a30: 02812403 lw s0,40(sp)
80000a34: 02412483 lw s1,36(sp)
80000a38: 02012903 lw s2,32(sp)
80000a3c: 01c12983 lw s3,28(sp)
80000a40: 01812a03 lw s4,24(sp)
80000a44: 01412a83 lw s5,20(sp)
80000a48: 01012b03 lw s6,16(sp)
80000a4c: 00c12b83 lw s7,12(sp)
80000a50: 00812c03 lw s8,8(sp)
80000a54: 03010113 addi sp,sp,48
80000a58: 00008067 ret
80000a5c: 00492783 lw a5,4(s2)
80000a60: 0044a683 lw a3,4(s1)
80000a64: fff78793 addi a5,a5,-1
80000a68: 04878e63 beq a5,s0,80000ac4 <__call_exitprocs+0x110>
80000a6c: 0004a223 sw zero,4(s1)
80000a70: fa0688e3 beqz a3,80000a20 <__call_exitprocs+0x6c>
80000a74: 18892783 lw a5,392(s2)
80000a78: 008a9733 sll a4,s5,s0
80000a7c: 00492c03 lw s8,4(s2)
80000a80: 00f777b3 and a5,a4,a5
80000a84: 02079263 bnez a5,80000aa8 <__call_exitprocs+0xf4>
80000a88: 000680e7 jalr a3
80000a8c: 00492703 lw a4,4(s2)
80000a90: 148a2783 lw a5,328(s4)
80000a94: 01871463 bne a4,s8,80000a9c <__call_exitprocs+0xe8>
80000a98: f8f904e3 beq s2,a5,80000a20 <__call_exitprocs+0x6c>
80000a9c: f80788e3 beqz a5,80000a2c <__call_exitprocs+0x78>
80000aa0: 00078913 mv s2,a5
80000aa4: f5dff06f j 80000a00 <__call_exitprocs+0x4c>
80000aa8: 18c92783 lw a5,396(s2)
80000aac: 0844a583 lw a1,132(s1)
80000ab0: 00f77733 and a4,a4,a5
80000ab4: 00071c63 bnez a4,80000acc <__call_exitprocs+0x118>
80000ab8: 000b0513 mv a0,s6
80000abc: 000680e7 jalr a3
80000ac0: fcdff06f j 80000a8c <__call_exitprocs+0xd8>
80000ac4: 00892223 sw s0,4(s2)
80000ac8: fa9ff06f j 80000a70 <__call_exitprocs+0xbc>
80000acc: 00058513 mv a0,a1
80000ad0: 000680e7 jalr a3
80000ad4: fb9ff06f j 80000a8c <__call_exitprocs+0xd8>
Disassembly of section .init_array:
80001ad8 <__init_array_start>:
80001ad8: 0068 addi a0,sp,12
80001ada: 8000 0x8000
Disassembly of section .data:
80001ae0 <impure_data>:
80001ae0: 0000 unimp
80001ae2: 0000 unimp
80001ae4: 1dcc addi a1,sp,756
80001ae6: 8000 0x8000
80001ae8: 1e34 addi a3,sp,824
80001aea: 8000 0x8000
80001aec: 1e9c addi a5,sp,880
80001aee: 8000 0x8000
...
80001b88: 0001 nop
80001b8a: 0000 unimp
80001b8c: 0000 unimp
80001b8e: 0000 unimp
80001b90: 330e fld ft6,224(sp)
80001b92: abcd j 80002184 <__BSS_END__+0x1f8>
80001b94: 1234 addi a3,sp,296
80001b96: e66d bnez a2,80001c80 <impure_data+0x1a0>
80001b98: deec sw a1,124(a3)
80001b9a: 0005 c.nop 1
80001b9c: 0000000b 0xb
...
Disassembly of section .sdata:
80001f08 <_global_impure_ptr>:
80001f08: 1ae0 addi s0,sp,380
80001f0a: 8000 0x8000
Disassembly of section .bss:
80001f0c <g_wspawn_args>:
...
Disassembly of section .comment:
00000000 <.comment>:
0: 3a434347 fmsub.d ft6,ft6,ft4,ft7,rmm
4: 2820 fld fs0,80(s0)
6: 29554e47 fmsub.s ft8,fa0,fs5,ft5,rmm
a: 3920 fld fs0,112(a0)
c: 322e fld ft4,232(sp)
e: 302e fld ft0,232(sp)
...
Disassembly of section .riscv.attributes:
00000000 <.riscv.attributes>:
0: 2541 jal 680 <__stack_size+0x280>
2: 0000 unimp
4: 7200 flw fs0,32(a2)
6: 7369 lui t1,0xffffa
8: 01007663 bgeu zero,a6,14 <__stack_usage+0x14>
c: 0000001b 0x1b
10: 1004 addi s1,sp,32
12: 7205 lui tp,0xfffe1
14: 3376 fld ft6,376(sp)
16: 6932 flw fs2,12(sp)
18: 7032 flw ft0,44(sp)
1a: 5f30 lw a2,120(a4)
1c: 326d jal fffff9c6 <__stack_top+0xfff9c6>
1e: 3070 fld fa2,224(s0)
20: 665f 7032 0030 0x307032665f