diff --git a/runtime/mains/vector_test/vx_vec.s b/runtime/mains/vector_test/vx_vec.s index 36720e57..d06a70da 100644 --- a/runtime/mains/vector_test/vx_vec.s +++ b/runtime/mains/vector_test/vx_vec.s @@ -19,4 +19,5 @@ vx_vec_test: vsw.v v2, (a3) # Store result add a3, a3, t0 # Bump pointer bnez a0, loop # Loop back + vmacc.vv v1, v2, v2 ret # Finished \ No newline at end of file diff --git a/runtime/mains/vector_test/vx_vector_main.c b/runtime/mains/vector_test/vx_vector_main.c index 0649d09d..4ce24229 100644 --- a/runtime/mains/vector_test/vx_vector_main.c +++ b/runtime/mains/vector_test/vx_vector_main.c @@ -5,7 +5,7 @@ int main() { vx_tmc(1); - int n = 5; + int n = 32; int *a = (int*)malloc(sizeof(int) * n); //{1, 1, 1, 1, 1}; int *b = (int*)malloc(sizeof(int) * n); //{1, 1, 1, 1, 1}; int *c = (int*)malloc(sizeof(int) * n); //{1, 1, 1, 1, 1}; diff --git a/runtime/mains/vector_test/vx_vector_main.dump b/runtime/mains/vector_test/vx_vector_main.dump index f1916476..08aa9221 100644 --- a/runtime/mains/vector_test/vx_vector_main.dump +++ b/runtime/mains/vector_test/vx_vector_main.dump @@ -16,13 +16,13 @@ Disassembly of section .init: 80000020: 0c818613 addi a2,gp,200 # 800028d0 <__BSS_END__> 80000024: 40a60633 sub a2,a2,a0 80000028: 00000593 li a1,0 -8000002c: 3c0010ef jal ra,800013ec +8000002c: 3c4010ef jal ra,800013f0 80000030: 00001517 auipc a0,0x1 -80000034: aec50513 addi a0,a0,-1300 # 80000b1c <__libc_fini_array> -80000038: 2a1000ef jal ra,80000ad8 -8000003c: 341000ef jal ra,80000b7c <__libc_init_array> -80000040: 159000ef jal ra,80000998
-80000044: 2a90006f j 80000aec +80000034: af050513 addi a0,a0,-1296 # 80000b20 <__libc_fini_array> +80000038: 2a5000ef jal ra,80000adc +8000003c: 345000ef jal ra,80000b80 <__libc_init_array> +80000040: 15d000ef jal ra,8000099c
+80000044: 2ad0006f j 80000af0 Disassembly of section .text: @@ -31,8 +31,8 @@ Disassembly of section .text: 8000004c: 00078793 mv a5,a5 80000050: 00078863 beqz a5,80000060 80000054: 80001537 lui a0,0x80001 -80000058: b1c50513 addi a0,a0,-1252 # 80000b1c <__BSS_END__+0xffffe24c> -8000005c: 27d0006f j 80000ad8 +80000058: b2050513 addi a0,a0,-1248 # 80000b20 <__BSS_END__+0xffffe250> +8000005c: 2810006f j 80000adc 80000060: 00008067 ret 80000064 : @@ -71,1910 +71,1911 @@ Disassembly of section .text: 800000cc: 0206e127 vsw.v v2,(a3) 800000d0: 005686b3 add a3,a3,t0 800000d4: fc051ee3 bnez a0,800000b0 -800000d8: 00008067 ret +800000d8: b62120d7 vmacc.vv v1,v2,v2 +800000dc: 00008067 ret -800000dc : -800000dc: fd010113 addi sp,sp,-48 # 6fffefd0 <_start-0x10001030> -800000e0: 02812623 sw s0,44(sp) -800000e4: 03010413 addi s0,sp,48 -800000e8: fca42e23 sw a0,-36(s0) -800000ec: fcb42c23 sw a1,-40(s0) -800000f0: fcc42a23 sw a2,-44(s0) -800000f4: fdc42783 lw a5,-36(s0) -800000f8: 0007a783 lw a5,0(a5) # 0 <_start-0x80000000> -800000fc: fef42623 sw a5,-20(s0) -80000100: fd440793 addi a5,s0,-44 -80000104: fef42223 sw a5,-28(s0) -80000108: fe442783 lw a5,-28(s0) -8000010c: 0007c703 lbu a4,0(a5) -80000110: fec42783 lw a5,-20(s0) -80000114: 00e78023 sb a4,0(a5) -80000118: fec42783 lw a5,-20(s0) -8000011c: 00178793 addi a5,a5,1 -80000120: fe442703 lw a4,-28(s0) -80000124: 00174703 lbu a4,1(a4) -80000128: 00e78023 sb a4,0(a5) -8000012c: fec42783 lw a5,-20(s0) -80000130: 00278793 addi a5,a5,2 -80000134: fe442703 lw a4,-28(s0) -80000138: 00274703 lbu a4,2(a4) -8000013c: 00e78023 sb a4,0(a5) -80000140: fec42783 lw a5,-20(s0) -80000144: 00378793 addi a5,a5,3 -80000148: fe442703 lw a4,-28(s0) -8000014c: 00374703 lbu a4,3(a4) -80000150: 00e78023 sb a4,0(a5) -80000154: fec42783 lw a5,-20(s0) -80000158: 00478793 addi a5,a5,4 -8000015c: fef42623 sw a5,-20(s0) -80000160: fe042423 sw zero,-24(s0) -80000164: 0340006f j 80000198 -80000168: fe842783 lw a5,-24(s0) -8000016c: fd842703 lw a4,-40(s0) -80000170: 00f707b3 add a5,a4,a5 -80000174: 0007c703 lbu a4,0(a5) -80000178: fec42783 lw a5,-20(s0) -8000017c: 00e78023 sb a4,0(a5) -80000180: fec42783 lw a5,-20(s0) -80000184: 00178793 addi a5,a5,1 -80000188: fef42623 sw a5,-20(s0) -8000018c: fe842783 lw a5,-24(s0) -80000190: 00178793 addi a5,a5,1 -80000194: fef42423 sw a5,-24(s0) -80000198: fd442783 lw a5,-44(s0) -8000019c: fe842703 lw a4,-24(s0) -800001a0: fcf744e3 blt a4,a5,80000168 -800001a4: fec42783 lw a5,-20(s0) -800001a8: fef42023 sw a5,-32(s0) -800001ac: fe042783 lw a5,-32(s0) -800001b0: 0037f793 andi a5,a5,3 -800001b4: fe042703 lw a4,-32(s0) -800001b8: 00f707b3 add a5,a4,a5 -800001bc: fef42023 sw a5,-32(s0) -800001c0: fe042783 lw a5,-32(s0) -800001c4: fef42623 sw a5,-20(s0) -800001c8: fdc42783 lw a5,-36(s0) -800001cc: fec42703 lw a4,-20(s0) -800001d0: 00e7a023 sw a4,0(a5) -800001d4: 00000013 nop -800001d8: 02c12403 lw s0,44(sp) -800001dc: 03010113 addi sp,sp,48 -800001e0: 00008067 ret +800000e0 : +800000e0: fd010113 addi sp,sp,-48 # 6fffefd0 <_start-0x10001030> +800000e4: 02812623 sw s0,44(sp) +800000e8: 03010413 addi s0,sp,48 +800000ec: fca42e23 sw a0,-36(s0) +800000f0: fcb42c23 sw a1,-40(s0) +800000f4: fcc42a23 sw a2,-44(s0) +800000f8: fdc42783 lw a5,-36(s0) +800000fc: 0007a783 lw a5,0(a5) # 0 <_start-0x80000000> +80000100: fef42623 sw a5,-20(s0) +80000104: fd440793 addi a5,s0,-44 +80000108: fef42223 sw a5,-28(s0) +8000010c: fe442783 lw a5,-28(s0) +80000110: 0007c703 lbu a4,0(a5) +80000114: fec42783 lw a5,-20(s0) +80000118: 00e78023 sb a4,0(a5) +8000011c: fec42783 lw a5,-20(s0) +80000120: 00178793 addi a5,a5,1 +80000124: fe442703 lw a4,-28(s0) +80000128: 00174703 lbu a4,1(a4) +8000012c: 00e78023 sb a4,0(a5) +80000130: fec42783 lw a5,-20(s0) +80000134: 00278793 addi a5,a5,2 +80000138: fe442703 lw a4,-28(s0) +8000013c: 00274703 lbu a4,2(a4) +80000140: 00e78023 sb a4,0(a5) +80000144: fec42783 lw a5,-20(s0) +80000148: 00378793 addi a5,a5,3 +8000014c: fe442703 lw a4,-28(s0) +80000150: 00374703 lbu a4,3(a4) +80000154: 00e78023 sb a4,0(a5) +80000158: fec42783 lw a5,-20(s0) +8000015c: 00478793 addi a5,a5,4 +80000160: fef42623 sw a5,-20(s0) +80000164: fe042423 sw zero,-24(s0) +80000168: 0340006f j 8000019c +8000016c: fe842783 lw a5,-24(s0) +80000170: fd842703 lw a4,-40(s0) +80000174: 00f707b3 add a5,a4,a5 +80000178: 0007c703 lbu a4,0(a5) +8000017c: fec42783 lw a5,-20(s0) +80000180: 00e78023 sb a4,0(a5) +80000184: fec42783 lw a5,-20(s0) +80000188: 00178793 addi a5,a5,1 +8000018c: fef42623 sw a5,-20(s0) +80000190: fe842783 lw a5,-24(s0) +80000194: 00178793 addi a5,a5,1 +80000198: fef42423 sw a5,-24(s0) +8000019c: fd442783 lw a5,-44(s0) +800001a0: fe842703 lw a4,-24(s0) +800001a4: fcf744e3 blt a4,a5,8000016c +800001a8: fec42783 lw a5,-20(s0) +800001ac: fef42023 sw a5,-32(s0) +800001b0: fe042783 lw a5,-32(s0) +800001b4: 0037f793 andi a5,a5,3 +800001b8: fe042703 lw a4,-32(s0) +800001bc: 00f707b3 add a5,a4,a5 +800001c0: fef42023 sw a5,-32(s0) +800001c4: fe042783 lw a5,-32(s0) +800001c8: fef42623 sw a5,-20(s0) +800001cc: fdc42783 lw a5,-36(s0) +800001d0: fec42703 lw a4,-20(s0) +800001d4: 00e7a023 sw a4,0(a5) +800001d8: 00000013 nop +800001dc: 02c12403 lw s0,44(sp) +800001e0: 03010113 addi sp,sp,48 +800001e4: 00008067 ret -800001e4 : -800001e4: fc010113 addi sp,sp,-64 -800001e8: 02812e23 sw s0,60(sp) -800001ec: 04010413 addi s0,sp,64 -800001f0: fca42623 sw a0,-52(s0) -800001f4: fcb42423 sw a1,-56(s0) -800001f8: fcc42783 lw a5,-52(s0) -800001fc: 0007a783 lw a5,0(a5) -80000200: fef42623 sw a5,-20(s0) -80000204: fdc40793 addi a5,s0,-36 -80000208: fef42223 sw a5,-28(s0) -8000020c: fec42783 lw a5,-20(s0) -80000210: 0007c703 lbu a4,0(a5) -80000214: fe442783 lw a5,-28(s0) -80000218: 00e78023 sb a4,0(a5) -8000021c: fe442783 lw a5,-28(s0) -80000220: 00178793 addi a5,a5,1 -80000224: fec42703 lw a4,-20(s0) -80000228: 00174703 lbu a4,1(a4) -8000022c: 00e78023 sb a4,0(a5) -80000230: fe442783 lw a5,-28(s0) -80000234: 00278793 addi a5,a5,2 -80000238: fec42703 lw a4,-20(s0) -8000023c: 00274703 lbu a4,2(a4) -80000240: 00e78023 sb a4,0(a5) -80000244: fe442783 lw a5,-28(s0) -80000248: 00378793 addi a5,a5,3 -8000024c: fec42703 lw a4,-20(s0) -80000250: 00374703 lbu a4,3(a4) -80000254: 00e78023 sb a4,0(a5) -80000258: fec42783 lw a5,-20(s0) -8000025c: 00478793 addi a5,a5,4 -80000260: fef42623 sw a5,-20(s0) -80000264: fe042423 sw zero,-24(s0) -80000268: 0340006f j 8000029c -8000026c: fe842783 lw a5,-24(s0) -80000270: fc842703 lw a4,-56(s0) -80000274: 00f707b3 add a5,a4,a5 -80000278: fec42703 lw a4,-20(s0) -8000027c: 00074703 lbu a4,0(a4) -80000280: 00e78023 sb a4,0(a5) -80000284: fec42783 lw a5,-20(s0) -80000288: 00178793 addi a5,a5,1 -8000028c: fef42623 sw a5,-20(s0) -80000290: fe842783 lw a5,-24(s0) -80000294: 00178793 addi a5,a5,1 -80000298: fef42423 sw a5,-24(s0) -8000029c: fdc42783 lw a5,-36(s0) -800002a0: fe842703 lw a4,-24(s0) -800002a4: fcf744e3 blt a4,a5,8000026c -800002a8: fec42783 lw a5,-20(s0) -800002ac: fef42023 sw a5,-32(s0) -800002b0: fe042783 lw a5,-32(s0) -800002b4: 0037f793 andi a5,a5,3 -800002b8: fe042703 lw a4,-32(s0) -800002bc: 00f707b3 add a5,a4,a5 -800002c0: fef42023 sw a5,-32(s0) -800002c4: fe042783 lw a5,-32(s0) -800002c8: fef42623 sw a5,-20(s0) -800002cc: fcc42783 lw a5,-52(s0) -800002d0: fec42703 lw a4,-20(s0) -800002d4: 00e7a023 sw a4,0(a5) -800002d8: 00000013 nop -800002dc: 03c12403 lw s0,60(sp) -800002e0: 04010113 addi sp,sp,64 -800002e4: 00008067 ret +800001e8 : +800001e8: fc010113 addi sp,sp,-64 +800001ec: 02812e23 sw s0,60(sp) +800001f0: 04010413 addi s0,sp,64 +800001f4: fca42623 sw a0,-52(s0) +800001f8: fcb42423 sw a1,-56(s0) +800001fc: fcc42783 lw a5,-52(s0) +80000200: 0007a783 lw a5,0(a5) +80000204: fef42623 sw a5,-20(s0) +80000208: fdc40793 addi a5,s0,-36 +8000020c: fef42223 sw a5,-28(s0) +80000210: fec42783 lw a5,-20(s0) +80000214: 0007c703 lbu a4,0(a5) +80000218: fe442783 lw a5,-28(s0) +8000021c: 00e78023 sb a4,0(a5) +80000220: fe442783 lw a5,-28(s0) +80000224: 00178793 addi a5,a5,1 +80000228: fec42703 lw a4,-20(s0) +8000022c: 00174703 lbu a4,1(a4) +80000230: 00e78023 sb a4,0(a5) +80000234: fe442783 lw a5,-28(s0) +80000238: 00278793 addi a5,a5,2 +8000023c: fec42703 lw a4,-20(s0) +80000240: 00274703 lbu a4,2(a4) +80000244: 00e78023 sb a4,0(a5) +80000248: fe442783 lw a5,-28(s0) +8000024c: 00378793 addi a5,a5,3 +80000250: fec42703 lw a4,-20(s0) +80000254: 00374703 lbu a4,3(a4) +80000258: 00e78023 sb a4,0(a5) +8000025c: fec42783 lw a5,-20(s0) +80000260: 00478793 addi a5,a5,4 +80000264: fef42623 sw a5,-20(s0) +80000268: fe042423 sw zero,-24(s0) +8000026c: 0340006f j 800002a0 +80000270: fe842783 lw a5,-24(s0) +80000274: fc842703 lw a4,-56(s0) +80000278: 00f707b3 add a5,a4,a5 +8000027c: fec42703 lw a4,-20(s0) +80000280: 00074703 lbu a4,0(a4) +80000284: 00e78023 sb a4,0(a5) +80000288: fec42783 lw a5,-20(s0) +8000028c: 00178793 addi a5,a5,1 +80000290: fef42623 sw a5,-20(s0) +80000294: fe842783 lw a5,-24(s0) +80000298: 00178793 addi a5,a5,1 +8000029c: fef42423 sw a5,-24(s0) +800002a0: fdc42783 lw a5,-36(s0) +800002a4: fe842703 lw a4,-24(s0) +800002a8: fcf744e3 blt a4,a5,80000270 +800002ac: fec42783 lw a5,-20(s0) +800002b0: fef42023 sw a5,-32(s0) +800002b4: fe042783 lw a5,-32(s0) +800002b8: 0037f793 andi a5,a5,3 +800002bc: fe042703 lw a4,-32(s0) +800002c0: 00f707b3 add a5,a4,a5 +800002c4: fef42023 sw a5,-32(s0) +800002c8: fe042783 lw a5,-32(s0) +800002cc: fef42623 sw a5,-20(s0) +800002d0: fcc42783 lw a5,-52(s0) +800002d4: fec42703 lw a4,-20(s0) +800002d8: 00e7a023 sw a4,0(a5) +800002dc: 00000013 nop +800002e0: 03c12403 lw s0,60(sp) +800002e4: 04010113 addi sp,sp,64 +800002e8: 00008067 ret -800002e8 <_close>: -800002e8: ff010113 addi sp,sp,-16 -800002ec: 00812623 sw s0,12(sp) -800002f0: 01010413 addi s0,sp,16 -800002f4: 00000013 nop -800002f8: 00c12403 lw s0,12(sp) -800002fc: 01010113 addi sp,sp,16 -80000300: 00008067 ret +800002ec <_close>: +800002ec: ff010113 addi sp,sp,-16 +800002f0: 00812623 sw s0,12(sp) +800002f4: 01010413 addi s0,sp,16 +800002f8: 00000013 nop +800002fc: 00c12403 lw s0,12(sp) +80000300: 01010113 addi sp,sp,16 +80000304: 00008067 ret -80000304 <_fstat>: -80000304: fe010113 addi sp,sp,-32 -80000308: 00812e23 sw s0,28(sp) -8000030c: 02010413 addi s0,sp,32 -80000310: fea42623 sw a0,-20(s0) -80000314: feb42423 sw a1,-24(s0) -80000318: fe842783 lw a5,-24(s0) -8000031c: 00002737 lui a4,0x2 -80000320: 00e7a223 sw a4,4(a5) -80000324: 00000793 li a5,0 -80000328: 00078513 mv a0,a5 -8000032c: 01c12403 lw s0,28(sp) -80000330: 02010113 addi sp,sp,32 -80000334: 00008067 ret +80000308 <_fstat>: +80000308: fe010113 addi sp,sp,-32 +8000030c: 00812e23 sw s0,28(sp) +80000310: 02010413 addi s0,sp,32 +80000314: fea42623 sw a0,-20(s0) +80000318: feb42423 sw a1,-24(s0) +8000031c: fe842783 lw a5,-24(s0) +80000320: 00002737 lui a4,0x2 +80000324: 00e7a223 sw a4,4(a5) +80000328: 00000793 li a5,0 +8000032c: 00078513 mv a0,a5 +80000330: 01c12403 lw s0,28(sp) +80000334: 02010113 addi sp,sp,32 +80000338: 00008067 ret -80000338 <_isatty>: -80000338: fe010113 addi sp,sp,-32 -8000033c: 00112e23 sw ra,28(sp) -80000340: 00812c23 sw s0,24(sp) -80000344: 02010413 addi s0,sp,32 -80000348: fea42623 sw a0,-20(s0) -8000034c: 800027b7 lui a5,0x80002 -80000350: b2c78513 addi a0,a5,-1236 # 80001b2c <__BSS_END__+0xfffff25c> -80000354: 4fc000ef jal ra,80000850 -80000358: 00100793 li a5,1 -8000035c: 00078513 mv a0,a5 -80000360: 01c12083 lw ra,28(sp) -80000364: 01812403 lw s0,24(sp) -80000368: 02010113 addi sp,sp,32 -8000036c: 00008067 ret +8000033c <_isatty>: +8000033c: fe010113 addi sp,sp,-32 +80000340: 00112e23 sw ra,28(sp) +80000344: 00812c23 sw s0,24(sp) +80000348: 02010413 addi s0,sp,32 +8000034c: fea42623 sw a0,-20(s0) +80000350: 800027b7 lui a5,0x80002 +80000354: b3078513 addi a0,a5,-1232 # 80001b30 <__BSS_END__+0xfffff260> +80000358: 4fc000ef jal ra,80000854 +8000035c: 00100793 li a5,1 +80000360: 00078513 mv a0,a5 +80000364: 01c12083 lw ra,28(sp) +80000368: 01812403 lw s0,24(sp) +8000036c: 02010113 addi sp,sp,32 +80000370: 00008067 ret -80000370 <_lseek>: -80000370: fd010113 addi sp,sp,-48 -80000374: 02112623 sw ra,44(sp) -80000378: 02812423 sw s0,40(sp) -8000037c: 03010413 addi s0,sp,48 -80000380: fca42e23 sw a0,-36(s0) -80000384: fcb42c23 sw a1,-40(s0) -80000388: fcc42a23 sw a2,-44(s0) -8000038c: 710007b7 lui a5,0x71000 -80000390: fef42623 sw a5,-20(s0) -80000394: 720007b7 lui a5,0x72000 -80000398: fef42423 sw a5,-24(s0) -8000039c: 00300793 li a5,3 -800003a0: fef42223 sw a5,-28(s0) -800003a4: fe440713 addi a4,s0,-28 -800003a8: fec40793 addi a5,s0,-20 -800003ac: 00400613 li a2,4 -800003b0: 00070593 mv a1,a4 -800003b4: 00078513 mv a0,a5 -800003b8: d25ff0ef jal ra,800000dc -800003bc: fdc40713 addi a4,s0,-36 -800003c0: fec40793 addi a5,s0,-20 -800003c4: 00400613 li a2,4 -800003c8: 00070593 mv a1,a4 -800003cc: 00078513 mv a0,a5 -800003d0: d0dff0ef jal ra,800000dc -800003d4: fd840713 addi a4,s0,-40 -800003d8: fec40793 addi a5,s0,-20 -800003dc: 00400613 li a2,4 -800003e0: 00070593 mv a1,a4 -800003e4: 00078513 mv a0,a5 -800003e8: cf5ff0ef jal ra,800000dc -800003ec: fd440713 addi a4,s0,-44 -800003f0: fec40793 addi a5,s0,-20 -800003f4: 00400613 li a2,4 -800003f8: 00070593 mv a1,a4 -800003fc: 00078513 mv a0,a5 -80000400: cddff0ef jal ra,800000dc -80000404: 0741a783 lw a5,116(gp) # 8000287c -80000408: 000780e7 jalr a5 # 72000000 <_start-0xe000000> -8000040c: fe040713 addi a4,s0,-32 -80000410: fe840793 addi a5,s0,-24 -80000414: 00070593 mv a1,a4 -80000418: 00078513 mv a0,a5 -8000041c: dc9ff0ef jal ra,800001e4 -80000420: fe042783 lw a5,-32(s0) -80000424: 00078513 mv a0,a5 -80000428: 02c12083 lw ra,44(sp) -8000042c: 02812403 lw s0,40(sp) -80000430: 03010113 addi sp,sp,48 -80000434: 00008067 ret +80000374 <_lseek>: +80000374: fd010113 addi sp,sp,-48 +80000378: 02112623 sw ra,44(sp) +8000037c: 02812423 sw s0,40(sp) +80000380: 03010413 addi s0,sp,48 +80000384: fca42e23 sw a0,-36(s0) +80000388: fcb42c23 sw a1,-40(s0) +8000038c: fcc42a23 sw a2,-44(s0) +80000390: 710007b7 lui a5,0x71000 +80000394: fef42623 sw a5,-20(s0) +80000398: 720007b7 lui a5,0x72000 +8000039c: fef42423 sw a5,-24(s0) +800003a0: 00300793 li a5,3 +800003a4: fef42223 sw a5,-28(s0) +800003a8: fe440713 addi a4,s0,-28 +800003ac: fec40793 addi a5,s0,-20 +800003b0: 00400613 li a2,4 +800003b4: 00070593 mv a1,a4 +800003b8: 00078513 mv a0,a5 +800003bc: d25ff0ef jal ra,800000e0 +800003c0: fdc40713 addi a4,s0,-36 +800003c4: fec40793 addi a5,s0,-20 +800003c8: 00400613 li a2,4 +800003cc: 00070593 mv a1,a4 +800003d0: 00078513 mv a0,a5 +800003d4: d0dff0ef jal ra,800000e0 +800003d8: fd840713 addi a4,s0,-40 +800003dc: fec40793 addi a5,s0,-20 +800003e0: 00400613 li a2,4 +800003e4: 00070593 mv a1,a4 +800003e8: 00078513 mv a0,a5 +800003ec: cf5ff0ef jal ra,800000e0 +800003f0: fd440713 addi a4,s0,-44 +800003f4: fec40793 addi a5,s0,-20 +800003f8: 00400613 li a2,4 +800003fc: 00070593 mv a1,a4 +80000400: 00078513 mv a0,a5 +80000404: cddff0ef jal ra,800000e0 +80000408: 0741a783 lw a5,116(gp) # 8000287c +8000040c: 000780e7 jalr a5 # 72000000 <_start-0xe000000> +80000410: fe040713 addi a4,s0,-32 +80000414: fe840793 addi a5,s0,-24 +80000418: 00070593 mv a1,a4 +8000041c: 00078513 mv a0,a5 +80000420: dc9ff0ef jal ra,800001e8 +80000424: fe042783 lw a5,-32(s0) +80000428: 00078513 mv a0,a5 +8000042c: 02c12083 lw ra,44(sp) +80000430: 02812403 lw s0,40(sp) +80000434: 03010113 addi sp,sp,48 +80000438: 00008067 ret -80000438 <_read>: -80000438: fd010113 addi sp,sp,-48 -8000043c: 02112623 sw ra,44(sp) -80000440: 02812423 sw s0,40(sp) -80000444: 03010413 addi s0,sp,48 -80000448: fca42e23 sw a0,-36(s0) -8000044c: fcb42c23 sw a1,-40(s0) -80000450: fcc42a23 sw a2,-44(s0) -80000454: 710007b7 lui a5,0x71000 -80000458: fef42423 sw a5,-24(s0) -8000045c: 720007b7 lui a5,0x72000 -80000460: fef42623 sw a5,-20(s0) -80000464: 00400793 li a5,4 -80000468: fef42223 sw a5,-28(s0) -8000046c: fe440713 addi a4,s0,-28 -80000470: fe840793 addi a5,s0,-24 -80000474: 00400613 li a2,4 -80000478: 00070593 mv a1,a4 -8000047c: 00078513 mv a0,a5 -80000480: c5dff0ef jal ra,800000dc -80000484: fdc40713 addi a4,s0,-36 -80000488: fe840793 addi a5,s0,-24 -8000048c: 00400613 li a2,4 -80000490: 00070593 mv a1,a4 -80000494: 00078513 mv a0,a5 -80000498: c45ff0ef jal ra,800000dc -8000049c: fd840713 addi a4,s0,-40 -800004a0: fe840793 addi a5,s0,-24 -800004a4: 00400613 li a2,4 -800004a8: 00070593 mv a1,a4 -800004ac: 00078513 mv a0,a5 -800004b0: c2dff0ef jal ra,800000dc -800004b4: fd440713 addi a4,s0,-44 -800004b8: fe840793 addi a5,s0,-24 -800004bc: 00400613 li a2,4 -800004c0: 00070593 mv a1,a4 -800004c4: 00078513 mv a0,a5 -800004c8: c15ff0ef jal ra,800000dc -800004cc: 0741a783 lw a5,116(gp) # 8000287c -800004d0: 000780e7 jalr a5 # 72000000 <_start-0xe000000> -800004d4: fd442783 lw a5,-44(s0) -800004d8: 00078513 mv a0,a5 -800004dc: 02c12083 lw ra,44(sp) -800004e0: 02812403 lw s0,40(sp) -800004e4: 03010113 addi sp,sp,48 -800004e8: 00008067 ret +8000043c <_read>: +8000043c: fd010113 addi sp,sp,-48 +80000440: 02112623 sw ra,44(sp) +80000444: 02812423 sw s0,40(sp) +80000448: 03010413 addi s0,sp,48 +8000044c: fca42e23 sw a0,-36(s0) +80000450: fcb42c23 sw a1,-40(s0) +80000454: fcc42a23 sw a2,-44(s0) +80000458: 710007b7 lui a5,0x71000 +8000045c: fef42423 sw a5,-24(s0) +80000460: 720007b7 lui a5,0x72000 +80000464: fef42623 sw a5,-20(s0) +80000468: 00400793 li a5,4 +8000046c: fef42223 sw a5,-28(s0) +80000470: fe440713 addi a4,s0,-28 +80000474: fe840793 addi a5,s0,-24 +80000478: 00400613 li a2,4 +8000047c: 00070593 mv a1,a4 +80000480: 00078513 mv a0,a5 +80000484: c5dff0ef jal ra,800000e0 +80000488: fdc40713 addi a4,s0,-36 +8000048c: fe840793 addi a5,s0,-24 +80000490: 00400613 li a2,4 +80000494: 00070593 mv a1,a4 +80000498: 00078513 mv a0,a5 +8000049c: c45ff0ef jal ra,800000e0 +800004a0: fd840713 addi a4,s0,-40 +800004a4: fe840793 addi a5,s0,-24 +800004a8: 00400613 li a2,4 +800004ac: 00070593 mv a1,a4 +800004b0: 00078513 mv a0,a5 +800004b4: c2dff0ef jal ra,800000e0 +800004b8: fd440713 addi a4,s0,-44 +800004bc: fe840793 addi a5,s0,-24 +800004c0: 00400613 li a2,4 +800004c4: 00070593 mv a1,a4 +800004c8: 00078513 mv a0,a5 +800004cc: c15ff0ef jal ra,800000e0 +800004d0: 0741a783 lw a5,116(gp) # 8000287c +800004d4: 000780e7 jalr a5 # 72000000 <_start-0xe000000> +800004d8: fd442783 lw a5,-44(s0) +800004dc: 00078513 mv a0,a5 +800004e0: 02c12083 lw ra,44(sp) +800004e4: 02812403 lw s0,40(sp) +800004e8: 03010113 addi sp,sp,48 +800004ec: 00008067 ret -800004ec <_write>: -800004ec: fd010113 addi sp,sp,-48 -800004f0: 02112623 sw ra,44(sp) -800004f4: 02812423 sw s0,40(sp) -800004f8: 03010413 addi s0,sp,48 -800004fc: fca42e23 sw a0,-36(s0) -80000500: fcb42c23 sw a1,-40(s0) -80000504: fcc42a23 sw a2,-44(s0) -80000508: 710007b7 lui a5,0x71000 -8000050c: fef42623 sw a5,-20(s0) -80000510: 00500793 li a5,5 -80000514: fef42423 sw a5,-24(s0) -80000518: fe840713 addi a4,s0,-24 -8000051c: fec40793 addi a5,s0,-20 -80000520: 00400613 li a2,4 -80000524: 00070593 mv a1,a4 -80000528: 00078513 mv a0,a5 -8000052c: bb1ff0ef jal ra,800000dc -80000530: fdc40713 addi a4,s0,-36 -80000534: fec40793 addi a5,s0,-20 -80000538: 00400613 li a2,4 -8000053c: 00070593 mv a1,a4 -80000540: 00078513 mv a0,a5 -80000544: b99ff0ef jal ra,800000dc -80000548: fec40793 addi a5,s0,-20 -8000054c: fd442603 lw a2,-44(s0) -80000550: fd842583 lw a1,-40(s0) -80000554: 00078513 mv a0,a5 -80000558: b85ff0ef jal ra,800000dc -8000055c: 0741a783 lw a5,116(gp) # 8000287c -80000560: 000780e7 jalr a5 # 71000000 <_start-0xf000000> -80000564: fd442783 lw a5,-44(s0) -80000568: 00078513 mv a0,a5 -8000056c: 02c12083 lw ra,44(sp) -80000570: 02812403 lw s0,40(sp) -80000574: 03010113 addi sp,sp,48 -80000578: 00008067 ret +800004f0 <_write>: +800004f0: fd010113 addi sp,sp,-48 +800004f4: 02112623 sw ra,44(sp) +800004f8: 02812423 sw s0,40(sp) +800004fc: 03010413 addi s0,sp,48 +80000500: fca42e23 sw a0,-36(s0) +80000504: fcb42c23 sw a1,-40(s0) +80000508: fcc42a23 sw a2,-44(s0) +8000050c: 710007b7 lui a5,0x71000 +80000510: fef42623 sw a5,-20(s0) +80000514: 00500793 li a5,5 +80000518: fef42423 sw a5,-24(s0) +8000051c: fe840713 addi a4,s0,-24 +80000520: fec40793 addi a5,s0,-20 +80000524: 00400613 li a2,4 +80000528: 00070593 mv a1,a4 +8000052c: 00078513 mv a0,a5 +80000530: bb1ff0ef jal ra,800000e0 +80000534: fdc40713 addi a4,s0,-36 +80000538: fec40793 addi a5,s0,-20 +8000053c: 00400613 li a2,4 +80000540: 00070593 mv a1,a4 +80000544: 00078513 mv a0,a5 +80000548: b99ff0ef jal ra,800000e0 +8000054c: fec40793 addi a5,s0,-20 +80000550: fd442603 lw a2,-44(s0) +80000554: fd842583 lw a1,-40(s0) +80000558: 00078513 mv a0,a5 +8000055c: b85ff0ef jal ra,800000e0 +80000560: 0741a783 lw a5,116(gp) # 8000287c +80000564: 000780e7 jalr a5 # 71000000 <_start-0xf000000> +80000568: fd442783 lw a5,-44(s0) +8000056c: 00078513 mv a0,a5 +80000570: 02c12083 lw ra,44(sp) +80000574: 02812403 lw s0,40(sp) +80000578: 03010113 addi sp,sp,48 +8000057c: 00008067 ret -8000057c <_sbrk>: -8000057c: fd010113 addi sp,sp,-48 -80000580: 02812623 sw s0,44(sp) -80000584: 03010413 addi s0,sp,48 -80000588: fca42e23 sw a0,-36(s0) -8000058c: fdc42783 lw a5,-36(s0) -80000590: 0007d863 bgez a5,800005a0 <_sbrk+0x24> -80000594: fdc42783 lw a5,-36(s0) -80000598: 40f007b3 neg a5,a5 -8000059c: fcf42e23 sw a5,-36(s0) -800005a0: fdc42703 lw a4,-36(s0) -800005a4: 000037b7 lui a5,0x3 -800005a8: 80078793 addi a5,a5,-2048 # 2800 <_start-0x7fffd800> -800005ac: 00e7d863 bge a5,a4,800005bc <_sbrk+0x40> -800005b0: 000037b7 lui a5,0x3 -800005b4: 80078793 addi a5,a5,-2048 # 2800 <_start-0x7fffd800> -800005b8: fcf42e23 sw a5,-36(s0) -800005bc: 0781a783 lw a5,120(gp) # 80002880 -800005c0: fef42623 sw a5,-20(s0) -800005c4: 0781a703 lw a4,120(gp) # 80002880 -800005c8: fdc42783 lw a5,-36(s0) -800005cc: 00f70733 add a4,a4,a5 -800005d0: 06e1ac23 sw a4,120(gp) # 80002880 -800005d4: fec42783 lw a5,-20(s0) -800005d8: 00078513 mv a0,a5 -800005dc: 02c12403 lw s0,44(sp) -800005e0: 03010113 addi sp,sp,48 -800005e4: 00008067 ret +80000580 <_sbrk>: +80000580: fd010113 addi sp,sp,-48 +80000584: 02812623 sw s0,44(sp) +80000588: 03010413 addi s0,sp,48 +8000058c: fca42e23 sw a0,-36(s0) +80000590: fdc42783 lw a5,-36(s0) +80000594: 0007d863 bgez a5,800005a4 <_sbrk+0x24> +80000598: fdc42783 lw a5,-36(s0) +8000059c: 40f007b3 neg a5,a5 +800005a0: fcf42e23 sw a5,-36(s0) +800005a4: fdc42703 lw a4,-36(s0) +800005a8: 000037b7 lui a5,0x3 +800005ac: 80078793 addi a5,a5,-2048 # 2800 <_start-0x7fffd800> +800005b0: 00e7d863 bge a5,a4,800005c0 <_sbrk+0x40> +800005b4: 000037b7 lui a5,0x3 +800005b8: 80078793 addi a5,a5,-2048 # 2800 <_start-0x7fffd800> +800005bc: fcf42e23 sw a5,-36(s0) +800005c0: 0781a783 lw a5,120(gp) # 80002880 +800005c4: fef42623 sw a5,-20(s0) +800005c8: 0781a703 lw a4,120(gp) # 80002880 +800005cc: fdc42783 lw a5,-36(s0) +800005d0: 00f70733 add a4,a4,a5 +800005d4: 06e1ac23 sw a4,120(gp) # 80002880 +800005d8: fec42783 lw a5,-20(s0) +800005dc: 00078513 mv a0,a5 +800005e0: 02c12403 lw s0,44(sp) +800005e4: 03010113 addi sp,sp,48 +800005e8: 00008067 ret -800005e8 <_exit>: -800005e8: fe010113 addi sp,sp,-32 -800005ec: 00112e23 sw ra,28(sp) -800005f0: 00812c23 sw s0,24(sp) -800005f4: 02010413 addi s0,sp,32 -800005f8: fea42623 sw a0,-20(s0) -800005fc: 00000513 li a0,0 -80000600: 1e0000ef jal ra,800007e0 -80000604: 00000013 nop -80000608: 01c12083 lw ra,28(sp) -8000060c: 01812403 lw s0,24(sp) -80000610: 02010113 addi sp,sp,32 -80000614: 00008067 ret +800005ec <_exit>: +800005ec: fe010113 addi sp,sp,-32 +800005f0: 00112e23 sw ra,28(sp) +800005f4: 00812c23 sw s0,24(sp) +800005f8: 02010413 addi s0,sp,32 +800005fc: fea42623 sw a0,-20(s0) +80000600: 00000513 li a0,0 +80000604: 1e0000ef jal ra,800007e4 +80000608: 00000013 nop +8000060c: 01c12083 lw ra,28(sp) +80000610: 01812403 lw s0,24(sp) +80000614: 02010113 addi sp,sp,32 +80000618: 00008067 ret -80000618 <_open>: -80000618: fd010113 addi sp,sp,-48 -8000061c: 02112623 sw ra,44(sp) -80000620: 02812423 sw s0,40(sp) -80000624: 03010413 addi s0,sp,48 -80000628: fca42e23 sw a0,-36(s0) -8000062c: fcb42c23 sw a1,-40(s0) -80000630: fcc42a23 sw a2,-44(s0) -80000634: 710007b7 lui a5,0x71000 -80000638: fef42623 sw a5,-20(s0) -8000063c: 720007b7 lui a5,0x72000 -80000640: fef42423 sw a5,-24(s0) -80000644: 00700793 li a5,7 -80000648: fef42223 sw a5,-28(s0) -8000064c: fe440713 addi a4,s0,-28 -80000650: fec40793 addi a5,s0,-20 -80000654: 00400613 li a2,4 -80000658: 00070593 mv a1,a4 -8000065c: 00078513 mv a0,a5 -80000660: a7dff0ef jal ra,800000dc -80000664: fdc40713 addi a4,s0,-36 -80000668: fec40793 addi a5,s0,-20 -8000066c: 00400613 li a2,4 -80000670: 00070593 mv a1,a4 -80000674: 00078513 mv a0,a5 -80000678: a65ff0ef jal ra,800000dc -8000067c: fd840713 addi a4,s0,-40 -80000680: fec40793 addi a5,s0,-20 -80000684: 00400613 li a2,4 -80000688: 00070593 mv a1,a4 -8000068c: 00078513 mv a0,a5 -80000690: a4dff0ef jal ra,800000dc -80000694: fd440713 addi a4,s0,-44 -80000698: fec40793 addi a5,s0,-20 -8000069c: 00400613 li a2,4 -800006a0: 00070593 mv a1,a4 -800006a4: 00078513 mv a0,a5 -800006a8: a35ff0ef jal ra,800000dc -800006ac: 0741a783 lw a5,116(gp) # 8000287c -800006b0: 000780e7 jalr a5 # 72000000 <_start-0xe000000> -800006b4: fe040713 addi a4,s0,-32 -800006b8: fe840793 addi a5,s0,-24 -800006bc: 00070593 mv a1,a4 -800006c0: 00078513 mv a0,a5 -800006c4: b21ff0ef jal ra,800001e4 -800006c8: fe042783 lw a5,-32(s0) -800006cc: 00078513 mv a0,a5 -800006d0: 02c12083 lw ra,44(sp) -800006d4: 02812403 lw s0,40(sp) -800006d8: 03010113 addi sp,sp,48 -800006dc: 00008067 ret +8000061c <_open>: +8000061c: fd010113 addi sp,sp,-48 +80000620: 02112623 sw ra,44(sp) +80000624: 02812423 sw s0,40(sp) +80000628: 03010413 addi s0,sp,48 +8000062c: fca42e23 sw a0,-36(s0) +80000630: fcb42c23 sw a1,-40(s0) +80000634: fcc42a23 sw a2,-44(s0) +80000638: 710007b7 lui a5,0x71000 +8000063c: fef42623 sw a5,-20(s0) +80000640: 720007b7 lui a5,0x72000 +80000644: fef42423 sw a5,-24(s0) +80000648: 00700793 li a5,7 +8000064c: fef42223 sw a5,-28(s0) +80000650: fe440713 addi a4,s0,-28 +80000654: fec40793 addi a5,s0,-20 +80000658: 00400613 li a2,4 +8000065c: 00070593 mv a1,a4 +80000660: 00078513 mv a0,a5 +80000664: a7dff0ef jal ra,800000e0 +80000668: fdc40713 addi a4,s0,-36 +8000066c: fec40793 addi a5,s0,-20 +80000670: 00400613 li a2,4 +80000674: 00070593 mv a1,a4 +80000678: 00078513 mv a0,a5 +8000067c: a65ff0ef jal ra,800000e0 +80000680: fd840713 addi a4,s0,-40 +80000684: fec40793 addi a5,s0,-20 +80000688: 00400613 li a2,4 +8000068c: 00070593 mv a1,a4 +80000690: 00078513 mv a0,a5 +80000694: a4dff0ef jal ra,800000e0 +80000698: fd440713 addi a4,s0,-44 +8000069c: fec40793 addi a5,s0,-20 +800006a0: 00400613 li a2,4 +800006a4: 00070593 mv a1,a4 +800006a8: 00078513 mv a0,a5 +800006ac: a35ff0ef jal ra,800000e0 +800006b0: 0741a783 lw a5,116(gp) # 8000287c +800006b4: 000780e7 jalr a5 # 72000000 <_start-0xe000000> +800006b8: fe040713 addi a4,s0,-32 +800006bc: fe840793 addi a5,s0,-24 +800006c0: 00070593 mv a1,a4 +800006c4: 00078513 mv a0,a5 +800006c8: b21ff0ef jal ra,800001e8 +800006cc: fe042783 lw a5,-32(s0) +800006d0: 00078513 mv a0,a5 +800006d4: 02c12083 lw ra,44(sp) +800006d8: 02812403 lw s0,40(sp) +800006dc: 03010113 addi sp,sp,48 +800006e0: 00008067 ret -800006e0 <_kill>: -800006e0: ff010113 addi sp,sp,-16 -800006e4: 00112623 sw ra,12(sp) -800006e8: 00812423 sw s0,8(sp) -800006ec: 01010413 addi s0,sp,16 -800006f0: 800027b7 lui a5,0x80002 -800006f4: b4078513 addi a0,a5,-1216 # 80001b40 <__BSS_END__+0xfffff270> -800006f8: 158000ef jal ra,80000850 -800006fc: 00000013 nop -80000700: 00c12083 lw ra,12(sp) -80000704: 00812403 lw s0,8(sp) -80000708: 01010113 addi sp,sp,16 -8000070c: 00008067 ret +800006e4 <_kill>: +800006e4: ff010113 addi sp,sp,-16 +800006e8: 00112623 sw ra,12(sp) +800006ec: 00812423 sw s0,8(sp) +800006f0: 01010413 addi s0,sp,16 +800006f4: 800027b7 lui a5,0x80002 +800006f8: b4478513 addi a0,a5,-1212 # 80001b44 <__BSS_END__+0xfffff274> +800006fc: 158000ef jal ra,80000854 +80000700: 00000013 nop +80000704: 00c12083 lw ra,12(sp) +80000708: 00812403 lw s0,8(sp) +8000070c: 01010113 addi sp,sp,16 +80000710: 00008067 ret -80000710 <_getpid>: -80000710: ff010113 addi sp,sp,-16 -80000714: 00112623 sw ra,12(sp) -80000718: 00812423 sw s0,8(sp) -8000071c: 01010413 addi s0,sp,16 -80000720: 0e8000ef jal ra,80000808 -80000724: 00050793 mv a5,a0 -80000728: 00078513 mv a0,a5 -8000072c: 00c12083 lw ra,12(sp) -80000730: 00812403 lw s0,8(sp) -80000734: 01010113 addi sp,sp,16 -80000738: 00008067 ret +80000714 <_getpid>: +80000714: ff010113 addi sp,sp,-16 +80000718: 00112623 sw ra,12(sp) +8000071c: 00812423 sw s0,8(sp) +80000720: 01010413 addi s0,sp,16 +80000724: 0e8000ef jal ra,8000080c +80000728: 00050793 mv a5,a0 +8000072c: 00078513 mv a0,a5 +80000730: 00c12083 lw ra,12(sp) +80000734: 00812403 lw s0,8(sp) +80000738: 01010113 addi sp,sp,16 +8000073c: 00008067 ret -8000073c <_unlink>: -8000073c: ff010113 addi sp,sp,-16 -80000740: 00112623 sw ra,12(sp) -80000744: 00812423 sw s0,8(sp) -80000748: 01010413 addi s0,sp,16 -8000074c: 800027b7 lui a5,0x80002 -80000750: b6478513 addi a0,a5,-1180 # 80001b64 <__BSS_END__+0xfffff294> -80000754: 0fc000ef jal ra,80000850 -80000758: 00000013 nop -8000075c: 00c12083 lw ra,12(sp) -80000760: 00812403 lw s0,8(sp) -80000764: 01010113 addi sp,sp,16 -80000768: 00008067 ret +80000740 <_unlink>: +80000740: ff010113 addi sp,sp,-16 +80000744: 00112623 sw ra,12(sp) +80000748: 00812423 sw s0,8(sp) +8000074c: 01010413 addi s0,sp,16 +80000750: 800027b7 lui a5,0x80002 +80000754: b6878513 addi a0,a5,-1176 # 80001b68 <__BSS_END__+0xfffff298> +80000758: 0fc000ef jal ra,80000854 +8000075c: 00000013 nop +80000760: 00c12083 lw ra,12(sp) +80000764: 00812403 lw s0,8(sp) +80000768: 01010113 addi sp,sp,16 +8000076c: 00008067 ret -8000076c <_gettimeofday>: -8000076c: ff010113 addi sp,sp,-16 -80000770: 00112623 sw ra,12(sp) -80000774: 00812423 sw s0,8(sp) -80000778: 01010413 addi s0,sp,16 -8000077c: 800027b7 lui a5,0x80002 -80000780: b8878513 addi a0,a5,-1144 # 80001b88 <__BSS_END__+0xfffff2b8> -80000784: 0cc000ef jal ra,80000850 -80000788: 0981a783 lw a5,152(gp) # 800028a0 -8000078c: 00178693 addi a3,a5,1 -80000790: 08d1ac23 sw a3,152(gp) # 800028a0 -80000794: 00078513 mv a0,a5 -80000798: 00c12083 lw ra,12(sp) -8000079c: 00812403 lw s0,8(sp) -800007a0: 01010113 addi sp,sp,16 -800007a4: 00008067 ret +80000770 <_gettimeofday>: +80000770: ff010113 addi sp,sp,-16 +80000774: 00112623 sw ra,12(sp) +80000778: 00812423 sw s0,8(sp) +8000077c: 01010413 addi s0,sp,16 +80000780: 800027b7 lui a5,0x80002 +80000784: b8c78513 addi a0,a5,-1140 # 80001b8c <__BSS_END__+0xfffff2bc> +80000788: 0cc000ef jal ra,80000854 +8000078c: 0981a783 lw a5,152(gp) # 800028a0 +80000790: 00178693 addi a3,a5,1 +80000794: 08d1ac23 sw a3,152(gp) # 800028a0 +80000798: 00078513 mv a0,a5 +8000079c: 00c12083 lw ra,12(sp) +800007a0: 00812403 lw s0,8(sp) +800007a4: 01010113 addi sp,sp,16 +800007a8: 00008067 ret -800007a8 <_link>: -800007a8: ff010113 addi sp,sp,-16 -800007ac: 00112623 sw ra,12(sp) -800007b0: 00812423 sw s0,8(sp) -800007b4: 01010413 addi s0,sp,16 -800007b8: 800027b7 lui a5,0x80002 -800007bc: bb478513 addi a0,a5,-1100 # 80001bb4 <__BSS_END__+0xfffff2e4> -800007c0: 090000ef jal ra,80000850 -800007c4: 00000013 nop -800007c8: 00c12083 lw ra,12(sp) -800007cc: 00812403 lw s0,8(sp) -800007d0: 01010113 addi sp,sp,16 -800007d4: 00008067 ret +800007ac <_link>: +800007ac: ff010113 addi sp,sp,-16 +800007b0: 00112623 sw ra,12(sp) +800007b4: 00812423 sw s0,8(sp) +800007b8: 01010413 addi s0,sp,16 +800007bc: 800027b7 lui a5,0x80002 +800007c0: bb878513 addi a0,a5,-1096 # 80001bb8 <__BSS_END__+0xfffff2e8> +800007c4: 090000ef jal ra,80000854 +800007c8: 00000013 nop +800007cc: 00c12083 lw ra,12(sp) +800007d0: 00812403 lw s0,8(sp) +800007d4: 01010113 addi sp,sp,16 +800007d8: 00008067 ret -800007d8 : -800007d8: 00b5106b 0xb5106b -800007dc: 00008067 ret +800007dc : +800007dc: 00b5106b 0xb5106b +800007e0: 00008067 ret -800007e0 : -800007e0: 0005006b 0x5006b -800007e4: 00008067 ret +800007e4 : +800007e4: 0005006b 0x5006b +800007e8: 00008067 ret -800007e8 : -800007e8: 00b5406b 0xb5406b -800007ec: 00008067 ret +800007ec : +800007ec: 00b5406b 0xb5406b +800007f0: 00008067 ret -800007f0 : -800007f0: 0005206b 0x5206b -800007f4: 00008067 ret +800007f4 : +800007f4: 0005206b 0x5206b +800007f8: 00008067 ret -800007f8 : -800007f8: 0000306b 0x306b -800007fc: 00008067 ret +800007fc : +800007fc: 0000306b 0x306b +80000800: 00008067 ret -80000800 : -80000800: 02102573 csrr a0,0x21 -80000804: 00008067 ret +80000804 : +80000804: 02102573 csrr a0,0x21 +80000808: 00008067 ret -80000808 : -80000808: 02002573 csrr a0,0x20 -8000080c: 00008067 ret +8000080c : +8000080c: 02002573 csrr a0,0x20 +80000810: 00008067 ret -80000810 : -80000810: 00400513 li a0,4 -80000814: 0005006b 0x5006b -80000818: 021026f3 csrr a3,0x21 -8000081c: 00f69693 slli a3,a3,0xf -80000820: 02002673 csrr a2,0x20 -80000824: 00a61593 slli a1,a2,0xa -80000828: 00261613 slli a2,a2,0x2 -8000082c: 6ffff137 lui sp,0x6ffff -80000830: 40b10133 sub sp,sp,a1 -80000834: 40d10133 sub sp,sp,a3 -80000838: 00c10133 add sp,sp,a2 -8000083c: 021026f3 csrr a3,0x21 -80000840: 00068663 beqz a3,8000084c -80000844: 00000513 li a0,0 -80000848: 0005006b 0x5006b +80000814 : +80000814: 00400513 li a0,4 +80000818: 0005006b 0x5006b +8000081c: 021026f3 csrr a3,0x21 +80000820: 00f69693 slli a3,a3,0xf +80000824: 02002673 csrr a2,0x20 +80000828: 00a61593 slli a1,a2,0xa +8000082c: 00261613 slli a2,a2,0x2 +80000830: 6ffff137 lui sp,0x6ffff +80000834: 40b10133 sub sp,sp,a1 +80000838: 40d10133 sub sp,sp,a3 +8000083c: 00c10133 add sp,sp,a2 +80000840: 021026f3 csrr a3,0x21 +80000844: 00068663 beqz a3,80000850 +80000848: 00000513 li a0,0 +8000084c: 0005006b 0x5006b -8000084c : -8000084c: 00008067 ret +80000850 : +80000850: 00008067 ret -80000850 : -80000850: ff410113 addi sp,sp,-12 # 6fffeff4 <_start-0x1000100c> -80000854: 00112023 sw ra,0(sp) -80000858: 00b12223 sw a1,4(sp) +80000854 : +80000854: ff410113 addi sp,sp,-12 # 6fffeff4 <_start-0x1000100c> +80000858: 00112023 sw ra,0(sp) +8000085c: 00b12223 sw a1,4(sp) -8000085c : -8000085c: 00054583 lbu a1,0(a0) -80000860: 00058863 beqz a1,80000870 -80000864: 01c000ef jal ra,80000880 -80000868: 00150513 addi a0,a0,1 -8000086c: ff1ff06f j 8000085c +80000860 : +80000860: 00054583 lbu a1,0(a0) +80000864: 00058863 beqz a1,80000874 +80000868: 01c000ef jal ra,80000884 +8000086c: 00150513 addi a0,a0,1 +80000870: ff1ff06f j 80000860 -80000870 : -80000870: 00012083 lw ra,0(sp) -80000874: 00412583 lw a1,4(sp) -80000878: 00c10113 addi sp,sp,12 -8000087c: 00008067 ret +80000874 : +80000874: 00012083 lw ra,0(sp) +80000878: 00412583 lw a1,4(sp) +8000087c: 00c10113 addi sp,sp,12 +80000880: 00008067 ret -80000880 : -80000880: 000102b7 lui t0,0x10 -80000884: 00b2a023 sw a1,0(t0) # 10000 <_start-0x7fff0000> -80000888: 00008067 ret +80000884 : +80000884: 000102b7 lui t0,0x10 +80000888: 00b2a023 sw a1,0(t0) # 10000 <_start-0x7fff0000> +8000088c: 00008067 ret -8000088c : -8000088c: fd010113 addi sp,sp,-48 -80000890: 02112623 sw ra,44(sp) -80000894: 02812423 sw s0,40(sp) -80000898: 03010413 addi s0,sp,48 -8000089c: fca42e23 sw a0,-36(s0) -800008a0: fdc42703 lw a4,-36(s0) -800008a4: 00f00793 li a5,15 -800008a8: 02e7e463 bltu a5,a4,800008d0 -800008ac: 800027b7 lui a5,0x80002 -800008b0: fdc42703 lw a4,-36(s0) -800008b4: 00271713 slli a4,a4,0x2 -800008b8: 00878793 addi a5,a5,8 # 80002008 <__BSS_END__+0xfffff738> -800008bc: 00f707b3 add a5,a4,a5 -800008c0: 0007a783 lw a5,0(a5) -800008c4: 00078513 mv a0,a5 -800008c8: f89ff0ef jal ra,80000850 -800008cc: 0740006f j 80000940 -800008d0: 02000793 li a5,32 -800008d4: fef42623 sw a5,-20(s0) -800008d8: fe0405a3 sb zero,-21(s0) -800008dc: fec42783 lw a5,-20(s0) -800008e0: ffc78793 addi a5,a5,-4 -800008e4: fdc42703 lw a4,-36(s0) -800008e8: 00f757b3 srl a5,a4,a5 -800008ec: 00f7f793 andi a5,a5,15 -800008f0: fef42223 sw a5,-28(s0) -800008f4: fe442783 lw a5,-28(s0) -800008f8: 00078663 beqz a5,80000904 -800008fc: 00100793 li a5,1 -80000900: fef405a3 sb a5,-21(s0) -80000904: feb44783 lbu a5,-21(s0) -80000908: 02078263 beqz a5,8000092c -8000090c: 800027b7 lui a5,0x80002 -80000910: fe442703 lw a4,-28(s0) -80000914: 00271713 slli a4,a4,0x2 -80000918: 00878793 addi a5,a5,8 # 80002008 <__BSS_END__+0xfffff738> -8000091c: 00f707b3 add a5,a4,a5 -80000920: 0007a783 lw a5,0(a5) -80000924: 00078513 mv a0,a5 -80000928: f29ff0ef jal ra,80000850 -8000092c: fec42783 lw a5,-20(s0) -80000930: ffc78793 addi a5,a5,-4 -80000934: fef42623 sw a5,-20(s0) -80000938: fec42783 lw a5,-20(s0) -8000093c: faf040e3 bgtz a5,800008dc -80000940: 02c12083 lw ra,44(sp) -80000944: 02812403 lw s0,40(sp) -80000948: 03010113 addi sp,sp,48 -8000094c: 00008067 ret +80000890 : +80000890: fd010113 addi sp,sp,-48 +80000894: 02112623 sw ra,44(sp) +80000898: 02812423 sw s0,40(sp) +8000089c: 03010413 addi s0,sp,48 +800008a0: fca42e23 sw a0,-36(s0) +800008a4: fdc42703 lw a4,-36(s0) +800008a8: 00f00793 li a5,15 +800008ac: 02e7e463 bltu a5,a4,800008d4 +800008b0: 800027b7 lui a5,0x80002 +800008b4: fdc42703 lw a4,-36(s0) +800008b8: 00271713 slli a4,a4,0x2 +800008bc: 00878793 addi a5,a5,8 # 80002008 <__BSS_END__+0xfffff738> +800008c0: 00f707b3 add a5,a4,a5 +800008c4: 0007a783 lw a5,0(a5) +800008c8: 00078513 mv a0,a5 +800008cc: f89ff0ef jal ra,80000854 +800008d0: 0740006f j 80000944 +800008d4: 02000793 li a5,32 +800008d8: fef42623 sw a5,-20(s0) +800008dc: fe0405a3 sb zero,-21(s0) +800008e0: fec42783 lw a5,-20(s0) +800008e4: ffc78793 addi a5,a5,-4 +800008e8: fdc42703 lw a4,-36(s0) +800008ec: 00f757b3 srl a5,a4,a5 +800008f0: 00f7f793 andi a5,a5,15 +800008f4: fef42223 sw a5,-28(s0) +800008f8: fe442783 lw a5,-28(s0) +800008fc: 00078663 beqz a5,80000908 +80000900: 00100793 li a5,1 +80000904: fef405a3 sb a5,-21(s0) +80000908: feb44783 lbu a5,-21(s0) +8000090c: 02078263 beqz a5,80000930 +80000910: 800027b7 lui a5,0x80002 +80000914: fe442703 lw a4,-28(s0) +80000918: 00271713 slli a4,a4,0x2 +8000091c: 00878793 addi a5,a5,8 # 80002008 <__BSS_END__+0xfffff738> +80000920: 00f707b3 add a5,a4,a5 +80000924: 0007a783 lw a5,0(a5) +80000928: 00078513 mv a0,a5 +8000092c: f29ff0ef jal ra,80000854 +80000930: fec42783 lw a5,-20(s0) +80000934: ffc78793 addi a5,a5,-4 +80000938: fef42623 sw a5,-20(s0) +8000093c: fec42783 lw a5,-20(s0) +80000940: faf040e3 bgtz a5,800008e0 +80000944: 02c12083 lw ra,44(sp) +80000948: 02812403 lw s0,40(sp) +8000094c: 03010113 addi sp,sp,48 +80000950: 00008067 ret -80000950 : -80000950: fe010113 addi sp,sp,-32 -80000954: 00112e23 sw ra,28(sp) -80000958: 00812c23 sw s0,24(sp) -8000095c: 02010413 addi s0,sp,32 -80000960: fea42623 sw a0,-20(s0) -80000964: feb42423 sw a1,-24(s0) -80000968: fec42503 lw a0,-20(s0) -8000096c: ee5ff0ef jal ra,80000850 -80000970: fe842503 lw a0,-24(s0) -80000974: f19ff0ef jal ra,8000088c -80000978: 800027b7 lui a5,0x80002 -8000097c: c1878513 addi a0,a5,-1000 # 80001c18 <__BSS_END__+0xfffff348> -80000980: ed1ff0ef jal ra,80000850 -80000984: 00000013 nop -80000988: 01c12083 lw ra,28(sp) -8000098c: 01812403 lw s0,24(sp) -80000990: 02010113 addi sp,sp,32 -80000994: 00008067 ret +80000954 : +80000954: fe010113 addi sp,sp,-32 +80000958: 00112e23 sw ra,28(sp) +8000095c: 00812c23 sw s0,24(sp) +80000960: 02010413 addi s0,sp,32 +80000964: fea42623 sw a0,-20(s0) +80000968: feb42423 sw a1,-24(s0) +8000096c: fec42503 lw a0,-20(s0) +80000970: ee5ff0ef jal ra,80000854 +80000974: fe842503 lw a0,-24(s0) +80000978: f19ff0ef jal ra,80000890 +8000097c: 800027b7 lui a5,0x80002 +80000980: c1c78513 addi a0,a5,-996 # 80001c1c <__BSS_END__+0xfffff34c> +80000984: ed1ff0ef jal ra,80000854 +80000988: 00000013 nop +8000098c: 01c12083 lw ra,28(sp) +80000990: 01812403 lw s0,24(sp) +80000994: 02010113 addi sp,sp,32 +80000998: 00008067 ret -80000998
: -80000998: fd010113 addi sp,sp,-48 -8000099c: 02112623 sw ra,44(sp) -800009a0: 02812423 sw s0,40(sp) -800009a4: 03010413 addi s0,sp,48 -800009a8: 00100513 li a0,1 -800009ac: e35ff0ef jal ra,800007e0 -800009b0: 00500793 li a5,5 -800009b4: fef42223 sw a5,-28(s0) -800009b8: fe442783 lw a5,-28(s0) -800009bc: 00279793 slli a5,a5,0x2 -800009c0: 00078513 mv a0,a5 -800009c4: 254000ef jal ra,80000c18 -800009c8: 00050793 mv a5,a0 -800009cc: fef42023 sw a5,-32(s0) -800009d0: fe442783 lw a5,-28(s0) -800009d4: 00279793 slli a5,a5,0x2 -800009d8: 00078513 mv a0,a5 -800009dc: 23c000ef jal ra,80000c18 -800009e0: 00050793 mv a5,a0 -800009e4: fcf42e23 sw a5,-36(s0) -800009e8: fe442783 lw a5,-28(s0) -800009ec: 00279793 slli a5,a5,0x2 -800009f0: 00078513 mv a0,a5 -800009f4: 224000ef jal ra,80000c18 -800009f8: 00050793 mv a5,a0 -800009fc: fcf42c23 sw a5,-40(s0) -80000a00: fe042623 sw zero,-20(s0) -80000a04: 0580006f j 80000a5c -80000a08: fec42783 lw a5,-20(s0) -80000a0c: 00279793 slli a5,a5,0x2 -80000a10: fe042703 lw a4,-32(s0) -80000a14: 00f707b3 add a5,a4,a5 -80000a18: 00100713 li a4,1 -80000a1c: 00e7a023 sw a4,0(a5) -80000a20: fec42783 lw a5,-20(s0) -80000a24: 00279793 slli a5,a5,0x2 -80000a28: fdc42703 lw a4,-36(s0) -80000a2c: 00f707b3 add a5,a4,a5 -80000a30: 00100713 li a4,1 -80000a34: 00e7a023 sw a4,0(a5) -80000a38: fec42783 lw a5,-20(s0) -80000a3c: 00279793 slli a5,a5,0x2 -80000a40: fd842703 lw a4,-40(s0) -80000a44: 00f707b3 add a5,a4,a5 -80000a48: 00100713 li a4,1 -80000a4c: 00e7a023 sw a4,0(a5) -80000a50: fec42783 lw a5,-20(s0) -80000a54: 00178793 addi a5,a5,1 -80000a58: fef42623 sw a5,-20(s0) -80000a5c: fec42703 lw a4,-20(s0) -80000a60: fe442783 lw a5,-28(s0) -80000a64: faf742e3 blt a4,a5,80000a08 -80000a68: fd842683 lw a3,-40(s0) -80000a6c: fdc42603 lw a2,-36(s0) -80000a70: fe042583 lw a1,-32(s0) -80000a74: fe442503 lw a0,-28(s0) -80000a78: e34ff0ef jal ra,800000ac -80000a7c: fe042423 sw zero,-24(s0) -80000a80: 02c0006f j 80000aac -80000a84: fe842783 lw a5,-24(s0) -80000a88: 00279793 slli a5,a5,0x2 -80000a8c: fd842703 lw a4,-40(s0) -80000a90: 00f707b3 add a5,a4,a5 -80000a94: 0007a783 lw a5,0(a5) -80000a98: 00078513 mv a0,a5 -80000a9c: df1ff0ef jal ra,8000088c -80000aa0: fe842783 lw a5,-24(s0) -80000aa4: 00178793 addi a5,a5,1 -80000aa8: fef42423 sw a5,-24(s0) -80000aac: fe842703 lw a4,-24(s0) -80000ab0: fe442783 lw a5,-28(s0) -80000ab4: fcf748e3 blt a4,a5,80000a84 -80000ab8: 00000513 li a0,0 -80000abc: d25ff0ef jal ra,800007e0 -80000ac0: 00000013 nop -80000ac4: 00078513 mv a0,a5 -80000ac8: 02c12083 lw ra,44(sp) -80000acc: 02812403 lw s0,40(sp) -80000ad0: 03010113 addi sp,sp,48 -80000ad4: 00008067 ret +8000099c
: +8000099c: fd010113 addi sp,sp,-48 +800009a0: 02112623 sw ra,44(sp) +800009a4: 02812423 sw s0,40(sp) +800009a8: 03010413 addi s0,sp,48 +800009ac: 00100513 li a0,1 +800009b0: e35ff0ef jal ra,800007e4 +800009b4: 02000793 li a5,32 +800009b8: fef42223 sw a5,-28(s0) +800009bc: fe442783 lw a5,-28(s0) +800009c0: 00279793 slli a5,a5,0x2 +800009c4: 00078513 mv a0,a5 +800009c8: 254000ef jal ra,80000c1c +800009cc: 00050793 mv a5,a0 +800009d0: fef42023 sw a5,-32(s0) +800009d4: fe442783 lw a5,-28(s0) +800009d8: 00279793 slli a5,a5,0x2 +800009dc: 00078513 mv a0,a5 +800009e0: 23c000ef jal ra,80000c1c +800009e4: 00050793 mv a5,a0 +800009e8: fcf42e23 sw a5,-36(s0) +800009ec: fe442783 lw a5,-28(s0) +800009f0: 00279793 slli a5,a5,0x2 +800009f4: 00078513 mv a0,a5 +800009f8: 224000ef jal ra,80000c1c +800009fc: 00050793 mv a5,a0 +80000a00: fcf42c23 sw a5,-40(s0) +80000a04: fe042623 sw zero,-20(s0) +80000a08: 0580006f j 80000a60 +80000a0c: fec42783 lw a5,-20(s0) +80000a10: 00279793 slli a5,a5,0x2 +80000a14: fe042703 lw a4,-32(s0) +80000a18: 00f707b3 add a5,a4,a5 +80000a1c: 00100713 li a4,1 +80000a20: 00e7a023 sw a4,0(a5) +80000a24: fec42783 lw a5,-20(s0) +80000a28: 00279793 slli a5,a5,0x2 +80000a2c: fdc42703 lw a4,-36(s0) +80000a30: 00f707b3 add a5,a4,a5 +80000a34: 00100713 li a4,1 +80000a38: 00e7a023 sw a4,0(a5) +80000a3c: fec42783 lw a5,-20(s0) +80000a40: 00279793 slli a5,a5,0x2 +80000a44: fd842703 lw a4,-40(s0) +80000a48: 00f707b3 add a5,a4,a5 +80000a4c: 00100713 li a4,1 +80000a50: 00e7a023 sw a4,0(a5) +80000a54: fec42783 lw a5,-20(s0) +80000a58: 00178793 addi a5,a5,1 +80000a5c: fef42623 sw a5,-20(s0) +80000a60: fec42703 lw a4,-20(s0) +80000a64: fe442783 lw a5,-28(s0) +80000a68: faf742e3 blt a4,a5,80000a0c +80000a6c: fd842683 lw a3,-40(s0) +80000a70: fdc42603 lw a2,-36(s0) +80000a74: fe042583 lw a1,-32(s0) +80000a78: fe442503 lw a0,-28(s0) +80000a7c: e30ff0ef jal ra,800000ac +80000a80: fe042423 sw zero,-24(s0) +80000a84: 02c0006f j 80000ab0 +80000a88: fe842783 lw a5,-24(s0) +80000a8c: 00279793 slli a5,a5,0x2 +80000a90: fd842703 lw a4,-40(s0) +80000a94: 00f707b3 add a5,a4,a5 +80000a98: 0007a783 lw a5,0(a5) +80000a9c: 00078513 mv a0,a5 +80000aa0: df1ff0ef jal ra,80000890 +80000aa4: fe842783 lw a5,-24(s0) +80000aa8: 00178793 addi a5,a5,1 +80000aac: fef42423 sw a5,-24(s0) +80000ab0: fe842703 lw a4,-24(s0) +80000ab4: fe442783 lw a5,-28(s0) +80000ab8: fcf748e3 blt a4,a5,80000a88 +80000abc: 00000513 li a0,0 +80000ac0: d25ff0ef jal ra,800007e4 +80000ac4: 00000013 nop +80000ac8: 00078513 mv a0,a5 +80000acc: 02c12083 lw ra,44(sp) +80000ad0: 02812403 lw s0,40(sp) +80000ad4: 03010113 addi sp,sp,48 +80000ad8: 00008067 ret -80000ad8 : -80000ad8: 00050593 mv a1,a0 -80000adc: 00000693 li a3,0 -80000ae0: 00000613 li a2,0 -80000ae4: 00000513 li a0,0 -80000ae8: 2450006f j 8000152c <__register_exitproc> +80000adc : +80000adc: 00050593 mv a1,a0 +80000ae0: 00000693 li a3,0 +80000ae4: 00000613 li a2,0 +80000ae8: 00000513 li a0,0 +80000aec: 2450006f j 80001530 <__register_exitproc> -80000aec : -80000aec: ff010113 addi sp,sp,-16 -80000af0: 00000593 li a1,0 -80000af4: 00812423 sw s0,8(sp) -80000af8: 00112623 sw ra,12(sp) -80000afc: 00050413 mv s0,a0 -80000b00: 2c5000ef jal ra,800015c4 <__call_exitprocs> -80000b04: 0701a503 lw a0,112(gp) # 80002878 <_global_impure_ptr> -80000b08: 03c52783 lw a5,60(a0) -80000b0c: 00078463 beqz a5,80000b14 -80000b10: 000780e7 jalr a5 -80000b14: 00040513 mv a0,s0 -80000b18: ad1ff0ef jal ra,800005e8 <_exit> +80000af0 : +80000af0: ff010113 addi sp,sp,-16 +80000af4: 00000593 li a1,0 +80000af8: 00812423 sw s0,8(sp) +80000afc: 00112623 sw ra,12(sp) +80000b00: 00050413 mv s0,a0 +80000b04: 2c5000ef jal ra,800015c8 <__call_exitprocs> +80000b08: 0701a503 lw a0,112(gp) # 80002878 <_global_impure_ptr> +80000b0c: 03c52783 lw a5,60(a0) +80000b10: 00078463 beqz a5,80000b18 +80000b14: 000780e7 jalr a5 +80000b18: 00040513 mv a0,s0 +80000b1c: ad1ff0ef jal ra,800005ec <_exit> -80000b1c <__libc_fini_array>: -80000b1c: ff010113 addi sp,sp,-16 -80000b20: 00812423 sw s0,8(sp) -80000b24: 00912223 sw s1,4(sp) -80000b28: 80002437 lui s0,0x80002 -80000b2c: 800024b7 lui s1,0x80002 -80000b30: 00448793 addi a5,s1,4 # 80002004 <__BSS_END__+0xfffff734> -80000b34: 00440413 addi s0,s0,4 # 80002004 <__BSS_END__+0xfffff734> -80000b38: 40f40433 sub s0,s0,a5 -80000b3c: 00112623 sw ra,12(sp) -80000b40: 40245413 srai s0,s0,0x2 -80000b44: 02040263 beqz s0,80000b68 <__libc_fini_array+0x4c> -80000b48: 00241493 slli s1,s0,0x2 -80000b4c: ffc48493 addi s1,s1,-4 -80000b50: 00f484b3 add s1,s1,a5 -80000b54: 0004a783 lw a5,0(s1) -80000b58: fff40413 addi s0,s0,-1 -80000b5c: ffc48493 addi s1,s1,-4 -80000b60: 000780e7 jalr a5 -80000b64: fe0418e3 bnez s0,80000b54 <__libc_fini_array+0x38> -80000b68: 00c12083 lw ra,12(sp) -80000b6c: 00812403 lw s0,8(sp) -80000b70: 00412483 lw s1,4(sp) -80000b74: 01010113 addi sp,sp,16 -80000b78: 00008067 ret +80000b20 <__libc_fini_array>: +80000b20: ff010113 addi sp,sp,-16 +80000b24: 00812423 sw s0,8(sp) +80000b28: 00912223 sw s1,4(sp) +80000b2c: 80002437 lui s0,0x80002 +80000b30: 800024b7 lui s1,0x80002 +80000b34: 00448793 addi a5,s1,4 # 80002004 <__BSS_END__+0xfffff734> +80000b38: 00440413 addi s0,s0,4 # 80002004 <__BSS_END__+0xfffff734> +80000b3c: 40f40433 sub s0,s0,a5 +80000b40: 00112623 sw ra,12(sp) +80000b44: 40245413 srai s0,s0,0x2 +80000b48: 02040263 beqz s0,80000b6c <__libc_fini_array+0x4c> +80000b4c: 00241493 slli s1,s0,0x2 +80000b50: ffc48493 addi s1,s1,-4 +80000b54: 00f484b3 add s1,s1,a5 +80000b58: 0004a783 lw a5,0(s1) +80000b5c: fff40413 addi s0,s0,-1 +80000b60: ffc48493 addi s1,s1,-4 +80000b64: 000780e7 jalr a5 +80000b68: fe0418e3 bnez s0,80000b58 <__libc_fini_array+0x38> +80000b6c: 00c12083 lw ra,12(sp) +80000b70: 00812403 lw s0,8(sp) +80000b74: 00412483 lw s1,4(sp) +80000b78: 01010113 addi sp,sp,16 +80000b7c: 00008067 ret -80000b7c <__libc_init_array>: -80000b7c: ff010113 addi sp,sp,-16 -80000b80: 00812423 sw s0,8(sp) -80000b84: 01212023 sw s2,0(sp) -80000b88: 80002437 lui s0,0x80002 -80000b8c: 80002937 lui s2,0x80002 -80000b90: 00040793 mv a5,s0 -80000b94: 00090913 mv s2,s2 -80000b98: 40f90933 sub s2,s2,a5 -80000b9c: 00112623 sw ra,12(sp) -80000ba0: 00912223 sw s1,4(sp) -80000ba4: 40295913 srai s2,s2,0x2 -80000ba8: 02090063 beqz s2,80000bc8 <__libc_init_array+0x4c> -80000bac: 00040413 mv s0,s0 -80000bb0: 00000493 li s1,0 -80000bb4: 00042783 lw a5,0(s0) # 80002000 <__BSS_END__+0xfffff730> -80000bb8: 00148493 addi s1,s1,1 -80000bbc: 00440413 addi s0,s0,4 -80000bc0: 000780e7 jalr a5 -80000bc4: fe9918e3 bne s2,s1,80000bb4 <__libc_init_array+0x38> -80000bc8: 80002437 lui s0,0x80002 -80000bcc: 80002937 lui s2,0x80002 -80000bd0: 00040793 mv a5,s0 -80000bd4: 00490913 addi s2,s2,4 # 80002004 <__BSS_END__+0xfffff734> -80000bd8: 40f90933 sub s2,s2,a5 -80000bdc: 40295913 srai s2,s2,0x2 -80000be0: 02090063 beqz s2,80000c00 <__libc_init_array+0x84> -80000be4: 00040413 mv s0,s0 -80000be8: 00000493 li s1,0 -80000bec: 00042783 lw a5,0(s0) # 80002000 <__BSS_END__+0xfffff730> -80000bf0: 00148493 addi s1,s1,1 -80000bf4: 00440413 addi s0,s0,4 -80000bf8: 000780e7 jalr a5 -80000bfc: fe9918e3 bne s2,s1,80000bec <__libc_init_array+0x70> -80000c00: 00c12083 lw ra,12(sp) -80000c04: 00812403 lw s0,8(sp) -80000c08: 00412483 lw s1,4(sp) -80000c0c: 00012903 lw s2,0(sp) -80000c10: 01010113 addi sp,sp,16 -80000c14: 00008067 ret +80000b80 <__libc_init_array>: +80000b80: ff010113 addi sp,sp,-16 +80000b84: 00812423 sw s0,8(sp) +80000b88: 01212023 sw s2,0(sp) +80000b8c: 80002437 lui s0,0x80002 +80000b90: 80002937 lui s2,0x80002 +80000b94: 00040793 mv a5,s0 +80000b98: 00090913 mv s2,s2 +80000b9c: 40f90933 sub s2,s2,a5 +80000ba0: 00112623 sw ra,12(sp) +80000ba4: 00912223 sw s1,4(sp) +80000ba8: 40295913 srai s2,s2,0x2 +80000bac: 02090063 beqz s2,80000bcc <__libc_init_array+0x4c> +80000bb0: 00040413 mv s0,s0 +80000bb4: 00000493 li s1,0 +80000bb8: 00042783 lw a5,0(s0) # 80002000 <__BSS_END__+0xfffff730> +80000bbc: 00148493 addi s1,s1,1 +80000bc0: 00440413 addi s0,s0,4 +80000bc4: 000780e7 jalr a5 +80000bc8: fe9918e3 bne s2,s1,80000bb8 <__libc_init_array+0x38> +80000bcc: 80002437 lui s0,0x80002 +80000bd0: 80002937 lui s2,0x80002 +80000bd4: 00040793 mv a5,s0 +80000bd8: 00490913 addi s2,s2,4 # 80002004 <__BSS_END__+0xfffff734> +80000bdc: 40f90933 sub s2,s2,a5 +80000be0: 40295913 srai s2,s2,0x2 +80000be4: 02090063 beqz s2,80000c04 <__libc_init_array+0x84> +80000be8: 00040413 mv s0,s0 +80000bec: 00000493 li s1,0 +80000bf0: 00042783 lw a5,0(s0) # 80002000 <__BSS_END__+0xfffff730> +80000bf4: 00148493 addi s1,s1,1 +80000bf8: 00440413 addi s0,s0,4 +80000bfc: 000780e7 jalr a5 +80000c00: fe9918e3 bne s2,s1,80000bf0 <__libc_init_array+0x70> +80000c04: 00c12083 lw ra,12(sp) +80000c08: 00812403 lw s0,8(sp) +80000c0c: 00412483 lw s1,4(sp) +80000c10: 00012903 lw s2,0(sp) +80000c14: 01010113 addi sp,sp,16 +80000c18: 00008067 ret -80000c18 : -80000c18: 00050593 mv a1,a0 -80000c1c: 0801a503 lw a0,128(gp) # 80002888 <_impure_ptr> -80000c20: 0100006f j 80000c30 <_malloc_r> +80000c1c : +80000c1c: 00050593 mv a1,a0 +80000c20: 0801a503 lw a0,128(gp) # 80002888 <_impure_ptr> +80000c24: 0100006f j 80000c34 <_malloc_r> -80000c24 : -80000c24: 00050593 mv a1,a0 -80000c28: 0801a503 lw a0,128(gp) # 80002888 <_impure_ptr> -80000c2c: 3d10006f j 800017fc <_free_r> +80000c28 : +80000c28: 00050593 mv a1,a0 +80000c2c: 0801a503 lw a0,128(gp) # 80002888 <_impure_ptr> +80000c30: 3d10006f j 80001800 <_free_r> -80000c30 <_malloc_r>: -80000c30: fd010113 addi sp,sp,-48 -80000c34: 02912223 sw s1,36(sp) -80000c38: 01312e23 sw s3,28(sp) -80000c3c: 02112623 sw ra,44(sp) -80000c40: 02812423 sw s0,40(sp) -80000c44: 03212023 sw s2,32(sp) -80000c48: 01412c23 sw s4,24(sp) -80000c4c: 01512a23 sw s5,20(sp) -80000c50: 01612823 sw s6,16(sp) -80000c54: 01712623 sw s7,12(sp) -80000c58: 01812423 sw s8,8(sp) -80000c5c: 01912223 sw s9,4(sp) -80000c60: 00b58493 addi s1,a1,11 -80000c64: 01600793 li a5,22 -80000c68: 00050993 mv s3,a0 -80000c6c: 0697e463 bltu a5,s1,80000cd4 <_malloc_r+0xa4> -80000c70: 01000793 li a5,16 -80000c74: 20b7ec63 bltu a5,a1,80000e8c <_malloc_r+0x25c> -80000c78: 051000ef jal ra,800014c8 <__malloc_lock> -80000c7c: 01000493 li s1,16 -80000c80: 01800793 li a5,24 -80000c84: 00200613 li a2,2 -80000c88: c6818913 addi s2,gp,-920 # 80002470 <__malloc_av_> -80000c8c: 00f907b3 add a5,s2,a5 -80000c90: 0047a403 lw s0,4(a5) -80000c94: ff878713 addi a4,a5,-8 -80000c98: 24e40263 beq s0,a4,80000edc <_malloc_r+0x2ac> -80000c9c: 00442783 lw a5,4(s0) -80000ca0: 00c42683 lw a3,12(s0) -80000ca4: 00842603 lw a2,8(s0) -80000ca8: ffc7f793 andi a5,a5,-4 -80000cac: 00f407b3 add a5,s0,a5 -80000cb0: 0047a703 lw a4,4(a5) -80000cb4: 00d62623 sw a3,12(a2) -80000cb8: 00c6a423 sw a2,8(a3) -80000cbc: 00176713 ori a4,a4,1 -80000cc0: 00098513 mv a0,s3 -80000cc4: 00e7a223 sw a4,4(a5) -80000cc8: 005000ef jal ra,800014cc <__malloc_unlock> -80000ccc: 00840513 addi a0,s0,8 -80000cd0: 1c80006f j 80000e98 <_malloc_r+0x268> -80000cd4: ff84f493 andi s1,s1,-8 -80000cd8: 1a04ca63 bltz s1,80000e8c <_malloc_r+0x25c> -80000cdc: 1ab4e863 bltu s1,a1,80000e8c <_malloc_r+0x25c> -80000ce0: 7e8000ef jal ra,800014c8 <__malloc_lock> -80000ce4: 1f700793 li a5,503 -80000ce8: 4697f863 bgeu a5,s1,80001158 <_malloc_r+0x528> -80000cec: 0094d793 srli a5,s1,0x9 -80000cf0: 1c078e63 beqz a5,80000ecc <_malloc_r+0x29c> -80000cf4: 00400713 li a4,4 -80000cf8: 3ef76c63 bltu a4,a5,800010f0 <_malloc_r+0x4c0> -80000cfc: 0064d793 srli a5,s1,0x6 -80000d00: 03978613 addi a2,a5,57 -80000d04: 03878513 addi a0,a5,56 -80000d08: 00361693 slli a3,a2,0x3 -80000d0c: c6818913 addi s2,gp,-920 # 80002470 <__malloc_av_> -80000d10: 00d906b3 add a3,s2,a3 -80000d14: 0046a403 lw s0,4(a3) -80000d18: ff868693 addi a3,a3,-8 -80000d1c: 02868c63 beq a3,s0,80000d54 <_malloc_r+0x124> -80000d20: 00442783 lw a5,4(s0) -80000d24: 00f00593 li a1,15 -80000d28: ffc7f793 andi a5,a5,-4 -80000d2c: 40978733 sub a4,a5,s1 -80000d30: 02e5c063 blt a1,a4,80000d50 <_malloc_r+0x120> -80000d34: 34075863 bgez a4,80001084 <_malloc_r+0x454> -80000d38: 00c42403 lw s0,12(s0) -80000d3c: 00868c63 beq a3,s0,80000d54 <_malloc_r+0x124> -80000d40: 00442783 lw a5,4(s0) -80000d44: ffc7f793 andi a5,a5,-4 -80000d48: 40978733 sub a4,a5,s1 -80000d4c: fee5d4e3 bge a1,a4,80000d34 <_malloc_r+0x104> -80000d50: 00050613 mv a2,a0 -80000d54: 01092403 lw s0,16(s2) -80000d58: 00890813 addi a6,s2,8 -80000d5c: 19040c63 beq s0,a6,80000ef4 <_malloc_r+0x2c4> -80000d60: 00442583 lw a1,4(s0) -80000d64: 00f00713 li a4,15 -80000d68: ffc5f593 andi a1,a1,-4 -80000d6c: 409587b3 sub a5,a1,s1 -80000d70: 40f74a63 blt a4,a5,80001184 <_malloc_r+0x554> -80000d74: 01092a23 sw a6,20(s2) -80000d78: 01092823 sw a6,16(s2) -80000d7c: 3e07d463 bgez a5,80001164 <_malloc_r+0x534> -80000d80: 1ff00793 li a5,511 -80000d84: 30b7e663 bltu a5,a1,80001090 <_malloc_r+0x460> -80000d88: 0035d593 srli a1,a1,0x3 -80000d8c: 00158793 addi a5,a1,1 -80000d90: 00379793 slli a5,a5,0x3 -80000d94: 00492503 lw a0,4(s2) -80000d98: 00f907b3 add a5,s2,a5 -80000d9c: 0007a683 lw a3,0(a5) -80000da0: 4025d593 srai a1,a1,0x2 -80000da4: 00100713 li a4,1 -80000da8: 00b71733 sll a4,a4,a1 -80000dac: 00a76733 or a4,a4,a0 -80000db0: ff878593 addi a1,a5,-8 -80000db4: 00b42623 sw a1,12(s0) -80000db8: 00d42423 sw a3,8(s0) -80000dbc: 00e92223 sw a4,4(s2) -80000dc0: 0087a023 sw s0,0(a5) -80000dc4: 0086a623 sw s0,12(a3) -80000dc8: 40265793 srai a5,a2,0x2 -80000dcc: 00100693 li a3,1 -80000dd0: 00f696b3 sll a3,a3,a5 -80000dd4: 12d76a63 bltu a4,a3,80000f08 <_malloc_r+0x2d8> -80000dd8: 00e6f7b3 and a5,a3,a4 -80000ddc: 02079463 bnez a5,80000e04 <_malloc_r+0x1d4> -80000de0: 00169693 slli a3,a3,0x1 -80000de4: ffc67613 andi a2,a2,-4 -80000de8: 00e6f7b3 and a5,a3,a4 -80000dec: 00460613 addi a2,a2,4 -80000df0: 00079a63 bnez a5,80000e04 <_malloc_r+0x1d4> -80000df4: 00169693 slli a3,a3,0x1 -80000df8: 00e6f7b3 and a5,a3,a4 -80000dfc: 00460613 addi a2,a2,4 -80000e00: fe078ae3 beqz a5,80000df4 <_malloc_r+0x1c4> -80000e04: 00f00513 li a0,15 -80000e08: 00361893 slli a7,a2,0x3 -80000e0c: 011908b3 add a7,s2,a7 -80000e10: 00088593 mv a1,a7 -80000e14: 00060313 mv t1,a2 -80000e18: 00c5a403 lw s0,12(a1) -80000e1c: 00859a63 bne a1,s0,80000e30 <_malloc_r+0x200> -80000e20: 2f40006f j 80001114 <_malloc_r+0x4e4> -80000e24: 30075263 bgez a4,80001128 <_malloc_r+0x4f8> -80000e28: 00c42403 lw s0,12(s0) -80000e2c: 2e858463 beq a1,s0,80001114 <_malloc_r+0x4e4> -80000e30: 00442783 lw a5,4(s0) -80000e34: ffc7f793 andi a5,a5,-4 -80000e38: 40978733 sub a4,a5,s1 -80000e3c: fee554e3 bge a0,a4,80000e24 <_malloc_r+0x1f4> -80000e40: 00c42683 lw a3,12(s0) -80000e44: 00842603 lw a2,8(s0) -80000e48: 0014e593 ori a1,s1,1 -80000e4c: 00b42223 sw a1,4(s0) -80000e50: 00d62623 sw a3,12(a2) -80000e54: 00c6a423 sw a2,8(a3) -80000e58: 009404b3 add s1,s0,s1 -80000e5c: 00992a23 sw s1,20(s2) -80000e60: 00992823 sw s1,16(s2) -80000e64: 00176693 ori a3,a4,1 -80000e68: 0104a623 sw a6,12(s1) -80000e6c: 0104a423 sw a6,8(s1) -80000e70: 00d4a223 sw a3,4(s1) -80000e74: 00f407b3 add a5,s0,a5 -80000e78: 00098513 mv a0,s3 -80000e7c: 00e7a023 sw a4,0(a5) -80000e80: 64c000ef jal ra,800014cc <__malloc_unlock> -80000e84: 00840513 addi a0,s0,8 -80000e88: 0100006f j 80000e98 <_malloc_r+0x268> -80000e8c: 00c00793 li a5,12 -80000e90: 00f9a023 sw a5,0(s3) -80000e94: 00000513 li a0,0 -80000e98: 02c12083 lw ra,44(sp) -80000e9c: 02812403 lw s0,40(sp) -80000ea0: 02412483 lw s1,36(sp) -80000ea4: 02012903 lw s2,32(sp) -80000ea8: 01c12983 lw s3,28(sp) -80000eac: 01812a03 lw s4,24(sp) -80000eb0: 01412a83 lw s5,20(sp) -80000eb4: 01012b03 lw s6,16(sp) -80000eb8: 00c12b83 lw s7,12(sp) -80000ebc: 00812c03 lw s8,8(sp) -80000ec0: 00412c83 lw s9,4(sp) -80000ec4: 03010113 addi sp,sp,48 -80000ec8: 00008067 ret -80000ecc: 20000693 li a3,512 -80000ed0: 04000613 li a2,64 -80000ed4: 03f00513 li a0,63 -80000ed8: e35ff06f j 80000d0c <_malloc_r+0xdc> -80000edc: 00c7a403 lw s0,12(a5) -80000ee0: 00260613 addi a2,a2,2 -80000ee4: da879ce3 bne a5,s0,80000c9c <_malloc_r+0x6c> -80000ee8: 01092403 lw s0,16(s2) -80000eec: 00890813 addi a6,s2,8 -80000ef0: e70418e3 bne s0,a6,80000d60 <_malloc_r+0x130> -80000ef4: 00492703 lw a4,4(s2) -80000ef8: 40265793 srai a5,a2,0x2 -80000efc: 00100693 li a3,1 -80000f00: 00f696b3 sll a3,a3,a5 -80000f04: ecd77ae3 bgeu a4,a3,80000dd8 <_malloc_r+0x1a8> -80000f08: 00892403 lw s0,8(s2) -80000f0c: 00442a83 lw s5,4(s0) -80000f10: ffcafc13 andi s8,s5,-4 -80000f14: 009c6863 bltu s8,s1,80000f24 <_malloc_r+0x2f4> -80000f18: 409c07b3 sub a5,s8,s1 -80000f1c: 00f00713 li a4,15 -80000f20: 12f74e63 blt a4,a5,8000105c <_malloc_r+0x42c> -80000f24: 0941aa83 lw s5,148(gp) # 8000289c <__malloc_top_pad> -80000f28: 0841a703 lw a4,132(gp) # 8000288c <__malloc_sbrk_base> -80000f2c: fff00793 li a5,-1 -80000f30: 01840a33 add s4,s0,s8 -80000f34: 01548ab3 add s5,s1,s5 -80000f38: 32f70863 beq a4,a5,80001268 <_malloc_r+0x638> -80000f3c: 000017b7 lui a5,0x1 -80000f40: 00f78793 addi a5,a5,15 # 100f <_start-0x7fffeff1> -80000f44: 00fa8ab3 add s5,s5,a5 -80000f48: fffff7b7 lui a5,0xfffff -80000f4c: 00fafab3 and s5,s5,a5 -80000f50: 000a8593 mv a1,s5 -80000f54: 00098513 mv a0,s3 -80000f58: 578000ef jal ra,800014d0 <_sbrk_r> -80000f5c: fff00793 li a5,-1 -80000f60: 00050b13 mv s6,a0 -80000f64: 26f50a63 beq a0,a5,800011d8 <_malloc_r+0x5a8> -80000f68: 27456663 bltu a0,s4,800011d4 <_malloc_r+0x5a4> -80000f6c: 09c18b93 addi s7,gp,156 # 800028a4 <__malloc_current_mallinfo> -80000f70: 000ba783 lw a5,0(s7) -80000f74: 00fa87b3 add a5,s5,a5 -80000f78: 00fba023 sw a5,0(s7) -80000f7c: 00078713 mv a4,a5 -80000f80: 38aa0663 beq s4,a0,8000130c <_malloc_r+0x6dc> -80000f84: 0841a683 lw a3,132(gp) # 8000288c <__malloc_sbrk_base> -80000f88: fff00793 li a5,-1 -80000f8c: 38f68e63 beq a3,a5,80001328 <_malloc_r+0x6f8> -80000f90: 414b0a33 sub s4,s6,s4 -80000f94: 00ea0733 add a4,s4,a4 -80000f98: 00eba023 sw a4,0(s7) -80000f9c: 007b7c93 andi s9,s6,7 -80000fa0: 2e0c8663 beqz s9,8000128c <_malloc_r+0x65c> -80000fa4: 419b0b33 sub s6,s6,s9 -80000fa8: 000017b7 lui a5,0x1 -80000fac: 008b0b13 addi s6,s6,8 -80000fb0: fff78a13 addi s4,a5,-1 # fff <_start-0x7ffff001> -80000fb4: 015b0ab3 add s5,s6,s5 -80000fb8: 00878793 addi a5,a5,8 -80000fbc: 014af733 and a4,s5,s4 -80000fc0: 419787b3 sub a5,a5,s9 -80000fc4: 40e787b3 sub a5,a5,a4 -80000fc8: 0147fa33 and s4,a5,s4 -80000fcc: 000a0593 mv a1,s4 -80000fd0: 00098513 mv a0,s3 -80000fd4: 4fc000ef jal ra,800014d0 <_sbrk_r> -80000fd8: fff00793 li a5,-1 -80000fdc: 3af50063 beq a0,a5,8000137c <_malloc_r+0x74c> -80000fe0: 41650533 sub a0,a0,s6 -80000fe4: 01450ab3 add s5,a0,s4 -80000fe8: 000ba783 lw a5,0(s7) -80000fec: 01692423 sw s6,8(s2) -80000ff0: 001aea93 ori s5,s5,1 -80000ff4: 00fa07b3 add a5,s4,a5 -80000ff8: 00fba023 sw a5,0(s7) -80000ffc: 015b2223 sw s5,4(s6) -80001000: 33240863 beq s0,s2,80001330 <_malloc_r+0x700> -80001004: 00f00613 li a2,15 -80001008: 33867863 bgeu a2,s8,80001338 <_malloc_r+0x708> -8000100c: 00442683 lw a3,4(s0) -80001010: ff4c0713 addi a4,s8,-12 -80001014: ff877713 andi a4,a4,-8 -80001018: 0016f693 andi a3,a3,1 -8000101c: 00e6e6b3 or a3,a3,a4 -80001020: 00d42223 sw a3,4(s0) -80001024: 00500593 li a1,5 -80001028: 00e406b3 add a3,s0,a4 -8000102c: 00b6a223 sw a1,4(a3) -80001030: 00b6a423 sw a1,8(a3) -80001034: 34e66e63 bltu a2,a4,80001390 <_malloc_r+0x760> -80001038: 004b2a83 lw s5,4(s6) -8000103c: 000b0413 mv s0,s6 -80001040: 0901a683 lw a3,144(gp) # 80002898 <__malloc_max_sbrked_mem> -80001044: 00f6f463 bgeu a3,a5,8000104c <_malloc_r+0x41c> -80001048: 08f1a823 sw a5,144(gp) # 80002898 <__malloc_max_sbrked_mem> -8000104c: 08c1a683 lw a3,140(gp) # 80002894 <_edata> -80001050: 18f6f863 bgeu a3,a5,800011e0 <_malloc_r+0x5b0> -80001054: 08f1a623 sw a5,140(gp) # 80002894 <_edata> -80001058: 1880006f j 800011e0 <_malloc_r+0x5b0> -8000105c: 0014e713 ori a4,s1,1 -80001060: 00e42223 sw a4,4(s0) -80001064: 009404b3 add s1,s0,s1 -80001068: 00992423 sw s1,8(s2) -8000106c: 0017e793 ori a5,a5,1 -80001070: 00098513 mv a0,s3 -80001074: 00f4a223 sw a5,4(s1) -80001078: 454000ef jal ra,800014cc <__malloc_unlock> -8000107c: 00840513 addi a0,s0,8 -80001080: e19ff06f j 80000e98 <_malloc_r+0x268> -80001084: 00c42683 lw a3,12(s0) -80001088: 00842603 lw a2,8(s0) -8000108c: c21ff06f j 80000cac <_malloc_r+0x7c> -80001090: 0095d793 srli a5,a1,0x9 -80001094: 00400713 li a4,4 -80001098: 12f77463 bgeu a4,a5,800011c0 <_malloc_r+0x590> -8000109c: 01400713 li a4,20 -800010a0: 22f76063 bltu a4,a5,800012c0 <_malloc_r+0x690> -800010a4: 05c78693 addi a3,a5,92 -800010a8: 05b78713 addi a4,a5,91 -800010ac: 00369693 slli a3,a3,0x3 -800010b0: 00d906b3 add a3,s2,a3 -800010b4: 0006a783 lw a5,0(a3) -800010b8: ff868693 addi a3,a3,-8 -800010bc: 1af68a63 beq a3,a5,80001270 <_malloc_r+0x640> -800010c0: 0047a703 lw a4,4(a5) -800010c4: ffc77713 andi a4,a4,-4 -800010c8: 00e5f663 bgeu a1,a4,800010d4 <_malloc_r+0x4a4> -800010cc: 0087a783 lw a5,8(a5) -800010d0: fef698e3 bne a3,a5,800010c0 <_malloc_r+0x490> -800010d4: 00c7a683 lw a3,12(a5) -800010d8: 00492703 lw a4,4(s2) -800010dc: 00d42623 sw a3,12(s0) -800010e0: 00f42423 sw a5,8(s0) -800010e4: 0086a423 sw s0,8(a3) -800010e8: 0087a623 sw s0,12(a5) -800010ec: cddff06f j 80000dc8 <_malloc_r+0x198> -800010f0: 01400713 li a4,20 -800010f4: 10f77863 bgeu a4,a5,80001204 <_malloc_r+0x5d4> -800010f8: 05400713 li a4,84 -800010fc: 1ef76063 bltu a4,a5,800012dc <_malloc_r+0x6ac> -80001100: 00c4d793 srli a5,s1,0xc -80001104: 06f78613 addi a2,a5,111 -80001108: 06e78513 addi a0,a5,110 -8000110c: 00361693 slli a3,a2,0x3 -80001110: bfdff06f j 80000d0c <_malloc_r+0xdc> -80001114: 00130313 addi t1,t1,1 -80001118: 00337793 andi a5,t1,3 -8000111c: 00858593 addi a1,a1,8 -80001120: ce079ce3 bnez a5,80000e18 <_malloc_r+0x1e8> -80001124: 0fc0006f j 80001220 <_malloc_r+0x5f0> -80001128: 00f407b3 add a5,s0,a5 -8000112c: 0047a703 lw a4,4(a5) -80001130: 00c42683 lw a3,12(s0) -80001134: 00842603 lw a2,8(s0) -80001138: 00176713 ori a4,a4,1 -8000113c: 00e7a223 sw a4,4(a5) -80001140: 00d62623 sw a3,12(a2) -80001144: 00098513 mv a0,s3 -80001148: 00c6a423 sw a2,8(a3) -8000114c: 380000ef jal ra,800014cc <__malloc_unlock> -80001150: 00840513 addi a0,s0,8 -80001154: d45ff06f j 80000e98 <_malloc_r+0x268> -80001158: 0034d613 srli a2,s1,0x3 -8000115c: 00848793 addi a5,s1,8 -80001160: b29ff06f j 80000c88 <_malloc_r+0x58> -80001164: 00b405b3 add a1,s0,a1 -80001168: 0045a783 lw a5,4(a1) -8000116c: 00098513 mv a0,s3 -80001170: 0017e793 ori a5,a5,1 -80001174: 00f5a223 sw a5,4(a1) -80001178: 354000ef jal ra,800014cc <__malloc_unlock> -8000117c: 00840513 addi a0,s0,8 -80001180: d19ff06f j 80000e98 <_malloc_r+0x268> -80001184: 0014e713 ori a4,s1,1 -80001188: 00e42223 sw a4,4(s0) -8000118c: 009404b3 add s1,s0,s1 -80001190: 00992a23 sw s1,20(s2) -80001194: 00992823 sw s1,16(s2) -80001198: 0017e713 ori a4,a5,1 -8000119c: 0104a623 sw a6,12(s1) -800011a0: 0104a423 sw a6,8(s1) -800011a4: 00e4a223 sw a4,4(s1) -800011a8: 00b405b3 add a1,s0,a1 -800011ac: 00098513 mv a0,s3 -800011b0: 00f5a023 sw a5,0(a1) -800011b4: 318000ef jal ra,800014cc <__malloc_unlock> -800011b8: 00840513 addi a0,s0,8 -800011bc: cddff06f j 80000e98 <_malloc_r+0x268> -800011c0: 0065d793 srli a5,a1,0x6 -800011c4: 03978693 addi a3,a5,57 -800011c8: 03878713 addi a4,a5,56 -800011cc: 00369693 slli a3,a3,0x3 -800011d0: ee1ff06f j 800010b0 <_malloc_r+0x480> -800011d4: 13240263 beq s0,s2,800012f8 <_malloc_r+0x6c8> -800011d8: 00892403 lw s0,8(s2) -800011dc: 00442a83 lw s5,4(s0) -800011e0: ffcafa93 andi s5,s5,-4 -800011e4: 409a87b3 sub a5,s5,s1 -800011e8: 009ae663 bltu s5,s1,800011f4 <_malloc_r+0x5c4> -800011ec: 00f00713 li a4,15 -800011f0: e6f746e3 blt a4,a5,8000105c <_malloc_r+0x42c> -800011f4: 00098513 mv a0,s3 -800011f8: 2d4000ef jal ra,800014cc <__malloc_unlock> -800011fc: 00000513 li a0,0 -80001200: c99ff06f j 80000e98 <_malloc_r+0x268> -80001204: 05c78613 addi a2,a5,92 -80001208: 05b78513 addi a0,a5,91 -8000120c: 00361693 slli a3,a2,0x3 -80001210: afdff06f j 80000d0c <_malloc_r+0xdc> -80001214: 0088a783 lw a5,8(a7) -80001218: fff60613 addi a2,a2,-1 -8000121c: 1d179463 bne a5,a7,800013e4 <_malloc_r+0x7b4> -80001220: 00367793 andi a5,a2,3 -80001224: ff888893 addi a7,a7,-8 -80001228: fe0796e3 bnez a5,80001214 <_malloc_r+0x5e4> -8000122c: 00492703 lw a4,4(s2) -80001230: fff6c793 not a5,a3 -80001234: 00e7f7b3 and a5,a5,a4 -80001238: 00f92223 sw a5,4(s2) -8000123c: 00169693 slli a3,a3,0x1 -80001240: ccd7e4e3 bltu a5,a3,80000f08 <_malloc_r+0x2d8> -80001244: cc0682e3 beqz a3,80000f08 <_malloc_r+0x2d8> -80001248: 00f6f733 and a4,a3,a5 -8000124c: 00071a63 bnez a4,80001260 <_malloc_r+0x630> -80001250: 00169693 slli a3,a3,0x1 -80001254: 00f6f733 and a4,a3,a5 -80001258: 00430313 addi t1,t1,4 -8000125c: fe070ae3 beqz a4,80001250 <_malloc_r+0x620> -80001260: 00030613 mv a2,t1 -80001264: ba5ff06f j 80000e08 <_malloc_r+0x1d8> -80001268: 010a8a93 addi s5,s5,16 -8000126c: ce5ff06f j 80000f50 <_malloc_r+0x320> -80001270: 00492503 lw a0,4(s2) -80001274: 40275593 srai a1,a4,0x2 -80001278: 00100713 li a4,1 -8000127c: 00b71733 sll a4,a4,a1 -80001280: 00a76733 or a4,a4,a0 -80001284: 00e92223 sw a4,4(s2) -80001288: e55ff06f j 800010dc <_malloc_r+0x4ac> -8000128c: 000017b7 lui a5,0x1 -80001290: fff78713 addi a4,a5,-1 # fff <_start-0x7ffff001> -80001294: 015b0a33 add s4,s6,s5 -80001298: 00ea7a33 and s4,s4,a4 -8000129c: 414787b3 sub a5,a5,s4 -800012a0: 00e7fa33 and s4,a5,a4 -800012a4: 000a0593 mv a1,s4 -800012a8: 00098513 mv a0,s3 -800012ac: 224000ef jal ra,800014d0 <_sbrk_r> -800012b0: fff00793 li a5,-1 -800012b4: d2f516e3 bne a0,a5,80000fe0 <_malloc_r+0x3b0> -800012b8: 00000a13 li s4,0 -800012bc: d2dff06f j 80000fe8 <_malloc_r+0x3b8> -800012c0: 05400713 li a4,84 -800012c4: 08f76063 bltu a4,a5,80001344 <_malloc_r+0x714> -800012c8: 00c5d793 srli a5,a1,0xc -800012cc: 06f78693 addi a3,a5,111 -800012d0: 06e78713 addi a4,a5,110 -800012d4: 00369693 slli a3,a3,0x3 -800012d8: dd9ff06f j 800010b0 <_malloc_r+0x480> -800012dc: 15400713 li a4,340 -800012e0: 08f76063 bltu a4,a5,80001360 <_malloc_r+0x730> -800012e4: 00f4d793 srli a5,s1,0xf -800012e8: 07878613 addi a2,a5,120 -800012ec: 07778513 addi a0,a5,119 -800012f0: 00361693 slli a3,a2,0x3 -800012f4: a19ff06f j 80000d0c <_malloc_r+0xdc> -800012f8: 09c18b93 addi s7,gp,156 # 800028a4 <__malloc_current_mallinfo> -800012fc: 000ba703 lw a4,0(s7) -80001300: 00ea8733 add a4,s5,a4 -80001304: 00eba023 sw a4,0(s7) -80001308: c7dff06f j 80000f84 <_malloc_r+0x354> -8000130c: 014a1693 slli a3,s4,0x14 -80001310: c6069ae3 bnez a3,80000f84 <_malloc_r+0x354> -80001314: 00892403 lw s0,8(s2) -80001318: 015c0ab3 add s5,s8,s5 -8000131c: 001aea93 ori s5,s5,1 -80001320: 01542223 sw s5,4(s0) -80001324: d1dff06f j 80001040 <_malloc_r+0x410> -80001328: 0961a223 sw s6,132(gp) # 8000288c <__malloc_sbrk_base> -8000132c: c71ff06f j 80000f9c <_malloc_r+0x36c> -80001330: 000b0413 mv s0,s6 -80001334: d0dff06f j 80001040 <_malloc_r+0x410> -80001338: 00100793 li a5,1 -8000133c: 00fb2223 sw a5,4(s6) -80001340: eb5ff06f j 800011f4 <_malloc_r+0x5c4> -80001344: 15400713 li a4,340 -80001348: 06f76263 bltu a4,a5,800013ac <_malloc_r+0x77c> -8000134c: 00f5d793 srli a5,a1,0xf -80001350: 07878693 addi a3,a5,120 -80001354: 07778713 addi a4,a5,119 -80001358: 00369693 slli a3,a3,0x3 -8000135c: d55ff06f j 800010b0 <_malloc_r+0x480> -80001360: 55400713 li a4,1364 -80001364: 06f76263 bltu a4,a5,800013c8 <_malloc_r+0x798> -80001368: 0124d793 srli a5,s1,0x12 -8000136c: 07d78613 addi a2,a5,125 -80001370: 07c78513 addi a0,a5,124 -80001374: 00361693 slli a3,a2,0x3 -80001378: 995ff06f j 80000d0c <_malloc_r+0xdc> -8000137c: ff8c8c93 addi s9,s9,-8 -80001380: 019a8ab3 add s5,s5,s9 -80001384: 416a8ab3 sub s5,s5,s6 -80001388: 00000a13 li s4,0 -8000138c: c5dff06f j 80000fe8 <_malloc_r+0x3b8> -80001390: 00840593 addi a1,s0,8 -80001394: 00098513 mv a0,s3 -80001398: 464000ef jal ra,800017fc <_free_r> -8000139c: 00892403 lw s0,8(s2) -800013a0: 000ba783 lw a5,0(s7) -800013a4: 00442a83 lw s5,4(s0) -800013a8: c99ff06f j 80001040 <_malloc_r+0x410> -800013ac: 55400713 li a4,1364 -800013b0: 02f76463 bltu a4,a5,800013d8 <_malloc_r+0x7a8> -800013b4: 0125d793 srli a5,a1,0x12 -800013b8: 07d78693 addi a3,a5,125 -800013bc: 07c78713 addi a4,a5,124 -800013c0: 00369693 slli a3,a3,0x3 -800013c4: cedff06f j 800010b0 <_malloc_r+0x480> -800013c8: 3f800693 li a3,1016 -800013cc: 07f00613 li a2,127 -800013d0: 07e00513 li a0,126 -800013d4: 939ff06f j 80000d0c <_malloc_r+0xdc> -800013d8: 3f800693 li a3,1016 -800013dc: 07e00713 li a4,126 -800013e0: cd1ff06f j 800010b0 <_malloc_r+0x480> -800013e4: 00492783 lw a5,4(s2) -800013e8: e55ff06f j 8000123c <_malloc_r+0x60c> +80000c34 <_malloc_r>: +80000c34: fd010113 addi sp,sp,-48 +80000c38: 02912223 sw s1,36(sp) +80000c3c: 01312e23 sw s3,28(sp) +80000c40: 02112623 sw ra,44(sp) +80000c44: 02812423 sw s0,40(sp) +80000c48: 03212023 sw s2,32(sp) +80000c4c: 01412c23 sw s4,24(sp) +80000c50: 01512a23 sw s5,20(sp) +80000c54: 01612823 sw s6,16(sp) +80000c58: 01712623 sw s7,12(sp) +80000c5c: 01812423 sw s8,8(sp) +80000c60: 01912223 sw s9,4(sp) +80000c64: 00b58493 addi s1,a1,11 +80000c68: 01600793 li a5,22 +80000c6c: 00050993 mv s3,a0 +80000c70: 0697e463 bltu a5,s1,80000cd8 <_malloc_r+0xa4> +80000c74: 01000793 li a5,16 +80000c78: 20b7ec63 bltu a5,a1,80000e90 <_malloc_r+0x25c> +80000c7c: 051000ef jal ra,800014cc <__malloc_lock> +80000c80: 01000493 li s1,16 +80000c84: 01800793 li a5,24 +80000c88: 00200613 li a2,2 +80000c8c: c6818913 addi s2,gp,-920 # 80002470 <__malloc_av_> +80000c90: 00f907b3 add a5,s2,a5 +80000c94: 0047a403 lw s0,4(a5) +80000c98: ff878713 addi a4,a5,-8 +80000c9c: 24e40263 beq s0,a4,80000ee0 <_malloc_r+0x2ac> +80000ca0: 00442783 lw a5,4(s0) +80000ca4: 00c42683 lw a3,12(s0) +80000ca8: 00842603 lw a2,8(s0) +80000cac: ffc7f793 andi a5,a5,-4 +80000cb0: 00f407b3 add a5,s0,a5 +80000cb4: 0047a703 lw a4,4(a5) +80000cb8: 00d62623 sw a3,12(a2) +80000cbc: 00c6a423 sw a2,8(a3) +80000cc0: 00176713 ori a4,a4,1 +80000cc4: 00098513 mv a0,s3 +80000cc8: 00e7a223 sw a4,4(a5) +80000ccc: 005000ef jal ra,800014d0 <__malloc_unlock> +80000cd0: 00840513 addi a0,s0,8 +80000cd4: 1c80006f j 80000e9c <_malloc_r+0x268> +80000cd8: ff84f493 andi s1,s1,-8 +80000cdc: 1a04ca63 bltz s1,80000e90 <_malloc_r+0x25c> +80000ce0: 1ab4e863 bltu s1,a1,80000e90 <_malloc_r+0x25c> +80000ce4: 7e8000ef jal ra,800014cc <__malloc_lock> +80000ce8: 1f700793 li a5,503 +80000cec: 4697f863 bgeu a5,s1,8000115c <_malloc_r+0x528> +80000cf0: 0094d793 srli a5,s1,0x9 +80000cf4: 1c078e63 beqz a5,80000ed0 <_malloc_r+0x29c> +80000cf8: 00400713 li a4,4 +80000cfc: 3ef76c63 bltu a4,a5,800010f4 <_malloc_r+0x4c0> +80000d00: 0064d793 srli a5,s1,0x6 +80000d04: 03978613 addi a2,a5,57 +80000d08: 03878513 addi a0,a5,56 +80000d0c: 00361693 slli a3,a2,0x3 +80000d10: c6818913 addi s2,gp,-920 # 80002470 <__malloc_av_> +80000d14: 00d906b3 add a3,s2,a3 +80000d18: 0046a403 lw s0,4(a3) +80000d1c: ff868693 addi a3,a3,-8 +80000d20: 02868c63 beq a3,s0,80000d58 <_malloc_r+0x124> +80000d24: 00442783 lw a5,4(s0) +80000d28: 00f00593 li a1,15 +80000d2c: ffc7f793 andi a5,a5,-4 +80000d30: 40978733 sub a4,a5,s1 +80000d34: 02e5c063 blt a1,a4,80000d54 <_malloc_r+0x120> +80000d38: 34075863 bgez a4,80001088 <_malloc_r+0x454> +80000d3c: 00c42403 lw s0,12(s0) +80000d40: 00868c63 beq a3,s0,80000d58 <_malloc_r+0x124> +80000d44: 00442783 lw a5,4(s0) +80000d48: ffc7f793 andi a5,a5,-4 +80000d4c: 40978733 sub a4,a5,s1 +80000d50: fee5d4e3 bge a1,a4,80000d38 <_malloc_r+0x104> +80000d54: 00050613 mv a2,a0 +80000d58: 01092403 lw s0,16(s2) +80000d5c: 00890813 addi a6,s2,8 +80000d60: 19040c63 beq s0,a6,80000ef8 <_malloc_r+0x2c4> +80000d64: 00442583 lw a1,4(s0) +80000d68: 00f00713 li a4,15 +80000d6c: ffc5f593 andi a1,a1,-4 +80000d70: 409587b3 sub a5,a1,s1 +80000d74: 40f74a63 blt a4,a5,80001188 <_malloc_r+0x554> +80000d78: 01092a23 sw a6,20(s2) +80000d7c: 01092823 sw a6,16(s2) +80000d80: 3e07d463 bgez a5,80001168 <_malloc_r+0x534> +80000d84: 1ff00793 li a5,511 +80000d88: 30b7e663 bltu a5,a1,80001094 <_malloc_r+0x460> +80000d8c: 0035d593 srli a1,a1,0x3 +80000d90: 00158793 addi a5,a1,1 +80000d94: 00379793 slli a5,a5,0x3 +80000d98: 00492503 lw a0,4(s2) +80000d9c: 00f907b3 add a5,s2,a5 +80000da0: 0007a683 lw a3,0(a5) +80000da4: 4025d593 srai a1,a1,0x2 +80000da8: 00100713 li a4,1 +80000dac: 00b71733 sll a4,a4,a1 +80000db0: 00a76733 or a4,a4,a0 +80000db4: ff878593 addi a1,a5,-8 +80000db8: 00b42623 sw a1,12(s0) +80000dbc: 00d42423 sw a3,8(s0) +80000dc0: 00e92223 sw a4,4(s2) +80000dc4: 0087a023 sw s0,0(a5) +80000dc8: 0086a623 sw s0,12(a3) +80000dcc: 40265793 srai a5,a2,0x2 +80000dd0: 00100693 li a3,1 +80000dd4: 00f696b3 sll a3,a3,a5 +80000dd8: 12d76a63 bltu a4,a3,80000f0c <_malloc_r+0x2d8> +80000ddc: 00e6f7b3 and a5,a3,a4 +80000de0: 02079463 bnez a5,80000e08 <_malloc_r+0x1d4> +80000de4: 00169693 slli a3,a3,0x1 +80000de8: ffc67613 andi a2,a2,-4 +80000dec: 00e6f7b3 and a5,a3,a4 +80000df0: 00460613 addi a2,a2,4 +80000df4: 00079a63 bnez a5,80000e08 <_malloc_r+0x1d4> +80000df8: 00169693 slli a3,a3,0x1 +80000dfc: 00e6f7b3 and a5,a3,a4 +80000e00: 00460613 addi a2,a2,4 +80000e04: fe078ae3 beqz a5,80000df8 <_malloc_r+0x1c4> +80000e08: 00f00513 li a0,15 +80000e0c: 00361893 slli a7,a2,0x3 +80000e10: 011908b3 add a7,s2,a7 +80000e14: 00088593 mv a1,a7 +80000e18: 00060313 mv t1,a2 +80000e1c: 00c5a403 lw s0,12(a1) +80000e20: 00859a63 bne a1,s0,80000e34 <_malloc_r+0x200> +80000e24: 2f40006f j 80001118 <_malloc_r+0x4e4> +80000e28: 30075263 bgez a4,8000112c <_malloc_r+0x4f8> +80000e2c: 00c42403 lw s0,12(s0) +80000e30: 2e858463 beq a1,s0,80001118 <_malloc_r+0x4e4> +80000e34: 00442783 lw a5,4(s0) +80000e38: ffc7f793 andi a5,a5,-4 +80000e3c: 40978733 sub a4,a5,s1 +80000e40: fee554e3 bge a0,a4,80000e28 <_malloc_r+0x1f4> +80000e44: 00c42683 lw a3,12(s0) +80000e48: 00842603 lw a2,8(s0) +80000e4c: 0014e593 ori a1,s1,1 +80000e50: 00b42223 sw a1,4(s0) +80000e54: 00d62623 sw a3,12(a2) +80000e58: 00c6a423 sw a2,8(a3) +80000e5c: 009404b3 add s1,s0,s1 +80000e60: 00992a23 sw s1,20(s2) +80000e64: 00992823 sw s1,16(s2) +80000e68: 00176693 ori a3,a4,1 +80000e6c: 0104a623 sw a6,12(s1) +80000e70: 0104a423 sw a6,8(s1) +80000e74: 00d4a223 sw a3,4(s1) +80000e78: 00f407b3 add a5,s0,a5 +80000e7c: 00098513 mv a0,s3 +80000e80: 00e7a023 sw a4,0(a5) +80000e84: 64c000ef jal ra,800014d0 <__malloc_unlock> +80000e88: 00840513 addi a0,s0,8 +80000e8c: 0100006f j 80000e9c <_malloc_r+0x268> +80000e90: 00c00793 li a5,12 +80000e94: 00f9a023 sw a5,0(s3) +80000e98: 00000513 li a0,0 +80000e9c: 02c12083 lw ra,44(sp) +80000ea0: 02812403 lw s0,40(sp) +80000ea4: 02412483 lw s1,36(sp) +80000ea8: 02012903 lw s2,32(sp) +80000eac: 01c12983 lw s3,28(sp) +80000eb0: 01812a03 lw s4,24(sp) +80000eb4: 01412a83 lw s5,20(sp) +80000eb8: 01012b03 lw s6,16(sp) +80000ebc: 00c12b83 lw s7,12(sp) +80000ec0: 00812c03 lw s8,8(sp) +80000ec4: 00412c83 lw s9,4(sp) +80000ec8: 03010113 addi sp,sp,48 +80000ecc: 00008067 ret +80000ed0: 20000693 li a3,512 +80000ed4: 04000613 li a2,64 +80000ed8: 03f00513 li a0,63 +80000edc: e35ff06f j 80000d10 <_malloc_r+0xdc> +80000ee0: 00c7a403 lw s0,12(a5) +80000ee4: 00260613 addi a2,a2,2 +80000ee8: da879ce3 bne a5,s0,80000ca0 <_malloc_r+0x6c> +80000eec: 01092403 lw s0,16(s2) +80000ef0: 00890813 addi a6,s2,8 +80000ef4: e70418e3 bne s0,a6,80000d64 <_malloc_r+0x130> +80000ef8: 00492703 lw a4,4(s2) +80000efc: 40265793 srai a5,a2,0x2 +80000f00: 00100693 li a3,1 +80000f04: 00f696b3 sll a3,a3,a5 +80000f08: ecd77ae3 bgeu a4,a3,80000ddc <_malloc_r+0x1a8> +80000f0c: 00892403 lw s0,8(s2) +80000f10: 00442a83 lw s5,4(s0) +80000f14: ffcafc13 andi s8,s5,-4 +80000f18: 009c6863 bltu s8,s1,80000f28 <_malloc_r+0x2f4> +80000f1c: 409c07b3 sub a5,s8,s1 +80000f20: 00f00713 li a4,15 +80000f24: 12f74e63 blt a4,a5,80001060 <_malloc_r+0x42c> +80000f28: 0941aa83 lw s5,148(gp) # 8000289c <__malloc_top_pad> +80000f2c: 0841a703 lw a4,132(gp) # 8000288c <__malloc_sbrk_base> +80000f30: fff00793 li a5,-1 +80000f34: 01840a33 add s4,s0,s8 +80000f38: 01548ab3 add s5,s1,s5 +80000f3c: 32f70863 beq a4,a5,8000126c <_malloc_r+0x638> +80000f40: 000017b7 lui a5,0x1 +80000f44: 00f78793 addi a5,a5,15 # 100f <_start-0x7fffeff1> +80000f48: 00fa8ab3 add s5,s5,a5 +80000f4c: fffff7b7 lui a5,0xfffff +80000f50: 00fafab3 and s5,s5,a5 +80000f54: 000a8593 mv a1,s5 +80000f58: 00098513 mv a0,s3 +80000f5c: 578000ef jal ra,800014d4 <_sbrk_r> +80000f60: fff00793 li a5,-1 +80000f64: 00050b13 mv s6,a0 +80000f68: 26f50a63 beq a0,a5,800011dc <_malloc_r+0x5a8> +80000f6c: 27456663 bltu a0,s4,800011d8 <_malloc_r+0x5a4> +80000f70: 09c18b93 addi s7,gp,156 # 800028a4 <__malloc_current_mallinfo> +80000f74: 000ba783 lw a5,0(s7) +80000f78: 00fa87b3 add a5,s5,a5 +80000f7c: 00fba023 sw a5,0(s7) +80000f80: 00078713 mv a4,a5 +80000f84: 38aa0663 beq s4,a0,80001310 <_malloc_r+0x6dc> +80000f88: 0841a683 lw a3,132(gp) # 8000288c <__malloc_sbrk_base> +80000f8c: fff00793 li a5,-1 +80000f90: 38f68e63 beq a3,a5,8000132c <_malloc_r+0x6f8> +80000f94: 414b0a33 sub s4,s6,s4 +80000f98: 00ea0733 add a4,s4,a4 +80000f9c: 00eba023 sw a4,0(s7) +80000fa0: 007b7c93 andi s9,s6,7 +80000fa4: 2e0c8663 beqz s9,80001290 <_malloc_r+0x65c> +80000fa8: 419b0b33 sub s6,s6,s9 +80000fac: 000017b7 lui a5,0x1 +80000fb0: 008b0b13 addi s6,s6,8 +80000fb4: fff78a13 addi s4,a5,-1 # fff <_start-0x7ffff001> +80000fb8: 015b0ab3 add s5,s6,s5 +80000fbc: 00878793 addi a5,a5,8 +80000fc0: 014af733 and a4,s5,s4 +80000fc4: 419787b3 sub a5,a5,s9 +80000fc8: 40e787b3 sub a5,a5,a4 +80000fcc: 0147fa33 and s4,a5,s4 +80000fd0: 000a0593 mv a1,s4 +80000fd4: 00098513 mv a0,s3 +80000fd8: 4fc000ef jal ra,800014d4 <_sbrk_r> +80000fdc: fff00793 li a5,-1 +80000fe0: 3af50063 beq a0,a5,80001380 <_malloc_r+0x74c> +80000fe4: 41650533 sub a0,a0,s6 +80000fe8: 01450ab3 add s5,a0,s4 +80000fec: 000ba783 lw a5,0(s7) +80000ff0: 01692423 sw s6,8(s2) +80000ff4: 001aea93 ori s5,s5,1 +80000ff8: 00fa07b3 add a5,s4,a5 +80000ffc: 00fba023 sw a5,0(s7) +80001000: 015b2223 sw s5,4(s6) +80001004: 33240863 beq s0,s2,80001334 <_malloc_r+0x700> +80001008: 00f00613 li a2,15 +8000100c: 33867863 bgeu a2,s8,8000133c <_malloc_r+0x708> +80001010: 00442683 lw a3,4(s0) +80001014: ff4c0713 addi a4,s8,-12 +80001018: ff877713 andi a4,a4,-8 +8000101c: 0016f693 andi a3,a3,1 +80001020: 00e6e6b3 or a3,a3,a4 +80001024: 00d42223 sw a3,4(s0) +80001028: 00500593 li a1,5 +8000102c: 00e406b3 add a3,s0,a4 +80001030: 00b6a223 sw a1,4(a3) +80001034: 00b6a423 sw a1,8(a3) +80001038: 34e66e63 bltu a2,a4,80001394 <_malloc_r+0x760> +8000103c: 004b2a83 lw s5,4(s6) +80001040: 000b0413 mv s0,s6 +80001044: 0901a683 lw a3,144(gp) # 80002898 <__malloc_max_sbrked_mem> +80001048: 00f6f463 bgeu a3,a5,80001050 <_malloc_r+0x41c> +8000104c: 08f1a823 sw a5,144(gp) # 80002898 <__malloc_max_sbrked_mem> +80001050: 08c1a683 lw a3,140(gp) # 80002894 <_edata> +80001054: 18f6f863 bgeu a3,a5,800011e4 <_malloc_r+0x5b0> +80001058: 08f1a623 sw a5,140(gp) # 80002894 <_edata> +8000105c: 1880006f j 800011e4 <_malloc_r+0x5b0> +80001060: 0014e713 ori a4,s1,1 +80001064: 00e42223 sw a4,4(s0) +80001068: 009404b3 add s1,s0,s1 +8000106c: 00992423 sw s1,8(s2) +80001070: 0017e793 ori a5,a5,1 +80001074: 00098513 mv a0,s3 +80001078: 00f4a223 sw a5,4(s1) +8000107c: 454000ef jal ra,800014d0 <__malloc_unlock> +80001080: 00840513 addi a0,s0,8 +80001084: e19ff06f j 80000e9c <_malloc_r+0x268> +80001088: 00c42683 lw a3,12(s0) +8000108c: 00842603 lw a2,8(s0) +80001090: c21ff06f j 80000cb0 <_malloc_r+0x7c> +80001094: 0095d793 srli a5,a1,0x9 +80001098: 00400713 li a4,4 +8000109c: 12f77463 bgeu a4,a5,800011c4 <_malloc_r+0x590> +800010a0: 01400713 li a4,20 +800010a4: 22f76063 bltu a4,a5,800012c4 <_malloc_r+0x690> +800010a8: 05c78693 addi a3,a5,92 +800010ac: 05b78713 addi a4,a5,91 +800010b0: 00369693 slli a3,a3,0x3 +800010b4: 00d906b3 add a3,s2,a3 +800010b8: 0006a783 lw a5,0(a3) +800010bc: ff868693 addi a3,a3,-8 +800010c0: 1af68a63 beq a3,a5,80001274 <_malloc_r+0x640> +800010c4: 0047a703 lw a4,4(a5) +800010c8: ffc77713 andi a4,a4,-4 +800010cc: 00e5f663 bgeu a1,a4,800010d8 <_malloc_r+0x4a4> +800010d0: 0087a783 lw a5,8(a5) +800010d4: fef698e3 bne a3,a5,800010c4 <_malloc_r+0x490> +800010d8: 00c7a683 lw a3,12(a5) +800010dc: 00492703 lw a4,4(s2) +800010e0: 00d42623 sw a3,12(s0) +800010e4: 00f42423 sw a5,8(s0) +800010e8: 0086a423 sw s0,8(a3) +800010ec: 0087a623 sw s0,12(a5) +800010f0: cddff06f j 80000dcc <_malloc_r+0x198> +800010f4: 01400713 li a4,20 +800010f8: 10f77863 bgeu a4,a5,80001208 <_malloc_r+0x5d4> +800010fc: 05400713 li a4,84 +80001100: 1ef76063 bltu a4,a5,800012e0 <_malloc_r+0x6ac> +80001104: 00c4d793 srli a5,s1,0xc +80001108: 06f78613 addi a2,a5,111 +8000110c: 06e78513 addi a0,a5,110 +80001110: 00361693 slli a3,a2,0x3 +80001114: bfdff06f j 80000d10 <_malloc_r+0xdc> +80001118: 00130313 addi t1,t1,1 +8000111c: 00337793 andi a5,t1,3 +80001120: 00858593 addi a1,a1,8 +80001124: ce079ce3 bnez a5,80000e1c <_malloc_r+0x1e8> +80001128: 0fc0006f j 80001224 <_malloc_r+0x5f0> +8000112c: 00f407b3 add a5,s0,a5 +80001130: 0047a703 lw a4,4(a5) +80001134: 00c42683 lw a3,12(s0) +80001138: 00842603 lw a2,8(s0) +8000113c: 00176713 ori a4,a4,1 +80001140: 00e7a223 sw a4,4(a5) +80001144: 00d62623 sw a3,12(a2) +80001148: 00098513 mv a0,s3 +8000114c: 00c6a423 sw a2,8(a3) +80001150: 380000ef jal ra,800014d0 <__malloc_unlock> +80001154: 00840513 addi a0,s0,8 +80001158: d45ff06f j 80000e9c <_malloc_r+0x268> +8000115c: 0034d613 srli a2,s1,0x3 +80001160: 00848793 addi a5,s1,8 +80001164: b29ff06f j 80000c8c <_malloc_r+0x58> +80001168: 00b405b3 add a1,s0,a1 +8000116c: 0045a783 lw a5,4(a1) +80001170: 00098513 mv a0,s3 +80001174: 0017e793 ori a5,a5,1 +80001178: 00f5a223 sw a5,4(a1) +8000117c: 354000ef jal ra,800014d0 <__malloc_unlock> +80001180: 00840513 addi a0,s0,8 +80001184: d19ff06f j 80000e9c <_malloc_r+0x268> +80001188: 0014e713 ori a4,s1,1 +8000118c: 00e42223 sw a4,4(s0) +80001190: 009404b3 add s1,s0,s1 +80001194: 00992a23 sw s1,20(s2) +80001198: 00992823 sw s1,16(s2) +8000119c: 0017e713 ori a4,a5,1 +800011a0: 0104a623 sw a6,12(s1) +800011a4: 0104a423 sw a6,8(s1) +800011a8: 00e4a223 sw a4,4(s1) +800011ac: 00b405b3 add a1,s0,a1 +800011b0: 00098513 mv a0,s3 +800011b4: 00f5a023 sw a5,0(a1) +800011b8: 318000ef jal ra,800014d0 <__malloc_unlock> +800011bc: 00840513 addi a0,s0,8 +800011c0: cddff06f j 80000e9c <_malloc_r+0x268> +800011c4: 0065d793 srli a5,a1,0x6 +800011c8: 03978693 addi a3,a5,57 +800011cc: 03878713 addi a4,a5,56 +800011d0: 00369693 slli a3,a3,0x3 +800011d4: ee1ff06f j 800010b4 <_malloc_r+0x480> +800011d8: 13240263 beq s0,s2,800012fc <_malloc_r+0x6c8> +800011dc: 00892403 lw s0,8(s2) +800011e0: 00442a83 lw s5,4(s0) +800011e4: ffcafa93 andi s5,s5,-4 +800011e8: 409a87b3 sub a5,s5,s1 +800011ec: 009ae663 bltu s5,s1,800011f8 <_malloc_r+0x5c4> +800011f0: 00f00713 li a4,15 +800011f4: e6f746e3 blt a4,a5,80001060 <_malloc_r+0x42c> +800011f8: 00098513 mv a0,s3 +800011fc: 2d4000ef jal ra,800014d0 <__malloc_unlock> +80001200: 00000513 li a0,0 +80001204: c99ff06f j 80000e9c <_malloc_r+0x268> +80001208: 05c78613 addi a2,a5,92 +8000120c: 05b78513 addi a0,a5,91 +80001210: 00361693 slli a3,a2,0x3 +80001214: afdff06f j 80000d10 <_malloc_r+0xdc> +80001218: 0088a783 lw a5,8(a7) +8000121c: fff60613 addi a2,a2,-1 +80001220: 1d179463 bne a5,a7,800013e8 <_malloc_r+0x7b4> +80001224: 00367793 andi a5,a2,3 +80001228: ff888893 addi a7,a7,-8 +8000122c: fe0796e3 bnez a5,80001218 <_malloc_r+0x5e4> +80001230: 00492703 lw a4,4(s2) +80001234: fff6c793 not a5,a3 +80001238: 00e7f7b3 and a5,a5,a4 +8000123c: 00f92223 sw a5,4(s2) +80001240: 00169693 slli a3,a3,0x1 +80001244: ccd7e4e3 bltu a5,a3,80000f0c <_malloc_r+0x2d8> +80001248: cc0682e3 beqz a3,80000f0c <_malloc_r+0x2d8> +8000124c: 00f6f733 and a4,a3,a5 +80001250: 00071a63 bnez a4,80001264 <_malloc_r+0x630> +80001254: 00169693 slli a3,a3,0x1 +80001258: 00f6f733 and a4,a3,a5 +8000125c: 00430313 addi t1,t1,4 +80001260: fe070ae3 beqz a4,80001254 <_malloc_r+0x620> +80001264: 00030613 mv a2,t1 +80001268: ba5ff06f j 80000e0c <_malloc_r+0x1d8> +8000126c: 010a8a93 addi s5,s5,16 +80001270: ce5ff06f j 80000f54 <_malloc_r+0x320> +80001274: 00492503 lw a0,4(s2) +80001278: 40275593 srai a1,a4,0x2 +8000127c: 00100713 li a4,1 +80001280: 00b71733 sll a4,a4,a1 +80001284: 00a76733 or a4,a4,a0 +80001288: 00e92223 sw a4,4(s2) +8000128c: e55ff06f j 800010e0 <_malloc_r+0x4ac> +80001290: 000017b7 lui a5,0x1 +80001294: fff78713 addi a4,a5,-1 # fff <_start-0x7ffff001> +80001298: 015b0a33 add s4,s6,s5 +8000129c: 00ea7a33 and s4,s4,a4 +800012a0: 414787b3 sub a5,a5,s4 +800012a4: 00e7fa33 and s4,a5,a4 +800012a8: 000a0593 mv a1,s4 +800012ac: 00098513 mv a0,s3 +800012b0: 224000ef jal ra,800014d4 <_sbrk_r> +800012b4: fff00793 li a5,-1 +800012b8: d2f516e3 bne a0,a5,80000fe4 <_malloc_r+0x3b0> +800012bc: 00000a13 li s4,0 +800012c0: d2dff06f j 80000fec <_malloc_r+0x3b8> +800012c4: 05400713 li a4,84 +800012c8: 08f76063 bltu a4,a5,80001348 <_malloc_r+0x714> +800012cc: 00c5d793 srli a5,a1,0xc +800012d0: 06f78693 addi a3,a5,111 +800012d4: 06e78713 addi a4,a5,110 +800012d8: 00369693 slli a3,a3,0x3 +800012dc: dd9ff06f j 800010b4 <_malloc_r+0x480> +800012e0: 15400713 li a4,340 +800012e4: 08f76063 bltu a4,a5,80001364 <_malloc_r+0x730> +800012e8: 00f4d793 srli a5,s1,0xf +800012ec: 07878613 addi a2,a5,120 +800012f0: 07778513 addi a0,a5,119 +800012f4: 00361693 slli a3,a2,0x3 +800012f8: a19ff06f j 80000d10 <_malloc_r+0xdc> +800012fc: 09c18b93 addi s7,gp,156 # 800028a4 <__malloc_current_mallinfo> +80001300: 000ba703 lw a4,0(s7) +80001304: 00ea8733 add a4,s5,a4 +80001308: 00eba023 sw a4,0(s7) +8000130c: c7dff06f j 80000f88 <_malloc_r+0x354> +80001310: 014a1693 slli a3,s4,0x14 +80001314: c6069ae3 bnez a3,80000f88 <_malloc_r+0x354> +80001318: 00892403 lw s0,8(s2) +8000131c: 015c0ab3 add s5,s8,s5 +80001320: 001aea93 ori s5,s5,1 +80001324: 01542223 sw s5,4(s0) +80001328: d1dff06f j 80001044 <_malloc_r+0x410> +8000132c: 0961a223 sw s6,132(gp) # 8000288c <__malloc_sbrk_base> +80001330: c71ff06f j 80000fa0 <_malloc_r+0x36c> +80001334: 000b0413 mv s0,s6 +80001338: d0dff06f j 80001044 <_malloc_r+0x410> +8000133c: 00100793 li a5,1 +80001340: 00fb2223 sw a5,4(s6) +80001344: eb5ff06f j 800011f8 <_malloc_r+0x5c4> +80001348: 15400713 li a4,340 +8000134c: 06f76263 bltu a4,a5,800013b0 <_malloc_r+0x77c> +80001350: 00f5d793 srli a5,a1,0xf +80001354: 07878693 addi a3,a5,120 +80001358: 07778713 addi a4,a5,119 +8000135c: 00369693 slli a3,a3,0x3 +80001360: d55ff06f j 800010b4 <_malloc_r+0x480> +80001364: 55400713 li a4,1364 +80001368: 06f76263 bltu a4,a5,800013cc <_malloc_r+0x798> +8000136c: 0124d793 srli a5,s1,0x12 +80001370: 07d78613 addi a2,a5,125 +80001374: 07c78513 addi a0,a5,124 +80001378: 00361693 slli a3,a2,0x3 +8000137c: 995ff06f j 80000d10 <_malloc_r+0xdc> +80001380: ff8c8c93 addi s9,s9,-8 +80001384: 019a8ab3 add s5,s5,s9 +80001388: 416a8ab3 sub s5,s5,s6 +8000138c: 00000a13 li s4,0 +80001390: c5dff06f j 80000fec <_malloc_r+0x3b8> +80001394: 00840593 addi a1,s0,8 +80001398: 00098513 mv a0,s3 +8000139c: 464000ef jal ra,80001800 <_free_r> +800013a0: 00892403 lw s0,8(s2) +800013a4: 000ba783 lw a5,0(s7) +800013a8: 00442a83 lw s5,4(s0) +800013ac: c99ff06f j 80001044 <_malloc_r+0x410> +800013b0: 55400713 li a4,1364 +800013b4: 02f76463 bltu a4,a5,800013dc <_malloc_r+0x7a8> +800013b8: 0125d793 srli a5,a1,0x12 +800013bc: 07d78693 addi a3,a5,125 +800013c0: 07c78713 addi a4,a5,124 +800013c4: 00369693 slli a3,a3,0x3 +800013c8: cedff06f j 800010b4 <_malloc_r+0x480> +800013cc: 3f800693 li a3,1016 +800013d0: 07f00613 li a2,127 +800013d4: 07e00513 li a0,126 +800013d8: 939ff06f j 80000d10 <_malloc_r+0xdc> +800013dc: 3f800693 li a3,1016 +800013e0: 07e00713 li a4,126 +800013e4: cd1ff06f j 800010b4 <_malloc_r+0x480> +800013e8: 00492783 lw a5,4(s2) +800013ec: e55ff06f j 80001240 <_malloc_r+0x60c> -800013ec : -800013ec: 00f00313 li t1,15 -800013f0: 00050713 mv a4,a0 -800013f4: 02c37e63 bgeu t1,a2,80001430 -800013f8: 00f77793 andi a5,a4,15 -800013fc: 0a079063 bnez a5,8000149c -80001400: 08059263 bnez a1,80001484 -80001404: ff067693 andi a3,a2,-16 -80001408: 00f67613 andi a2,a2,15 -8000140c: 00e686b3 add a3,a3,a4 -80001410: 00b72023 sw a1,0(a4) # 2000 <_start-0x7fffe000> -80001414: 00b72223 sw a1,4(a4) -80001418: 00b72423 sw a1,8(a4) -8000141c: 00b72623 sw a1,12(a4) -80001420: 01070713 addi a4,a4,16 -80001424: fed766e3 bltu a4,a3,80001410 -80001428: 00061463 bnez a2,80001430 -8000142c: 00008067 ret -80001430: 40c306b3 sub a3,t1,a2 -80001434: 00269693 slli a3,a3,0x2 -80001438: 00000297 auipc t0,0x0 -8000143c: 005686b3 add a3,a3,t0 -80001440: 00c68067 jr 12(a3) -80001444: 00b70723 sb a1,14(a4) -80001448: 00b706a3 sb a1,13(a4) -8000144c: 00b70623 sb a1,12(a4) -80001450: 00b705a3 sb a1,11(a4) -80001454: 00b70523 sb a1,10(a4) -80001458: 00b704a3 sb a1,9(a4) -8000145c: 00b70423 sb a1,8(a4) -80001460: 00b703a3 sb a1,7(a4) -80001464: 00b70323 sb a1,6(a4) -80001468: 00b702a3 sb a1,5(a4) -8000146c: 00b70223 sb a1,4(a4) -80001470: 00b701a3 sb a1,3(a4) -80001474: 00b70123 sb a1,2(a4) -80001478: 00b700a3 sb a1,1(a4) -8000147c: 00b70023 sb a1,0(a4) -80001480: 00008067 ret -80001484: 0ff5f593 andi a1,a1,255 -80001488: 00859693 slli a3,a1,0x8 -8000148c: 00d5e5b3 or a1,a1,a3 -80001490: 01059693 slli a3,a1,0x10 -80001494: 00d5e5b3 or a1,a1,a3 -80001498: f6dff06f j 80001404 -8000149c: 00279693 slli a3,a5,0x2 -800014a0: 00000297 auipc t0,0x0 -800014a4: 005686b3 add a3,a3,t0 -800014a8: 00008293 mv t0,ra -800014ac: fa0680e7 jalr -96(a3) -800014b0: 00028093 mv ra,t0 -800014b4: ff078793 addi a5,a5,-16 -800014b8: 40f70733 sub a4,a4,a5 -800014bc: 00f60633 add a2,a2,a5 -800014c0: f6c378e3 bgeu t1,a2,80001430 -800014c4: f3dff06f j 80001400 +800013f0 : +800013f0: 00f00313 li t1,15 +800013f4: 00050713 mv a4,a0 +800013f8: 02c37e63 bgeu t1,a2,80001434 +800013fc: 00f77793 andi a5,a4,15 +80001400: 0a079063 bnez a5,800014a0 +80001404: 08059263 bnez a1,80001488 +80001408: ff067693 andi a3,a2,-16 +8000140c: 00f67613 andi a2,a2,15 +80001410: 00e686b3 add a3,a3,a4 +80001414: 00b72023 sw a1,0(a4) # 2000 <_start-0x7fffe000> +80001418: 00b72223 sw a1,4(a4) +8000141c: 00b72423 sw a1,8(a4) +80001420: 00b72623 sw a1,12(a4) +80001424: 01070713 addi a4,a4,16 +80001428: fed766e3 bltu a4,a3,80001414 +8000142c: 00061463 bnez a2,80001434 +80001430: 00008067 ret +80001434: 40c306b3 sub a3,t1,a2 +80001438: 00269693 slli a3,a3,0x2 +8000143c: 00000297 auipc t0,0x0 +80001440: 005686b3 add a3,a3,t0 +80001444: 00c68067 jr 12(a3) +80001448: 00b70723 sb a1,14(a4) +8000144c: 00b706a3 sb a1,13(a4) +80001450: 00b70623 sb a1,12(a4) +80001454: 00b705a3 sb a1,11(a4) +80001458: 00b70523 sb a1,10(a4) +8000145c: 00b704a3 sb a1,9(a4) +80001460: 00b70423 sb a1,8(a4) +80001464: 00b703a3 sb a1,7(a4) +80001468: 00b70323 sb a1,6(a4) +8000146c: 00b702a3 sb a1,5(a4) +80001470: 00b70223 sb a1,4(a4) +80001474: 00b701a3 sb a1,3(a4) +80001478: 00b70123 sb a1,2(a4) +8000147c: 00b700a3 sb a1,1(a4) +80001480: 00b70023 sb a1,0(a4) +80001484: 00008067 ret +80001488: 0ff5f593 andi a1,a1,255 +8000148c: 00859693 slli a3,a1,0x8 +80001490: 00d5e5b3 or a1,a1,a3 +80001494: 01059693 slli a3,a1,0x10 +80001498: 00d5e5b3 or a1,a1,a3 +8000149c: f6dff06f j 80001408 +800014a0: 00279693 slli a3,a5,0x2 +800014a4: 00000297 auipc t0,0x0 +800014a8: 005686b3 add a3,a3,t0 +800014ac: 00008293 mv t0,ra +800014b0: fa0680e7 jalr -96(a3) +800014b4: 00028093 mv ra,t0 +800014b8: ff078793 addi a5,a5,-16 +800014bc: 40f70733 sub a4,a4,a5 +800014c0: 00f60633 add a2,a2,a5 +800014c4: f6c378e3 bgeu t1,a2,80001434 +800014c8: f3dff06f j 80001404 -800014c8 <__malloc_lock>: -800014c8: 00008067 ret - -800014cc <__malloc_unlock>: +800014cc <__malloc_lock>: 800014cc: 00008067 ret -800014d0 <_sbrk_r>: -800014d0: ff010113 addi sp,sp,-16 -800014d4: 00812423 sw s0,8(sp) -800014d8: 00912223 sw s1,4(sp) -800014dc: 00050493 mv s1,a0 -800014e0: 00058513 mv a0,a1 -800014e4: 00112623 sw ra,12(sp) -800014e8: 0c01a223 sw zero,196(gp) # 800028cc -800014ec: 890ff0ef jal ra,8000057c <_sbrk> -800014f0: fff00793 li a5,-1 -800014f4: 00f50c63 beq a0,a5,8000150c <_sbrk_r+0x3c> -800014f8: 00c12083 lw ra,12(sp) -800014fc: 00812403 lw s0,8(sp) -80001500: 00412483 lw s1,4(sp) -80001504: 01010113 addi sp,sp,16 -80001508: 00008067 ret -8000150c: 0c41a783 lw a5,196(gp) # 800028cc -80001510: fe0784e3 beqz a5,800014f8 <_sbrk_r+0x28> -80001514: 00c12083 lw ra,12(sp) -80001518: 00812403 lw s0,8(sp) -8000151c: 00f4a023 sw a5,0(s1) -80001520: 00412483 lw s1,4(sp) -80001524: 01010113 addi sp,sp,16 -80001528: 00008067 ret +800014d0 <__malloc_unlock>: +800014d0: 00008067 ret -8000152c <__register_exitproc>: -8000152c: 0701a703 lw a4,112(gp) # 80002878 <_global_impure_ptr> -80001530: 14872783 lw a5,328(a4) -80001534: 04078c63 beqz a5,8000158c <__register_exitproc+0x60> -80001538: 0047a703 lw a4,4(a5) -8000153c: 01f00813 li a6,31 -80001540: 06e84e63 blt a6,a4,800015bc <__register_exitproc+0x90> -80001544: 00271813 slli a6,a4,0x2 -80001548: 02050663 beqz a0,80001574 <__register_exitproc+0x48> -8000154c: 01078333 add t1,a5,a6 -80001550: 08c32423 sw a2,136(t1) -80001554: 1887a883 lw a7,392(a5) -80001558: 00100613 li a2,1 -8000155c: 00e61633 sll a2,a2,a4 -80001560: 00c8e8b3 or a7,a7,a2 -80001564: 1917a423 sw a7,392(a5) -80001568: 10d32423 sw a3,264(t1) -8000156c: 00200693 li a3,2 -80001570: 02d50463 beq a0,a3,80001598 <__register_exitproc+0x6c> -80001574: 00170713 addi a4,a4,1 -80001578: 00e7a223 sw a4,4(a5) -8000157c: 010787b3 add a5,a5,a6 -80001580: 00b7a423 sw a1,8(a5) -80001584: 00000513 li a0,0 -80001588: 00008067 ret -8000158c: 14c70793 addi a5,a4,332 -80001590: 14f72423 sw a5,328(a4) -80001594: fa5ff06f j 80001538 <__register_exitproc+0xc> -80001598: 18c7a683 lw a3,396(a5) -8000159c: 00170713 addi a4,a4,1 -800015a0: 00e7a223 sw a4,4(a5) -800015a4: 00c6e633 or a2,a3,a2 -800015a8: 18c7a623 sw a2,396(a5) -800015ac: 010787b3 add a5,a5,a6 -800015b0: 00b7a423 sw a1,8(a5) -800015b4: 00000513 li a0,0 -800015b8: 00008067 ret -800015bc: fff00513 li a0,-1 -800015c0: 00008067 ret +800014d4 <_sbrk_r>: +800014d4: ff010113 addi sp,sp,-16 +800014d8: 00812423 sw s0,8(sp) +800014dc: 00912223 sw s1,4(sp) +800014e0: 00050493 mv s1,a0 +800014e4: 00058513 mv a0,a1 +800014e8: 00112623 sw ra,12(sp) +800014ec: 0c01a223 sw zero,196(gp) # 800028cc +800014f0: 890ff0ef jal ra,80000580 <_sbrk> +800014f4: fff00793 li a5,-1 +800014f8: 00f50c63 beq a0,a5,80001510 <_sbrk_r+0x3c> +800014fc: 00c12083 lw ra,12(sp) +80001500: 00812403 lw s0,8(sp) +80001504: 00412483 lw s1,4(sp) +80001508: 01010113 addi sp,sp,16 +8000150c: 00008067 ret +80001510: 0c41a783 lw a5,196(gp) # 800028cc +80001514: fe0784e3 beqz a5,800014fc <_sbrk_r+0x28> +80001518: 00c12083 lw ra,12(sp) +8000151c: 00812403 lw s0,8(sp) +80001520: 00f4a023 sw a5,0(s1) +80001524: 00412483 lw s1,4(sp) +80001528: 01010113 addi sp,sp,16 +8000152c: 00008067 ret -800015c4 <__call_exitprocs>: -800015c4: fd010113 addi sp,sp,-48 -800015c8: 01812423 sw s8,8(sp) -800015cc: 0701ac03 lw s8,112(gp) # 80002878 <_global_impure_ptr> -800015d0: 01312e23 sw s3,28(sp) -800015d4: 01412c23 sw s4,24(sp) -800015d8: 01512a23 sw s5,20(sp) -800015dc: 01612823 sw s6,16(sp) -800015e0: 02112623 sw ra,44(sp) -800015e4: 02812423 sw s0,40(sp) -800015e8: 02912223 sw s1,36(sp) -800015ec: 03212023 sw s2,32(sp) -800015f0: 01712623 sw s7,12(sp) -800015f4: 00050a93 mv s5,a0 -800015f8: 00058b13 mv s6,a1 -800015fc: 00100a13 li s4,1 -80001600: fff00993 li s3,-1 -80001604: 148c2903 lw s2,328(s8) -80001608: 02090863 beqz s2,80001638 <__call_exitprocs+0x74> -8000160c: 00492483 lw s1,4(s2) -80001610: fff48413 addi s0,s1,-1 -80001614: 02044263 bltz s0,80001638 <__call_exitprocs+0x74> -80001618: 00249493 slli s1,s1,0x2 -8000161c: 009904b3 add s1,s2,s1 -80001620: 040b0463 beqz s6,80001668 <__call_exitprocs+0xa4> -80001624: 1044a783 lw a5,260(s1) -80001628: 05678063 beq a5,s6,80001668 <__call_exitprocs+0xa4> -8000162c: fff40413 addi s0,s0,-1 -80001630: ffc48493 addi s1,s1,-4 -80001634: ff3416e3 bne s0,s3,80001620 <__call_exitprocs+0x5c> -80001638: 02c12083 lw ra,44(sp) -8000163c: 02812403 lw s0,40(sp) -80001640: 02412483 lw s1,36(sp) -80001644: 02012903 lw s2,32(sp) -80001648: 01c12983 lw s3,28(sp) -8000164c: 01812a03 lw s4,24(sp) -80001650: 01412a83 lw s5,20(sp) -80001654: 01012b03 lw s6,16(sp) -80001658: 00c12b83 lw s7,12(sp) -8000165c: 00812c03 lw s8,8(sp) -80001660: 03010113 addi sp,sp,48 -80001664: 00008067 ret -80001668: 00492783 lw a5,4(s2) -8000166c: 0044a683 lw a3,4(s1) -80001670: fff78793 addi a5,a5,-1 -80001674: 04878a63 beq a5,s0,800016c8 <__call_exitprocs+0x104> -80001678: 0004a223 sw zero,4(s1) -8000167c: fa0688e3 beqz a3,8000162c <__call_exitprocs+0x68> -80001680: 18892783 lw a5,392(s2) -80001684: 008a1733 sll a4,s4,s0 -80001688: 00492b83 lw s7,4(s2) -8000168c: 00f777b3 and a5,a4,a5 -80001690: 00079e63 bnez a5,800016ac <__call_exitprocs+0xe8> -80001694: 000680e7 jalr a3 -80001698: 00492783 lw a5,4(s2) -8000169c: f77794e3 bne a5,s7,80001604 <__call_exitprocs+0x40> -800016a0: 148c2783 lw a5,328(s8) -800016a4: f92784e3 beq a5,s2,8000162c <__call_exitprocs+0x68> -800016a8: f5dff06f j 80001604 <__call_exitprocs+0x40> -800016ac: 18c92783 lw a5,396(s2) -800016b0: 0844a583 lw a1,132(s1) -800016b4: 00f77733 and a4,a4,a5 -800016b8: 00071c63 bnez a4,800016d0 <__call_exitprocs+0x10c> -800016bc: 000a8513 mv a0,s5 -800016c0: 000680e7 jalr a3 -800016c4: fd5ff06f j 80001698 <__call_exitprocs+0xd4> -800016c8: 00892223 sw s0,4(s2) -800016cc: fb1ff06f j 8000167c <__call_exitprocs+0xb8> -800016d0: 00058513 mv a0,a1 -800016d4: 000680e7 jalr a3 -800016d8: fc1ff06f j 80001698 <__call_exitprocs+0xd4> +80001530 <__register_exitproc>: +80001530: 0701a703 lw a4,112(gp) # 80002878 <_global_impure_ptr> +80001534: 14872783 lw a5,328(a4) +80001538: 04078c63 beqz a5,80001590 <__register_exitproc+0x60> +8000153c: 0047a703 lw a4,4(a5) +80001540: 01f00813 li a6,31 +80001544: 06e84e63 blt a6,a4,800015c0 <__register_exitproc+0x90> +80001548: 00271813 slli a6,a4,0x2 +8000154c: 02050663 beqz a0,80001578 <__register_exitproc+0x48> +80001550: 01078333 add t1,a5,a6 +80001554: 08c32423 sw a2,136(t1) +80001558: 1887a883 lw a7,392(a5) +8000155c: 00100613 li a2,1 +80001560: 00e61633 sll a2,a2,a4 +80001564: 00c8e8b3 or a7,a7,a2 +80001568: 1917a423 sw a7,392(a5) +8000156c: 10d32423 sw a3,264(t1) +80001570: 00200693 li a3,2 +80001574: 02d50463 beq a0,a3,8000159c <__register_exitproc+0x6c> +80001578: 00170713 addi a4,a4,1 +8000157c: 00e7a223 sw a4,4(a5) +80001580: 010787b3 add a5,a5,a6 +80001584: 00b7a423 sw a1,8(a5) +80001588: 00000513 li a0,0 +8000158c: 00008067 ret +80001590: 14c70793 addi a5,a4,332 +80001594: 14f72423 sw a5,328(a4) +80001598: fa5ff06f j 8000153c <__register_exitproc+0xc> +8000159c: 18c7a683 lw a3,396(a5) +800015a0: 00170713 addi a4,a4,1 +800015a4: 00e7a223 sw a4,4(a5) +800015a8: 00c6e633 or a2,a3,a2 +800015ac: 18c7a623 sw a2,396(a5) +800015b0: 010787b3 add a5,a5,a6 +800015b4: 00b7a423 sw a1,8(a5) +800015b8: 00000513 li a0,0 +800015bc: 00008067 ret +800015c0: fff00513 li a0,-1 +800015c4: 00008067 ret -800016dc <_malloc_trim_r>: -800016dc: fe010113 addi sp,sp,-32 -800016e0: 01212823 sw s2,16(sp) -800016e4: 00812c23 sw s0,24(sp) -800016e8: 00912a23 sw s1,20(sp) -800016ec: 01312623 sw s3,12(sp) -800016f0: 00058413 mv s0,a1 -800016f4: 00112e23 sw ra,28(sp) -800016f8: 00050993 mv s3,a0 -800016fc: c6818913 addi s2,gp,-920 # 80002470 <__malloc_av_> -80001700: dc9ff0ef jal ra,800014c8 <__malloc_lock> -80001704: 00892683 lw a3,8(s2) -80001708: 00001737 lui a4,0x1 -8000170c: fef70793 addi a5,a4,-17 # fef <_start-0x7ffff011> -80001710: 0046a483 lw s1,4(a3) -80001714: 40878433 sub s0,a5,s0 -80001718: ffc4f493 andi s1,s1,-4 -8000171c: 00940433 add s0,s0,s1 -80001720: 00c45413 srli s0,s0,0xc -80001724: fff40413 addi s0,s0,-1 -80001728: 00c41413 slli s0,s0,0xc -8000172c: 00e44e63 blt s0,a4,80001748 <_malloc_trim_r+0x6c> -80001730: 00000593 li a1,0 -80001734: 00098513 mv a0,s3 -80001738: d99ff0ef jal ra,800014d0 <_sbrk_r> -8000173c: 00892783 lw a5,8(s2) -80001740: 009787b3 add a5,a5,s1 -80001744: 02f50663 beq a0,a5,80001770 <_malloc_trim_r+0x94> -80001748: 00098513 mv a0,s3 -8000174c: d81ff0ef jal ra,800014cc <__malloc_unlock> -80001750: 01c12083 lw ra,28(sp) -80001754: 01812403 lw s0,24(sp) -80001758: 01412483 lw s1,20(sp) -8000175c: 01012903 lw s2,16(sp) -80001760: 00c12983 lw s3,12(sp) -80001764: 00000513 li a0,0 -80001768: 02010113 addi sp,sp,32 -8000176c: 00008067 ret -80001770: 408005b3 neg a1,s0 -80001774: 00098513 mv a0,s3 -80001778: d59ff0ef jal ra,800014d0 <_sbrk_r> -8000177c: fff00793 li a5,-1 -80001780: 04f50463 beq a0,a5,800017c8 <_malloc_trim_r+0xec> -80001784: 09c1a783 lw a5,156(gp) # 800028a4 <__malloc_current_mallinfo> -80001788: 00892683 lw a3,8(s2) -8000178c: 408484b3 sub s1,s1,s0 -80001790: 0014e493 ori s1,s1,1 -80001794: 40878433 sub s0,a5,s0 -80001798: 00098513 mv a0,s3 -8000179c: 0096a223 sw s1,4(a3) -800017a0: 0881ae23 sw s0,156(gp) # 800028a4 <__malloc_current_mallinfo> -800017a4: d29ff0ef jal ra,800014cc <__malloc_unlock> -800017a8: 01c12083 lw ra,28(sp) -800017ac: 01812403 lw s0,24(sp) -800017b0: 01412483 lw s1,20(sp) -800017b4: 01012903 lw s2,16(sp) -800017b8: 00c12983 lw s3,12(sp) -800017bc: 00100513 li a0,1 -800017c0: 02010113 addi sp,sp,32 -800017c4: 00008067 ret -800017c8: 00000593 li a1,0 -800017cc: 00098513 mv a0,s3 -800017d0: d01ff0ef jal ra,800014d0 <_sbrk_r> -800017d4: 00892703 lw a4,8(s2) -800017d8: 00f00693 li a3,15 -800017dc: 40e507b3 sub a5,a0,a4 -800017e0: f6f6d4e3 bge a3,a5,80001748 <_malloc_trim_r+0x6c> -800017e4: 0841a683 lw a3,132(gp) # 8000288c <__malloc_sbrk_base> -800017e8: 0017e793 ori a5,a5,1 -800017ec: 00f72223 sw a5,4(a4) -800017f0: 40d50533 sub a0,a0,a3 -800017f4: 08a1ae23 sw a0,156(gp) # 800028a4 <__malloc_current_mallinfo> -800017f8: f51ff06f j 80001748 <_malloc_trim_r+0x6c> +800015c8 <__call_exitprocs>: +800015c8: fd010113 addi sp,sp,-48 +800015cc: 01812423 sw s8,8(sp) +800015d0: 0701ac03 lw s8,112(gp) # 80002878 <_global_impure_ptr> +800015d4: 01312e23 sw s3,28(sp) +800015d8: 01412c23 sw s4,24(sp) +800015dc: 01512a23 sw s5,20(sp) +800015e0: 01612823 sw s6,16(sp) +800015e4: 02112623 sw ra,44(sp) +800015e8: 02812423 sw s0,40(sp) +800015ec: 02912223 sw s1,36(sp) +800015f0: 03212023 sw s2,32(sp) +800015f4: 01712623 sw s7,12(sp) +800015f8: 00050a93 mv s5,a0 +800015fc: 00058b13 mv s6,a1 +80001600: 00100a13 li s4,1 +80001604: fff00993 li s3,-1 +80001608: 148c2903 lw s2,328(s8) +8000160c: 02090863 beqz s2,8000163c <__call_exitprocs+0x74> +80001610: 00492483 lw s1,4(s2) +80001614: fff48413 addi s0,s1,-1 +80001618: 02044263 bltz s0,8000163c <__call_exitprocs+0x74> +8000161c: 00249493 slli s1,s1,0x2 +80001620: 009904b3 add s1,s2,s1 +80001624: 040b0463 beqz s6,8000166c <__call_exitprocs+0xa4> +80001628: 1044a783 lw a5,260(s1) +8000162c: 05678063 beq a5,s6,8000166c <__call_exitprocs+0xa4> +80001630: fff40413 addi s0,s0,-1 +80001634: ffc48493 addi s1,s1,-4 +80001638: ff3416e3 bne s0,s3,80001624 <__call_exitprocs+0x5c> +8000163c: 02c12083 lw ra,44(sp) +80001640: 02812403 lw s0,40(sp) +80001644: 02412483 lw s1,36(sp) +80001648: 02012903 lw s2,32(sp) +8000164c: 01c12983 lw s3,28(sp) +80001650: 01812a03 lw s4,24(sp) +80001654: 01412a83 lw s5,20(sp) +80001658: 01012b03 lw s6,16(sp) +8000165c: 00c12b83 lw s7,12(sp) +80001660: 00812c03 lw s8,8(sp) +80001664: 03010113 addi sp,sp,48 +80001668: 00008067 ret +8000166c: 00492783 lw a5,4(s2) +80001670: 0044a683 lw a3,4(s1) +80001674: fff78793 addi a5,a5,-1 +80001678: 04878a63 beq a5,s0,800016cc <__call_exitprocs+0x104> +8000167c: 0004a223 sw zero,4(s1) +80001680: fa0688e3 beqz a3,80001630 <__call_exitprocs+0x68> +80001684: 18892783 lw a5,392(s2) +80001688: 008a1733 sll a4,s4,s0 +8000168c: 00492b83 lw s7,4(s2) +80001690: 00f777b3 and a5,a4,a5 +80001694: 00079e63 bnez a5,800016b0 <__call_exitprocs+0xe8> +80001698: 000680e7 jalr a3 +8000169c: 00492783 lw a5,4(s2) +800016a0: f77794e3 bne a5,s7,80001608 <__call_exitprocs+0x40> +800016a4: 148c2783 lw a5,328(s8) +800016a8: f92784e3 beq a5,s2,80001630 <__call_exitprocs+0x68> +800016ac: f5dff06f j 80001608 <__call_exitprocs+0x40> +800016b0: 18c92783 lw a5,396(s2) +800016b4: 0844a583 lw a1,132(s1) +800016b8: 00f77733 and a4,a4,a5 +800016bc: 00071c63 bnez a4,800016d4 <__call_exitprocs+0x10c> +800016c0: 000a8513 mv a0,s5 +800016c4: 000680e7 jalr a3 +800016c8: fd5ff06f j 8000169c <__call_exitprocs+0xd4> +800016cc: 00892223 sw s0,4(s2) +800016d0: fb1ff06f j 80001680 <__call_exitprocs+0xb8> +800016d4: 00058513 mv a0,a1 +800016d8: 000680e7 jalr a3 +800016dc: fc1ff06f j 8000169c <__call_exitprocs+0xd4> -800017fc <_free_r>: -800017fc: 12058663 beqz a1,80001928 <_free_r+0x12c> -80001800: ff010113 addi sp,sp,-16 -80001804: 00812423 sw s0,8(sp) -80001808: 00912223 sw s1,4(sp) -8000180c: 00058413 mv s0,a1 -80001810: 00050493 mv s1,a0 -80001814: 00112623 sw ra,12(sp) -80001818: cb1ff0ef jal ra,800014c8 <__malloc_lock> -8000181c: ffc42503 lw a0,-4(s0) -80001820: ff840713 addi a4,s0,-8 -80001824: ffe57793 andi a5,a0,-2 -80001828: 00f70633 add a2,a4,a5 -8000182c: c6818593 addi a1,gp,-920 # 80002470 <__malloc_av_> -80001830: 00462683 lw a3,4(a2) -80001834: 0085a803 lw a6,8(a1) -80001838: ffc6f693 andi a3,a3,-4 -8000183c: 18c80e63 beq a6,a2,800019d8 <_free_r+0x1dc> -80001840: 00d62223 sw a3,4(a2) -80001844: 00157513 andi a0,a0,1 -80001848: 00d60833 add a6,a2,a3 -8000184c: 0a051063 bnez a0,800018ec <_free_r+0xf0> -80001850: ff842303 lw t1,-8(s0) -80001854: 00482803 lw a6,4(a6) -80001858: 40670733 sub a4,a4,t1 -8000185c: 00872883 lw a7,8(a4) -80001860: c7018513 addi a0,gp,-912 # 80002478 <__malloc_av_+0x8> -80001864: 006787b3 add a5,a5,t1 -80001868: 00187813 andi a6,a6,1 -8000186c: 14a88063 beq a7,a0,800019ac <_free_r+0x1b0> -80001870: 00c72303 lw t1,12(a4) -80001874: 0068a623 sw t1,12(a7) -80001878: 01132423 sw a7,8(t1) -8000187c: 1c080663 beqz a6,80001a48 <_free_r+0x24c> -80001880: 0017e693 ori a3,a5,1 -80001884: 00d72223 sw a3,4(a4) -80001888: 00f62023 sw a5,0(a2) -8000188c: 1ff00693 li a3,511 -80001890: 0af6e863 bltu a3,a5,80001940 <_free_r+0x144> -80001894: 0037d793 srli a5,a5,0x3 -80001898: 00178693 addi a3,a5,1 -8000189c: 00369693 slli a3,a3,0x3 -800018a0: 0045a803 lw a6,4(a1) -800018a4: 00d586b3 add a3,a1,a3 -800018a8: 0006a503 lw a0,0(a3) -800018ac: 4027d613 srai a2,a5,0x2 -800018b0: 00100793 li a5,1 -800018b4: 00c797b3 sll a5,a5,a2 -800018b8: 0107e7b3 or a5,a5,a6 -800018bc: ff868613 addi a2,a3,-8 -800018c0: 00c72623 sw a2,12(a4) -800018c4: 00a72423 sw a0,8(a4) -800018c8: 00f5a223 sw a5,4(a1) -800018cc: 00e6a023 sw a4,0(a3) -800018d0: 00e52623 sw a4,12(a0) -800018d4: 00812403 lw s0,8(sp) -800018d8: 00c12083 lw ra,12(sp) -800018dc: 00048513 mv a0,s1 -800018e0: 00412483 lw s1,4(sp) -800018e4: 01010113 addi sp,sp,16 -800018e8: be5ff06f j 800014cc <__malloc_unlock> -800018ec: 00482503 lw a0,4(a6) -800018f0: 00157513 andi a0,a0,1 -800018f4: 02051c63 bnez a0,8000192c <_free_r+0x130> -800018f8: 00d787b3 add a5,a5,a3 -800018fc: c7018513 addi a0,gp,-912 # 80002478 <__malloc_av_+0x8> -80001900: 00862683 lw a3,8(a2) -80001904: 0017e893 ori a7,a5,1 -80001908: 00f70833 add a6,a4,a5 -8000190c: 14a68a63 beq a3,a0,80001a60 <_free_r+0x264> -80001910: 00c62603 lw a2,12(a2) -80001914: 00c6a623 sw a2,12(a3) -80001918: 00d62423 sw a3,8(a2) -8000191c: 01172223 sw a7,4(a4) -80001920: 00f82023 sw a5,0(a6) -80001924: f69ff06f j 8000188c <_free_r+0x90> -80001928: 00008067 ret -8000192c: 0017e693 ori a3,a5,1 -80001930: fed42e23 sw a3,-4(s0) -80001934: 00f62023 sw a5,0(a2) -80001938: 1ff00693 li a3,511 -8000193c: f4f6fce3 bgeu a3,a5,80001894 <_free_r+0x98> -80001940: 0097d693 srli a3,a5,0x9 -80001944: 00400613 li a2,4 -80001948: 0cd66e63 bltu a2,a3,80001a24 <_free_r+0x228> -8000194c: 0067d693 srli a3,a5,0x6 -80001950: 03968513 addi a0,a3,57 -80001954: 03868613 addi a2,a3,56 -80001958: 00351513 slli a0,a0,0x3 -8000195c: 00a58533 add a0,a1,a0 -80001960: 00052683 lw a3,0(a0) -80001964: ff850513 addi a0,a0,-8 -80001968: 10d50a63 beq a0,a3,80001a7c <_free_r+0x280> -8000196c: 0046a603 lw a2,4(a3) -80001970: ffc67613 andi a2,a2,-4 -80001974: 00c7f663 bgeu a5,a2,80001980 <_free_r+0x184> -80001978: 0086a683 lw a3,8(a3) -8000197c: fed518e3 bne a0,a3,8000196c <_free_r+0x170> -80001980: 00c6a503 lw a0,12(a3) -80001984: 00a72623 sw a0,12(a4) -80001988: 00d72423 sw a3,8(a4) -8000198c: 00812403 lw s0,8(sp) -80001990: 00e52423 sw a4,8(a0) -80001994: 00c12083 lw ra,12(sp) -80001998: 00048513 mv a0,s1 -8000199c: 00412483 lw s1,4(sp) -800019a0: 00e6a623 sw a4,12(a3) -800019a4: 01010113 addi sp,sp,16 -800019a8: b25ff06f j 800014cc <__malloc_unlock> -800019ac: 12081863 bnez a6,80001adc <_free_r+0x2e0> -800019b0: 00862583 lw a1,8(a2) -800019b4: 00c62603 lw a2,12(a2) -800019b8: 00f687b3 add a5,a3,a5 -800019bc: 0017e693 ori a3,a5,1 -800019c0: 00c5a623 sw a2,12(a1) -800019c4: 00b62423 sw a1,8(a2) -800019c8: 00d72223 sw a3,4(a4) -800019cc: 00f70733 add a4,a4,a5 -800019d0: 00f72023 sw a5,0(a4) -800019d4: f01ff06f j 800018d4 <_free_r+0xd8> -800019d8: 00157513 andi a0,a0,1 -800019dc: 00d787b3 add a5,a5,a3 -800019e0: 02051063 bnez a0,80001a00 <_free_r+0x204> -800019e4: ff842503 lw a0,-8(s0) -800019e8: 40a70733 sub a4,a4,a0 -800019ec: 00c72683 lw a3,12(a4) -800019f0: 00872603 lw a2,8(a4) -800019f4: 00a787b3 add a5,a5,a0 -800019f8: 00d62623 sw a3,12(a2) -800019fc: 00c6a423 sw a2,8(a3) -80001a00: 0017e613 ori a2,a5,1 -80001a04: 0881a683 lw a3,136(gp) # 80002890 <__malloc_trim_threshold> -80001a08: 00c72223 sw a2,4(a4) -80001a0c: 00e5a423 sw a4,8(a1) -80001a10: ecd7e2e3 bltu a5,a3,800018d4 <_free_r+0xd8> -80001a14: 0941a583 lw a1,148(gp) # 8000289c <__malloc_top_pad> -80001a18: 00048513 mv a0,s1 -80001a1c: cc1ff0ef jal ra,800016dc <_malloc_trim_r> -80001a20: eb5ff06f j 800018d4 <_free_r+0xd8> -80001a24: 01400613 li a2,20 -80001a28: 02d67463 bgeu a2,a3,80001a50 <_free_r+0x254> -80001a2c: 05400613 li a2,84 -80001a30: 06d66463 bltu a2,a3,80001a98 <_free_r+0x29c> -80001a34: 00c7d693 srli a3,a5,0xc -80001a38: 06f68513 addi a0,a3,111 -80001a3c: 06e68613 addi a2,a3,110 -80001a40: 00351513 slli a0,a0,0x3 -80001a44: f19ff06f j 8000195c <_free_r+0x160> -80001a48: 00d787b3 add a5,a5,a3 -80001a4c: eb5ff06f j 80001900 <_free_r+0x104> -80001a50: 05c68513 addi a0,a3,92 -80001a54: 05b68613 addi a2,a3,91 -80001a58: 00351513 slli a0,a0,0x3 -80001a5c: f01ff06f j 8000195c <_free_r+0x160> -80001a60: 00e5aa23 sw a4,20(a1) -80001a64: 00e5a823 sw a4,16(a1) -80001a68: 00a72623 sw a0,12(a4) -80001a6c: 00a72423 sw a0,8(a4) -80001a70: 01172223 sw a7,4(a4) -80001a74: 00f82023 sw a5,0(a6) -80001a78: e5dff06f j 800018d4 <_free_r+0xd8> -80001a7c: 0045a803 lw a6,4(a1) -80001a80: 40265613 srai a2,a2,0x2 -80001a84: 00100793 li a5,1 -80001a88: 00c79633 sll a2,a5,a2 -80001a8c: 01066633 or a2,a2,a6 -80001a90: 00c5a223 sw a2,4(a1) -80001a94: ef1ff06f j 80001984 <_free_r+0x188> -80001a98: 15400613 li a2,340 -80001a9c: 00d66c63 bltu a2,a3,80001ab4 <_free_r+0x2b8> -80001aa0: 00f7d693 srli a3,a5,0xf -80001aa4: 07868513 addi a0,a3,120 -80001aa8: 07768613 addi a2,a3,119 -80001aac: 00351513 slli a0,a0,0x3 -80001ab0: eadff06f j 8000195c <_free_r+0x160> -80001ab4: 55400613 li a2,1364 -80001ab8: 00d66c63 bltu a2,a3,80001ad0 <_free_r+0x2d4> -80001abc: 0127d693 srli a3,a5,0x12 -80001ac0: 07d68513 addi a0,a3,125 -80001ac4: 07c68613 addi a2,a3,124 -80001ac8: 00351513 slli a0,a0,0x3 -80001acc: e91ff06f j 8000195c <_free_r+0x160> -80001ad0: 3f800513 li a0,1016 -80001ad4: 07e00613 li a2,126 -80001ad8: e85ff06f j 8000195c <_free_r+0x160> -80001adc: 0017e693 ori a3,a5,1 -80001ae0: 00d72223 sw a3,4(a4) -80001ae4: 00f62023 sw a5,0(a2) -80001ae8: dedff06f j 800018d4 <_free_r+0xd8> +800016e0 <_malloc_trim_r>: +800016e0: fe010113 addi sp,sp,-32 +800016e4: 01212823 sw s2,16(sp) +800016e8: 00812c23 sw s0,24(sp) +800016ec: 00912a23 sw s1,20(sp) +800016f0: 01312623 sw s3,12(sp) +800016f4: 00058413 mv s0,a1 +800016f8: 00112e23 sw ra,28(sp) +800016fc: 00050993 mv s3,a0 +80001700: c6818913 addi s2,gp,-920 # 80002470 <__malloc_av_> +80001704: dc9ff0ef jal ra,800014cc <__malloc_lock> +80001708: 00892683 lw a3,8(s2) +8000170c: 00001737 lui a4,0x1 +80001710: fef70793 addi a5,a4,-17 # fef <_start-0x7ffff011> +80001714: 0046a483 lw s1,4(a3) +80001718: 40878433 sub s0,a5,s0 +8000171c: ffc4f493 andi s1,s1,-4 +80001720: 00940433 add s0,s0,s1 +80001724: 00c45413 srli s0,s0,0xc +80001728: fff40413 addi s0,s0,-1 +8000172c: 00c41413 slli s0,s0,0xc +80001730: 00e44e63 blt s0,a4,8000174c <_malloc_trim_r+0x6c> +80001734: 00000593 li a1,0 +80001738: 00098513 mv a0,s3 +8000173c: d99ff0ef jal ra,800014d4 <_sbrk_r> +80001740: 00892783 lw a5,8(s2) +80001744: 009787b3 add a5,a5,s1 +80001748: 02f50663 beq a0,a5,80001774 <_malloc_trim_r+0x94> +8000174c: 00098513 mv a0,s3 +80001750: d81ff0ef jal ra,800014d0 <__malloc_unlock> +80001754: 01c12083 lw ra,28(sp) +80001758: 01812403 lw s0,24(sp) +8000175c: 01412483 lw s1,20(sp) +80001760: 01012903 lw s2,16(sp) +80001764: 00c12983 lw s3,12(sp) +80001768: 00000513 li a0,0 +8000176c: 02010113 addi sp,sp,32 +80001770: 00008067 ret +80001774: 408005b3 neg a1,s0 +80001778: 00098513 mv a0,s3 +8000177c: d59ff0ef jal ra,800014d4 <_sbrk_r> +80001780: fff00793 li a5,-1 +80001784: 04f50463 beq a0,a5,800017cc <_malloc_trim_r+0xec> +80001788: 09c1a783 lw a5,156(gp) # 800028a4 <__malloc_current_mallinfo> +8000178c: 00892683 lw a3,8(s2) +80001790: 408484b3 sub s1,s1,s0 +80001794: 0014e493 ori s1,s1,1 +80001798: 40878433 sub s0,a5,s0 +8000179c: 00098513 mv a0,s3 +800017a0: 0096a223 sw s1,4(a3) +800017a4: 0881ae23 sw s0,156(gp) # 800028a4 <__malloc_current_mallinfo> +800017a8: d29ff0ef jal ra,800014d0 <__malloc_unlock> +800017ac: 01c12083 lw ra,28(sp) +800017b0: 01812403 lw s0,24(sp) +800017b4: 01412483 lw s1,20(sp) +800017b8: 01012903 lw s2,16(sp) +800017bc: 00c12983 lw s3,12(sp) +800017c0: 00100513 li a0,1 +800017c4: 02010113 addi sp,sp,32 +800017c8: 00008067 ret +800017cc: 00000593 li a1,0 +800017d0: 00098513 mv a0,s3 +800017d4: d01ff0ef jal ra,800014d4 <_sbrk_r> +800017d8: 00892703 lw a4,8(s2) +800017dc: 00f00693 li a3,15 +800017e0: 40e507b3 sub a5,a0,a4 +800017e4: f6f6d4e3 bge a3,a5,8000174c <_malloc_trim_r+0x6c> +800017e8: 0841a683 lw a3,132(gp) # 8000288c <__malloc_sbrk_base> +800017ec: 0017e793 ori a5,a5,1 +800017f0: 00f72223 sw a5,4(a4) +800017f4: 40d50533 sub a0,a0,a3 +800017f8: 08a1ae23 sw a0,156(gp) # 800028a4 <__malloc_current_mallinfo> +800017fc: f51ff06f j 8000174c <_malloc_trim_r+0x6c> + +80001800 <_free_r>: +80001800: 12058663 beqz a1,8000192c <_free_r+0x12c> +80001804: ff010113 addi sp,sp,-16 +80001808: 00812423 sw s0,8(sp) +8000180c: 00912223 sw s1,4(sp) +80001810: 00058413 mv s0,a1 +80001814: 00050493 mv s1,a0 +80001818: 00112623 sw ra,12(sp) +8000181c: cb1ff0ef jal ra,800014cc <__malloc_lock> +80001820: ffc42503 lw a0,-4(s0) +80001824: ff840713 addi a4,s0,-8 +80001828: ffe57793 andi a5,a0,-2 +8000182c: 00f70633 add a2,a4,a5 +80001830: c6818593 addi a1,gp,-920 # 80002470 <__malloc_av_> +80001834: 00462683 lw a3,4(a2) +80001838: 0085a803 lw a6,8(a1) +8000183c: ffc6f693 andi a3,a3,-4 +80001840: 18c80e63 beq a6,a2,800019dc <_free_r+0x1dc> +80001844: 00d62223 sw a3,4(a2) +80001848: 00157513 andi a0,a0,1 +8000184c: 00d60833 add a6,a2,a3 +80001850: 0a051063 bnez a0,800018f0 <_free_r+0xf0> +80001854: ff842303 lw t1,-8(s0) +80001858: 00482803 lw a6,4(a6) +8000185c: 40670733 sub a4,a4,t1 +80001860: 00872883 lw a7,8(a4) +80001864: c7018513 addi a0,gp,-912 # 80002478 <__malloc_av_+0x8> +80001868: 006787b3 add a5,a5,t1 +8000186c: 00187813 andi a6,a6,1 +80001870: 14a88063 beq a7,a0,800019b0 <_free_r+0x1b0> +80001874: 00c72303 lw t1,12(a4) +80001878: 0068a623 sw t1,12(a7) +8000187c: 01132423 sw a7,8(t1) +80001880: 1c080663 beqz a6,80001a4c <_free_r+0x24c> +80001884: 0017e693 ori a3,a5,1 +80001888: 00d72223 sw a3,4(a4) +8000188c: 00f62023 sw a5,0(a2) +80001890: 1ff00693 li a3,511 +80001894: 0af6e863 bltu a3,a5,80001944 <_free_r+0x144> +80001898: 0037d793 srli a5,a5,0x3 +8000189c: 00178693 addi a3,a5,1 +800018a0: 00369693 slli a3,a3,0x3 +800018a4: 0045a803 lw a6,4(a1) +800018a8: 00d586b3 add a3,a1,a3 +800018ac: 0006a503 lw a0,0(a3) +800018b0: 4027d613 srai a2,a5,0x2 +800018b4: 00100793 li a5,1 +800018b8: 00c797b3 sll a5,a5,a2 +800018bc: 0107e7b3 or a5,a5,a6 +800018c0: ff868613 addi a2,a3,-8 +800018c4: 00c72623 sw a2,12(a4) +800018c8: 00a72423 sw a0,8(a4) +800018cc: 00f5a223 sw a5,4(a1) +800018d0: 00e6a023 sw a4,0(a3) +800018d4: 00e52623 sw a4,12(a0) +800018d8: 00812403 lw s0,8(sp) +800018dc: 00c12083 lw ra,12(sp) +800018e0: 00048513 mv a0,s1 +800018e4: 00412483 lw s1,4(sp) +800018e8: 01010113 addi sp,sp,16 +800018ec: be5ff06f j 800014d0 <__malloc_unlock> +800018f0: 00482503 lw a0,4(a6) +800018f4: 00157513 andi a0,a0,1 +800018f8: 02051c63 bnez a0,80001930 <_free_r+0x130> +800018fc: 00d787b3 add a5,a5,a3 +80001900: c7018513 addi a0,gp,-912 # 80002478 <__malloc_av_+0x8> +80001904: 00862683 lw a3,8(a2) +80001908: 0017e893 ori a7,a5,1 +8000190c: 00f70833 add a6,a4,a5 +80001910: 14a68a63 beq a3,a0,80001a64 <_free_r+0x264> +80001914: 00c62603 lw a2,12(a2) +80001918: 00c6a623 sw a2,12(a3) +8000191c: 00d62423 sw a3,8(a2) +80001920: 01172223 sw a7,4(a4) +80001924: 00f82023 sw a5,0(a6) +80001928: f69ff06f j 80001890 <_free_r+0x90> +8000192c: 00008067 ret +80001930: 0017e693 ori a3,a5,1 +80001934: fed42e23 sw a3,-4(s0) +80001938: 00f62023 sw a5,0(a2) +8000193c: 1ff00693 li a3,511 +80001940: f4f6fce3 bgeu a3,a5,80001898 <_free_r+0x98> +80001944: 0097d693 srli a3,a5,0x9 +80001948: 00400613 li a2,4 +8000194c: 0cd66e63 bltu a2,a3,80001a28 <_free_r+0x228> +80001950: 0067d693 srli a3,a5,0x6 +80001954: 03968513 addi a0,a3,57 +80001958: 03868613 addi a2,a3,56 +8000195c: 00351513 slli a0,a0,0x3 +80001960: 00a58533 add a0,a1,a0 +80001964: 00052683 lw a3,0(a0) +80001968: ff850513 addi a0,a0,-8 +8000196c: 10d50a63 beq a0,a3,80001a80 <_free_r+0x280> +80001970: 0046a603 lw a2,4(a3) +80001974: ffc67613 andi a2,a2,-4 +80001978: 00c7f663 bgeu a5,a2,80001984 <_free_r+0x184> +8000197c: 0086a683 lw a3,8(a3) +80001980: fed518e3 bne a0,a3,80001970 <_free_r+0x170> +80001984: 00c6a503 lw a0,12(a3) +80001988: 00a72623 sw a0,12(a4) +8000198c: 00d72423 sw a3,8(a4) +80001990: 00812403 lw s0,8(sp) +80001994: 00e52423 sw a4,8(a0) +80001998: 00c12083 lw ra,12(sp) +8000199c: 00048513 mv a0,s1 +800019a0: 00412483 lw s1,4(sp) +800019a4: 00e6a623 sw a4,12(a3) +800019a8: 01010113 addi sp,sp,16 +800019ac: b25ff06f j 800014d0 <__malloc_unlock> +800019b0: 12081863 bnez a6,80001ae0 <_free_r+0x2e0> +800019b4: 00862583 lw a1,8(a2) +800019b8: 00c62603 lw a2,12(a2) +800019bc: 00f687b3 add a5,a3,a5 +800019c0: 0017e693 ori a3,a5,1 +800019c4: 00c5a623 sw a2,12(a1) +800019c8: 00b62423 sw a1,8(a2) +800019cc: 00d72223 sw a3,4(a4) +800019d0: 00f70733 add a4,a4,a5 +800019d4: 00f72023 sw a5,0(a4) +800019d8: f01ff06f j 800018d8 <_free_r+0xd8> +800019dc: 00157513 andi a0,a0,1 +800019e0: 00d787b3 add a5,a5,a3 +800019e4: 02051063 bnez a0,80001a04 <_free_r+0x204> +800019e8: ff842503 lw a0,-8(s0) +800019ec: 40a70733 sub a4,a4,a0 +800019f0: 00c72683 lw a3,12(a4) +800019f4: 00872603 lw a2,8(a4) +800019f8: 00a787b3 add a5,a5,a0 +800019fc: 00d62623 sw a3,12(a2) +80001a00: 00c6a423 sw a2,8(a3) +80001a04: 0017e613 ori a2,a5,1 +80001a08: 0881a683 lw a3,136(gp) # 80002890 <__malloc_trim_threshold> +80001a0c: 00c72223 sw a2,4(a4) +80001a10: 00e5a423 sw a4,8(a1) +80001a14: ecd7e2e3 bltu a5,a3,800018d8 <_free_r+0xd8> +80001a18: 0941a583 lw a1,148(gp) # 8000289c <__malloc_top_pad> +80001a1c: 00048513 mv a0,s1 +80001a20: cc1ff0ef jal ra,800016e0 <_malloc_trim_r> +80001a24: eb5ff06f j 800018d8 <_free_r+0xd8> +80001a28: 01400613 li a2,20 +80001a2c: 02d67463 bgeu a2,a3,80001a54 <_free_r+0x254> +80001a30: 05400613 li a2,84 +80001a34: 06d66463 bltu a2,a3,80001a9c <_free_r+0x29c> +80001a38: 00c7d693 srli a3,a5,0xc +80001a3c: 06f68513 addi a0,a3,111 +80001a40: 06e68613 addi a2,a3,110 +80001a44: 00351513 slli a0,a0,0x3 +80001a48: f19ff06f j 80001960 <_free_r+0x160> +80001a4c: 00d787b3 add a5,a5,a3 +80001a50: eb5ff06f j 80001904 <_free_r+0x104> +80001a54: 05c68513 addi a0,a3,92 +80001a58: 05b68613 addi a2,a3,91 +80001a5c: 00351513 slli a0,a0,0x3 +80001a60: f01ff06f j 80001960 <_free_r+0x160> +80001a64: 00e5aa23 sw a4,20(a1) +80001a68: 00e5a823 sw a4,16(a1) +80001a6c: 00a72623 sw a0,12(a4) +80001a70: 00a72423 sw a0,8(a4) +80001a74: 01172223 sw a7,4(a4) +80001a78: 00f82023 sw a5,0(a6) +80001a7c: e5dff06f j 800018d8 <_free_r+0xd8> +80001a80: 0045a803 lw a6,4(a1) +80001a84: 40265613 srai a2,a2,0x2 +80001a88: 00100793 li a5,1 +80001a8c: 00c79633 sll a2,a5,a2 +80001a90: 01066633 or a2,a2,a6 +80001a94: 00c5a223 sw a2,4(a1) +80001a98: ef1ff06f j 80001988 <_free_r+0x188> +80001a9c: 15400613 li a2,340 +80001aa0: 00d66c63 bltu a2,a3,80001ab8 <_free_r+0x2b8> +80001aa4: 00f7d693 srli a3,a5,0xf +80001aa8: 07868513 addi a0,a3,120 +80001aac: 07768613 addi a2,a3,119 +80001ab0: 00351513 slli a0,a0,0x3 +80001ab4: eadff06f j 80001960 <_free_r+0x160> +80001ab8: 55400613 li a2,1364 +80001abc: 00d66c63 bltu a2,a3,80001ad4 <_free_r+0x2d4> +80001ac0: 0127d693 srli a3,a5,0x12 +80001ac4: 07d68513 addi a0,a3,125 +80001ac8: 07c68613 addi a2,a3,124 +80001acc: 00351513 slli a0,a0,0x3 +80001ad0: e91ff06f j 80001960 <_free_r+0x160> +80001ad4: 3f800513 li a0,1016 +80001ad8: 07e00613 li a2,126 +80001adc: e85ff06f j 80001960 <_free_r+0x160> +80001ae0: 0017e693 ori a3,a5,1 +80001ae4: 00d72223 sw a3,4(a4) +80001ae8: 00f62023 sw a5,0(a2) +80001aec: dedff06f j 800018d8 <_free_r+0xd8> Disassembly of section .rodata: -80001aec <.rodata>: -80001aec: 0030 addi a2,sp,8 -80001aee: 0000 unimp -80001af0: 0031 c.nop 12 +80001af0 <.rodata>: +80001af0: 0030 addi a2,sp,8 80001af2: 0000 unimp -80001af4: 0032 c.slli zero,0xc +80001af4: 0031 c.nop 12 80001af6: 0000 unimp -80001af8: 00000033 add zero,zero,zero -80001afc: 0034 addi a3,sp,8 -80001afe: 0000 unimp -80001b00: 0035 c.nop 13 +80001af8: 0032 c.slli zero,0xc +80001afa: 0000 unimp +80001afc: 00000033 add zero,zero,zero +80001b00: 0034 addi a3,sp,8 80001b02: 0000 unimp -80001b04: 0036 c.slli zero,0xd +80001b04: 0035 c.nop 13 80001b06: 0000 unimp -80001b08: 00000037 lui zero,0x0 -80001b0c: 0038 addi a4,sp,8 -80001b0e: 0000 unimp -80001b10: 0039 c.nop 14 +80001b08: 0036 c.slli zero,0xd +80001b0a: 0000 unimp +80001b0c: 00000037 lui zero,0x0 +80001b10: 0038 addi a4,sp,8 80001b12: 0000 unimp -80001b14: 0061 c.nop 24 +80001b14: 0039 c.nop 14 80001b16: 0000 unimp -80001b18: 0062 c.slli zero,0x18 +80001b18: 0061 c.nop 24 80001b1a: 0000 unimp -80001b1c: 00000063 beqz zero,80001b1c <_free_r+0x320> -80001b20: 0064 addi s1,sp,12 -80001b22: 0000 unimp -80001b24: 0065 c.nop 25 +80001b1c: 0062 c.slli zero,0x18 +80001b1e: 0000 unimp +80001b20: 00000063 beqz zero,80001b20 <_free_r+0x320> +80001b24: 0064 addi s1,sp,12 80001b26: 0000 unimp -80001b28: 0066 c.slli zero,0x19 +80001b28: 0065 c.nop 25 80001b2a: 0000 unimp -80001b2c: 6548 flw fa0,12(a0) -80001b2e: 6c6c flw fa1,92(s0) -80001b30: 7266206f j 80064256 <__BSS_END__+0x61986> -80001b34: 5f206d6f jal s10,80008126 <__BSS_END__+0x5856> -80001b38: 7369 lui t1,0xffffa -80001b3a: 7461 lui s0,0xffff8 -80001b3c: 7974 flw fa3,116(a0) -80001b3e: 000a c.slli zero,0x2 -80001b40: 5245 li tp,-15 -80001b42: 4f52 lw t5,20(sp) -80001b44: 3a52 fld fs4,304(sp) -80001b46: 5f20 lw s0,120(a4) -80001b48: 6c6c696b 0x6c6c696b -80001b4c: 6e20 flw fs0,88(a2) -80001b4e: 7920746f jal s0,800092e0 <__BSS_END__+0x6a10> -80001b52: 7465 lui s0,0xffff9 -80001b54: 6920 flw fs0,80(a0) -80001b56: 706d c.lui zero,0xffffb -80001b58: 656c flw fa1,76(a0) -80001b5a: 656d lui a0,0x1b -80001b5c: 746e flw fs0,248(sp) -80001b5e: 6465 lui s0,0x19 -80001b60: 000a c.slli zero,0x2 -80001b62: 0000 unimp -80001b64: 5245 li tp,-15 -80001b66: 4f52 lw t5,20(sp) -80001b68: 3a52 fld fs4,304(sp) -80001b6a: 5f20 lw s0,120(a4) -80001b6c: 6e75 lui t3,0x1d -80001b6e: 696c flw fa1,84(a0) -80001b70: 6b6e flw fs6,216(sp) -80001b72: 6e20 flw fs0,88(a2) -80001b74: 7920746f jal s0,80009306 <__BSS_END__+0x6a36> -80001b78: 7465 lui s0,0xffff9 -80001b7a: 6920 flw fs0,80(a0) -80001b7c: 706d c.lui zero,0xffffb -80001b7e: 656c flw fa1,76(a0) -80001b80: 656d lui a0,0x1b -80001b82: 746e flw fs0,248(sp) -80001b84: 6465 lui s0,0x19 -80001b86: 000a c.slli zero,0x2 -80001b88: 5245 li tp,-15 -80001b8a: 4f52 lw t5,20(sp) -80001b8c: 3a52 fld fs4,304(sp) -80001b8e: 5f20 lw s0,120(a4) -80001b90: 74746567 0x74746567 -80001b94: 6d69 lui s10,0x1a -80001b96: 6f65 lui t5,0x19 -80001b98: 6466 flw fs0,88(sp) -80001b9a: 7961 lui s2,0xffff8 -80001b9c: 6e20 flw fs0,88(a2) -80001b9e: 7920746f jal s0,80009330 <__BSS_END__+0x6a60> -80001ba2: 7465 lui s0,0xffff9 -80001ba4: 6920 flw fs0,80(a0) -80001ba6: 706d c.lui zero,0xffffb -80001ba8: 656c flw fa1,76(a0) -80001baa: 656d lui a0,0x1b -80001bac: 746e flw fs0,248(sp) -80001bae: 6465 lui s0,0x19 -80001bb0: 000a c.slli zero,0x2 -80001bb2: 0000 unimp -80001bb4: 5245 li tp,-15 -80001bb6: 4f52 lw t5,20(sp) -80001bb8: 3a52 fld fs4,304(sp) -80001bba: 5f20 lw s0,120(a4) -80001bbc: 696c flw fa1,84(a0) -80001bbe: 6b6e flw fs6,216(sp) -80001bc0: 6e20 flw fs0,88(a2) -80001bc2: 7920746f jal s0,80009354 <__BSS_END__+0x6a84> -80001bc6: 7465 lui s0,0xffff9 -80001bc8: 6920 flw fs0,80(a0) -80001bca: 706d c.lui zero,0xffffb -80001bcc: 656c flw fa1,76(a0) -80001bce: 656d lui a0,0x1b -80001bd0: 746e flw fs0,248(sp) -80001bd2: 6465 lui s0,0x19 -80001bd4: 000a c.slli zero,0x2 -80001bd6: 0000 unimp -80001bd8: 0030 addi a2,sp,8 +80001b2c: 0066 c.slli zero,0x19 +80001b2e: 0000 unimp +80001b30: 6548 flw fa0,12(a0) +80001b32: 6c6c flw fa1,92(s0) +80001b34: 7266206f j 8006425a <__BSS_END__+0x6198a> +80001b38: 5f206d6f jal s10,8000812a <__BSS_END__+0x585a> +80001b3c: 7369 lui t1,0xffffa +80001b3e: 7461 lui s0,0xffff8 +80001b40: 7974 flw fa3,116(a0) +80001b42: 000a c.slli zero,0x2 +80001b44: 5245 li tp,-15 +80001b46: 4f52 lw t5,20(sp) +80001b48: 3a52 fld fs4,304(sp) +80001b4a: 5f20 lw s0,120(a4) +80001b4c: 6c6c696b 0x6c6c696b +80001b50: 6e20 flw fs0,88(a2) +80001b52: 7920746f jal s0,800092e4 <__BSS_END__+0x6a14> +80001b56: 7465 lui s0,0xffff9 +80001b58: 6920 flw fs0,80(a0) +80001b5a: 706d c.lui zero,0xffffb +80001b5c: 656c flw fa1,76(a0) +80001b5e: 656d lui a0,0x1b +80001b60: 746e flw fs0,248(sp) +80001b62: 6465 lui s0,0x19 +80001b64: 000a c.slli zero,0x2 +80001b66: 0000 unimp +80001b68: 5245 li tp,-15 +80001b6a: 4f52 lw t5,20(sp) +80001b6c: 3a52 fld fs4,304(sp) +80001b6e: 5f20 lw s0,120(a4) +80001b70: 6e75 lui t3,0x1d +80001b72: 696c flw fa1,84(a0) +80001b74: 6b6e flw fs6,216(sp) +80001b76: 6e20 flw fs0,88(a2) +80001b78: 7920746f jal s0,8000930a <__BSS_END__+0x6a3a> +80001b7c: 7465 lui s0,0xffff9 +80001b7e: 6920 flw fs0,80(a0) +80001b80: 706d c.lui zero,0xffffb +80001b82: 656c flw fa1,76(a0) +80001b84: 656d lui a0,0x1b +80001b86: 746e flw fs0,248(sp) +80001b88: 6465 lui s0,0x19 +80001b8a: 000a c.slli zero,0x2 +80001b8c: 5245 li tp,-15 +80001b8e: 4f52 lw t5,20(sp) +80001b90: 3a52 fld fs4,304(sp) +80001b92: 5f20 lw s0,120(a4) +80001b94: 74746567 0x74746567 +80001b98: 6d69 lui s10,0x1a +80001b9a: 6f65 lui t5,0x19 +80001b9c: 6466 flw fs0,88(sp) +80001b9e: 7961 lui s2,0xffff8 +80001ba0: 6e20 flw fs0,88(a2) +80001ba2: 7920746f jal s0,80009334 <__BSS_END__+0x6a64> +80001ba6: 7465 lui s0,0xffff9 +80001ba8: 6920 flw fs0,80(a0) +80001baa: 706d c.lui zero,0xffffb +80001bac: 656c flw fa1,76(a0) +80001bae: 656d lui a0,0x1b +80001bb0: 746e flw fs0,248(sp) +80001bb2: 6465 lui s0,0x19 +80001bb4: 000a c.slli zero,0x2 +80001bb6: 0000 unimp +80001bb8: 5245 li tp,-15 +80001bba: 4f52 lw t5,20(sp) +80001bbc: 3a52 fld fs4,304(sp) +80001bbe: 5f20 lw s0,120(a4) +80001bc0: 696c flw fa1,84(a0) +80001bc2: 6b6e flw fs6,216(sp) +80001bc4: 6e20 flw fs0,88(a2) +80001bc6: 7920746f jal s0,80009358 <__BSS_END__+0x6a88> +80001bca: 7465 lui s0,0xffff9 +80001bcc: 6920 flw fs0,80(a0) +80001bce: 706d c.lui zero,0xffffb +80001bd0: 656c flw fa1,76(a0) +80001bd2: 656d lui a0,0x1b +80001bd4: 746e flw fs0,248(sp) +80001bd6: 6465 lui s0,0x19 +80001bd8: 000a c.slli zero,0x2 80001bda: 0000 unimp -80001bdc: 0031 c.nop 12 +80001bdc: 0030 addi a2,sp,8 80001bde: 0000 unimp -80001be0: 0032 c.slli zero,0xc +80001be0: 0031 c.nop 12 80001be2: 0000 unimp -80001be4: 00000033 add zero,zero,zero -80001be8: 0034 addi a3,sp,8 -80001bea: 0000 unimp -80001bec: 0035 c.nop 13 +80001be4: 0032 c.slli zero,0xc +80001be6: 0000 unimp +80001be8: 00000033 add zero,zero,zero +80001bec: 0034 addi a3,sp,8 80001bee: 0000 unimp -80001bf0: 0036 c.slli zero,0xd +80001bf0: 0035 c.nop 13 80001bf2: 0000 unimp -80001bf4: 00000037 lui zero,0x0 -80001bf8: 0038 addi a4,sp,8 -80001bfa: 0000 unimp -80001bfc: 0039 c.nop 14 +80001bf4: 0036 c.slli zero,0xd +80001bf6: 0000 unimp +80001bf8: 00000037 lui zero,0x0 +80001bfc: 0038 addi a4,sp,8 80001bfe: 0000 unimp -80001c00: 0061 c.nop 24 +80001c00: 0039 c.nop 14 80001c02: 0000 unimp -80001c04: 0062 c.slli zero,0x18 +80001c04: 0061 c.nop 24 80001c06: 0000 unimp -80001c08: 00000063 beqz zero,80001c08 <_free_r+0x40c> -80001c0c: 0064 addi s1,sp,12 -80001c0e: 0000 unimp -80001c10: 0065 c.nop 25 +80001c08: 0062 c.slli zero,0x18 +80001c0a: 0000 unimp +80001c0c: 00000063 beqz zero,80001c0c <_free_r+0x40c> +80001c10: 0064 addi s1,sp,12 80001c12: 0000 unimp -80001c14: 0066 c.slli zero,0x19 +80001c14: 0065 c.nop 25 80001c16: 0000 unimp -80001c18: 000a c.slli zero,0x2 +80001c18: 0066 c.slli zero,0x19 +80001c1a: 0000 unimp +80001c1c: 000a c.slli zero,0x2 Disassembly of section .init_array: @@ -1985,37 +1986,37 @@ Disassembly of section .init_array: Disassembly of section .data: 80002008 <__DATA_BEGIN__>: -80002008: 1bd8 addi a4,sp,500 +80002008: 1bdc addi a5,sp,500 8000200a: 8000 0x8000 -8000200c: 1bdc addi a5,sp,500 +8000200c: 1be0 addi s0,sp,508 8000200e: 8000 0x8000 -80002010: 1be0 addi s0,sp,508 +80002010: 1be4 addi s1,sp,508 80002012: 8000 0x8000 -80002014: 1be4 addi s1,sp,508 +80002014: 1be8 addi a0,sp,508 80002016: 8000 0x8000 -80002018: 1be8 addi a0,sp,508 +80002018: 1bec addi a1,sp,508 8000201a: 8000 0x8000 -8000201c: 1bec addi a1,sp,508 +8000201c: 1bf0 addi a2,sp,508 8000201e: 8000 0x8000 -80002020: 1bf0 addi a2,sp,508 +80002020: 1bf4 addi a3,sp,508 80002022: 8000 0x8000 -80002024: 1bf4 addi a3,sp,508 +80002024: 1bf8 addi a4,sp,508 80002026: 8000 0x8000 -80002028: 1bf8 addi a4,sp,508 +80002028: 1bfc addi a5,sp,508 8000202a: 8000 0x8000 -8000202c: 1bfc addi a5,sp,508 +8000202c: 1c00 addi s0,sp,560 8000202e: 8000 0x8000 -80002030: 1c00 addi s0,sp,560 +80002030: 1c04 addi s1,sp,560 80002032: 8000 0x8000 -80002034: 1c04 addi s1,sp,560 +80002034: 1c08 addi a0,sp,560 80002036: 8000 0x8000 -80002038: 1c08 addi a0,sp,560 +80002038: 1c0c addi a1,sp,560 8000203a: 8000 0x8000 -8000203c: 1c0c addi a1,sp,560 +8000203c: 1c10 addi a2,sp,560 8000203e: 8000 0x8000 -80002040: 1c10 addi a2,sp,560 +80002040: 1c14 addi a3,sp,560 80002042: 8000 0x8000 -80002044: 1c14 addi a3,sp,560 +80002044: 1c18 addi a4,sp,560 80002046: 8000 0x8000 80002048 : diff --git a/runtime/mains/vector_test/vx_vector_main.elf b/runtime/mains/vector_test/vx_vector_main.elf index bf3a6c5f..913d9370 100755 Binary files a/runtime/mains/vector_test/vx_vector_main.elf and b/runtime/mains/vector_test/vx_vector_main.elf differ diff --git a/runtime/mains/vector_test/vx_vector_main.hex b/runtime/mains/vector_test/vx_vector_main.hex index 30c8bb00..7ef56a99 100644 --- a/runtime/mains/vector_test/vx_vector_main.hex +++ b/runtime/mains/vector_test/vx_vector_main.hex @@ -1,11 +1,11 @@ :0200000480007A :100000009705000093854506130540006B10B50069 :10001000EF004005130510006B0005001385C108B3 -:100020001386810C3306A64093050000EF10003CB8 -:10003000171500001305C5AEEF00102AEF001034AD -:08004000EF0090156F00902AFB +:100020001386810C3306A64093050000EF10403C78 +:1000300017150000130505AFEF00502AEF005034EC +:08004000EF00D0156F00D02A7B :10004800B70700009387070063880700371500800B -:100058001305C5B16F00D027678000001305400065 +:10005800130505B26F0010286780000013054000E3 :100068006B000500972100009381C179F3261002E7 :100078009396A601732600029315A6001316260070 :1000880037F1FF6F3301B1403301D1403301C10073 @@ -13,448 +13,448 @@ :1000A80067800000D772850007E0051233055540C8 :1000B80093922200B38555008760061233065600D6 :1000C8005781000227E10602B3865600E31E05FCAD -:1000D80067800000130101FD232681021304010338 -:1000E800232EA4FC232CB4FC232AC4FC8327C4FDA0 -:1000F80083A707002326F4FE930744FD2322F4FE7A -:10010800832744FE03C707008327C4FE2380E70034 -:100118008327C4FE93871700032744FE034717006D -:100128002380E7008327C4FE93872700032744FE24 -:10013800034727002380E7008327C4FE93873700FF -:10014800032744FE034737002380E7008327C4FEC4 -:10015800938747002326F4FE232404FE6F00400300 -:10016800832784FE032784FDB307F70003C707002E -:100178008327C4FE2380E7008327C4FE93871700E4 -:100188002326F4FE832784FE938717002324F4FE96 -:10019800832744FD032784FEE344F7FC8327C4FE3A -:1001A8002320F4FE832704FE93F73700032704FE79 -:1001B800B307F7002320F4FE832704FE2326F4FE6A -:1001C8008327C4FD0327C4FE23A0E7001300000013 -:1001D8000324C1021301010367800000130101FC1D -:1001E800232E8102130401042326A4FC2324B4FC37 -:1001F8008327C4FC83A707002326F4FE9307C4FDC6 -:100208002322F4FE8327C4FE03C70700832744FE86 -:100218002380E700832744FE938717000327C4FE43 -:10022800034717002380E700832744FE93872700AE -:100238000327C4FE034727002380E700832744FEE3 -:10024800938737000327C4FE034737002380E7005E -:100258008327C4FE938747002326F4FE232404FE45 -:100268006F004003832784FE032784FCB307F7004D -:100278000327C4FE034707002380E7008327C4FE43 -:10028800938717002326F4FE832784FE938717009D -:100298002324F4FE8327C4FD032784FEE344F7FCEC -:1002A8008327C4FE2320F4FE832704FE93F7370038 -:1002B800032704FEB307F7002320F4FE832704FE78 -:1002C8002326F4FE8327C4FC0327C4FE23A0E700EB -:1002D800130000000324C103130101046780000018 -:1002E800130101FF232681001304010113000000FC -:1002F8000324C1001301010167800000130101FEFE -:10030800232E8100130401022326A4FE2324B4FE15 -:10031800832784FE3727000023A2E7009307000005 -:10032800138507000324C10113010102678000003F -:10033800130101FE232E1100232C81001304010256 -:100348002326A4FEB72700801385C7B2EF00C04F4D -:1003580093071000138507008320C101032481013E -:100368001301010267800000130101FD2326110219 -:100378002324810213040103232EA4FC232CB4FCA0 -:10038800232AC4FCB70700712326F4FEB7070072BE -:100398002324F4FE930730002322F4FE130744FEBF -:1003A8009307C4FE13064000930507001385070052 -:1003B800EFF05FD21307C4FD9307C4FE1306400095 -:1003C8009305070013850700EFF0DFD0130784FDBE -:1003D8009307C4FE13064000930507001385070022 -:1003E800EFF05FCF130744FD9307C4FE13064000E8 -:1003F8009305070013850700EFF0DFCD83A74107BA -:10040800E7800700130704FE930784FE930507009F -:1004180013850700EFF09FDC832704FE1385070090 -:100428008320C102032481021301010367800000B5 -:10043800130101FD23261102232481021304010361 -:10044800232EA4FC232CB4FC232AC4FCB707007178 -:100458002324F4FEB70700722326F4FE9307400016 -:100468002322F4FE130744FE930784FE130640007C -:100478009305070013850700EFF0DFC51307C4FDD8 -:10048800930784FE130640009305070013850700B1 -:10049800EFF05FC4130784FD930784FE1306400042 -:1004A8009305070013850700EFF0DFC2130744FD2B -:1004B800930784FE13064000930507001385070081 -:1004C800EFF05FC183A74107E7800700832744FD5A -:1004D800138507008320C10203248102130101034D -:1004E80067800000130101FD2326110223248102E5 -:1004F80013040103232EA4FC232CB4FC232AC4FCDC -:10050800B70700712326F4FE930750002324F4FE56 -:10051800130784FE9307C4FE1306400093050700E3 -:1005280013850700EFF01FBB1307C4FD9307C4FE34 -:10053800130640009305070013850700EFF09FB9E5 -:100548009307C4FE032644FD832584FD1385070015 -:10055800EFF05FB883A74107E7800700832744FDD2 -:10056800138507008320C1020324810213010103BC -:1005780067800000130101FD232681021304010393 -:10058800232EA4FC8327C4FD63D807008327C4FD5A -:10059800B307F040232EF4FC0327C4FDB73700004F -:1005A8009387078063D8E700B737000093870780F1 -:1005B800232EF4FC83A781072326F4FE03A78107D3 -:1005C8008327C4FD3307F70023ACE1068327C4FE65 -:1005D800138507000324C10213010103678000008B -:1005E800130101FE232E1100232C810013040102A4 -:1005F8002326A4FE13050000EF00001E13000000D0 -:100608008320C101032481011301010267800000D6 -:10061800130101FD2326110223248102130401037F -:10062800232EA4FC232CB4FC232AC4FCB707007196 -:100638002326F4FEB70700722324F4FE9307700004 -:100648002322F4FE130744FE9307C4FE130640005A -:100658009305070013850700EFF0DFA71307C4FD14 -:100668009307C4FE1306400093050700138507008F -:10067800EFF05FA6130784FD9307C4FE130640003E -:100688009305070013850700EFF0DFA4130744FD67 -:100698009307C4FE1306400093050700138507005F -:1006A800EFF05FA383A74107E7800700130704FE65 -:1006B800930784FE9305070013850700EFF01FB228 -:1006C800832704FE138507008320C10203248102C7 -:1006D8001301010367800000130101FF23261100A5 -:1006E8002324810013040101B7270080138507B470 -:1006F800EF008015130000008320C100032481004F -:100708001301010167800000130101FF2326110076 -:100718002324810013040101EF00800E93070500D4 -:10072800138507008320C100032481001301010100 -:1007380067800000130101FF232611002324810094 -:1007480013040101B7270080138547B6EF00C00FD7 -:10075800130000008320C10003248100130101015C -:1007680067800000130101FF232611002324810064 -:1007780013040101B7270080138587B8EF00C00C68 -:1007880083A781099386170023ACD1081385070036 -:100798008320C10003248100130101016780000048 -:1007A800130101FF232611002324810013040101F2 -:1007B800B7270080138547BBEF000009130000002E -:1007C8008320C10003248100130101016780000018 -:1007D8006B10B500678000006B00050067800000A3 -:1007E8006B40B500678000006B2005006780000043 -:1007F8006B300000678000007325100267800000DE -:100808007325000267800000130540006B00050097 -:10081800F32610029396F600732600029315A6009D -:100828001316260037F1FF6F3301B1403301D14071 -:100838003301C100F3261002638606001305000089 -:100848006B00050067800000130141FF23201100A1 -:100858002322B1008345050063880500EF00C0012D -:10086800130515006FF01FFF832001008325410049 -:100878001301C10067800000B702010023A0B20085 -:1008880067800000130101FD232611022324810241 -:1008980013040103232EA4FC0327C4FD9307F000CF -:1008A80063E4E702B72700800327C4FD1317270076 -:1008B80093878700B307F70083A70700138507000E -:1008C800EFF09FF86F004007930700022326F4FE1D -:1008D800A30504FE8327C4FE9387C7FF0327C4FD2F -:1008E800B357F70093F7F7002322F4FE832744FE5B -:1008F8006386070093071000A305F4FE8347B4FE40 -:1009080063820702B7270080032744FE13172700D6 -:1009180093878700B307F70083A7070013850700AD -:10092800EFF09FF28327C4FE9387C7FF2326F4FEC8 -:100938008327C4FEE340F0FA8320C1020324810226 -:100948001301010367800000130101FE232E11002B -:10095800232C8100130401022326A4FE2324B4FEC1 -:100968000325C4FEEFF05FEE032584FEEFF09FF150 -:10097800B7270080138587C1EFF01FED1300000033 -:100988008320C10103248101130101026780000053 -:10099800130101FD232611022324810213040103FC -:1009A80013051000EFF05FE3930750002322F4FED5 -:1009B800832744FE9397270013850700EF004025FF -:1009C800930705002320F4FE832744FE939727000E -:1009D80013850700EF00C02393070500232EF4FCBE -:1009E800832744FE9397270013850700EF004022D2 -:1009F80093070500232CF4FC232604FE6F008005D2 -:100A08008327C4FE93972700032704FEB307F70044 -:100A18001307100023A0E7008327C4FE939727003D -:100A28000327C4FDB307F7001307100023A0E7004E -:100A38008327C4FE93972700032784FDB307F70095 -:100A48001307100023A0E7008327C4FE938717002D -:100A58002326F4FE0327C4FE832744FEE342F7FA65 -:100A6800832684FD0326C4FD832504FE032544FE56 -:100A7800EFF04FE3232404FE6F00C002832784FEB7 -:100A880093972700032784FDB307F70083A7070080 -:100A980013850700EFF01FDF832784FE9387170075 -:100AA8002324F4FE032784FE832744FEE348F7FC4F -:100AB80013050000EFF05FD2130000001385070054 -:100AC8008320C1020324810213010103678000000F -:100AD80093050500930600001306000013050000A7 -:100AE8006F005024130101FF9305000023248100A7 -:100AF8002326110013040500EF00502C03A501075D -:100B08008327C50363840700E780070013050400F3 -:100B1800EFF01FAD130101FF232481002322910070 -:100B280037240080B72400809387440013044400CE -:100B38003304F440232611001354244063020402B2 -:100B4800931424009384C4FFB384F40083A704009F -:100B58001304F4FF9384C4FFE7800700E31804FE3E -:100B68008320C10003248100832441001301010173 -:100B780067800000130101FF232481002320210145 -:100B880037240080372900809307040013090900DF -:100B98003309F940232611002322910013592940D3 -:100BA800630009021304040093040000832704006F -:100BB8009384140013044400E7800700E31899FEA7 -:100BC800372400803729008093070400130949005F -:100BD8003309F9401359294063000902130404003A -:100BE8009304000083270400938414001304440032 -:100BF800E7800700E31899FE8320C10003248100E1 -:100C080083244100032901001301010167800000CA -:100C18009305050003A501086F0000019305050071 -:100C280003A501086F00103D130101FD2322910265 -:100C3800232E31012326110223248102232021039C -:100C4800232C4101232A5101232861012326710104 -:100C580023248101232291019384B5009307600125 -:100C68009309050063E497069307000163ECB72036 -:100C7800EF0010059304000193078001130620007C -:100C8800138981C6B307F90003A44700138787FFB8 -:100C98006302E424832744008326C40003268400D7 -:100CA80093F7C7FFB307F40003A747002326D6002E -:100CB80023A4C600136717001385090023A2E700C1 -:100CC800EF005000130584006F00801C93F484FF2C -:100CD80063CA041A63E8B41AEF00807E9307701F92 -:100CE80063F8974693D79400638E071C1307400058 -:100CF800636CF73E93D764001386970313858703C5 -:100D080093163600138981C6B306D90003A446009A -:100D1800938686FF638C8602832744009305F00040 -:100D280093F7C7FF3387974063C0E50263580734DA -:100D38000324C400638C86008327440093F7C7FF0D -:100D480033879740E3D4E5FE130605000324090121 -:100D580013088900630C0419832544001307F00065 -:100D680093F5C5FFB3879540634AF740232A0901E5 -:100D78002328090163D4073E9307F01F63E6B730C1 -:100D880093D53500938715009397370003254900BD -:100D9800B307F90083A6070093D525401307100071 -:100DA8003317B7003367A700938587FF2326B4005E -:100DB8002324D4002322E90023A0870023A6860049 -:100DC8009357264093061000B396F600636AD7122D -:100DD800B3F7E60063940702939616001376C6FFEE -:100DE800B3F7E60013064600639A070093961600C9 -:100DF800B3F7E60013064600E38A07FE1305F00082 -:100E080093183600B30819019385080013030600E8 -:100E180003A4C500639A85006F00402F6352073012 -:100E28000324C4006384852E8327440093F7C7FFF7 -:100E380033879740E354E5FE8326C40003268400E5 -:100E480093E514002322B4002326D60023A4C60069 -:100E5800B3049400232A9900232899009366170065 -:100E680023A6040123A4040123A2D400B307F40099 -:100E78001385090023A0E700EF00C0641305840070 -:100E88006F0000019307C00023A0F90013050000BC -:100E98008320C10203248102832441020329010221 -:100EA8008329C101032A8101832A4101032B0101FE -:100EB800832BC100032C8100832C41001301010303 -:100EC8006780000093060020130600041305F00352 -:100ED8006FF05FE303A4C70013062600E39C87DADC -:100EE8000324090113088900E31804E703274900CC -:100EF8009357264093061000B396F600E37AD7EC92 -:100F080003248900832A440013FCCAFF63689C00F9 -:100F1800B3079C401307F000634EF71283AA4109F8 -:100F280003A741089307F0FF330A8401B38A5401E9 -:100F38006308F732B71700009387F700B38AFA00FF -:100F4800B7F7FFFFB3FAFA0093850A001385090083 -:100F5800EF0080579307F0FF130B0500630AF5268F -:100F680063664527938BC10983A70B00B387FA00F3 -:100F780023A0FB00138707006306AA3883A641084D -:100F88009307F0FF638EF638330A4B413307EA00C4 -:100F980023A0EB00937C7B0063860C2E330B9B41D4 -:100FA800B7170000130B8B00138AF7FFB30A5B0116 -:100FB8009387870033F74A01B3879741B387E740A0 -:100FC80033FA470193050A0013850900EF00C04F63 -:100FD8009307F0FF6300F53A33056541B30A45010D -:100FE80083A70B002324690193EA1A00B307FA00C8 -:100FF80023A0FB0023225B01630824331306F000BF -:10100800637886338326440013074CFF137787FFE2 -:1010180093F61600B3E6E6002322D40093055000A9 -:10102800B306E40023A2B60023A4B600636EE63438 -:10103800832A4B0013040B0083A6010963F4F6000E -:1010480023A8F10883A6C10863F8F61823A6F108B7 -:101058006F00801813E714002322E400B3049400FF -:101068002324990093E717001385090023A2F400AD -:10107800EF004045130584006FF09FE18326C4000C -:10108800032684006FF01FC293D795001307400012 -:101098006374F712130740016360F7229386C7054C -:1010A8001387B70593963600B306D90083A70600C1 -:1010B800938686FF638AF61A03A747001377C7FF4C -:1010C80063F6E50083A78700E398F6FE83A6C700CA -:1010D800032749002326D4002324F40023A48600F0 -:1010E80023A687006FF0DFCD130740016378F71060 -:1010F800130740056360F71E93D7C4001386F706ED -:101108001385E706931636006FF0DFBF130313004D -:101118009377330093858500E39C07CE6F00C00F5B -:10112800B307F40003A747008326C40003268400FE -:101138001367170023A2E7002326D60013850900AA -:1011480023A4C600EF000038130584006FF05FD4B5 -:1011580013D63400938784006FF09FB2B305B400B0 -:1011680083A745001385090093E7170023A2F5001C -:10117800EF004035130584006FF09FD113E714008A -:101188002322E400B3049400232A99002328990019 -:1011980013E7170023A6040123A4040123A2E400F3 -:1011A800B305B4001385090023A0F500EF008031D2 -:1011B800130584006FF0DFCD93D7650093869703FE -:1011C80013878703939636006FF01FEE630224138C -:1011D80003248900832A440093FACAFFB3879A40FC -:1011E80063E69A001307F000E346F7E61385090063 -:1011F800EF00402D130500006FF09FC91386C70547 -:101208001385B705931636006FF0DFAF83A7880004 -:101218001306F6FF6394171D93773600938888FFAB -:10122800E39607FE0327490093C7F6FFB3F7E700E5 -:101238002322F90093961600E3E4D7CCE38206CC88 -:1012480033F7F600631A07009396160033F7F60093 -:1012580013034300E30A07FE130603006FF05FBAA7 -:10126800938A0A016FF05FCE032549009355274002 -:10127800130710003317B7003367A7002322E900CC -:101288006FF05FE5B71700001387F7FF330A5B01BC -:10129800337AEA00B387474133FAE70093050A0037 -:1012A80013850900EF0040229307F0FFE316F5D2FB -:1012B800130A00006FF0DFD2130740056360F708D8 -:1012C80093D7C5009386F7061387E70693963600EB -:1012D8006FF09FDD130740156360F70893D7F4009C -:1012E8001386870713857707931636006FF09FA13B -:1012F800938BC10903A70B003387EA0023A0EB00F7 -:101308006FF0DFC793164A01E39A06C603248900E3 -:10131800B30A5C0193EA1A00232254016FF0DFD16B -:1013280023A261096FF01FC713040B006FF0DFD011 -:10133800930710002322FB006FF05FEB13074015A3 -:101348006362F70693D7F5009386870713877707B5 -:10135800939636006FF05FD5130740556362F70622 -:1013680093D724011386D7071385C707931636002A -:101378006FF05F99938C8CFFB38A9A01B38A6A41A4 -:10138800130A00006FF0DFC5930584001385090078 -:10139800EF0040460324890083A70B00832A4400FA -:1013A8006FF09FC9130740556364F70293D725016F -:1013B8009386D7071387C707939636006FF0DFCE5B -:1013C8009306803F1306F0071305E0076FF09F931D -:1013D8009306803F1307E0076FF01FCD832749006E -:1013E8006FF05FE51303F00013070500637EC30287 -:1013F8009377F7006390070A63920508937606FFD0 -:101408001376F600B386E6002320B7002322B70040 -:101418002324B7002326B70013070701E366D7FE86 -:101428006314060067800000B306C3409396260045 -:1014380097020000B38656006780C6002307B700EE -:10144800A306B7002306B700A305B7002305B70016 -:10145800A304B7002304B700A303B7002303B7000E -:10146800A302B7002302B700A301B7002301B70006 -:10147800A300B7002300B7006780000093F5F50FBD -:1014880093968500B3E5D50093960501B3E5D5009D -:101498006FF0DFF69396270097020000B386560098 -:1014A80093820000E78006FA93800200938707FF83 -:1014B8003307F7403306F600E378C3F66FF0DFF33F -:1014C8006780000067800000130101FF232481006A -:1014D800232291009304050013850500232611009B -:1014E80023A2010CEFF00F899307F0FF630CF500BE -:1014F8008320C100032481008324410013010101DA -:101508006780000083A7410CE38407FE8320C100A5 -:101518000324810023A0F400832441001301010166 -:101528006780000003A7010783278714638C0704DB -:1015380003A747001308F001634EE80613182700B5 -:1015480063060502338307012324C30883A8871889 -:10155800130610003316E600B3E8C80023A41719D1 -:101568002324D310930620006304D5021307170021 -:1015780023A2E700B387070123A4B70013050000DF -:10158800678000009307C7142324F7146FF05FFAED -:1015980083A6C7181307170023A2E70033E6C6007F -:1015A80023A6C718B387070123A4B70013050000B3 -:1015B800678000001305F0FF67800000130101FD3C -:1015C8002324810103AC0107232E3101232C41017F -:1015D800232A510123286101232611022324810291 -:1015E800232291022320210323267101930A050057 -:1015F800138B0500130A10009309F0FF03298C14BC -:1016080063080902832449001384F4FF6342040237 -:1016180093942400B304990063040B0483A7441033 -:10162800638067051304F4FF9384C4FFE31634FF53 -:101638008320C10203248102832441020329010279 -:101648008329C101032A8101832A4101032B010156 -:10165800832BC100032C8100130101036780000064 -:101668008327490083A644009387F7FF638A87048A -:1016780023A20400E38806FA8327891833178A000F -:10168800832B4900B377F700639E0700E7800600C5 -:1016980083274900E39477F783278C14E38427F999 -:1016A8006FF0DFF58327C91883A544083377F7005F -:1016B800631C070013850A00E78006006FF05FFDD2 -:1016C800232289006FF01FFB13850500E7800600C1 -:1016D8006FF01FFC130101FE23282101232C810038 -:1016E800232A91002326310113840500232E11009B -:1016F80093090500138981C6EFF09FDC83268900D2 -:10170800371700009307F7FE83A446003384874009 -:1017180093F4C4FF330494001354C4001304F4FF77 -:101728001314C400634EE4009305000013850900F8 -:10173800EFF09FD983278900B38797006306F502E6 -:1017480013850900EFF01FD88320C101032481010C -:1017580083244101032901018329C10013050000E5 -:101768001301010267800000B3058040138509005A -:10177800EFF09FD59307F0FF6304F50483A7C10931 -:1017880083268900B384844093E41400338487401B -:101798001385090023A2960023AE8108EFF09FD29B -:1017A8008320C1010324810183244101032901010C -:1017B8008329C1001305100013010102678000008E -:1017C8009305000013850900EFF01FD00327890057 -:1017D8009306F000B307E540E3D4F6F683A6410884 -:1017E80093E717002322F7003305D54023AEA1085D -:1017F8006FF01FF563860512130101FF2324810092 -:101808002322910013840500930405002326110068 -:10181800EFF01FCB0325C4FF130784FF9377E5FF81 -:101828003306F700938581C68326460003A8850002 -:1018380093F6C6FF630EC8182322D6001375150049 -:101848003308D6006310050A032384FF03284800E1 -:101858003307674083288700138501C7B38767006C -:10186800137818006380A8140323C70023A6680010 -:10187800232413016306081C93E617002322D700CC -:101888002320F6009306F01F63E8F60A93D7370083 -:10189800938617009396360003A84500B386D500B3 -:1018A80003A5060013D6274093071000B397C70077 -:1018B800B3E70701138686FF2326C7002324A70062 -:1018C80023A2F50023A0E6002326E50003248100D7 -:1018D8008320C10013850400832441001301010102 -:1018E8006FF05FBE0325480013751500631C0502E1 -:1018F800B387D700138501C78326860093E81700AE -:101908003308F700638AA6140326C60023A6C60078 -:101918002324D600232217012320F8006FF09FF616 -:101928006780000093E61700232ED4FE2320F600DC -:101938009306F01FE3FCF6F493D6970013064000D5 -:10194800636ED60C93D667001385960313868603B9 -:10195800131535003385A50083260500130585FF7B -:10196800630AD51003A646001376C6FF63F6C700C0 -:1019780083A68600E318D5FE03A5C6002326A70084 -:101988002324D700032481002324E5008320C100F9 -:10199800138504008324410023A6E60013010101F6 -:1019A8006FF05FB263180812832586000326C6000D -:1019B800B387F60093E6170023A6C5002324B600D4 -:1019C8002322D7003307F7002320F7006FF01FF01A -:1019D80013751500B387D70063100502032584FF2C -:1019E8003307A7408326C70003268700B387A700CD -:1019F8002326D60023A4C60013E6170083A6810871 -:101A08002322C70023A4E500E3E2D7EC83A541091C -:101A180013850400EFF01FCC6FF05FEB1306400155 -:101A28006374D602130640056364D60693D6C700CE -:101A38001385F6061386E606131535006FF09FF139 -:101A4800B387D7006FF05FEB1385C6051386B6051D -:101A5800131535006FF01FF023AAE50023A8E50051 -:101A68002326A7002324A700232217012320F800F8 -:101A78006FF0DFE503A845001356264093071000D2 -:101A88003396C7003366060123A2C5006FF01FEF27 -:101A980013064015636CD60093D6F70013858607A6 -:101AA80013867607131535006FF0DFEA13064055E5 -:101AB800636CD60093D627011385D6071386C6070D -:101AC800131535006FF01FE91305803F1306E00773 -:101AD8006FF05FE893E617002322D7002320F60073 -:041AE8006FF0DFDEDE -:101AEC003000000031000000320000003300000024 -:101AFC003400000035000000360000003700000004 -:101B0C003800000039000000610000006200000095 -:101B1C006300000064000000650000006600000027 -:101B2C0048656C6C6F2066726F6D205F69736174B1 -:101B3C0074790A004552524F523A205F6B696C6CB3 -:101B4C00206E6F742079657420696D706C656D659D -:101B5C006E7465640A0000004552524F523A205F81 -:101B6C00756E6C696E6B206E6F742079657420696C -:101B7C006D706C656D656E7465640A004552524FEC -:101B8C00523A205F67657474696D656F666461793C -:101B9C00206E6F742079657420696D706C656D654D -:101BAC006E7465640A0000004552524F523A205F31 -:101BBC006C696E6B206E6F742079657420696D7022 -:101BCC006C656D656E7465640A0000003000000081 -:101BDC00310000003200000033000000340000002F -:101BEC00350000003600000037000000380000000F -:101BFC00390000006100000062000000630000007A -:0E1C0C006400000065000000660000000A0091 +:1000D800D72021B667800000130101FD2326810285 +:1000E80013040103232EA4FC232CB4FC232AC4FCF0 +:1000F8008327C4FD83A707002326F4FE930744FD46 +:100108002322F4FE832744FE03C707008327C4FE87 +:100118002380E7008327C4FE93871700032744FE44 +:10012800034717002380E7008327C4FE938727002F +:10013800032744FE034727002380E7008327C4FEE4 +:1001480093873700032744FE034737002380E700DF +:100158008327C4FE938747002326F4FE232404FE46 +:100168006F004003832784FE032784FDB307F7004D +:1001780003C707008327C4FE2380E7008327C4FE44 +:10018800938717002326F4FE832784FE938717009E +:100198002324F4FE832744FD032784FEE344F7FC6D +:1001A8008327C4FE2320F4FE832704FE93F7370039 +:1001B800032704FEB307F7002320F4FE832704FE79 +:1001C8002326F4FE8327C4FD0327C4FE23A0E700EB +:1001D800130000000324C10213010103678000001B +:1001E800130101FC232E8102130401042326A4FC1D +:1001F8002324B4FC8327C4FC83A707002326F4FE2A +:100208009307C4FD2322F4FE8327C4FE03C7070017 +:10021800832744FE2380E700832744FE9387170043 +:100228000327C4FE034717002380E700832744FE03 +:10023800938727000327C4FE034727002380E7008E +:10024800832744FE938737000327C4FE03473700FC +:100258002380E7008327C4FE938747002326F4FE04 +:10026800232404FE6F004003832784FE032784FCB5 +:10027800B307F7000327C4FE034707002380E700FE +:100288008327C4FE938717002326F4FE832784FE62 +:10029800938717002324F4FE8327C4FD032784FED5 +:1002A800E344F7FC8327C4FE2320F4FE832704FEDF +:1002B80093F73700032704FEB307F7002320F4FE63 +:1002C800832704FE2326F4FE8327C4FC0327C4FEE9 +:1002D80023A0E700130000000324C1031301010455 +:1002E80067800000130101FF232681001304010128 +:1002F800130000000324C1001301010167800000FE +:10030800130101FE232E8100130401022326A4FEFB +:100318002324B4FE832784FE3727000023A2E700A6 +:1003280093070000138507000324C101130101028C +:1003380067800000130101FE232E1100232C810089 +:10034800130401022326A4FEB7270080138507B3F0 +:10035800EF00C04F93071000138507008320C101E9 +:10036800032481011301010267800000130101FDCC +:10037800232611022324810213040103232EA4FC43 +:10038800232CB4FC232AC4FCB70700712326F4FEEF +:10039800B70700722324F4FE930730002322F4FEEB +:1003A800130744FE9307C4FE130640009305070095 +:1003B80013850700EFF05FD21307C4FD9307C4FE4F +:1003C800130640009305070013850700EFF0DFD000 +:1003D800130784FD9307C4FE130640009305070026 +:1003E80013850700EFF05FCF130744FD9307C4FEA2 +:1003F800130640009305070013850700EFF0DFCDD3 +:1004080083A74107E7800700130704FE930784FECC +:100418009305070013850700EFF09FDC832704FE90 +:10042800138507008320C1020324810213010103FD +:1004380067800000130101FD232611022324810295 +:1004480013040103232EA4FC232CB4FC232AC4FC8C +:10045800B70700712324F4FEB70700722326F4FEC1 +:10046800930740002322F4FE130744FE930784FEFB +:10047800130640009305070013850700EFF0DFC55A +:100488001307C4FD930784FE130640009305070075 +:1004980013850700EFF05FC4130784FD930784FEFC +:1004A800130640009305070013850700EFF0DFC22D +:1004B800130744FD930784FE1306400093050700C5 +:1004C80013850700EFF05FC183A74107E7800700A6 +:1004D800832744FD138507008320C102032481027A +:1004E8001301010367800000130101FD2326110297 +:1004F8002324810213040103232EA4FC232CB4FC1F +:10050800232AC4FCB70700712326F4FE9307500082 +:100518002324F4FE130784FE9307C4FE1306400049 +:100528009305070013850700EFF01FBB1307C4FDF1 +:100538009307C4FE130640009305070013850700C0 +:10054800EFF09FB99307C4FE032644FD832584FD7D +:1005580013850700EFF05FB883A74107E78007001E +:10056800832744FD138507008320C10203248102E9 +:100578001301010367800000130101FD2326810296 +:1005880013040103232EA4FC8327C4FD63D80700AA +:100598008327C4FDB307F040232EF4FC0327C4FDD2 +:1005A800B73700009387078063D8E700B7370000A4 +:1005B80093870780232EF4FC83A781072326F4FE64 +:1005C80003A781078327C4FD3307F70023ACE1069F +:1005D8008327C4FE138507000324C1021301010306 +:1005E80067800000130101FE232E1100232C8100D7 +:1005F800130401022326A4FE13050000EF00001EC9 +:10060800130000008320C1010324810113010102AA +:1006180067800000130101FD2326110223248102B3 +:1006280013040103232EA4FC232CB4FC232AC4FCAA +:10063800B70700712326F4FEB70700722324F4FEDF +:10064800930770002322F4FE130744FE9307C4FEA9 +:10065800130640009305070013850700EFF0DFA796 +:100668001307C4FD9307C4FE130640009305070053 +:1006780013850700EFF05FA6130784FD9307C4FEF8 +:10068800130640009305070013850700EFF0DFA469 +:10069800130744FD9307C4FE1306400093050700A3 +:1006A80013850700EFF05FA383A74107E7800700E2 +:1006B800130704FE930784FE9305070013850700BC +:1006C800EFF01FB2832704FE138507008320C102C1 +:1006D800032481021301010367800000130101FF55 +:1006E800232611002324810013040101B727008069 +:1006F800138547B4EF008015130000008320C10064 +:10070800032481001301010167800000130101FF28 +:10071800232611002324810013040101EF00800E19 +:1007280093070500138507008320C1000324810077 +:100738001301010167800000130101FF2326110046 +:100748002324810013040101B7270080138587B68D +:10075800EF00C00F130000008320C10003248100B4 +:100768001301010167800000130101FF2326110016 +:100778002324810013040101B72700801385C7B81B +:10078800EF00C00C83A781099386170023ACD1081A +:10079800138507008320C100032481001301010190 +:1007A80067800000130101FF232611002324810024 +:1007B80013040101B7270080138587BBEF000009E8 +:1007C800130000008320C1000324810013010101EC +:1007D800678000006B10B500678000006B000500A3 +:1007E800678000006B40B500678000006B20050043 +:1007F800678000006B3000006780000073251002DE +:100808006780000073250002678000001305400020 +:100818006B000500F32610029396F600732600027B +:100828009315A6001316260037F1FF6F3301B14068 +:100838003301D1403301C100F3261002638606005C +:10084800130500006B00050067800000130141FFDD +:10085800232011002322B100834505006388050089 +:10086800EF00C001130515006FF01FFF8320010082 +:10087800832541001301C10067800000B702010011 +:1008880023A0B20067800000130101FD2326110296 +:100898002324810213040103232EA4FC0327C4FD8F +:1008A8009307F00063E4E702B72700800327C4FD3D +:1008B8001317270093878700B307F70083A707005C +:1008C80013850700EFF09FF86F00400793070002B9 +:1008D8002326F4FEA30504FE8327C4FE9387C7FFDF +:1008E8000327C4FDB357F70093F7F7002322F4FE5C +:1008F800832744FE6386070093071000A305F4FED0 +:100908008347B4FE63820702B7270080032744FEAB +:100918001317270093878700B307F70083A70700FB +:1009280013850700EFF09FF28327C4FE9387C7FF64 +:100938002326F4FE8327C4FEE340F0FA8320C10295 +:10094800032481021301010367800000130101FEE3 +:10095800232E1100232C8100130401022326A4FE58 +:100968002324B4FE0325C4FEEFF05FEE032584FEC6 +:10097800EFF09FF1B72700801385C7C1EFF01FED97 +:10098800130000008320C101032481011301010227 +:1009980067800000130101FD232611022324810230 +:1009A8001304010313051000EFF05FE3930700023F +:1009B8002322F4FE832744FE93972700138507001C +:1009C800EF004025930705002320F4FE832744FE0B +:1009D8009397270013850700EF00C02393070500AE +:1009E800232EF4FC832744FE9397270013850700E2 +:1009F800EF00402293070500232CF4FC232604FE75 +:100A08006F0080058327C4FE93972700032704FE01 +:100A1800B307F7001307100023A0E7008327C4FEDD +:100A2800939727000327C4FDB307F70013071000A7 +:100A380023A0E7008327C4FE93972700032784FD9C +:100A4800B307F7001307100023A0E7008327C4FEAD +:100A5800938717002326F4FE0327C4FE832744FE4A +:100A6800E342F7FA832684FD0326C4FD832504FEAA +:100A7800032544FEEFF00FE3232404FE6F00C002B9 +:100A8800832784FE93972700032784FDB307F70085 +:100A980083A7070013850700EFF01FDF832784FE75 +:100AA800938717002324F4FE032784FE832744FE3C +:100AB800E348F7FC13050000EFF05FD213000000D5 +:100AC800138507008320C102032481021301010357 +:100AD80067800000930505009306000013060000D8 +:100AE800130500006F005024130101FF9305000057 +:100AF800232481002326110013040500EF00502C45 +:100B080003A501078327C50363840700E78007005F +:100B180013050400EFF01FAD130101FF232481002A +:100B28002322910037240080B72400809387440053 +:100B3800130444003304F4402326110013542440C2 +:100B480063020402931424009384C4FFB384F40062 +:100B580083A704001304F4FF9384C4FFE78007000D +:100B6800E31804FE8320C10003248100832441008C +:100B78001301010167800000130101FF2324810094 +:100B8800232021013724008037290080930704009F +:100B9800130909003309F940232611002322910083 +:100BA8001359294063000902130404009304000048 +:100BB800832704009384140013044400E78007008B +:100BC800E31899FE37240080372900809307040032 +:100BD800130949003309F9401359294063000902F0 +:100BE8001304040093040000832704009384140072 +:100BF80013044400E7800700E31899FE8320C1002E +:100C08000324810083244100032901001301010109 +:100C1800678000009305050003A501086F00000127 +:100C28009305050003A501086F00103D130101FDA0 +:100C380023229102232E310123261102232481022B +:100C480023202103232C4101232A51012328610158 +:100C58002326710123248101232291019384B50065 +:100C6800930760019309050063E497069307000161 +:100C780063ECB720EF00100593040001930780018F +:100C880013062000138981C6B307F90003A447009F +:100C9800138787FF6302E424832744008326C40064 +:100CA8000326840093F7C7FFB307F40003A74700A0 +:100CB8002326D60023A4C60013671700138509004E +:100CC80023A2E700EF005000130584006F00801C8A +:100CD80093F484FF63CA041A63E8B41AEF00807EB1 +:100CE8009307701F63F8974693D79400638E071C89 +:100CF80013074000636CF73E93D76400138697038D +:100D08001385870393163600138981C6B306D90065 +:100D180003A44600938686FF638C860283274400DB +:100D28009305F00093F7C7FF3387974063C0E50248 +:100D3800635807340324C400638C86008327440067 +:100D480093F7C7FF33879740E3D4E5FE1306050002 +:100D58000324090113088900630C0419832544003E +:100D68001307F00093F5C5FFB3879540634AF74032 +:100D7800232A09012328090163D4073E9307F01F9A +:100D880063E6B73093D535009387150093973700FE +:100D980003254900B307F90083A6070093D525402A +:100DA800130710003317B7003367A700938587FF31 +:100DB8002326B4002324D4002322E90023A087009B +:100DC80023A686009357264093061000B396F60094 +:100DD800636AD712B3F7E600639407029396160086 +:100DE8001376C6FFB3F7E60013064600639A0700BA +:100DF80093961600B3F7E60013064600E38A07FE4B +:100E08001305F00093183600B308190193850800FC +:100E18001303060003A4C500639A85006F00402FE2 +:100E2800635207300324C4006384852E832744005B +:100E380093F7C7FF33879740E354E5FE8326C40042 +:100E48000326840093E514002322B4002326D60049 +:100E580023A4C600B3049400232A990023289900E8 +:100E68009366170023A6040123A4040123A2D40037 +:100E7800B307F4001385090023A0E700EF00C0645E +:100E8800130584006F0000019307C00023A0F90038 +:100E9800130500008320C102032481028324410238 +:100EA800032901028329C101032A8101832A4101FF +:100EB800032B0101832BC100032C8100832C4100EB +:100EC8001301010367800000930600201306000445 +:100ED8001305F0036FF05FE303A4C70013062600B1 +:100EE800E39C87DA0324090113088900E31804E75F +:100EF800032749009357264093061000B396F6003F +:100F0800E37AD7EC03248900832A440013FCCAFF40 +:100F180063689C00B3079C401307F000634EF71208 +:100F280083AA410903A741089307F0FF330A840104 +:100F3800B38A54016308F732B71700009387F700A4 +:100F4800B38AFA00B7F7FFFFB3FAFA0093850A00ED +:100F580013850900EF0080579307F0FF130B050076 +:100F6800630AF52663664527938BC10983A70B009F +:100F7800B387FA0023A0FB00138707006306AA388B +:100F880083A641089307F0FF638EF638330A4B4176 +:100F98003307EA0023A0EB00937C7B0063860C2ECA +:100FA800330B9B41B7170000130B8B00138AF7FF15 +:100FB800B30A5B019387870033F74A01B3879741E8 +:100FC800B387E74033FA470193050A001385090000 +:100FD800EF00C04F9307F0FF6300F53A3305654112 +:100FE800B30A450183A70B002324690193EA1A0079 +:100FF800B307FA0023A0FB0023225B016308243314 +:101008001306F000637886338326440013074CFFE9 +:10101800137787FF93F61600B3E6E6002322D40081 +:1010280093055000B306E40023A2B60023A4B6003B +:10103800636EE634832A4B0013040B0083A6010970 +:1010480063F4F60023A8F10883A6C10863F8F6182C +:1010580023A6F1086F00801813E714002322E40088 +:10106800B30494002324990093E71700138509001B +:1010780023A2F400EF004045130584006FF09FE1C0 +:101088008326C400032684006FF01FC293D79500FF +:10109800130740006374F712130740016360F722D7 +:1010A8009386C7051387B70593963600B306D9000C +:1010B80083A70600938686FF638AF61A03A747006C +:1010C8001377C7FF63F6E50083A78700E398F6FE6A +:1010D80083A6C700032749002326D4002324F4004D +:1010E80023A4860023A687006FF0DFCD13074001F5 +:1010F8006378F710130740056360F71E93D7C400A1 +:101108001386F7061385E706931636006FF0DFBFE0 +:10111800130313009377330093858500E39C07CE70 +:101128006F00C00FB307F40003A747008326C4006D +:10113800032684001367170023A2E7002326D6009E +:101148001385090023A4C600EF00003813058400A6 +:101158006FF05FD413D63400938784006FF09FB28A +:10116800B305B40083A745001385090093E717006A +:1011780023A2F500EF004035130584006FF09FD1DE +:1011880013E714002322E400B3049400232A9900EF +:101198002328990013E7170023A6040123A40401B8 +:1011A80023A2E400B305B4001385090023A0F500C9 +:1011B800EF008031130584006FF0DFCD93D7650011 +:1011C8009386970313878703939636006FF01FEE75 +:1011D8006302241303248900832A440093FACAFF74 +:1011E800B3879A4063E69A001307F000E346F7E6F0 +:1011F80013850900EF00402D130500006FF09FC90B +:101208001386C7051385B705931636006FF0DFAF51 +:1012180083A788001306F6FF6394171D937736009B +:10122800938888FFE39607FE0327490093C7F6FFD4 +:10123800B3F7E7002322F90093961600E3E4D7CC2E +:10124800E38206CC33F7F600631A0700939616007C +:1012580033F7F60013034300E30A07FE13060300FF +:101268006FF05FBA938A0A016FF05FCE03254900D9 +:1012780093552740130710003317B7003367A700AB +:101288002322E9006FF05FE5B71700001387F7FF27 +:10129800330A5B01337AEA00B387474133FAE70040 +:1012A80093050A0013850900EF0040229307F0FF19 +:1012B800E316F5D2130A00006FF0DFD213074005DA +:1012C8006360F70893D7C5009386F7061387E70688 +:1012D800939636006FF09FDD130740156360F7089B +:1012E80093D7F4001386870713857707931636007C +:1012F8006FF09FA1938BC10903A70B003387EA0006 +:1013080023A0EB006FF0DFC793164A01E39A06C6E5 +:1013180003248900B30A5C0193EA1A0023225401CA +:101328006FF0DFD123A261096FF01FC713040B0010 +:101338006FF0DFD0930710002322FB006FF05FEB04 +:10134800130740156362F70693D7F500938687075E +:1013580013877707939636006FF05FD513074055CC +:101368006362F70693D724011386D7071385C70747 +:10137800931636006FF05F99938C8CFFB38A9A01AD +:10138800B38A6A41130A00006FF0DFC59305840031 +:1013980013850900EF0040460324890083A70B004A +:1013A800832A44006FF09FC9130740556364F7020E +:1013B80093D725019386D7071387C70793963600D7 +:1013C8006FF0DFCE9306803F1306F0071305E007A2 +:1013D8006FF09F939306803F1307E0076FF01FCDD0 +:1013E800832749006FF05FE51303F000130705003A +:1013F800637EC3029377F7006390070A6392050838 +:10140800937606FF1376F600B386E6002320B7002E +:101418002322B7002324B7002326B70013070701A8 +:10142800E366D7FE6314060067800000B306C34076 +:101438009396260097020000B38656006780C60080 +:101448002307B700A306B7002306B700A305B70014 +:101458002305B700A304B7002304B700A303B7000C +:101468002303B700A302B7002302B700A301B70004 +:101478002301B700A300B7002300B700678000006E +:1014880093F5F50F93968500B3E5D500939605017E +:10149800B3E5D5006FF0DFF69396270097020000BA +:1014A800B386560093820000E78006FA9380020014 +:1014B800938707FF3307F7403306F600E378C3F650 +:1014C8006FF0DFF36780000067800000130101FF01 +:1014D800232481002322910093040500138505002D +:1014E8002326110023A2010CEFF00F899307F0FFC8 +:1014F800630CF5008320C10003248100832441008C +:10150800130101016780000083A7410CE38407FEF3 +:101518008320C1000324810023A0F4008324410018 +:10152800130101016780000003A7010783278714BF +:10153800638C070403A747001308F001634EE8060D +:101548001318270063060502338307012324C30801 +:1015580083A88718130610003316E600B3E8C800FE +:1015680023A417192324D310930620006304D5025B +:101578001307170023A2E700B387070123A4B700C6 +:1015880013050000678000009307C7142324F7148D +:101598006FF05FFA83A6C7181307170023A2E700A6 +:1015A80033E6C60023A6C718B387070123A4B700EC +:1015B80013050000678000001305F0FF6780000036 +:1015C800130101FD2324810103AC0107232E3101FE +:1015D800232C4101232A51012328610123261102CA +:1015E800232481022322910223202103232671012F +:1015F800930A0500138B0500130A10009309F0FFE6 +:1016080003298C1463080902832449001384F4FF16 +:101618006342040293942400B304990063040B0406 +:1016280083A74410638067051304F4FF9384C4FF01 +:10163800E31634FF8320C10203248102832441027C +:10164800032901028329C101032A8101832A410157 +:10165800032B0101832BC100032C8100130101031B +:10166800678000008327490083A644009387F7FF1B +:10167800638A870423A20400E38806FA832789186B +:1016880033178A00832B4900B377F700639E07005E +:10169800E780060083274900E39477F783278C14B3 +:1016A800E38427F96FF0DFF58327C91883A5440879 +:1016B8003377F700631C070013850A00E7800600EC +:1016C8006FF05FFD232289006FF01FFB1385050073 +:1016D800E78006006FF01FFC130101FE232821019B +:1016E800232C8100232A910023263101138405002D +:1016F800232E110093090500138981C6EFF09FDCA2 +:1017080083268900371700009307F7FE83A4460055 +:101718003384874093F4C4FF330494001354C40003 +:101728001304F4FF1314C400634EE400930500008F +:1017380013850900EFF09FD983278900B3879700A5 +:101748006306F50213850900EFF01FD88320C10155 +:101758000324810183244101032901018329C10054 +:10176800130500001301010267800000B3058040E3 +:1017780013850900EFF09FD59307F0FF6304F50484 +:1017880083A7C10983268900B384844093E41400A5 +:10179800338487401385090023A2960023AE81086D +:1017A800EFF09FD28320C1010324810183244101EA +:1017B800032901018329C100130510001301010247 +:1017C800678000009305000013850900EFF01FD023 +:1017D800032789009306F000B307E540E3D4F6F643 +:1017E80083A6410893E717002322F7003305D54065 +:1017F80023AEA1086FF01FF563860512130101FFE0 +:1018080023248100232291001384050093040500FA +:1018180023261100EFF01FCB0325C4FF130784FF15 +:101828009377E5FF3306F700938581C68326460044 +:1018380003A8850093F6C6FF630EC8182322D600B6 +:10184800137515003308D6006310050A032384FFB7 +:10185800032848003307674083288700138501C79A +:10186800B3876700137818006380A8140323C700A0 +:1018780023A66800232413016306081C93E61700B7 +:101888002322D7002320F6009306F01F63E8F60A08 +:1018980093D73700938617009396360003A8450020 +:1018A800B386D50003A5060013D62740930710007A +:1018B800B397C700B3E70701138686FF2326C7003F +:1018C8002324A70023A2F50023A0E6002326E50091 +:1018D800032481008320C100138504008324410070 +:1018E800130101016FF05FBE032548001375150051 +:1018F800631C0502B387D700138501C783268600BA +:1019080093E817003308F700638AA6140326C60075 +:1019180023A6C6002324D600232217012320F8007B +:101928006FF09FF66780000093E61700232ED4FE21 +:101938002320F6009306F01FE3FCF6F493D69700F5 +:1019480013064000636ED60C93D667001385960382 +:1019580013868603131535003385A50083260500F5 +:10196800130585FF630AD51003A646001376C6FF44 +:1019780063F6C70083A68600E318D5FE03A5C60054 +:101988002326A7002324D700032481002324E5006D +:101998008320C100138504008324410023A6E600A8 +:1019A800130101016FF05FB26318081283258600E6 +:1019B8000326C600B387F60093E6170023A6C500E2 +:1019C8002324B6002322D7003307F7002320F7008B +:1019D8006FF01FF013751500B387D7006310050269 +:1019E800032584FF3307A7408326C7000326870003 +:1019F800B387A7002326D60023A4C60013E6170042 +:101A080083A681082322C70023A4E500E3E2D7ECDC +:101A180083A5410913850400EFF01FCC6FF05FEB3D +:101A2800130640016374D602130640056364D606A4 +:101A380093D6C7001385F6061386E60613153500F8 +:101A48006FF09FF1B387D7006FF05FEB1385C60582 +:101A58001386B605131535006FF01FF023AAE500AD +:101A680023A8E5002326A7002324A7002322170183 +:101A78002320F8006FF0DFE503A845001356264041 +:101A8800930710003396C7003366060123A2C500EA +:101A98006FF01FEF13064015636CD60093D6F7005E +:101AA8001385860713867607131535006FF0DFEA6E +:101AB80013064055636CD60093D627011385D607C5 +:101AC8001386C607131535006FF01FE91305803F0D +:101AD8001306E0076FF05FE893E617002322D700AC +:081AE8002320F6006FF0DFDEA1 +:101AF0003000000031000000320000003300000020 +:101B000034000000350000003600000037000000FF +:101B10003800000039000000610000006200000091 +:101B20006300000064000000650000006600000023 +:101B300048656C6C6F2066726F6D205F69736174AD +:101B400074790A004552524F523A205F6B696C6CAF +:101B5000206E6F742079657420696D706C656D6599 +:101B60006E7465640A0000004552524F523A205F7D +:101B7000756E6C696E6B206E6F7420796574206968 +:101B80006D706C656D656E7465640A004552524FE8 +:101B9000523A205F67657474696D656F6664617938 +:101BA000206E6F742079657420696D706C656D6549 +:101BB0006E7465640A0000004552524F523A205F2D +:101BC0006C696E6B206E6F742079657420696D701E +:101BD0006C656D656E7465640A000000300000007D +:101BE000310000003200000033000000340000002B +:101BF000350000003600000037000000380000000B +:101C00003900000061000000620000006300000075 +:0E1C10006400000065000000660000000A008D :042000004800008014 -:10200800D81B0080DC1B0080E01B0080E41B0080E4 -:10201800E81B0080EC1B0080F01B0080F41B008094 -:10202800F81B0080FC1B0080001C0080041C008042 -:10203800081C00800C1C0080101C0080141C0080F0 +:10200800DC1B0080E01B0080E41B0080E81B0080D4 +:10201800EC1B0080F01B0080F41B0080F81B008084 +:10202800FC1B0080001C0080041C0080081C008031 +:102038000C1C0080101C0080141C0080181C0080E0 :1020480000000000342300809C23008004240080CA :102058000000000000000000000000000000000078 :102068000000000000000000000000000000000068 diff --git a/simX/instruction.cpp b/simX/instruction.cpp index b3014f01..5068a941 100644 --- a/simX/instruction.cpp +++ b/simX/instruction.cpp @@ -2014,7 +2014,65 @@ void Instruction::executeOn(Warp &c, trace_inst_t * trace_inst) { } } - break; + break; + case 45: //vmacc + { + D(3, "vmacc"); + uint8_t *result_ptr; + + vector> & vr1 = c.vreg[rsrc[0]]; + vector> & vr2 = c.vreg[rsrc[1]]; + vector> & vd = c.vreg[rdest]; + if(c.vtype.vsew == 8){ + for(uint8_t i = 0; i < c.vl; i++){ + uint8_t *first_ptr = (uint8_t *)vr1[i].val; + uint8_t *second_ptr = (uint8_t *)vr2[i].val; + uint8_t result = (*first_ptr * *second_ptr); + cout << "Comparing " << *first_ptr << " + " << *second_ptr << " = " << result << '\n'; + + result_ptr = (uint8_t *) vd[i].val; + *result_ptr += result; + } + for(uint8_t i = c.vl; i < VLMAX; i++){ + result_ptr = (uint8_t *) vd[i].val; + *result_ptr = 0; + } + } + else if(c.vtype.vsew == 16) { + uint16_t *result_ptr; + for(uint16_t i = 0; i < c.vl; i++){ + uint16_t *first_ptr = (uint16_t *)vr1[i].val; + uint16_t *second_ptr = (uint16_t *)vr2[i].val; + uint16_t result = (*first_ptr * *second_ptr); + cout << "Comparing " << *first_ptr << " + " << *second_ptr << " = " << result << '\n'; + + result_ptr = (uint16_t *) vd[i].val; + *result_ptr += result; + } + for(uint16_t i = c.vl; i < VLMAX; i++){ + result_ptr = (uint16_t *) vd[i].val; + *result_ptr = 0; + } + + } else if(c.vtype.vsew == 32) { + uint32_t *result_ptr; + + for(uint32_t i = 0; i < c.vl; i++){ + uint32_t *first_ptr = (uint32_t *)vr1[i].val; + uint32_t *second_ptr = (uint32_t *)vr2[i].val; + uint32_t result = (*first_ptr * *second_ptr); + cout << "Comparing " << *first_ptr << " + " << *second_ptr << " = " << result << '\n'; + + result_ptr = (uint32_t *) vd[i].val; + *result_ptr += result; + } + for(Word i = c.vl; i < VLMAX; i++){ + result_ptr = (uint32_t *) vd[i].val; + *result_ptr = 0; + } + } + } + break; } } break;