diff --git a/raven/.cproject b/raven/.cproject new file mode 100644 index 0000000..1135715 --- /dev/null +++ b/raven/.cproject @@ -0,0 +1,235 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + make + + all + true + true + true + + + make + + clean + true + true + true + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/raven/.project b/raven/.project new file mode 100644 index 0000000..b930e99 --- /dev/null +++ b/raven/.project @@ -0,0 +1,28 @@ + + + hello_raven + + + bsp + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/raven/hello_raven b/raven/hello_raven index 2e8eab6..d68e0dd 100755 Binary files a/raven/hello_raven and b/raven/hello_raven differ diff --git a/raven/hello_raven.c b/raven/hello_raven.c index 85f00ef..93dd1fc 100644 --- a/raven/hello_raven.c +++ b/raven/hello_raven.c @@ -27,22 +27,27 @@ int main() int local_mem_base = 0x80000000; if (hartid == 0) { - int val_a = 2; - int val_b = 3; + int val_a = 5; + int val_b = 0xA; *(int *)target_mem_base = val_a; *(int *)(target_mem_base+4) = val_b; - printf("HW thread ID %d: write value A=%x and value B=%x to thread 1\n", hartid, val_a, val_b); + printf("HW thread ID %d: write value A=0x%x and value B=0x%x to thread 1\n", hartid, val_a, val_b); } int result = factorial (10); - printf("HW thread ID %d: spend some time calculating factorial of 10 = %x\n", hartid, result); + printf("HW thread ID %d: spend some time calculating factorial of 10=0x%x\n", hartid, result); if (hartid == 1) { int val_a = *(int *)local_mem_base; int val_b = *(int *)(local_mem_base+4); int sum = val_a + val_b; - printf("HW thread ID %d: sum of A+B=%x \n", hartid, sum); + if (sum == 0xF) + printf("HW thread ID %d: sum of A+B=0x%x\n", hartid, sum); + else { + printf("HW thread ID %d: sum of A+B is not 0x%x. Test FAILED!!!\n", hartid, sum); + return 1; + } } printf("End of execution"); diff --git a/raven/hello_raven.dis b/raven/hello_raven.dis index 5d8bf05..c5d1bca 100644 --- a/raven/hello_raven.dis +++ b/raven/hello_raven.dis @@ -10,7 +10,7 @@ Disassembly of section .init: 20400008: 5fc04117 auipc sp,0x5fc04 2040000c: ff810113 addi sp,sp,-8 # 80004000 <_sp> 20400010: 00002517 auipc a0,0x2 -20400014: 39450513 addi a0,a0,916 # 204023a4 <__fini_array_end> +20400014: 40450513 addi a0,a0,1028 # 20402414 <__fini_array_end> 20400018: 5fc00597 auipc a1,0x5fc00 2040001c: fe858593 addi a1,a1,-24 # 80000000 <_data> 20400020: 5fc00617 auipc a2,0x5fc00 @@ -30,13 +30,13 @@ Disassembly of section .init: 20400058: 00450513 addi a0,a0,4 2040005c: feb56ce3 bltu a0,a1,20400054 <_start+0x54> 20400060: 00001517 auipc a0,0x1 -20400064: 49850513 addi a0,a0,1176 # 204014f8 <__libc_fini_array> -20400068: 444010ef jal ra,204014ac -2040006c: 4ec010ef jal ra,20401558 <__libc_init_array> +20400064: 4c450513 addi a0,a0,1220 # 20401524 <__libc_fini_array> +20400068: 470010ef jal ra,204014d8 +2040006c: 518010ef jal ra,20401584 <__libc_init_array> 20400070: 00000513 li a0,0 20400074: 00000593 li a1,0 20400078: 321000ef jal ra,20400b98
-2040007c: 4440106f j 204014c0 +2040007c: 4700106f j 204014ec Disassembly of section .text: @@ -45,8 +45,8 @@ Disassembly of section .text: 20400084: f8078793 addi a5,a5,-128 # 0 <__stack_size-0x800> 20400088: 00078863 beqz a5,20400098 2040008c: 00001517 auipc a0,0x1 -20400090: 46c50513 addi a0,a0,1132 # 204014f8 <__libc_fini_array> -20400094: 4180106f j 204014ac +20400090: 49850513 addi a0,a0,1176 # 20401524 <__libc_fini_array> +20400094: 4440106f j 204014d8 20400098: 00008067 ret 2040009c : @@ -85,7 +85,7 @@ Disassembly of section .text: 2040011c: 34202573 csrr a0,mcause 20400120: 341025f3 csrr a1,mepc 20400124: 00010613 mv a2,sp -20400128: 0d4010ef jal ra,204011fc +20400128: 100010ef jal ra,20401228 2040012c: 34151073 csrw mepc,a0 20400130: 000022b7 lui t0,0x2 20400134: 80028293 addi t0,t0,-2048 # 1800 <__stack_size+0x1000> @@ -135,7 +135,7 @@ Disassembly of section .text: 204001dc: 00100613 li a2,1 204001e0: 00078593 mv a1,a5 204001e4: 00100513 li a0,1 -204001e8: 120010ef jal ra,20401308 <__wrap_write> +204001e8: 14c010ef jal ra,20401334 <__wrap_write> 204001ec: 00050713 mv a4,a0 204001f0: 00100793 li a5,1 204001f4: 00f71663 bne a4,a5,20400200 @@ -242,7 +242,7 @@ Disassembly of section .text: 20400368: f5442783 lw a5,-172(s0) 2040036c: f5042583 lw a1,-176(s0) 20400370: 00078513 mv a0,a5 -20400374: 3dd010ef jal ra,20401f50 <__umodsi3> +20400374: 409010ef jal ra,20401f7c <__umodsi3> 20400378: 00050793 mv a5,a0 2040037c: 00078713 mv a4,a5 20400380: 00249793 slli a5,s1,0x2 @@ -254,7 +254,7 @@ Disassembly of section .text: 20400398: 00f76e63 bltu a4,a5,204003b4 2040039c: f5042583 lw a1,-176(s0) 204003a0: f5442503 lw a0,-172(s0) -204003a4: 365010ef jal ra,20401f08 <__udivsi3> +204003a4: 391010ef jal ra,20401f34 <__udivsi3> 204003a8: 00050793 mv a5,a0 204003ac: f4f42a23 sw a5,-172(s0) 204003b0: fadff06f j 2040035c @@ -339,11 +339,11 @@ Disassembly of section .text: 204004e4: fd842783 lw a5,-40(s0) 204004e8: fdc42803 lw a6,-36(s0) 204004ec: 20402737 lui a4,0x20402 -204004f0: 16072603 lw a2,352(a4) # 20402160 <__clzsi2+0x1ac> -204004f4: 16472683 lw a3,356(a4) +204004f0: 19072603 lw a2,400(a4) # 20402190 <__clzsi2+0x1b0> +204004f4: 19472683 lw a3,404(a4) 204004f8: 00078513 mv a0,a5 204004fc: 00080593 mv a1,a6 -20400500: 2f0010ef jal ra,204017f0 <__muldf3> +20400500: 31c010ef jal ra,2040181c <__muldf3> 20400504: 00050793 mv a5,a0 20400508: 00058813 mv a6,a1 2040050c: fcf42c23 sw a5,-40(s0) @@ -360,7 +360,7 @@ Disassembly of section .text: 20400538: fdc42803 lw a6,-36(s0) 2040053c: 00078513 mv a0,a5 20400540: 00080593 mv a1,a6 -20400544: 11d010ef jal ra,20401e60 <__fixunsdfsi> +20400544: 149010ef jal ra,20401e8c <__fixunsdfsi> 20400548: 00050613 mv a2,a0 2040054c: fb440593 addi a1,s0,-76 20400550: 00000793 li a5,0 @@ -469,7 +469,7 @@ Disassembly of section .text: 204006e4: 30f76663 bltu a4,a5,204009f0 204006e8: 00279713 slli a4,a5,0x2 204006ec: 204027b7 lui a5,0x20402 -204006f0: 00878793 addi a5,a5,8 # 20402008 <__clzsi2+0x54> +204006f0: 03878793 addi a5,a5,56 # 20402038 <__clzsi2+0x58> 204006f4: 00f707b3 add a5,a4,a5 204006f8: 0007a783 lw a5,0(a5) 204006fc: 00078067 jr a5 @@ -551,7 +551,7 @@ Disassembly of section .text: 2040082c: 0007a903 lw s2,0(a5) 20400830: 00091663 bnez s2,2040083c 20400834: 204027b7 lui a5,0x20402 -20400838: 00078913 mv s2,a5 +20400838: 03078913 addi s2,a5,48 # 20402030 <__clzsi2+0x50> 2040083c: fe042783 lw a5,-32(s0) 20400840: 08f05063 blez a5,204008c0 20400844: fdb44703 lbu a4,-37(s0) @@ -560,7 +560,7 @@ Disassembly of section .text: 20400850: fdc42783 lw a5,-36(s0) 20400854: 00078593 mv a1,a5 20400858: 00090513 mv a0,s2 -2040085c: 591000ef jal ra,204015ec +2040085c: 5bd000ef jal ra,20401618 20400860: 00050713 mv a4,a0 20400864: fe042783 lw a5,-32(s0) 20400868: 40e787b3 sub a5,a5,a4 @@ -572,7 +572,7 @@ Disassembly of section .text: 20400880: 00078513 mv a0,a5 20400884: 000700e7 jalr a4 20400888: fe042783 lw a5,-32(s0) -2040088c: fff78793 addi a5,a5,-1 # 20401fff <__clzsi2+0x4b> +2040088c: fff78793 addi a5,a5,-1 20400890: fef42023 sw a5,-32(s0) 20400894: fe042783 lw a5,-32(s0) 20400898: fcf04ee3 bgtz a5,20400874 @@ -758,7 +758,7 @@ Disassembly of section .text: 20400b50: fe842783 lw a5,-24(s0) 20400b54: fec42583 lw a1,-20(s0) 20400b58: 00078513 mv a0,a5 -20400b5c: 380010ef jal ra,20401edc <__mulsi3> +20400b5c: 3ac010ef jal ra,20401f08 <__mulsi3> 20400b60: 00050793 mv a5,a0 20400b64: fef42423 sw a5,-24(s0) 20400b68: fec42783 lw a5,-20(s0) @@ -797,9 +797,9 @@ Disassembly of section .text: 20400be4: fef42023 sw a5,-32(s0) 20400be8: fe842783 lw a5,-24(s0) 20400bec: 04079663 bnez a5,20400c38 -20400bf0: 00200793 li a5,2 +20400bf0: 00500793 li a5,5 20400bf4: fcf42e23 sw a5,-36(s0) -20400bf8: 00300793 li a5,3 +20400bf8: 00a00793 li a5,10 20400bfc: fcf42c23 sw a5,-40(s0) 20400c00: fe442783 lw a5,-28(s0) 20400c04: fdc42703 lw a4,-36(s0) @@ -813,7 +813,7 @@ Disassembly of section .text: 20400c24: fdc42603 lw a2,-36(s0) 20400c28: fe842583 lw a1,-24(s0) 20400c2c: 204027b7 lui a5,0x20402 -20400c30: 16878513 addi a0,a5,360 # 20402168 <__clzsi2+0x1b4> +20400c30: 19878513 addi a0,a5,408 # 20402198 <__clzsi2+0x1b8> 20400c34: df9ff0ef jal ra,20400a2c <__wrap_printf> 20400c38: 00a00513 li a0,10 20400c3c: eedff0ef jal ra,20400b28 @@ -821,11 +821,11 @@ Disassembly of section .text: 20400c44: fd442603 lw a2,-44(s0) 20400c48: fe842583 lw a1,-24(s0) 20400c4c: 204027b7 lui a5,0x20402 -20400c50: 1a878513 addi a0,a5,424 # 204021a8 <__clzsi2+0x1f4> +20400c50: 1dc78513 addi a0,a5,476 # 204021dc <__clzsi2+0x1fc> 20400c54: dd9ff0ef jal ra,20400a2c <__wrap_printf> 20400c58: fe842703 lw a4,-24(s0) 20400c5c: 00100793 li a5,1 -20400c60: 04f71263 bne a4,a5,20400ca4 +20400c60: 06f71863 bne a4,a5,20400cd0 20400c64: fe042783 lw a5,-32(s0) 20400c68: 0007a783 lw a5,0(a5) 20400c6c: fcf42823 sw a5,-48(s0) @@ -837,1309 +837,1320 @@ Disassembly of section .text: 20400c84: fcc42783 lw a5,-52(s0) 20400c88: 00f707b3 add a5,a4,a5 20400c8c: fcf42423 sw a5,-56(s0) -20400c90: fc842603 lw a2,-56(s0) -20400c94: fe842583 lw a1,-24(s0) -20400c98: 204027b7 lui a5,0x20402 -20400c9c: 1ec78513 addi a0,a5,492 # 204021ec <__clzsi2+0x238> -20400ca0: d8dff0ef jal ra,20400a2c <__wrap_printf> +20400c90: fc842703 lw a4,-56(s0) +20400c94: 00f00793 li a5,15 +20400c98: 00f71e63 bne a4,a5,20400cb4 +20400c9c: fc842603 lw a2,-56(s0) +20400ca0: fe842583 lw a1,-24(s0) 20400ca4: 204027b7 lui a5,0x20402 -20400ca8: 21078513 addi a0,a5,528 # 20402210 <__clzsi2+0x25c> +20400ca8: 22078513 addi a0,a5,544 # 20402220 <__clzsi2+0x240> 20400cac: d81ff0ef jal ra,20400a2c <__wrap_printf> -20400cb0: 00000793 li a5,0 -20400cb4: 00078513 mv a0,a5 -20400cb8: 03c12083 lw ra,60(sp) -20400cbc: 03812403 lw s0,56(sp) -20400cc0: 04010113 addi sp,sp,64 -20400cc4: 00008067 ret - -20400cc8 : -20400cc8: ff010113 addi sp,sp,-16 -20400ccc: 00812623 sw s0,12(sp) -20400cd0: 01010413 addi s0,sp,16 -20400cd4: 0200c7b7 lui a5,0x200c -20400cd8: ff878793 addi a5,a5,-8 # 200bff8 <__stack_size+0x200b7f8> -20400cdc: 0007a783 lw a5,0(a5) +20400cb0: 0200006f j 20400cd0 +20400cb4: fc842603 lw a2,-56(s0) +20400cb8: fe842583 lw a1,-24(s0) +20400cbc: 204027b7 lui a5,0x20402 +20400cc0: 24478513 addi a0,a5,580 # 20402244 <__clzsi2+0x264> +20400cc4: d69ff0ef jal ra,20400a2c <__wrap_printf> +20400cc8: 00100793 li a5,1 +20400ccc: 0140006f j 20400ce0 +20400cd0: 204027b7 lui a5,0x20402 +20400cd4: 28078513 addi a0,a5,640 # 20402280 <__clzsi2+0x2a0> +20400cd8: d55ff0ef jal ra,20400a2c <__wrap_printf> +20400cdc: 00000793 li a5,0 20400ce0: 00078513 mv a0,a5 -20400ce4: 00c12403 lw s0,12(sp) -20400ce8: 01010113 addi sp,sp,16 -20400cec: 00008067 ret +20400ce4: 03c12083 lw ra,60(sp) +20400ce8: 03812403 lw s0,56(sp) +20400cec: 04010113 addi sp,sp,64 +20400cf0: 00008067 ret -20400cf0 : -20400cf0: ff010113 addi sp,sp,-16 -20400cf4: 00112623 sw ra,12(sp) -20400cf8: 00812423 sw s0,8(sp) -20400cfc: 01212223 sw s2,4(sp) -20400d00: 01312023 sw s3,0(sp) -20400d04: 01010413 addi s0,sp,16 -20400d08: fc1ff0ef jal ra,20400cc8 -20400d0c: 00050793 mv a5,a0 -20400d10: 00078913 mv s2,a5 -20400d14: 00000993 li s3,0 -20400d18: 00090793 mv a5,s2 -20400d1c: 00098813 mv a6,s3 -20400d20: 00078513 mv a0,a5 -20400d24: 00080593 mv a1,a6 -20400d28: 00c12083 lw ra,12(sp) -20400d2c: 00812403 lw s0,8(sp) -20400d30: 00412903 lw s2,4(sp) -20400d34: 00012983 lw s3,0(sp) -20400d38: 01010113 addi sp,sp,16 -20400d3c: 00008067 ret +20400cf4 : +20400cf4: ff010113 addi sp,sp,-16 +20400cf8: 00812623 sw s0,12(sp) +20400cfc: 01010413 addi s0,sp,16 +20400d00: 0200c7b7 lui a5,0x200c +20400d04: ff878793 addi a5,a5,-8 # 200bff8 <__stack_size+0x200b7f8> +20400d08: 0007a783 lw a5,0(a5) +20400d0c: 00078513 mv a0,a5 +20400d10: 00c12403 lw s0,12(sp) +20400d14: 01010113 addi sp,sp,16 +20400d18: 00008067 ret -20400d40 : -20400d40: ff010113 addi sp,sp,-16 -20400d44: 00812623 sw s0,12(sp) -20400d48: 01010413 addi s0,sp,16 -20400d4c: 000087b7 lui a5,0x8 -20400d50: 00078513 mv a0,a5 -20400d54: 00c12403 lw s0,12(sp) -20400d58: 01010113 addi sp,sp,16 -20400d5c: 00008067 ret +20400d1c : +20400d1c: ff010113 addi sp,sp,-16 +20400d20: 00112623 sw ra,12(sp) +20400d24: 00812423 sw s0,8(sp) +20400d28: 01212223 sw s2,4(sp) +20400d2c: 01312023 sw s3,0(sp) +20400d30: 01010413 addi s0,sp,16 +20400d34: fc1ff0ef jal ra,20400cf4 +20400d38: 00050793 mv a5,a0 +20400d3c: 00078913 mv s2,a5 +20400d40: 00000993 li s3,0 +20400d44: 00090793 mv a5,s2 +20400d48: 00098813 mv a6,s3 +20400d4c: 00078513 mv a0,a5 +20400d50: 00080593 mv a1,a6 +20400d54: 00c12083 lw ra,12(sp) +20400d58: 00812403 lw s0,8(sp) +20400d5c: 00412903 lw s2,4(sp) +20400d60: 00012983 lw s3,0(sp) +20400d64: 01010113 addi sp,sp,16 +20400d68: 00008067 ret -20400d60 : -20400d60: fe010113 addi sp,sp,-32 -20400d64: 00812e23 sw s0,28(sp) -20400d68: 02010413 addi s0,sp,32 -20400d6c: fea42623 sw a0,-20(s0) -20400d70: feb42423 sw a1,-24(s0) -20400d74: fec42783 lw a5,-20(s0) -20400d78: 02f7f713 andi a4,a5,47 -20400d7c: fe842783 lw a5,-24(s0) -20400d80: 01079693 slli a3,a5,0x10 -20400d84: 001f07b7 lui a5,0x1f0 -20400d88: 00f6f7b3 and a5,a3,a5 -20400d8c: 00f76733 or a4,a4,a5 -20400d90: 400007b7 lui a5,0x40000 -20400d94: 00f76733 or a4,a4,a5 -20400d98: 100087b7 lui a5,0x10008 -20400d9c: 00e7a023 sw a4,0(a5) # 10008000 <__stack_size+0x10007800> -20400da0: 00000013 nop -20400da4: 100087b7 lui a5,0x10008 -20400da8: 0007a783 lw a5,0(a5) # 10008000 <__stack_size+0x10007800> -20400dac: fe07dce3 bgez a5,20400da4 -20400db0: 100087b7 lui a5,0x10008 -20400db4: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400db8: 0007a683 lw a3,0(a5) -20400dbc: 100087b7 lui a5,0x10008 -20400dc0: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400dc4: ffff0737 lui a4,0xffff0 -20400dc8: fff70713 addi a4,a4,-1 # fffeffff <_sp+0x7ffebfff> -20400dcc: 00e6f733 and a4,a3,a4 -20400dd0: 00e7a023 sw a4,0(a5) -20400dd4: 00000013 nop -20400dd8: 01c12403 lw s0,28(sp) -20400ddc: 02010113 addi sp,sp,32 -20400de0: 00008067 ret +20400d6c : +20400d6c: ff010113 addi sp,sp,-16 +20400d70: 00812623 sw s0,12(sp) +20400d74: 01010413 addi s0,sp,16 +20400d78: 000087b7 lui a5,0x8 +20400d7c: 00078513 mv a0,a5 +20400d80: 00c12403 lw s0,12(sp) +20400d84: 01010113 addi sp,sp,16 +20400d88: 00008067 ret -20400de4 : -20400de4: fc010113 addi sp,sp,-64 -20400de8: 02112e23 sw ra,60(sp) -20400dec: 02812c23 sw s0,56(sp) -20400df0: 04010413 addi s0,sp,64 -20400df4: fca42e23 sw a0,-36(s0) -20400df8: fcb42c23 sw a1,-40(s0) -20400dfc: fcc42a23 sw a2,-44(s0) -20400e00: fcd42823 sw a3,-48(s0) -20400e04: fce42623 sw a4,-52(s0) -20400e08: 100087b7 lui a5,0x10008 -20400e0c: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400e10: 0007a703 lw a4,0(a5) -20400e14: 000107b7 lui a5,0x10 -20400e18: 00f777b3 and a5,a4,a5 -20400e1c: 00078863 beqz a5,20400e2c -20400e20: 01000593 li a1,16 -20400e24: 00400513 li a0,4 -20400e28: f39ff0ef jal ra,20400d60 -20400e2c: fe042623 sw zero,-20(s0) -20400e30: fdc42783 lw a5,-36(s0) -20400e34: 01179793 slli a5,a5,0x11 -20400e38: 00078713 mv a4,a5 -20400e3c: 000207b7 lui a5,0x20 -20400e40: 00f777b3 and a5,a4,a5 -20400e44: fec42703 lw a4,-20(s0) -20400e48: 00f767b3 or a5,a4,a5 -20400e4c: fef42623 sw a5,-20(s0) -20400e50: fd842783 lw a5,-40(s0) -20400e54: 02078c63 beqz a5,20400e8c -20400e58: fec42703 lw a4,-20(s0) -20400e5c: 000407b7 lui a5,0x40 -20400e60: 00f767b3 or a5,a4,a5 -20400e64: fef42623 sw a5,-20(s0) -20400e68: 100087b7 lui a5,0x10008 -20400e6c: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400d8c : +20400d8c: fe010113 addi sp,sp,-32 +20400d90: 00812e23 sw s0,28(sp) +20400d94: 02010413 addi s0,sp,32 +20400d98: fea42623 sw a0,-20(s0) +20400d9c: feb42423 sw a1,-24(s0) +20400da0: fec42783 lw a5,-20(s0) +20400da4: 02f7f713 andi a4,a5,47 +20400da8: fe842783 lw a5,-24(s0) +20400dac: 01079693 slli a3,a5,0x10 +20400db0: 001f07b7 lui a5,0x1f0 +20400db4: 00f6f7b3 and a5,a3,a5 +20400db8: 00f76733 or a4,a4,a5 +20400dbc: 400007b7 lui a5,0x40000 +20400dc0: 00f76733 or a4,a4,a5 +20400dc4: 100087b7 lui a5,0x10008 +20400dc8: 00e7a023 sw a4,0(a5) # 10008000 <__stack_size+0x10007800> +20400dcc: 00000013 nop +20400dd0: 100087b7 lui a5,0x10008 +20400dd4: 0007a783 lw a5,0(a5) # 10008000 <__stack_size+0x10007800> +20400dd8: fe07dce3 bgez a5,20400dd0 +20400ddc: 100087b7 lui a5,0x10008 +20400de0: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400de4: 0007a683 lw a3,0(a5) +20400de8: 100087b7 lui a5,0x10008 +20400dec: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400df0: ffff0737 lui a4,0xffff0 +20400df4: fff70713 addi a4,a4,-1 # fffeffff <_sp+0x7ffebfff> +20400df8: 00e6f733 and a4,a3,a4 +20400dfc: 00e7a023 sw a4,0(a5) +20400e00: 00000013 nop +20400e04: 01c12403 lw s0,28(sp) +20400e08: 02010113 addi sp,sp,32 +20400e0c: 00008067 ret + +20400e10 : +20400e10: fc010113 addi sp,sp,-64 +20400e14: 02112e23 sw ra,60(sp) +20400e18: 02812c23 sw s0,56(sp) +20400e1c: 04010413 addi s0,sp,64 +20400e20: fca42e23 sw a0,-36(s0) +20400e24: fcb42c23 sw a1,-40(s0) +20400e28: fcc42a23 sw a2,-44(s0) +20400e2c: fcd42823 sw a3,-48(s0) +20400e30: fce42623 sw a4,-52(s0) +20400e34: 100087b7 lui a5,0x10008 +20400e38: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400e3c: 0007a703 lw a4,0(a5) +20400e40: 000107b7 lui a5,0x10 +20400e44: 00f777b3 and a5,a4,a5 +20400e48: 00078863 beqz a5,20400e58 +20400e4c: 01000593 li a1,16 +20400e50: 00400513 li a0,4 +20400e54: f39ff0ef jal ra,20400d8c +20400e58: fe042623 sw zero,-20(s0) +20400e5c: fdc42783 lw a5,-36(s0) +20400e60: 01179793 slli a5,a5,0x11 +20400e64: 00078713 mv a4,a5 +20400e68: 000207b7 lui a5,0x20 +20400e6c: 00f777b3 and a5,a4,a5 20400e70: fec42703 lw a4,-20(s0) -20400e74: 00e7a023 sw a4,0(a5) -20400e78: 100087b7 lui a5,0x10008 -20400e7c: 00c78793 addi a5,a5,12 # 1000800c <__stack_size+0x1000780c> -20400e80: 10000713 li a4,256 -20400e84: 00e7a023 sw a4,0(a5) -20400e88: 0ec0006f j 20400f74 -20400e8c: 100147b7 lui a5,0x10014 -20400e90: 00800713 li a4,8 -20400e94: 00e7a023 sw a4,0(a5) # 10014000 <__stack_size+0x10013800> -20400e98: fec42703 lw a4,-20(s0) -20400e9c: 000407b7 lui a5,0x40 -20400ea0: 00f767b3 or a5,a4,a5 -20400ea4: fef42623 sw a5,-20(s0) -20400ea8: fd442783 lw a5,-44(s0) -20400eac: 0077f793 andi a5,a5,7 -20400eb0: fec42703 lw a4,-20(s0) -20400eb4: 00f767b3 or a5,a4,a5 -20400eb8: fef42623 sw a5,-20(s0) -20400ebc: fd042783 lw a5,-48(s0) -20400ec0: 00479793 slli a5,a5,0x4 -20400ec4: 3f07f793 andi a5,a5,1008 -20400ec8: fec42703 lw a4,-20(s0) +20400e74: 00f767b3 or a5,a4,a5 +20400e78: fef42623 sw a5,-20(s0) +20400e7c: fd842783 lw a5,-40(s0) +20400e80: 02078c63 beqz a5,20400eb8 +20400e84: fec42703 lw a4,-20(s0) +20400e88: 000407b7 lui a5,0x40 +20400e8c: 00f767b3 or a5,a4,a5 +20400e90: fef42623 sw a5,-20(s0) +20400e94: 100087b7 lui a5,0x10008 +20400e98: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400e9c: fec42703 lw a4,-20(s0) +20400ea0: 00e7a023 sw a4,0(a5) +20400ea4: 100087b7 lui a5,0x10008 +20400ea8: 00c78793 addi a5,a5,12 # 1000800c <__stack_size+0x1000780c> +20400eac: 10000713 li a4,256 +20400eb0: 00e7a023 sw a4,0(a5) +20400eb4: 0ec0006f j 20400fa0 +20400eb8: 100147b7 lui a5,0x10014 +20400ebc: 00800713 li a4,8 +20400ec0: 00e7a023 sw a4,0(a5) # 10014000 <__stack_size+0x10013800> +20400ec4: fec42703 lw a4,-20(s0) +20400ec8: 000407b7 lui a5,0x40 20400ecc: 00f767b3 or a5,a4,a5 20400ed0: fef42623 sw a5,-20(s0) -20400ed4: fcc42783 lw a5,-52(s0) -20400ed8: 00a79793 slli a5,a5,0xa -20400edc: 00078713 mv a4,a5 -20400ee0: 000017b7 lui a5,0x1 -20400ee4: c0078793 addi a5,a5,-1024 # c00 <__stack_size+0x400> -20400ee8: 00f777b3 and a5,a4,a5 -20400eec: fec42703 lw a4,-20(s0) -20400ef0: 00f767b3 or a5,a4,a5 -20400ef4: fef42623 sw a5,-20(s0) -20400ef8: 100087b7 lui a5,0x10008 -20400efc: 00c78793 addi a5,a5,12 # 1000800c <__stack_size+0x1000780c> -20400f00: 10000713 li a4,256 -20400f04: 00e7a023 sw a4,0(a5) -20400f08: 100087b7 lui a5,0x10008 -20400f0c: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400f10: fec42703 lw a4,-20(s0) -20400f14: 00e7a023 sw a4,0(a5) -20400f18: 100087b7 lui a5,0x10008 -20400f1c: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400f20: 0007a683 lw a3,0(a5) +20400ed4: fd442783 lw a5,-44(s0) +20400ed8: 0077f793 andi a5,a5,7 +20400edc: fec42703 lw a4,-20(s0) +20400ee0: 00f767b3 or a5,a4,a5 +20400ee4: fef42623 sw a5,-20(s0) +20400ee8: fd042783 lw a5,-48(s0) +20400eec: 00479793 slli a5,a5,0x4 +20400ef0: 3f07f793 andi a5,a5,1008 +20400ef4: fec42703 lw a4,-20(s0) +20400ef8: 00f767b3 or a5,a4,a5 +20400efc: fef42623 sw a5,-20(s0) +20400f00: fcc42783 lw a5,-52(s0) +20400f04: 00a79793 slli a5,a5,0xa +20400f08: 00078713 mv a4,a5 +20400f0c: 000017b7 lui a5,0x1 +20400f10: c0078793 addi a5,a5,-1024 # c00 <__stack_size+0x400> +20400f14: 00f777b3 and a5,a4,a5 +20400f18: fec42703 lw a4,-20(s0) +20400f1c: 00f767b3 or a5,a4,a5 +20400f20: fef42623 sw a5,-20(s0) 20400f24: 100087b7 lui a5,0x10008 -20400f28: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400f2c: fffc0737 lui a4,0xfffc0 -20400f30: fff70713 addi a4,a4,-1 # fffbffff <_sp+0x7ffbbfff> -20400f34: 00e6f733 and a4,a3,a4 -20400f38: 00e7a023 sw a4,0(a5) -20400f3c: d8dff0ef jal ra,20400cc8 -20400f40: fea42423 sw a0,-24(s0) -20400f44: 00000013 nop -20400f48: d81ff0ef jal ra,20400cc8 -20400f4c: 00050713 mv a4,a0 -20400f50: fe842783 lw a5,-24(s0) -20400f54: 40f70733 sub a4,a4,a5 -20400f58: 00300793 li a5,3 -20400f5c: fee7f6e3 bgeu a5,a4,20400f48 -20400f60: 00000013 nop -20400f64: 100087b7 lui a5,0x10008 -20400f68: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400f6c: 0007a783 lw a5,0(a5) -20400f70: fe07dae3 bgez a5,20400f64 -20400f74: 100087b7 lui a5,0x10008 -20400f78: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400f7c: 0007a683 lw a3,0(a5) -20400f80: 100087b7 lui a5,0x10008 -20400f84: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> -20400f88: 00010737 lui a4,0x10 -20400f8c: 00e6e733 or a4,a3,a4 -20400f90: 00e7a023 sw a4,0(a5) -20400f94: 00000013 nop -20400f98: 03c12083 lw ra,60(sp) -20400f9c: 03812403 lw s0,56(sp) -20400fa0: 04010113 addi sp,sp,64 -20400fa4: 00008067 ret +20400f28: 00c78793 addi a5,a5,12 # 1000800c <__stack_size+0x1000780c> +20400f2c: 10000713 li a4,256 +20400f30: 00e7a023 sw a4,0(a5) +20400f34: 100087b7 lui a5,0x10008 +20400f38: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400f3c: fec42703 lw a4,-20(s0) +20400f40: 00e7a023 sw a4,0(a5) +20400f44: 100087b7 lui a5,0x10008 +20400f48: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400f4c: 0007a683 lw a3,0(a5) +20400f50: 100087b7 lui a5,0x10008 +20400f54: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400f58: fffc0737 lui a4,0xfffc0 +20400f5c: fff70713 addi a4,a4,-1 # fffbffff <_sp+0x7ffbbfff> +20400f60: 00e6f733 and a4,a3,a4 +20400f64: 00e7a023 sw a4,0(a5) +20400f68: d8dff0ef jal ra,20400cf4 +20400f6c: fea42423 sw a0,-24(s0) +20400f70: 00000013 nop +20400f74: d81ff0ef jal ra,20400cf4 +20400f78: 00050713 mv a4,a0 +20400f7c: fe842783 lw a5,-24(s0) +20400f80: 40f70733 sub a4,a4,a5 +20400f84: 00300793 li a5,3 +20400f88: fee7f6e3 bgeu a5,a4,20400f74 +20400f8c: 00000013 nop +20400f90: 100087b7 lui a5,0x10008 +20400f94: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400f98: 0007a783 lw a5,0(a5) +20400f9c: fe07dae3 bgez a5,20400f90 +20400fa0: 100087b7 lui a5,0x10008 +20400fa4: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400fa8: 0007a683 lw a3,0(a5) +20400fac: 100087b7 lui a5,0x10008 +20400fb0: 00878793 addi a5,a5,8 # 10008008 <__stack_size+0x10007808> +20400fb4: 00010737 lui a4,0x10 +20400fb8: 00e6e733 or a4,a3,a4 +20400fbc: 00e7a023 sw a4,0(a5) +20400fc0: 00000013 nop +20400fc4: 03c12083 lw ra,60(sp) +20400fc8: 03812403 lw s0,56(sp) +20400fcc: 04010113 addi sp,sp,64 +20400fd0: 00008067 ret -20400fa8 : -20400fa8: ff010113 addi sp,sp,-16 -20400fac: 00112623 sw ra,12(sp) -20400fb0: 00812423 sw s0,8(sp) -20400fb4: 01010413 addi s0,sp,16 -20400fb8: 100007b7 lui a5,0x10000 -20400fbc: 07078793 addi a5,a5,112 # 10000070 <__stack_size+0xffff870> -20400fc0: 0007a683 lw a3,0(a5) -20400fc4: 100007b7 lui a5,0x10000 -20400fc8: 07078793 addi a5,a5,112 # 10000070 <__stack_size+0xffff870> -20400fcc: c0000737 lui a4,0xc0000 -20400fd0: fff70713 addi a4,a4,-1 # bfffffff <_sp+0x3fffbfff> -20400fd4: 00e6f733 and a4,a3,a4 -20400fd8: 00e7a023 sw a4,0(a5) -20400fdc: 01000593 li a1,16 -20400fe0: 00400513 li a0,4 -20400fe4: d7dff0ef jal ra,20400d60 -20400fe8: 00000013 nop -20400fec: 00c12083 lw ra,12(sp) -20400ff0: 00812403 lw s0,8(sp) -20400ff4: 01010113 addi sp,sp,16 -20400ff8: 00008067 ret +20400fd4 : +20400fd4: ff010113 addi sp,sp,-16 +20400fd8: 00112623 sw ra,12(sp) +20400fdc: 00812423 sw s0,8(sp) +20400fe0: 01010413 addi s0,sp,16 +20400fe4: 100007b7 lui a5,0x10000 +20400fe8: 07078793 addi a5,a5,112 # 10000070 <__stack_size+0xffff870> +20400fec: 0007a683 lw a3,0(a5) +20400ff0: 100007b7 lui a5,0x10000 +20400ff4: 07078793 addi a5,a5,112 # 10000070 <__stack_size+0xffff870> +20400ff8: c0000737 lui a4,0xc0000 +20400ffc: fff70713 addi a4,a4,-1 # bfffffff <_sp+0x3fffbfff> +20401000: 00e6f733 and a4,a3,a4 +20401004: 00e7a023 sw a4,0(a5) +20401008: 01000593 li a1,16 +2040100c: 00400513 li a0,4 +20401010: d7dff0ef jal ra,20400d8c +20401014: 00000013 nop +20401018: 00c12083 lw ra,12(sp) +2040101c: 00812403 lw s0,8(sp) +20401020: 01010113 addi sp,sp,16 +20401024: 00008067 ret -20400ffc : -20400ffc: fc010113 addi sp,sp,-64 -20401000: 02112e23 sw ra,60(sp) -20401004: 02812c23 sw s0,56(sp) -20401008: 02912a23 sw s1,52(sp) -2040100c: 04010413 addi s0,sp,64 -20401010: fca42623 sw a0,-52(s0) -20401014: d2dff0ef jal ra,20400d40 -20401018: fea42623 sw a0,-20(s0) -2040101c: cadff0ef jal ra,20400cc8 -20401020: fea42423 sw a0,-24(s0) -20401024: ca5ff0ef jal ra,20400cc8 -20401028: fea42223 sw a0,-28(s0) -2040102c: fe442703 lw a4,-28(s0) -20401030: fe842783 lw a5,-24(s0) -20401034: fef708e3 beq a4,a5,20401024 -20401038: b00027f3 csrr a5,mcycle -2040103c: fef42023 sw a5,-32(s0) -20401040: fe042783 lw a5,-32(s0) -20401044: fcf42e23 sw a5,-36(s0) -20401048: c81ff0ef jal ra,20400cc8 -2040104c: 00050713 mv a4,a0 -20401050: fe442783 lw a5,-28(s0) -20401054: 40f707b3 sub a5,a4,a5 -20401058: fcf42c23 sw a5,-40(s0) -2040105c: fd842703 lw a4,-40(s0) -20401060: fcc42783 lw a5,-52(s0) -20401064: fef762e3 bltu a4,a5,20401048 -20401068: b00027f3 csrr a5,mcycle -2040106c: fcf42a23 sw a5,-44(s0) -20401070: fd442703 lw a4,-44(s0) -20401074: fdc42783 lw a5,-36(s0) -20401078: 40f707b3 sub a5,a4,a5 -2040107c: fcf42823 sw a5,-48(s0) -20401080: fd842583 lw a1,-40(s0) -20401084: fd042503 lw a0,-48(s0) -20401088: 681000ef jal ra,20401f08 <__udivsi3> -2040108c: 00050793 mv a5,a0 -20401090: fec42583 lw a1,-20(s0) -20401094: 00078513 mv a0,a5 -20401098: 645000ef jal ra,20401edc <__mulsi3> -2040109c: 00050793 mv a5,a0 -204010a0: 00078493 mv s1,a5 -204010a4: fd042783 lw a5,-48(s0) -204010a8: fd842583 lw a1,-40(s0) -204010ac: 00078513 mv a0,a5 -204010b0: 6a1000ef jal ra,20401f50 <__umodsi3> -204010b4: 00050793 mv a5,a0 -204010b8: fec42583 lw a1,-20(s0) -204010bc: 00078513 mv a0,a5 -204010c0: 61d000ef jal ra,20401edc <__mulsi3> -204010c4: 00050793 mv a5,a0 -204010c8: fd842583 lw a1,-40(s0) -204010cc: 00078513 mv a0,a5 -204010d0: 639000ef jal ra,20401f08 <__udivsi3> -204010d4: 00050793 mv a5,a0 -204010d8: 00f487b3 add a5,s1,a5 -204010dc: 00078513 mv a0,a5 -204010e0: 03c12083 lw ra,60(sp) -204010e4: 03812403 lw s0,56(sp) -204010e8: 03412483 lw s1,52(sp) -204010ec: 04010113 addi sp,sp,64 -204010f0: 00008067 ret +20401028 : +20401028: fc010113 addi sp,sp,-64 +2040102c: 02112e23 sw ra,60(sp) +20401030: 02812c23 sw s0,56(sp) +20401034: 02912a23 sw s1,52(sp) +20401038: 04010413 addi s0,sp,64 +2040103c: fca42623 sw a0,-52(s0) +20401040: d2dff0ef jal ra,20400d6c +20401044: fea42623 sw a0,-20(s0) +20401048: cadff0ef jal ra,20400cf4 +2040104c: fea42423 sw a0,-24(s0) +20401050: ca5ff0ef jal ra,20400cf4 +20401054: fea42223 sw a0,-28(s0) +20401058: fe442703 lw a4,-28(s0) +2040105c: fe842783 lw a5,-24(s0) +20401060: fef708e3 beq a4,a5,20401050 +20401064: b00027f3 csrr a5,mcycle +20401068: fef42023 sw a5,-32(s0) +2040106c: fe042783 lw a5,-32(s0) +20401070: fcf42e23 sw a5,-36(s0) +20401074: c81ff0ef jal ra,20400cf4 +20401078: 00050713 mv a4,a0 +2040107c: fe442783 lw a5,-28(s0) +20401080: 40f707b3 sub a5,a4,a5 +20401084: fcf42c23 sw a5,-40(s0) +20401088: fd842703 lw a4,-40(s0) +2040108c: fcc42783 lw a5,-52(s0) +20401090: fef762e3 bltu a4,a5,20401074 +20401094: b00027f3 csrr a5,mcycle +20401098: fcf42a23 sw a5,-44(s0) +2040109c: fd442703 lw a4,-44(s0) +204010a0: fdc42783 lw a5,-36(s0) +204010a4: 40f707b3 sub a5,a4,a5 +204010a8: fcf42823 sw a5,-48(s0) +204010ac: fd842583 lw a1,-40(s0) +204010b0: fd042503 lw a0,-48(s0) +204010b4: 681000ef jal ra,20401f34 <__udivsi3> +204010b8: 00050793 mv a5,a0 +204010bc: fec42583 lw a1,-20(s0) +204010c0: 00078513 mv a0,a5 +204010c4: 645000ef jal ra,20401f08 <__mulsi3> +204010c8: 00050793 mv a5,a0 +204010cc: 00078493 mv s1,a5 +204010d0: fd042783 lw a5,-48(s0) +204010d4: fd842583 lw a1,-40(s0) +204010d8: 00078513 mv a0,a5 +204010dc: 6a1000ef jal ra,20401f7c <__umodsi3> +204010e0: 00050793 mv a5,a0 +204010e4: fec42583 lw a1,-20(s0) +204010e8: 00078513 mv a0,a5 +204010ec: 61d000ef jal ra,20401f08 <__mulsi3> +204010f0: 00050793 mv a5,a0 +204010f4: fd842583 lw a1,-40(s0) +204010f8: 00078513 mv a0,a5 +204010fc: 639000ef jal ra,20401f34 <__udivsi3> +20401100: 00050793 mv a5,a0 +20401104: 00f487b3 add a5,s1,a5 +20401108: 00078513 mv a0,a5 +2040110c: 03c12083 lw ra,60(sp) +20401110: 03812403 lw s0,56(sp) +20401114: 03412483 lw s1,52(sp) +20401118: 04010113 addi sp,sp,64 +2040111c: 00008067 ret -204010f4 : -204010f4: ff010113 addi sp,sp,-16 -204010f8: 00112623 sw ra,12(sp) -204010fc: 00812423 sw s0,8(sp) -20401100: 01010413 addi s0,sp,16 -20401104: 800007b7 lui a5,0x80000 -20401108: 4307a783 lw a5,1072(a5) # 80000430 <_sp+0xffffc430> -2040110c: 02079063 bnez a5,2040112c -20401110: 00100513 li a0,1 -20401114: ee9ff0ef jal ra,20400ffc -20401118: 00a00513 li a0,10 -2040111c: ee1ff0ef jal ra,20400ffc -20401120: 00050713 mv a4,a0 -20401124: 800007b7 lui a5,0x80000 -20401128: 42e7a823 sw a4,1072(a5) # 80000430 <_sp+0xffffc430> -2040112c: 800007b7 lui a5,0x80000 -20401130: 4307a783 lw a5,1072(a5) # 80000430 <_sp+0xffffc430> -20401134: 00078513 mv a0,a5 -20401138: 00c12083 lw ra,12(sp) -2040113c: 00812403 lw s0,8(sp) -20401140: 01010113 addi sp,sp,16 -20401144: 00008067 ret +20401120 : +20401120: ff010113 addi sp,sp,-16 +20401124: 00112623 sw ra,12(sp) +20401128: 00812423 sw s0,8(sp) +2040112c: 01010413 addi s0,sp,16 +20401130: 800007b7 lui a5,0x80000 +20401134: 4307a783 lw a5,1072(a5) # 80000430 <_sp+0xffffc430> +20401138: 02079063 bnez a5,20401158 +2040113c: 00100513 li a0,1 +20401140: ee9ff0ef jal ra,20401028 +20401144: 00a00513 li a0,10 +20401148: ee1ff0ef jal ra,20401028 +2040114c: 00050713 mv a4,a0 +20401150: 800007b7 lui a5,0x80000 +20401154: 42e7a823 sw a4,1072(a5) # 80000430 <_sp+0xffffc430> +20401158: 800007b7 lui a5,0x80000 +2040115c: 4307a783 lw a5,1072(a5) # 80000430 <_sp+0xffffc430> +20401160: 00078513 mv a0,a5 +20401164: 00c12083 lw ra,12(sp) +20401168: 00812403 lw s0,8(sp) +2040116c: 01010113 addi sp,sp,16 +20401170: 00008067 ret -20401148 : -20401148: fe010113 addi sp,sp,-32 -2040114c: 00112e23 sw ra,28(sp) -20401150: 00812c23 sw s0,24(sp) -20401154: 02010413 addi s0,sp,32 -20401158: fea42623 sw a0,-20(s0) -2040115c: 100127b7 lui a5,0x10012 -20401160: 03c78793 addi a5,a5,60 # 1001203c <__stack_size+0x1001183c> -20401164: 0007a683 lw a3,0(a5) -20401168: 100127b7 lui a5,0x10012 -2040116c: 03c78793 addi a5,a5,60 # 1001203c <__stack_size+0x1001183c> -20401170: fffd0737 lui a4,0xfffd0 -20401174: fff70713 addi a4,a4,-1 # fffcffff <_sp+0x7ffcbfff> -20401178: 00e6f733 and a4,a3,a4 -2040117c: 00e7a023 sw a4,0(a5) -20401180: 100127b7 lui a5,0x10012 -20401184: 03878793 addi a5,a5,56 # 10012038 <__stack_size+0x10011838> -20401188: 0007a683 lw a3,0(a5) -2040118c: 100127b7 lui a5,0x10012 -20401190: 03878793 addi a5,a5,56 # 10012038 <__stack_size+0x10011838> -20401194: 00030737 lui a4,0x30 -20401198: 00e6e733 or a4,a3,a4 -2040119c: 00e7a023 sw a4,0(a5) -204011a0: f55ff0ef jal ra,204010f4 -204011a4: 00050793 mv a5,a0 -204011a8: fec42583 lw a1,-20(s0) -204011ac: 00078513 mv a0,a5 -204011b0: 559000ef jal ra,20401f08 <__udivsi3> -204011b4: 00050793 mv a5,a0 -204011b8: 00078713 mv a4,a5 -204011bc: 100137b7 lui a5,0x10013 -204011c0: 01878793 addi a5,a5,24 # 10013018 <__stack_size+0x10012818> -204011c4: fff70713 addi a4,a4,-1 # 2ffff <__stack_size+0x2f7ff> +20401174 : +20401174: fe010113 addi sp,sp,-32 +20401178: 00112e23 sw ra,28(sp) +2040117c: 00812c23 sw s0,24(sp) +20401180: 02010413 addi s0,sp,32 +20401184: fea42623 sw a0,-20(s0) +20401188: 100127b7 lui a5,0x10012 +2040118c: 03c78793 addi a5,a5,60 # 1001203c <__stack_size+0x1001183c> +20401190: 0007a683 lw a3,0(a5) +20401194: 100127b7 lui a5,0x10012 +20401198: 03c78793 addi a5,a5,60 # 1001203c <__stack_size+0x1001183c> +2040119c: fffd0737 lui a4,0xfffd0 +204011a0: fff70713 addi a4,a4,-1 # fffcffff <_sp+0x7ffcbfff> +204011a4: 00e6f733 and a4,a3,a4 +204011a8: 00e7a023 sw a4,0(a5) +204011ac: 100127b7 lui a5,0x10012 +204011b0: 03878793 addi a5,a5,56 # 10012038 <__stack_size+0x10011838> +204011b4: 0007a683 lw a3,0(a5) +204011b8: 100127b7 lui a5,0x10012 +204011bc: 03878793 addi a5,a5,56 # 10012038 <__stack_size+0x10011838> +204011c0: 00030737 lui a4,0x30 +204011c4: 00e6e733 or a4,a3,a4 204011c8: 00e7a023 sw a4,0(a5) -204011cc: 100137b7 lui a5,0x10013 -204011d0: 00878793 addi a5,a5,8 # 10013008 <__stack_size+0x10012808> -204011d4: 0007a703 lw a4,0(a5) -204011d8: 100137b7 lui a5,0x10013 -204011dc: 00878793 addi a5,a5,8 # 10013008 <__stack_size+0x10012808> -204011e0: 00176713 ori a4,a4,1 -204011e4: 00e7a023 sw a4,0(a5) -204011e8: 00000013 nop -204011ec: 01c12083 lw ra,28(sp) -204011f0: 01812403 lw s0,24(sp) -204011f4: 02010113 addi sp,sp,32 -204011f8: 00008067 ret +204011cc: f55ff0ef jal ra,20401120 +204011d0: 00050793 mv a5,a0 +204011d4: fec42583 lw a1,-20(s0) +204011d8: 00078513 mv a0,a5 +204011dc: 559000ef jal ra,20401f34 <__udivsi3> +204011e0: 00050793 mv a5,a0 +204011e4: 00078713 mv a4,a5 +204011e8: 100137b7 lui a5,0x10013 +204011ec: 01878793 addi a5,a5,24 # 10013018 <__stack_size+0x10012818> +204011f0: fff70713 addi a4,a4,-1 # 2ffff <__stack_size+0x2f7ff> +204011f4: 00e7a023 sw a4,0(a5) +204011f8: 100137b7 lui a5,0x10013 +204011fc: 00878793 addi a5,a5,8 # 10013008 <__stack_size+0x10012808> +20401200: 0007a703 lw a4,0(a5) +20401204: 100137b7 lui a5,0x10013 +20401208: 00878793 addi a5,a5,8 # 10013008 <__stack_size+0x10012808> +2040120c: 00176713 ori a4,a4,1 +20401210: 00e7a023 sw a4,0(a5) +20401214: 00000013 nop +20401218: 01c12083 lw ra,28(sp) +2040121c: 01812403 lw s0,24(sp) +20401220: 02010113 addi sp,sp,32 +20401224: 00008067 ret -204011fc : -204011fc: fe010113 addi sp,sp,-32 -20401200: 00112e23 sw ra,28(sp) -20401204: 00812c23 sw s0,24(sp) -20401208: 02010413 addi s0,sp,32 -2040120c: fea42623 sw a0,-20(s0) -20401210: feb42423 sw a1,-24(s0) -20401214: 00500613 li a2,5 -20401218: 204027b7 lui a5,0x20402 -2040121c: 22478593 addi a1,a5,548 # 20402224 <__clzsi2+0x270> -20401220: 00100513 li a0,1 -20401224: 0e4000ef jal ra,20401308 <__wrap_write> -20401228: fec42783 lw a5,-20(s0) -2040122c: 00178793 addi a5,a5,1 -20401230: 00078513 mv a0,a5 -20401234: 1f0000ef jal ra,20401424 <__wrap__exit> +20401228 : +20401228: fe010113 addi sp,sp,-32 +2040122c: 00112e23 sw ra,28(sp) +20401230: 00812c23 sw s0,24(sp) +20401234: 02010413 addi s0,sp,32 +20401238: fea42623 sw a0,-20(s0) +2040123c: feb42423 sw a1,-24(s0) +20401240: 00500613 li a2,5 +20401244: 204027b7 lui a5,0x20402 +20401248: 29478593 addi a1,a5,660 # 20402294 <__clzsi2+0x2b4> +2040124c: 00100513 li a0,1 +20401250: 0e4000ef jal ra,20401334 <__wrap_write> +20401254: fec42783 lw a5,-20(s0) +20401258: 00178793 addi a5,a5,1 +2040125c: 00078513 mv a0,a5 +20401260: 1f0000ef jal ra,20401450 <__wrap__exit> -20401238 <_init>: -20401238: fe010113 addi sp,sp,-32 -2040123c: 00112e23 sw ra,28(sp) -20401240: 00812c23 sw s0,24(sp) -20401244: 02010413 addi s0,sp,32 -20401248: d61ff0ef jal ra,20400fa8 -2040124c: 00100713 li a4,1 -20401250: 01f00693 li a3,31 -20401254: 00100613 li a2,1 -20401258: 00000593 li a1,0 -2040125c: 00000513 li a0,0 -20401260: b85ff0ef jal ra,20400de4 -20401264: 0001c7b7 lui a5,0x1c -20401268: 20078513 addi a0,a5,512 # 1c200 <__stack_size+0x1ba00> -2040126c: eddff0ef jal ra,20401148 -20401270: e85ff0ef jal ra,204010f4 -20401274: 00050793 mv a5,a0 -20401278: 00078593 mv a1,a5 -2040127c: 204027b7 lui a5,0x20402 -20401280: 22c78513 addi a0,a5,556 # 2040222c <__clzsi2+0x278> -20401284: fa8ff0ef jal ra,20400a2c <__wrap_printf> -20401288: 204007b7 lui a5,0x20400 -2040128c: 09c78793 addi a5,a5,156 # 2040009c -20401290: 30579073 csrw mtvec,a5 -20401294: 301027f3 csrr a5,misa -20401298: fef42623 sw a5,-20(s0) -2040129c: fec42783 lw a5,-20(s0) -204012a0: 0207f793 andi a5,a5,32 -204012a4: 00078863 beqz a5,204012b4 <_init+0x7c> -204012a8: 000067b7 lui a5,0x6 -204012ac: 30079073 csrw mstatus,a5 -204012b0: 00305073 csrwi fcsr,0 -204012b4: 00000013 nop -204012b8: 01c12083 lw ra,28(sp) -204012bc: 01812403 lw s0,24(sp) -204012c0: 02010113 addi sp,sp,32 -204012c4: 00008067 ret +20401264 <_init>: +20401264: fe010113 addi sp,sp,-32 +20401268: 00112e23 sw ra,28(sp) +2040126c: 00812c23 sw s0,24(sp) +20401270: 02010413 addi s0,sp,32 +20401274: d61ff0ef jal ra,20400fd4 +20401278: 00100713 li a4,1 +2040127c: 01f00693 li a3,31 +20401280: 00100613 li a2,1 +20401284: 00000593 li a1,0 +20401288: 00000513 li a0,0 +2040128c: b85ff0ef jal ra,20400e10 +20401290: 0001c7b7 lui a5,0x1c +20401294: 20078513 addi a0,a5,512 # 1c200 <__stack_size+0x1ba00> +20401298: eddff0ef jal ra,20401174 +2040129c: e85ff0ef jal ra,20401120 +204012a0: 00050793 mv a5,a0 +204012a4: 00078593 mv a1,a5 +204012a8: 204027b7 lui a5,0x20402 +204012ac: 29c78513 addi a0,a5,668 # 2040229c <__clzsi2+0x2bc> +204012b0: f7cff0ef jal ra,20400a2c <__wrap_printf> +204012b4: 204007b7 lui a5,0x20400 +204012b8: 09c78793 addi a5,a5,156 # 2040009c +204012bc: 30579073 csrw mtvec,a5 +204012c0: 301027f3 csrr a5,misa +204012c4: fef42623 sw a5,-20(s0) +204012c8: fec42783 lw a5,-20(s0) +204012cc: 0207f793 andi a5,a5,32 +204012d0: 00078863 beqz a5,204012e0 <_init+0x7c> +204012d4: 000067b7 lui a5,0x6 +204012d8: 30079073 csrw mstatus,a5 +204012dc: 00305073 csrwi fcsr,0 +204012e0: 00000013 nop +204012e4: 01c12083 lw ra,28(sp) +204012e8: 01812403 lw s0,24(sp) +204012ec: 02010113 addi sp,sp,32 +204012f0: 00008067 ret -204012c8 <_fini>: -204012c8: ff010113 addi sp,sp,-16 -204012cc: 00812623 sw s0,12(sp) -204012d0: 01010413 addi s0,sp,16 -204012d4: 00000013 nop -204012d8: 00c12403 lw s0,12(sp) -204012dc: 01010113 addi sp,sp,16 -204012e0: 00008067 ret +204012f4 <_fini>: +204012f4: ff010113 addi sp,sp,-16 +204012f8: 00812623 sw s0,12(sp) +204012fc: 01010413 addi s0,sp,16 +20401300: 00000013 nop +20401304: 00c12403 lw s0,12(sp) +20401308: 01010113 addi sp,sp,16 +2040130c: 00008067 ret -204012e4 <_stub>: -204012e4: fe010113 addi sp,sp,-32 -204012e8: 00812e23 sw s0,28(sp) -204012ec: 02010413 addi s0,sp,32 -204012f0: fea42623 sw a0,-20(s0) -204012f4: fff00793 li a5,-1 -204012f8: 00078513 mv a0,a5 -204012fc: 01c12403 lw s0,28(sp) -20401300: 02010113 addi sp,sp,32 -20401304: 00008067 ret +20401310 <_stub>: +20401310: fe010113 addi sp,sp,-32 +20401314: 00812e23 sw s0,28(sp) +20401318: 02010413 addi s0,sp,32 +2040131c: fea42623 sw a0,-20(s0) +20401320: fff00793 li a5,-1 +20401324: 00078513 mv a0,a5 +20401328: 01c12403 lw s0,28(sp) +2040132c: 02010113 addi sp,sp,32 +20401330: 00008067 ret -20401308 <__wrap_write>: -20401308: fd010113 addi sp,sp,-48 -2040130c: 02112623 sw ra,44(sp) -20401310: 02812423 sw s0,40(sp) -20401314: 03010413 addi s0,sp,48 -20401318: fca42e23 sw a0,-36(s0) -2040131c: fcb42c23 sw a1,-40(s0) -20401320: fcc42a23 sw a2,-44(s0) -20401324: fd842783 lw a5,-40(s0) -20401328: fef42423 sw a5,-24(s0) -2040132c: fdc42503 lw a0,-36(s0) -20401330: 0b0000ef jal ra,204013e0 <__wrap_isatty> -20401334: 00050793 mv a5,a0 -20401338: 08078463 beqz a5,204013c0 <__wrap_write+0xb8> -2040133c: fe042623 sw zero,-20(s0) -20401340: 06c0006f j 204013ac <__wrap_write+0xa4> -20401344: 00000013 nop -20401348: 100137b7 lui a5,0x10013 -2040134c: 0007a783 lw a5,0(a5) # 10013000 <__stack_size+0x10012800> -20401350: fe07cce3 bltz a5,20401348 <__wrap_write+0x40> -20401354: fe842703 lw a4,-24(s0) -20401358: fec42783 lw a5,-20(s0) -2040135c: 00f707b3 add a5,a4,a5 -20401360: 0007c703 lbu a4,0(a5) -20401364: 100137b7 lui a5,0x10013 -20401368: 00e7a023 sw a4,0(a5) # 10013000 <__stack_size+0x10012800> -2040136c: fe842703 lw a4,-24(s0) -20401370: fec42783 lw a5,-20(s0) -20401374: 00f707b3 add a5,a4,a5 -20401378: 0007c703 lbu a4,0(a5) -2040137c: 00a00793 li a5,10 -20401380: 02f71063 bne a4,a5,204013a0 <__wrap_write+0x98> -20401384: 00000013 nop -20401388: 100137b7 lui a5,0x10013 -2040138c: 0007a783 lw a5,0(a5) # 10013000 <__stack_size+0x10012800> -20401390: fe07cce3 bltz a5,20401388 <__wrap_write+0x80> -20401394: 100137b7 lui a5,0x10013 -20401398: 00d00713 li a4,13 -2040139c: 00e7a023 sw a4,0(a5) # 10013000 <__stack_size+0x10012800> -204013a0: fec42783 lw a5,-20(s0) -204013a4: 00178793 addi a5,a5,1 -204013a8: fef42623 sw a5,-20(s0) -204013ac: fec42703 lw a4,-20(s0) -204013b0: fd442783 lw a5,-44(s0) -204013b4: f8f768e3 bltu a4,a5,20401344 <__wrap_write+0x3c> -204013b8: fd442783 lw a5,-44(s0) -204013bc: 0100006f j 204013cc <__wrap_write+0xc4> -204013c0: 00900513 li a0,9 -204013c4: f21ff0ef jal ra,204012e4 <_stub> -204013c8: 00050793 mv a5,a0 -204013cc: 00078513 mv a0,a5 -204013d0: 02c12083 lw ra,44(sp) -204013d4: 02812403 lw s0,40(sp) -204013d8: 03010113 addi sp,sp,48 -204013dc: 00008067 ret +20401334 <__wrap_write>: +20401334: fd010113 addi sp,sp,-48 +20401338: 02112623 sw ra,44(sp) +2040133c: 02812423 sw s0,40(sp) +20401340: 03010413 addi s0,sp,48 +20401344: fca42e23 sw a0,-36(s0) +20401348: fcb42c23 sw a1,-40(s0) +2040134c: fcc42a23 sw a2,-44(s0) +20401350: fd842783 lw a5,-40(s0) +20401354: fef42423 sw a5,-24(s0) +20401358: fdc42503 lw a0,-36(s0) +2040135c: 0b0000ef jal ra,2040140c <__wrap_isatty> +20401360: 00050793 mv a5,a0 +20401364: 08078463 beqz a5,204013ec <__wrap_write+0xb8> +20401368: fe042623 sw zero,-20(s0) +2040136c: 06c0006f j 204013d8 <__wrap_write+0xa4> +20401370: 00000013 nop +20401374: 100137b7 lui a5,0x10013 +20401378: 0007a783 lw a5,0(a5) # 10013000 <__stack_size+0x10012800> +2040137c: fe07cce3 bltz a5,20401374 <__wrap_write+0x40> +20401380: fe842703 lw a4,-24(s0) +20401384: fec42783 lw a5,-20(s0) +20401388: 00f707b3 add a5,a4,a5 +2040138c: 0007c703 lbu a4,0(a5) +20401390: 100137b7 lui a5,0x10013 +20401394: 00e7a023 sw a4,0(a5) # 10013000 <__stack_size+0x10012800> +20401398: fe842703 lw a4,-24(s0) +2040139c: fec42783 lw a5,-20(s0) +204013a0: 00f707b3 add a5,a4,a5 +204013a4: 0007c703 lbu a4,0(a5) +204013a8: 00a00793 li a5,10 +204013ac: 02f71063 bne a4,a5,204013cc <__wrap_write+0x98> +204013b0: 00000013 nop +204013b4: 100137b7 lui a5,0x10013 +204013b8: 0007a783 lw a5,0(a5) # 10013000 <__stack_size+0x10012800> +204013bc: fe07cce3 bltz a5,204013b4 <__wrap_write+0x80> +204013c0: 100137b7 lui a5,0x10013 +204013c4: 00d00713 li a4,13 +204013c8: 00e7a023 sw a4,0(a5) # 10013000 <__stack_size+0x10012800> +204013cc: fec42783 lw a5,-20(s0) +204013d0: 00178793 addi a5,a5,1 +204013d4: fef42623 sw a5,-20(s0) +204013d8: fec42703 lw a4,-20(s0) +204013dc: fd442783 lw a5,-44(s0) +204013e0: f8f768e3 bltu a4,a5,20401370 <__wrap_write+0x3c> +204013e4: fd442783 lw a5,-44(s0) +204013e8: 0100006f j 204013f8 <__wrap_write+0xc4> +204013ec: 00900513 li a0,9 +204013f0: f21ff0ef jal ra,20401310 <_stub> +204013f4: 00050793 mv a5,a0 +204013f8: 00078513 mv a0,a5 +204013fc: 02c12083 lw ra,44(sp) +20401400: 02812403 lw s0,40(sp) +20401404: 03010113 addi sp,sp,48 +20401408: 00008067 ret -204013e0 <__wrap_isatty>: -204013e0: fe010113 addi sp,sp,-32 -204013e4: 00812e23 sw s0,28(sp) -204013e8: 02010413 addi s0,sp,32 -204013ec: fea42623 sw a0,-20(s0) -204013f0: fec42703 lw a4,-20(s0) -204013f4: 00100793 li a5,1 -204013f8: 00f70863 beq a4,a5,20401408 <__wrap_isatty+0x28> -204013fc: fec42703 lw a4,-20(s0) -20401400: 00200793 li a5,2 -20401404: 00f71663 bne a4,a5,20401410 <__wrap_isatty+0x30> -20401408: 00100793 li a5,1 -2040140c: 0080006f j 20401414 <__wrap_isatty+0x34> -20401410: 00000793 li a5,0 -20401414: 00078513 mv a0,a5 -20401418: 01c12403 lw s0,28(sp) -2040141c: 02010113 addi sp,sp,32 -20401420: 00008067 ret +2040140c <__wrap_isatty>: +2040140c: fe010113 addi sp,sp,-32 +20401410: 00812e23 sw s0,28(sp) +20401414: 02010413 addi s0,sp,32 +20401418: fea42623 sw a0,-20(s0) +2040141c: fec42703 lw a4,-20(s0) +20401420: 00100793 li a5,1 +20401424: 00f70863 beq a4,a5,20401434 <__wrap_isatty+0x28> +20401428: fec42703 lw a4,-20(s0) +2040142c: 00200793 li a5,2 +20401430: 00f71663 bne a4,a5,2040143c <__wrap_isatty+0x30> +20401434: 00100793 li a5,1 +20401438: 0080006f j 20401440 <__wrap_isatty+0x34> +2040143c: 00000793 li a5,0 +20401440: 00078513 mv a0,a5 +20401444: 01c12403 lw s0,28(sp) +20401448: 02010113 addi sp,sp,32 +2040144c: 00008067 ret -20401424 <__wrap__exit>: -20401424: fc010113 addi sp,sp,-64 -20401428: 02112e23 sw ra,60(sp) -2040142c: 02812c23 sw s0,56(sp) -20401430: 04010413 addi s0,sp,64 -20401434: fca42623 sw a0,-52(s0) -20401438: 204027b7 lui a5,0x20402 -2040143c: 24478793 addi a5,a5,580 # 20402244 <__clzsi2+0x290> -20401440: 0007a883 lw a7,0(a5) -20401444: 0047a803 lw a6,4(a5) -20401448: 0087a503 lw a0,8(a5) -2040144c: 00c7a583 lw a1,12(a5) -20401450: 0107a603 lw a2,16(a5) -20401454: 0147a683 lw a3,20(a5) -20401458: 0187a703 lw a4,24(a5) -2040145c: fd142823 sw a7,-48(s0) -20401460: fd042a23 sw a6,-44(s0) -20401464: fca42c23 sw a0,-40(s0) -20401468: fcb42e23 sw a1,-36(s0) -2040146c: fec42023 sw a2,-32(s0) -20401470: fed42223 sw a3,-28(s0) -20401474: fee42423 sw a4,-24(s0) -20401478: 01c7d783 lhu a5,28(a5) -2040147c: fef41623 sh a5,-20(s0) -20401480: fd040793 addi a5,s0,-48 -20401484: 01d00613 li a2,29 -20401488: 00078593 mv a1,a5 -2040148c: 00200513 li a0,2 -20401490: e79ff0ef jal ra,20401308 <__wrap_write> -20401494: 00100613 li a2,1 -20401498: 204027b7 lui a5,0x20402 -2040149c: 24078593 addi a1,a5,576 # 20402240 <__clzsi2+0x28c> -204014a0: 00200513 li a0,2 -204014a4: e65ff0ef jal ra,20401308 <__wrap_write> -204014a8: 0000006f j 204014a8 <__wrap__exit+0x84> +20401450 <__wrap__exit>: +20401450: fc010113 addi sp,sp,-64 +20401454: 02112e23 sw ra,60(sp) +20401458: 02812c23 sw s0,56(sp) +2040145c: 04010413 addi s0,sp,64 +20401460: fca42623 sw a0,-52(s0) +20401464: 204027b7 lui a5,0x20402 +20401468: 2b478793 addi a5,a5,692 # 204022b4 <__clzsi2+0x2d4> +2040146c: 0007a883 lw a7,0(a5) +20401470: 0047a803 lw a6,4(a5) +20401474: 0087a503 lw a0,8(a5) +20401478: 00c7a583 lw a1,12(a5) +2040147c: 0107a603 lw a2,16(a5) +20401480: 0147a683 lw a3,20(a5) +20401484: 0187a703 lw a4,24(a5) +20401488: fd142823 sw a7,-48(s0) +2040148c: fd042a23 sw a6,-44(s0) +20401490: fca42c23 sw a0,-40(s0) +20401494: fcb42e23 sw a1,-36(s0) +20401498: fec42023 sw a2,-32(s0) +2040149c: fed42223 sw a3,-28(s0) +204014a0: fee42423 sw a4,-24(s0) +204014a4: 01c7d783 lhu a5,28(a5) +204014a8: fef41623 sh a5,-20(s0) +204014ac: fd040793 addi a5,s0,-48 +204014b0: 01d00613 li a2,29 +204014b4: 00078593 mv a1,a5 +204014b8: 00200513 li a0,2 +204014bc: e79ff0ef jal ra,20401334 <__wrap_write> +204014c0: 00100613 li a2,1 +204014c4: 204027b7 lui a5,0x20402 +204014c8: 2b078593 addi a1,a5,688 # 204022b0 <__clzsi2+0x2d0> +204014cc: 00200513 li a0,2 +204014d0: e65ff0ef jal ra,20401334 <__wrap_write> +204014d4: 0000006f j 204014d4 <__wrap__exit+0x84> -204014ac : -204014ac: 00050593 mv a1,a0 -204014b0: 00000693 li a3,0 -204014b4: 00000613 li a2,0 -204014b8: 00000513 li a0,0 -204014bc: 1740006f j 20401630 <__register_exitproc> +204014d8 : +204014d8: 00050593 mv a1,a0 +204014dc: 00000693 li a3,0 +204014e0: 00000613 li a2,0 +204014e4: 00000513 li a0,0 +204014e8: 1740006f j 2040165c <__register_exitproc> -204014c0 : -204014c0: ff010113 addi sp,sp,-16 -204014c4: 00000593 li a1,0 -204014c8: 00812423 sw s0,8(sp) -204014cc: 00112623 sw ra,12(sp) -204014d0: 00050413 mv s0,a0 -204014d4: 1fc000ef jal ra,204016d0 <__call_exitprocs> -204014d8: 5fbff797 auipc a5,0x5fbff -204014dc: f5078793 addi a5,a5,-176 # 80000428 <_global_impure_ptr> -204014e0: 0007a503 lw a0,0(a5) -204014e4: 03c52783 lw a5,60(a0) -204014e8: 00078463 beqz a5,204014f0 -204014ec: 000780e7 jalr a5 -204014f0: 00040513 mv a0,s0 -204014f4: f31ff0ef jal ra,20401424 <__wrap__exit> +204014ec : +204014ec: ff010113 addi sp,sp,-16 +204014f0: 00000593 li a1,0 +204014f4: 00812423 sw s0,8(sp) +204014f8: 00112623 sw ra,12(sp) +204014fc: 00050413 mv s0,a0 +20401500: 1fc000ef jal ra,204016fc <__call_exitprocs> +20401504: 5fbff797 auipc a5,0x5fbff +20401508: f2478793 addi a5,a5,-220 # 80000428 <_global_impure_ptr> +2040150c: 0007a503 lw a0,0(a5) +20401510: 03c52783 lw a5,60(a0) +20401514: 00078463 beqz a5,2040151c +20401518: 000780e7 jalr a5 +2040151c: 00040513 mv a0,s0 +20401520: f31ff0ef jal ra,20401450 <__wrap__exit> -204014f8 <__libc_fini_array>: -204014f8: ff010113 addi sp,sp,-16 -204014fc: 00812423 sw s0,8(sp) -20401500: 00001797 auipc a5,0x1 -20401504: ea478793 addi a5,a5,-348 # 204023a4 <__fini_array_end> -20401508: 00001417 auipc s0,0x1 -2040150c: e9c40413 addi s0,s0,-356 # 204023a4 <__fini_array_end> -20401510: 40f40433 sub s0,s0,a5 -20401514: 00112623 sw ra,12(sp) -20401518: 00912223 sw s1,4(sp) -2040151c: 40245413 srai s0,s0,0x2 -20401520: 02040263 beqz s0,20401544 <__libc_fini_array+0x4c> -20401524: 00241493 slli s1,s0,0x2 -20401528: ffc48493 addi s1,s1,-4 -2040152c: 00f484b3 add s1,s1,a5 -20401530: 0004a783 lw a5,0(s1) -20401534: fff40413 addi s0,s0,-1 -20401538: ffc48493 addi s1,s1,-4 -2040153c: 000780e7 jalr a5 -20401540: fe0418e3 bnez s0,20401530 <__libc_fini_array+0x38> -20401544: 00c12083 lw ra,12(sp) -20401548: 00812403 lw s0,8(sp) -2040154c: 00412483 lw s1,4(sp) -20401550: 01010113 addi sp,sp,16 -20401554: 00008067 ret +20401524 <__libc_fini_array>: +20401524: ff010113 addi sp,sp,-16 +20401528: 00812423 sw s0,8(sp) +2040152c: 00001797 auipc a5,0x1 +20401530: ee878793 addi a5,a5,-280 # 20402414 <__fini_array_end> +20401534: 00001417 auipc s0,0x1 +20401538: ee040413 addi s0,s0,-288 # 20402414 <__fini_array_end> +2040153c: 40f40433 sub s0,s0,a5 +20401540: 00112623 sw ra,12(sp) +20401544: 00912223 sw s1,4(sp) +20401548: 40245413 srai s0,s0,0x2 +2040154c: 02040263 beqz s0,20401570 <__libc_fini_array+0x4c> +20401550: 00241493 slli s1,s0,0x2 +20401554: ffc48493 addi s1,s1,-4 +20401558: 00f484b3 add s1,s1,a5 +2040155c: 0004a783 lw a5,0(s1) +20401560: fff40413 addi s0,s0,-1 +20401564: ffc48493 addi s1,s1,-4 +20401568: 000780e7 jalr a5 +2040156c: fe0418e3 bnez s0,2040155c <__libc_fini_array+0x38> +20401570: 00c12083 lw ra,12(sp) +20401574: 00812403 lw s0,8(sp) +20401578: 00412483 lw s1,4(sp) +2040157c: 01010113 addi sp,sp,16 +20401580: 00008067 ret -20401558 <__libc_init_array>: -20401558: ff010113 addi sp,sp,-16 -2040155c: 00812423 sw s0,8(sp) -20401560: 01212023 sw s2,0(sp) -20401564: 00001417 auipc s0,0x1 -20401568: e3c40413 addi s0,s0,-452 # 204023a0 <__init_array_start> -2040156c: 00001917 auipc s2,0x1 -20401570: e3490913 addi s2,s2,-460 # 204023a0 <__init_array_start> -20401574: 40890933 sub s2,s2,s0 -20401578: 00112623 sw ra,12(sp) -2040157c: 00912223 sw s1,4(sp) -20401580: 40295913 srai s2,s2,0x2 -20401584: 00090e63 beqz s2,204015a0 <__libc_init_array+0x48> -20401588: 00000493 li s1,0 -2040158c: 00042783 lw a5,0(s0) -20401590: 00148493 addi s1,s1,1 -20401594: 00440413 addi s0,s0,4 -20401598: 000780e7 jalr a5 -2040159c: fe9918e3 bne s2,s1,2040158c <__libc_init_array+0x34> -204015a0: 00001417 auipc s0,0x1 -204015a4: e0040413 addi s0,s0,-512 # 204023a0 <__init_array_start> -204015a8: 00001917 auipc s2,0x1 -204015ac: dfc90913 addi s2,s2,-516 # 204023a4 <__fini_array_end> -204015b0: 40890933 sub s2,s2,s0 -204015b4: 40295913 srai s2,s2,0x2 -204015b8: 00090e63 beqz s2,204015d4 <__libc_init_array+0x7c> -204015bc: 00000493 li s1,0 -204015c0: 00042783 lw a5,0(s0) -204015c4: 00148493 addi s1,s1,1 -204015c8: 00440413 addi s0,s0,4 -204015cc: 000780e7 jalr a5 -204015d0: fe9918e3 bne s2,s1,204015c0 <__libc_init_array+0x68> -204015d4: 00c12083 lw ra,12(sp) -204015d8: 00812403 lw s0,8(sp) -204015dc: 00412483 lw s1,4(sp) -204015e0: 00012903 lw s2,0(sp) -204015e4: 01010113 addi sp,sp,16 -204015e8: 00008067 ret +20401584 <__libc_init_array>: +20401584: ff010113 addi sp,sp,-16 +20401588: 00812423 sw s0,8(sp) +2040158c: 01212023 sw s2,0(sp) +20401590: 00001417 auipc s0,0x1 +20401594: e8040413 addi s0,s0,-384 # 20402410 <__init_array_start> +20401598: 00001917 auipc s2,0x1 +2040159c: e7890913 addi s2,s2,-392 # 20402410 <__init_array_start> +204015a0: 40890933 sub s2,s2,s0 +204015a4: 00112623 sw ra,12(sp) +204015a8: 00912223 sw s1,4(sp) +204015ac: 40295913 srai s2,s2,0x2 +204015b0: 00090e63 beqz s2,204015cc <__libc_init_array+0x48> +204015b4: 00000493 li s1,0 +204015b8: 00042783 lw a5,0(s0) +204015bc: 00148493 addi s1,s1,1 +204015c0: 00440413 addi s0,s0,4 +204015c4: 000780e7 jalr a5 +204015c8: fe9918e3 bne s2,s1,204015b8 <__libc_init_array+0x34> +204015cc: 00001417 auipc s0,0x1 +204015d0: e4440413 addi s0,s0,-444 # 20402410 <__init_array_start> +204015d4: 00001917 auipc s2,0x1 +204015d8: e4090913 addi s2,s2,-448 # 20402414 <__fini_array_end> +204015dc: 40890933 sub s2,s2,s0 +204015e0: 40295913 srai s2,s2,0x2 +204015e4: 00090e63 beqz s2,20401600 <__libc_init_array+0x7c> +204015e8: 00000493 li s1,0 +204015ec: 00042783 lw a5,0(s0) +204015f0: 00148493 addi s1,s1,1 +204015f4: 00440413 addi s0,s0,4 +204015f8: 000780e7 jalr a5 +204015fc: fe9918e3 bne s2,s1,204015ec <__libc_init_array+0x68> +20401600: 00c12083 lw ra,12(sp) +20401604: 00812403 lw s0,8(sp) +20401608: 00412483 lw s1,4(sp) +2040160c: 00012903 lw s2,0(sp) +20401610: 01010113 addi sp,sp,16 +20401614: 00008067 ret -204015ec : -204015ec: 02058463 beqz a1,20401614 -204015f0: 00054783 lbu a5,0(a0) -204015f4: 02078a63 beqz a5,20401628 -204015f8: 00b506b3 add a3,a0,a1 -204015fc: 00050793 mv a5,a0 -20401600: 00c0006f j 2040160c -20401604: 0007c703 lbu a4,0(a5) -20401608: 00070a63 beqz a4,2040161c -2040160c: 00178793 addi a5,a5,1 -20401610: fed79ae3 bne a5,a3,20401604 -20401614: 00058513 mv a0,a1 -20401618: 00008067 ret -2040161c: 40a785b3 sub a1,a5,a0 -20401620: 00058513 mv a0,a1 -20401624: 00008067 ret -20401628: 00000593 li a1,0 -2040162c: fe9ff06f j 20401614 +20401618 : +20401618: 02058463 beqz a1,20401640 +2040161c: 00054783 lbu a5,0(a0) +20401620: 02078a63 beqz a5,20401654 +20401624: 00b506b3 add a3,a0,a1 +20401628: 00050793 mv a5,a0 +2040162c: 00c0006f j 20401638 +20401630: 0007c703 lbu a4,0(a5) +20401634: 00070a63 beqz a4,20401648 +20401638: 00178793 addi a5,a5,1 +2040163c: fed79ae3 bne a5,a3,20401630 +20401640: 00058513 mv a0,a1 +20401644: 00008067 ret +20401648: 40a785b3 sub a1,a5,a0 +2040164c: 00058513 mv a0,a1 +20401650: 00008067 ret +20401654: 00000593 li a1,0 +20401658: fe9ff06f j 20401640 -20401630 <__register_exitproc>: -20401630: 5fbff797 auipc a5,0x5fbff -20401634: df878793 addi a5,a5,-520 # 80000428 <_global_impure_ptr> -20401638: 0007a703 lw a4,0(a5) -2040163c: 14872783 lw a5,328(a4) -20401640: 04078c63 beqz a5,20401698 <__register_exitproc+0x68> -20401644: 0047a703 lw a4,4(a5) -20401648: 01f00813 li a6,31 -2040164c: 06e84e63 blt a6,a4,204016c8 <__register_exitproc+0x98> -20401650: 00271813 slli a6,a4,0x2 -20401654: 02050663 beqz a0,20401680 <__register_exitproc+0x50> -20401658: 01078333 add t1,a5,a6 -2040165c: 08c32423 sw a2,136(t1) -20401660: 1887a883 lw a7,392(a5) -20401664: 00100613 li a2,1 -20401668: 00e61633 sll a2,a2,a4 -2040166c: 00c8e8b3 or a7,a7,a2 -20401670: 1917a423 sw a7,392(a5) -20401674: 10d32423 sw a3,264(t1) -20401678: 00200693 li a3,2 -2040167c: 02d50463 beq a0,a3,204016a4 <__register_exitproc+0x74> -20401680: 00170713 addi a4,a4,1 -20401684: 00e7a223 sw a4,4(a5) -20401688: 010787b3 add a5,a5,a6 -2040168c: 00b7a423 sw a1,8(a5) -20401690: 00000513 li a0,0 -20401694: 00008067 ret -20401698: 14c70793 addi a5,a4,332 -2040169c: 14f72423 sw a5,328(a4) -204016a0: fa5ff06f j 20401644 <__register_exitproc+0x14> -204016a4: 18c7a683 lw a3,396(a5) -204016a8: 00170713 addi a4,a4,1 -204016ac: 00e7a223 sw a4,4(a5) -204016b0: 00c6e633 or a2,a3,a2 -204016b4: 18c7a623 sw a2,396(a5) -204016b8: 010787b3 add a5,a5,a6 -204016bc: 00b7a423 sw a1,8(a5) -204016c0: 00000513 li a0,0 -204016c4: 00008067 ret -204016c8: fff00513 li a0,-1 -204016cc: 00008067 ret +2040165c <__register_exitproc>: +2040165c: 5fbff797 auipc a5,0x5fbff +20401660: dcc78793 addi a5,a5,-564 # 80000428 <_global_impure_ptr> +20401664: 0007a703 lw a4,0(a5) +20401668: 14872783 lw a5,328(a4) +2040166c: 04078c63 beqz a5,204016c4 <__register_exitproc+0x68> +20401670: 0047a703 lw a4,4(a5) +20401674: 01f00813 li a6,31 +20401678: 06e84e63 blt a6,a4,204016f4 <__register_exitproc+0x98> +2040167c: 00271813 slli a6,a4,0x2 +20401680: 02050663 beqz a0,204016ac <__register_exitproc+0x50> +20401684: 01078333 add t1,a5,a6 +20401688: 08c32423 sw a2,136(t1) +2040168c: 1887a883 lw a7,392(a5) +20401690: 00100613 li a2,1 +20401694: 00e61633 sll a2,a2,a4 +20401698: 00c8e8b3 or a7,a7,a2 +2040169c: 1917a423 sw a7,392(a5) +204016a0: 10d32423 sw a3,264(t1) +204016a4: 00200693 li a3,2 +204016a8: 02d50463 beq a0,a3,204016d0 <__register_exitproc+0x74> +204016ac: 00170713 addi a4,a4,1 +204016b0: 00e7a223 sw a4,4(a5) +204016b4: 010787b3 add a5,a5,a6 +204016b8: 00b7a423 sw a1,8(a5) +204016bc: 00000513 li a0,0 +204016c0: 00008067 ret +204016c4: 14c70793 addi a5,a4,332 +204016c8: 14f72423 sw a5,328(a4) +204016cc: fa5ff06f j 20401670 <__register_exitproc+0x14> +204016d0: 18c7a683 lw a3,396(a5) +204016d4: 00170713 addi a4,a4,1 +204016d8: 00e7a223 sw a4,4(a5) +204016dc: 00c6e633 or a2,a3,a2 +204016e0: 18c7a623 sw a2,396(a5) +204016e4: 010787b3 add a5,a5,a6 +204016e8: 00b7a423 sw a1,8(a5) +204016ec: 00000513 li a0,0 +204016f0: 00008067 ret +204016f4: fff00513 li a0,-1 +204016f8: 00008067 ret -204016d0 <__call_exitprocs>: -204016d0: fd010113 addi sp,sp,-48 -204016d4: 5fbff797 auipc a5,0x5fbff -204016d8: d5478793 addi a5,a5,-684 # 80000428 <_global_impure_ptr> -204016dc: 01812423 sw s8,8(sp) -204016e0: 0007ac03 lw s8,0(a5) -204016e4: 01312e23 sw s3,28(sp) -204016e8: 01412c23 sw s4,24(sp) -204016ec: 01512a23 sw s5,20(sp) -204016f0: 01612823 sw s6,16(sp) -204016f4: 02112623 sw ra,44(sp) -204016f8: 02812423 sw s0,40(sp) -204016fc: 02912223 sw s1,36(sp) -20401700: 03212023 sw s2,32(sp) -20401704: 01712623 sw s7,12(sp) -20401708: 00050a93 mv s5,a0 -2040170c: 00058b13 mv s6,a1 -20401710: 00100a13 li s4,1 -20401714: fff00993 li s3,-1 -20401718: 148c2903 lw s2,328(s8) -2040171c: 02090863 beqz s2,2040174c <__call_exitprocs+0x7c> -20401720: 00492483 lw s1,4(s2) -20401724: fff48413 addi s0,s1,-1 -20401728: 02044263 bltz s0,2040174c <__call_exitprocs+0x7c> -2040172c: 00249493 slli s1,s1,0x2 -20401730: 009904b3 add s1,s2,s1 -20401734: 040b0463 beqz s6,2040177c <__call_exitprocs+0xac> -20401738: 1044a783 lw a5,260(s1) -2040173c: 05678063 beq a5,s6,2040177c <__call_exitprocs+0xac> -20401740: fff40413 addi s0,s0,-1 -20401744: ffc48493 addi s1,s1,-4 -20401748: ff3416e3 bne s0,s3,20401734 <__call_exitprocs+0x64> -2040174c: 02c12083 lw ra,44(sp) -20401750: 02812403 lw s0,40(sp) -20401754: 02412483 lw s1,36(sp) -20401758: 02012903 lw s2,32(sp) -2040175c: 01c12983 lw s3,28(sp) -20401760: 01812a03 lw s4,24(sp) -20401764: 01412a83 lw s5,20(sp) -20401768: 01012b03 lw s6,16(sp) -2040176c: 00c12b83 lw s7,12(sp) -20401770: 00812c03 lw s8,8(sp) -20401774: 03010113 addi sp,sp,48 -20401778: 00008067 ret -2040177c: 00492783 lw a5,4(s2) -20401780: 0044a683 lw a3,4(s1) -20401784: fff78793 addi a5,a5,-1 -20401788: 04878a63 beq a5,s0,204017dc <__call_exitprocs+0x10c> -2040178c: 0004a223 sw zero,4(s1) -20401790: fa0688e3 beqz a3,20401740 <__call_exitprocs+0x70> -20401794: 18892783 lw a5,392(s2) -20401798: 008a1733 sll a4,s4,s0 -2040179c: 00492b83 lw s7,4(s2) -204017a0: 00f777b3 and a5,a4,a5 -204017a4: 00079e63 bnez a5,204017c0 <__call_exitprocs+0xf0> -204017a8: 000680e7 jalr a3 -204017ac: 00492783 lw a5,4(s2) -204017b0: f77794e3 bne a5,s7,20401718 <__call_exitprocs+0x48> -204017b4: 148c2783 lw a5,328(s8) -204017b8: f92784e3 beq a5,s2,20401740 <__call_exitprocs+0x70> -204017bc: f5dff06f j 20401718 <__call_exitprocs+0x48> -204017c0: 18c92783 lw a5,396(s2) -204017c4: 0844a583 lw a1,132(s1) -204017c8: 00f77733 and a4,a4,a5 -204017cc: 00071c63 bnez a4,204017e4 <__call_exitprocs+0x114> -204017d0: 000a8513 mv a0,s5 +204016fc <__call_exitprocs>: +204016fc: fd010113 addi sp,sp,-48 +20401700: 5fbff797 auipc a5,0x5fbff +20401704: d2878793 addi a5,a5,-728 # 80000428 <_global_impure_ptr> +20401708: 01812423 sw s8,8(sp) +2040170c: 0007ac03 lw s8,0(a5) +20401710: 01312e23 sw s3,28(sp) +20401714: 01412c23 sw s4,24(sp) +20401718: 01512a23 sw s5,20(sp) +2040171c: 01612823 sw s6,16(sp) +20401720: 02112623 sw ra,44(sp) +20401724: 02812423 sw s0,40(sp) +20401728: 02912223 sw s1,36(sp) +2040172c: 03212023 sw s2,32(sp) +20401730: 01712623 sw s7,12(sp) +20401734: 00050a93 mv s5,a0 +20401738: 00058b13 mv s6,a1 +2040173c: 00100a13 li s4,1 +20401740: fff00993 li s3,-1 +20401744: 148c2903 lw s2,328(s8) +20401748: 02090863 beqz s2,20401778 <__call_exitprocs+0x7c> +2040174c: 00492483 lw s1,4(s2) +20401750: fff48413 addi s0,s1,-1 +20401754: 02044263 bltz s0,20401778 <__call_exitprocs+0x7c> +20401758: 00249493 slli s1,s1,0x2 +2040175c: 009904b3 add s1,s2,s1 +20401760: 040b0463 beqz s6,204017a8 <__call_exitprocs+0xac> +20401764: 1044a783 lw a5,260(s1) +20401768: 05678063 beq a5,s6,204017a8 <__call_exitprocs+0xac> +2040176c: fff40413 addi s0,s0,-1 +20401770: ffc48493 addi s1,s1,-4 +20401774: ff3416e3 bne s0,s3,20401760 <__call_exitprocs+0x64> +20401778: 02c12083 lw ra,44(sp) +2040177c: 02812403 lw s0,40(sp) +20401780: 02412483 lw s1,36(sp) +20401784: 02012903 lw s2,32(sp) +20401788: 01c12983 lw s3,28(sp) +2040178c: 01812a03 lw s4,24(sp) +20401790: 01412a83 lw s5,20(sp) +20401794: 01012b03 lw s6,16(sp) +20401798: 00c12b83 lw s7,12(sp) +2040179c: 00812c03 lw s8,8(sp) +204017a0: 03010113 addi sp,sp,48 +204017a4: 00008067 ret +204017a8: 00492783 lw a5,4(s2) +204017ac: 0044a683 lw a3,4(s1) +204017b0: fff78793 addi a5,a5,-1 +204017b4: 04878a63 beq a5,s0,20401808 <__call_exitprocs+0x10c> +204017b8: 0004a223 sw zero,4(s1) +204017bc: fa0688e3 beqz a3,2040176c <__call_exitprocs+0x70> +204017c0: 18892783 lw a5,392(s2) +204017c4: 008a1733 sll a4,s4,s0 +204017c8: 00492b83 lw s7,4(s2) +204017cc: 00f777b3 and a5,a4,a5 +204017d0: 00079e63 bnez a5,204017ec <__call_exitprocs+0xf0> 204017d4: 000680e7 jalr a3 -204017d8: fd5ff06f j 204017ac <__call_exitprocs+0xdc> -204017dc: 00892223 sw s0,4(s2) -204017e0: fb1ff06f j 20401790 <__call_exitprocs+0xc0> -204017e4: 00058513 mv a0,a1 -204017e8: 000680e7 jalr a3 -204017ec: fc1ff06f j 204017ac <__call_exitprocs+0xdc> +204017d8: 00492783 lw a5,4(s2) +204017dc: f77794e3 bne a5,s7,20401744 <__call_exitprocs+0x48> +204017e0: 148c2783 lw a5,328(s8) +204017e4: f92784e3 beq a5,s2,2040176c <__call_exitprocs+0x70> +204017e8: f5dff06f j 20401744 <__call_exitprocs+0x48> +204017ec: 18c92783 lw a5,396(s2) +204017f0: 0844a583 lw a1,132(s1) +204017f4: 00f77733 and a4,a4,a5 +204017f8: 00071c63 bnez a4,20401810 <__call_exitprocs+0x114> +204017fc: 000a8513 mv a0,s5 +20401800: 000680e7 jalr a3 +20401804: fd5ff06f j 204017d8 <__call_exitprocs+0xdc> +20401808: 00892223 sw s0,4(s2) +2040180c: fb1ff06f j 204017bc <__call_exitprocs+0xc0> +20401810: 00058513 mv a0,a1 +20401814: 000680e7 jalr a3 +20401818: fc1ff06f j 204017d8 <__call_exitprocs+0xdc> -204017f0 <__muldf3>: -204017f0: fd010113 addi sp,sp,-48 -204017f4: 01312e23 sw s3,28(sp) -204017f8: 0145d993 srli s3,a1,0x14 -204017fc: 02812423 sw s0,40(sp) -20401800: 02912223 sw s1,36(sp) -20401804: 01412c23 sw s4,24(sp) -20401808: 01512a23 sw s5,20(sp) -2040180c: 01612823 sw s6,16(sp) -20401810: 00c59493 slli s1,a1,0xc -20401814: 02112623 sw ra,44(sp) -20401818: 03212023 sw s2,32(sp) -2040181c: 01712623 sw s7,12(sp) -20401820: 7ff9f993 andi s3,s3,2047 -20401824: 00050413 mv s0,a0 -20401828: 00060b13 mv s6,a2 -2040182c: 00068a93 mv s5,a3 -20401830: 00c4d493 srli s1,s1,0xc -20401834: 01f5da13 srli s4,a1,0x1f -20401838: 0a098463 beqz s3,204018e0 <__muldf3+0xf0> -2040183c: 7ff00793 li a5,2047 -20401840: 10f98263 beq s3,a5,20401944 <__muldf3+0x154> -20401844: 01d55793 srli a5,a0,0x1d -20401848: 00349493 slli s1,s1,0x3 -2040184c: 0097e4b3 or s1,a5,s1 -20401850: 008007b7 lui a5,0x800 -20401854: 00f4e4b3 or s1,s1,a5 -20401858: 00351913 slli s2,a0,0x3 -2040185c: c0198993 addi s3,s3,-1023 -20401860: 00000b93 li s7,0 -20401864: 014ad513 srli a0,s5,0x14 -20401868: 00ca9413 slli s0,s5,0xc -2040186c: 7ff57513 andi a0,a0,2047 -20401870: 00c45413 srli s0,s0,0xc -20401874: 01fada93 srli s5,s5,0x1f -20401878: 10050263 beqz a0,2040197c <__muldf3+0x18c> -2040187c: 7ff00793 li a5,2047 -20401880: 16f50263 beq a0,a5,204019e4 <__muldf3+0x1f4> -20401884: 01db5793 srli a5,s6,0x1d -20401888: 00341413 slli s0,s0,0x3 -2040188c: 0087e433 or s0,a5,s0 -20401890: 008007b7 lui a5,0x800 -20401894: 00f46433 or s0,s0,a5 -20401898: c0150513 addi a0,a0,-1023 -2040189c: 003b1793 slli a5,s6,0x3 -204018a0: 00000713 li a4,0 -204018a4: 002b9693 slli a3,s7,0x2 -204018a8: 00e6e6b3 or a3,a3,a4 -204018ac: 00a989b3 add s3,s3,a0 -204018b0: fff68693 addi a3,a3,-1 -204018b4: 00e00613 li a2,14 -204018b8: 015a4833 xor a6,s4,s5 -204018bc: 00198893 addi a7,s3,1 -204018c0: 14d66e63 bltu a2,a3,20401a1c <__muldf3+0x22c> -204018c4: 00001617 auipc a2,0x1 -204018c8: 9a060613 addi a2,a2,-1632 # 20402264 <__clzsi2+0x2b0> -204018cc: 00269693 slli a3,a3,0x2 -204018d0: 00c686b3 add a3,a3,a2 -204018d4: 0006a683 lw a3,0(a3) -204018d8: 00c686b3 add a3,a3,a2 -204018dc: 00068067 jr a3 -204018e0: 00a4e933 or s2,s1,a0 -204018e4: 06090c63 beqz s2,2040195c <__muldf3+0x16c> -204018e8: 04048063 beqz s1,20401928 <__muldf3+0x138> -204018ec: 00048513 mv a0,s1 -204018f0: 6c4000ef jal ra,20401fb4 <__clzsi2> -204018f4: ff550713 addi a4,a0,-11 -204018f8: 01c00793 li a5,28 -204018fc: 02e7cc63 blt a5,a4,20401934 <__muldf3+0x144> -20401900: 01d00793 li a5,29 -20401904: ff850913 addi s2,a0,-8 -20401908: 40e787b3 sub a5,a5,a4 -2040190c: 012494b3 sll s1,s1,s2 -20401910: 00f457b3 srl a5,s0,a5 -20401914: 0097e4b3 or s1,a5,s1 -20401918: 01241933 sll s2,s0,s2 -2040191c: c0d00993 li s3,-1011 -20401920: 40a989b3 sub s3,s3,a0 -20401924: f3dff06f j 20401860 <__muldf3+0x70> -20401928: 68c000ef jal ra,20401fb4 <__clzsi2> -2040192c: 02050513 addi a0,a0,32 -20401930: fc5ff06f j 204018f4 <__muldf3+0x104> -20401934: fd850493 addi s1,a0,-40 -20401938: 009414b3 sll s1,s0,s1 -2040193c: 00000913 li s2,0 -20401940: fddff06f j 2040191c <__muldf3+0x12c> -20401944: 00a4e933 or s2,s1,a0 -20401948: 02090263 beqz s2,2040196c <__muldf3+0x17c> -2040194c: 00050913 mv s2,a0 -20401950: 7ff00993 li s3,2047 -20401954: 00300b93 li s7,3 -20401958: f0dff06f j 20401864 <__muldf3+0x74> -2040195c: 00000493 li s1,0 -20401960: 00000993 li s3,0 -20401964: 00100b93 li s7,1 -20401968: efdff06f j 20401864 <__muldf3+0x74> -2040196c: 00000493 li s1,0 -20401970: 7ff00993 li s3,2047 -20401974: 00200b93 li s7,2 -20401978: eedff06f j 20401864 <__muldf3+0x74> -2040197c: 016467b3 or a5,s0,s6 -20401980: 06078e63 beqz a5,204019fc <__muldf3+0x20c> -20401984: 04040063 beqz s0,204019c4 <__muldf3+0x1d4> -20401988: 00040513 mv a0,s0 -2040198c: 628000ef jal ra,20401fb4 <__clzsi2> -20401990: ff550693 addi a3,a0,-11 -20401994: 01c00793 li a5,28 -20401998: 02d7ce63 blt a5,a3,204019d4 <__muldf3+0x1e4> -2040199c: 01d00713 li a4,29 -204019a0: ff850793 addi a5,a0,-8 -204019a4: 40d70733 sub a4,a4,a3 -204019a8: 00f41433 sll s0,s0,a5 -204019ac: 00eb5733 srl a4,s6,a4 -204019b0: 00876433 or s0,a4,s0 -204019b4: 00fb17b3 sll a5,s6,a5 -204019b8: c0d00713 li a4,-1011 -204019bc: 40a70533 sub a0,a4,a0 -204019c0: ee1ff06f j 204018a0 <__muldf3+0xb0> -204019c4: 000b0513 mv a0,s6 -204019c8: 5ec000ef jal ra,20401fb4 <__clzsi2> -204019cc: 02050513 addi a0,a0,32 -204019d0: fc1ff06f j 20401990 <__muldf3+0x1a0> -204019d4: fd850413 addi s0,a0,-40 -204019d8: 008b1433 sll s0,s6,s0 -204019dc: 00000793 li a5,0 -204019e0: fd9ff06f j 204019b8 <__muldf3+0x1c8> -204019e4: 016467b3 or a5,s0,s6 -204019e8: 02078263 beqz a5,20401a0c <__muldf3+0x21c> -204019ec: 000b0793 mv a5,s6 -204019f0: 7ff00513 li a0,2047 -204019f4: 00300713 li a4,3 -204019f8: eadff06f j 204018a4 <__muldf3+0xb4> -204019fc: 00000413 li s0,0 -20401a00: 00000513 li a0,0 -20401a04: 00100713 li a4,1 -20401a08: e9dff06f j 204018a4 <__muldf3+0xb4> -20401a0c: 00000413 li s0,0 -20401a10: 7ff00513 li a0,2047 -20401a14: 00200713 li a4,2 -20401a18: e8dff06f j 204018a4 <__muldf3+0xb4> -20401a1c: 000102b7 lui t0,0x10 -20401a20: fff28313 addi t1,t0,-1 # ffff <__stack_size+0xf7ff> -20401a24: 01095f13 srli t5,s2,0x10 -20401a28: 0107df93 srli t6,a5,0x10 -20401a2c: 00697933 and s2,s2,t1 -20401a30: 0067f7b3 and a5,a5,t1 -20401a34: 00090513 mv a0,s2 -20401a38: 00078593 mv a1,a5 -20401a3c: 4a0000ef jal ra,20401edc <__mulsi3> -20401a40: 00050e93 mv t4,a0 -20401a44: 000f8593 mv a1,t6 -20401a48: 00090513 mv a0,s2 -20401a4c: 490000ef jal ra,20401edc <__mulsi3> -20401a50: 00050e13 mv t3,a0 -20401a54: 00078593 mv a1,a5 -20401a58: 000f0513 mv a0,t5 -20401a5c: 480000ef jal ra,20401edc <__mulsi3> -20401a60: 00050a13 mv s4,a0 -20401a64: 000f8593 mv a1,t6 -20401a68: 000f0513 mv a0,t5 -20401a6c: 470000ef jal ra,20401edc <__mulsi3> -20401a70: 010ed713 srli a4,t4,0x10 -20401a74: 014e0e33 add t3,t3,s4 -20401a78: 01c70733 add a4,a4,t3 -20401a7c: 00050393 mv t2,a0 -20401a80: 01477463 bgeu a4,s4,20401a88 <__muldf3+0x298> -20401a84: 005503b3 add t2,a0,t0 -20401a88: 00677e33 and t3,a4,t1 -20401a8c: 006efeb3 and t4,t4,t1 -20401a90: 01045a13 srli s4,s0,0x10 -20401a94: 010e1e13 slli t3,t3,0x10 -20401a98: 00647433 and s0,s0,t1 -20401a9c: 01075293 srli t0,a4,0x10 -20401aa0: 01de0e33 add t3,t3,t4 -20401aa4: 00090513 mv a0,s2 -20401aa8: 00040593 mv a1,s0 -20401aac: 430000ef jal ra,20401edc <__mulsi3> -20401ab0: 00050e93 mv t4,a0 -20401ab4: 000a0593 mv a1,s4 -20401ab8: 00090513 mv a0,s2 -20401abc: 420000ef jal ra,20401edc <__mulsi3> -20401ac0: 00050713 mv a4,a0 -20401ac4: 00040593 mv a1,s0 -20401ac8: 000f0513 mv a0,t5 -20401acc: 410000ef jal ra,20401edc <__mulsi3> -20401ad0: 00050313 mv t1,a0 -20401ad4: 000a0593 mv a1,s4 -20401ad8: 000f0513 mv a0,t5 -20401adc: 400000ef jal ra,20401edc <__mulsi3> -20401ae0: 010ed693 srli a3,t4,0x10 -20401ae4: 00670733 add a4,a4,t1 -20401ae8: 00e686b3 add a3,a3,a4 -20401aec: 0066f663 bgeu a3,t1,20401af8 <__muldf3+0x308> -20401af0: 00010737 lui a4,0x10 -20401af4: 00e50533 add a0,a0,a4 -20401af8: 00010ab7 lui s5,0x10 -20401afc: fffa8613 addi a2,s5,-1 # ffff <__stack_size+0xf7ff> -20401b00: 0106d713 srli a4,a3,0x10 -20401b04: 00c6f6b3 and a3,a3,a2 -20401b08: 01069693 slli a3,a3,0x10 -20401b0c: 00cefeb3 and t4,t4,a2 -20401b10: 00a70f33 add t5,a4,a0 -20401b14: 01d68eb3 add t4,a3,t4 -20401b18: 0104d713 srli a4,s1,0x10 -20401b1c: 00c4f4b3 and s1,s1,a2 -20401b20: 01d282b3 add t0,t0,t4 -20401b24: 00048513 mv a0,s1 -20401b28: 00078593 mv a1,a5 -20401b2c: 3b0000ef jal ra,20401edc <__mulsi3> -20401b30: 00050913 mv s2,a0 -20401b34: 000f8593 mv a1,t6 -20401b38: 00048513 mv a0,s1 -20401b3c: 3a0000ef jal ra,20401edc <__mulsi3> -20401b40: 00050313 mv t1,a0 -20401b44: 00078593 mv a1,a5 -20401b48: 00070513 mv a0,a4 -20401b4c: 390000ef jal ra,20401edc <__mulsi3> -20401b50: 00050b13 mv s6,a0 -20401b54: 000f8593 mv a1,t6 -20401b58: 00070513 mv a0,a4 -20401b5c: 380000ef jal ra,20401edc <__mulsi3> -20401b60: 01095793 srli a5,s2,0x10 -20401b64: 01630333 add t1,t1,s6 -20401b68: 006787b3 add a5,a5,t1 -20401b6c: 0167f463 bgeu a5,s6,20401b74 <__muldf3+0x384> -20401b70: 01550533 add a0,a0,s5 -20401b74: 00010ab7 lui s5,0x10 -20401b78: fffa8693 addi a3,s5,-1 # ffff <__stack_size+0xf7ff> -20401b7c: 00d7f333 and t1,a5,a3 -20401b80: 0107d613 srli a2,a5,0x10 -20401b84: 00d97933 and s2,s2,a3 -20401b88: 01031313 slli t1,t1,0x10 -20401b8c: 00a60fb3 add t6,a2,a0 -20401b90: 01230333 add t1,t1,s2 -20401b94: 00048513 mv a0,s1 -20401b98: 00040593 mv a1,s0 -20401b9c: 340000ef jal ra,20401edc <__mulsi3> -20401ba0: 00050793 mv a5,a0 -20401ba4: 000a0593 mv a1,s4 -20401ba8: 00048513 mv a0,s1 -20401bac: 330000ef jal ra,20401edc <__mulsi3> -20401bb0: 00050493 mv s1,a0 -20401bb4: 00040593 mv a1,s0 -20401bb8: 00070513 mv a0,a4 -20401bbc: 320000ef jal ra,20401edc <__mulsi3> -20401bc0: 00050913 mv s2,a0 -20401bc4: 000a0593 mv a1,s4 -20401bc8: 00070513 mv a0,a4 -20401bcc: 310000ef jal ra,20401edc <__mulsi3> -20401bd0: 0107d693 srli a3,a5,0x10 -20401bd4: 012484b3 add s1,s1,s2 -20401bd8: 009686b3 add a3,a3,s1 -20401bdc: 0126f463 bgeu a3,s2,20401be4 <__muldf3+0x3f4> -20401be0: 01550533 add a0,a0,s5 -20401be4: 00010637 lui a2,0x10 -20401be8: fff60613 addi a2,a2,-1 # ffff <__stack_size+0xf7ff> -20401bec: 00c6f733 and a4,a3,a2 -20401bf0: 00c7f7b3 and a5,a5,a2 -20401bf4: 01071713 slli a4,a4,0x10 -20401bf8: 007282b3 add t0,t0,t2 -20401bfc: 00f70733 add a4,a4,a5 -20401c00: 01d2beb3 sltu t4,t0,t4 -20401c04: 01e70733 add a4,a4,t5 -20401c08: 01d70433 add s0,a4,t4 -20401c0c: 006282b3 add t0,t0,t1 -20401c10: 01f40633 add a2,s0,t6 -20401c14: 0062b333 sltu t1,t0,t1 -20401c18: 006605b3 add a1,a2,t1 -20401c1c: 01e73733 sltu a4,a4,t5 -20401c20: 01d43433 sltu s0,s0,t4 -20401c24: 00876433 or s0,a4,s0 -20401c28: 0106d693 srli a3,a3,0x10 -20401c2c: 01f63633 sltu a2,a2,t6 -20401c30: 0065b333 sltu t1,a1,t1 -20401c34: 00d40433 add s0,s0,a3 -20401c38: 00666333 or t1,a2,t1 -20401c3c: 00640433 add s0,s0,t1 -20401c40: 00929793 slli a5,t0,0x9 -20401c44: 00a40433 add s0,s0,a0 -20401c48: 01c7e7b3 or a5,a5,t3 -20401c4c: 00941413 slli s0,s0,0x9 -20401c50: 0175d513 srli a0,a1,0x17 -20401c54: 00f037b3 snez a5,a5 -20401c58: 0172de13 srli t3,t0,0x17 -20401c5c: 00959713 slli a4,a1,0x9 -20401c60: 00a46433 or s0,s0,a0 -20401c64: 01c7e7b3 or a5,a5,t3 -20401c68: 00e7e7b3 or a5,a5,a4 -20401c6c: 00741713 slli a4,s0,0x7 -20401c70: 10075263 bgez a4,20401d74 <__muldf3+0x584> -20401c74: 0017d713 srli a4,a5,0x1 -20401c78: 0017f793 andi a5,a5,1 -20401c7c: 00f767b3 or a5,a4,a5 -20401c80: 01f41713 slli a4,s0,0x1f -20401c84: 00e7e7b3 or a5,a5,a4 -20401c88: 00145413 srli s0,s0,0x1 -20401c8c: 3ff88693 addi a3,a7,1023 -20401c90: 0ed05663 blez a3,20401d7c <__muldf3+0x58c> -20401c94: 0077f713 andi a4,a5,7 -20401c98: 02070063 beqz a4,20401cb8 <__muldf3+0x4c8> -20401c9c: 00f7f713 andi a4,a5,15 -20401ca0: 00400613 li a2,4 -20401ca4: 00c70a63 beq a4,a2,20401cb8 <__muldf3+0x4c8> -20401ca8: 00478713 addi a4,a5,4 # 800004 <__stack_size+0x7ff804> -20401cac: 00f737b3 sltu a5,a4,a5 -20401cb0: 00f40433 add s0,s0,a5 -20401cb4: 00070793 mv a5,a4 -20401cb8: 00741713 slli a4,s0,0x7 -20401cbc: 00075a63 bgez a4,20401cd0 <__muldf3+0x4e0> -20401cc0: ff000737 lui a4,0xff000 -20401cc4: fff70713 addi a4,a4,-1 # feffffff <_sp+0x7effbfff> -20401cc8: 00e47433 and s0,s0,a4 -20401ccc: 40088693 addi a3,a7,1024 -20401cd0: 7fe00713 li a4,2046 -20401cd4: 16d74663 blt a4,a3,20401e40 <__muldf3+0x650> -20401cd8: 0037d713 srli a4,a5,0x3 -20401cdc: 01d41793 slli a5,s0,0x1d -20401ce0: 00e7e7b3 or a5,a5,a4 -20401ce4: 00345413 srli s0,s0,0x3 -20401ce8: 00c41413 slli s0,s0,0xc -20401cec: 7ff6f713 andi a4,a3,2047 -20401cf0: 01471713 slli a4,a4,0x14 -20401cf4: 00c45413 srli s0,s0,0xc -20401cf8: 00e46433 or s0,s0,a4 -20401cfc: 01f81813 slli a6,a6,0x1f -20401d00: 01046733 or a4,s0,a6 -20401d04: 02c12083 lw ra,44(sp) -20401d08: 02812403 lw s0,40(sp) -20401d0c: 02412483 lw s1,36(sp) -20401d10: 02012903 lw s2,32(sp) -20401d14: 01c12983 lw s3,28(sp) -20401d18: 01812a03 lw s4,24(sp) -20401d1c: 01412a83 lw s5,20(sp) -20401d20: 01012b03 lw s6,16(sp) -20401d24: 00c12b83 lw s7,12(sp) -20401d28: 00078513 mv a0,a5 -20401d2c: 00070593 mv a1,a4 -20401d30: 03010113 addi sp,sp,48 -20401d34: 00008067 ret -20401d38: 000a0813 mv a6,s4 -20401d3c: 00048413 mv s0,s1 -20401d40: 00090793 mv a5,s2 -20401d44: 000b8713 mv a4,s7 -20401d48: 00200693 li a3,2 -20401d4c: 0ed70a63 beq a4,a3,20401e40 <__muldf3+0x650> -20401d50: 00300693 li a3,3 -20401d54: 0cd70c63 beq a4,a3,20401e2c <__muldf3+0x63c> -20401d58: 00100693 li a3,1 -20401d5c: f2d718e3 bne a4,a3,20401c8c <__muldf3+0x49c> -20401d60: 00000413 li s0,0 -20401d64: 00000793 li a5,0 -20401d68: 0880006f j 20401df0 <__muldf3+0x600> -20401d6c: 000a8813 mv a6,s5 -20401d70: fd9ff06f j 20401d48 <__muldf3+0x558> -20401d74: 00098893 mv a7,s3 -20401d78: f15ff06f j 20401c8c <__muldf3+0x49c> -20401d7c: 00100613 li a2,1 -20401d80: 40d60633 sub a2,a2,a3 -20401d84: 03800713 li a4,56 -20401d88: fcc74ce3 blt a4,a2,20401d60 <__muldf3+0x570> -20401d8c: 01f00713 li a4,31 -20401d90: 06c74463 blt a4,a2,20401df8 <__muldf3+0x608> -20401d94: 41e88893 addi a7,a7,1054 -20401d98: 01141733 sll a4,s0,a7 -20401d9c: 00c7d6b3 srl a3,a5,a2 -20401da0: 011797b3 sll a5,a5,a7 -20401da4: 00d76733 or a4,a4,a3 -20401da8: 00f037b3 snez a5,a5 -20401dac: 00f767b3 or a5,a4,a5 -20401db0: 00c45433 srl s0,s0,a2 -20401db4: 0077f713 andi a4,a5,7 -20401db8: 02070063 beqz a4,20401dd8 <__muldf3+0x5e8> -20401dbc: 00f7f713 andi a4,a5,15 -20401dc0: 00400693 li a3,4 -20401dc4: 00d70a63 beq a4,a3,20401dd8 <__muldf3+0x5e8> -20401dc8: 00478713 addi a4,a5,4 -20401dcc: 00f737b3 sltu a5,a4,a5 -20401dd0: 00f40433 add s0,s0,a5 -20401dd4: 00070793 mv a5,a4 -20401dd8: 00841713 slli a4,s0,0x8 -20401ddc: 06074a63 bltz a4,20401e50 <__muldf3+0x660> -20401de0: 01d41713 slli a4,s0,0x1d -20401de4: 0037d793 srli a5,a5,0x3 -20401de8: 00f767b3 or a5,a4,a5 -20401dec: 00345413 srli s0,s0,0x3 -20401df0: 00000693 li a3,0 -20401df4: ef5ff06f j 20401ce8 <__muldf3+0x4f8> -20401df8: fe100713 li a4,-31 -20401dfc: 40d70733 sub a4,a4,a3 -20401e00: 02000593 li a1,32 -20401e04: 00e45733 srl a4,s0,a4 -20401e08: 00000693 li a3,0 -20401e0c: 00b60663 beq a2,a1,20401e18 <__muldf3+0x628> -20401e10: 43e88893 addi a7,a7,1086 -20401e14: 011416b3 sll a3,s0,a7 -20401e18: 00f6e7b3 or a5,a3,a5 -20401e1c: 00f037b3 snez a5,a5 -20401e20: 00f767b3 or a5,a4,a5 -20401e24: 00000413 li s0,0 -20401e28: f8dff06f j 20401db4 <__muldf3+0x5c4> -20401e2c: 00080437 lui s0,0x80 -20401e30: 00000793 li a5,0 -20401e34: 7ff00693 li a3,2047 -20401e38: 00000813 li a6,0 -20401e3c: eadff06f j 20401ce8 <__muldf3+0x4f8> -20401e40: 00000413 li s0,0 -20401e44: 00000793 li a5,0 -20401e48: 7ff00693 li a3,2047 -20401e4c: e9dff06f j 20401ce8 <__muldf3+0x4f8> +2040181c <__muldf3>: +2040181c: fd010113 addi sp,sp,-48 +20401820: 01312e23 sw s3,28(sp) +20401824: 0145d993 srli s3,a1,0x14 +20401828: 02812423 sw s0,40(sp) +2040182c: 02912223 sw s1,36(sp) +20401830: 01412c23 sw s4,24(sp) +20401834: 01512a23 sw s5,20(sp) +20401838: 01612823 sw s6,16(sp) +2040183c: 00c59493 slli s1,a1,0xc +20401840: 02112623 sw ra,44(sp) +20401844: 03212023 sw s2,32(sp) +20401848: 01712623 sw s7,12(sp) +2040184c: 7ff9f993 andi s3,s3,2047 +20401850: 00050413 mv s0,a0 +20401854: 00060b13 mv s6,a2 +20401858: 00068a93 mv s5,a3 +2040185c: 00c4d493 srli s1,s1,0xc +20401860: 01f5da13 srli s4,a1,0x1f +20401864: 0a098463 beqz s3,2040190c <__muldf3+0xf0> +20401868: 7ff00793 li a5,2047 +2040186c: 10f98263 beq s3,a5,20401970 <__muldf3+0x154> +20401870: 01d55793 srli a5,a0,0x1d +20401874: 00349493 slli s1,s1,0x3 +20401878: 0097e4b3 or s1,a5,s1 +2040187c: 008007b7 lui a5,0x800 +20401880: 00f4e4b3 or s1,s1,a5 +20401884: 00351913 slli s2,a0,0x3 +20401888: c0198993 addi s3,s3,-1023 +2040188c: 00000b93 li s7,0 +20401890: 014ad513 srli a0,s5,0x14 +20401894: 00ca9413 slli s0,s5,0xc +20401898: 7ff57513 andi a0,a0,2047 +2040189c: 00c45413 srli s0,s0,0xc +204018a0: 01fada93 srli s5,s5,0x1f +204018a4: 10050263 beqz a0,204019a8 <__muldf3+0x18c> +204018a8: 7ff00793 li a5,2047 +204018ac: 16f50263 beq a0,a5,20401a10 <__muldf3+0x1f4> +204018b0: 01db5793 srli a5,s6,0x1d +204018b4: 00341413 slli s0,s0,0x3 +204018b8: 0087e433 or s0,a5,s0 +204018bc: 008007b7 lui a5,0x800 +204018c0: 00f46433 or s0,s0,a5 +204018c4: c0150513 addi a0,a0,-1023 +204018c8: 003b1793 slli a5,s6,0x3 +204018cc: 00000713 li a4,0 +204018d0: 002b9693 slli a3,s7,0x2 +204018d4: 00e6e6b3 or a3,a3,a4 +204018d8: 00a989b3 add s3,s3,a0 +204018dc: fff68693 addi a3,a3,-1 +204018e0: 00e00613 li a2,14 +204018e4: 015a4833 xor a6,s4,s5 +204018e8: 00198893 addi a7,s3,1 +204018ec: 14d66e63 bltu a2,a3,20401a48 <__muldf3+0x22c> +204018f0: 00001617 auipc a2,0x1 +204018f4: 9e460613 addi a2,a2,-1564 # 204022d4 <__clzsi2+0x2f4> +204018f8: 00269693 slli a3,a3,0x2 +204018fc: 00c686b3 add a3,a3,a2 +20401900: 0006a683 lw a3,0(a3) +20401904: 00c686b3 add a3,a3,a2 +20401908: 00068067 jr a3 +2040190c: 00a4e933 or s2,s1,a0 +20401910: 06090c63 beqz s2,20401988 <__muldf3+0x16c> +20401914: 04048063 beqz s1,20401954 <__muldf3+0x138> +20401918: 00048513 mv a0,s1 +2040191c: 6c4000ef jal ra,20401fe0 <__clzsi2> +20401920: ff550713 addi a4,a0,-11 +20401924: 01c00793 li a5,28 +20401928: 02e7cc63 blt a5,a4,20401960 <__muldf3+0x144> +2040192c: 01d00793 li a5,29 +20401930: ff850913 addi s2,a0,-8 +20401934: 40e787b3 sub a5,a5,a4 +20401938: 012494b3 sll s1,s1,s2 +2040193c: 00f457b3 srl a5,s0,a5 +20401940: 0097e4b3 or s1,a5,s1 +20401944: 01241933 sll s2,s0,s2 +20401948: c0d00993 li s3,-1011 +2040194c: 40a989b3 sub s3,s3,a0 +20401950: f3dff06f j 2040188c <__muldf3+0x70> +20401954: 68c000ef jal ra,20401fe0 <__clzsi2> +20401958: 02050513 addi a0,a0,32 +2040195c: fc5ff06f j 20401920 <__muldf3+0x104> +20401960: fd850493 addi s1,a0,-40 +20401964: 009414b3 sll s1,s0,s1 +20401968: 00000913 li s2,0 +2040196c: fddff06f j 20401948 <__muldf3+0x12c> +20401970: 00a4e933 or s2,s1,a0 +20401974: 02090263 beqz s2,20401998 <__muldf3+0x17c> +20401978: 00050913 mv s2,a0 +2040197c: 7ff00993 li s3,2047 +20401980: 00300b93 li s7,3 +20401984: f0dff06f j 20401890 <__muldf3+0x74> +20401988: 00000493 li s1,0 +2040198c: 00000993 li s3,0 +20401990: 00100b93 li s7,1 +20401994: efdff06f j 20401890 <__muldf3+0x74> +20401998: 00000493 li s1,0 +2040199c: 7ff00993 li s3,2047 +204019a0: 00200b93 li s7,2 +204019a4: eedff06f j 20401890 <__muldf3+0x74> +204019a8: 016467b3 or a5,s0,s6 +204019ac: 06078e63 beqz a5,20401a28 <__muldf3+0x20c> +204019b0: 04040063 beqz s0,204019f0 <__muldf3+0x1d4> +204019b4: 00040513 mv a0,s0 +204019b8: 628000ef jal ra,20401fe0 <__clzsi2> +204019bc: ff550693 addi a3,a0,-11 +204019c0: 01c00793 li a5,28 +204019c4: 02d7ce63 blt a5,a3,20401a00 <__muldf3+0x1e4> +204019c8: 01d00713 li a4,29 +204019cc: ff850793 addi a5,a0,-8 +204019d0: 40d70733 sub a4,a4,a3 +204019d4: 00f41433 sll s0,s0,a5 +204019d8: 00eb5733 srl a4,s6,a4 +204019dc: 00876433 or s0,a4,s0 +204019e0: 00fb17b3 sll a5,s6,a5 +204019e4: c0d00713 li a4,-1011 +204019e8: 40a70533 sub a0,a4,a0 +204019ec: ee1ff06f j 204018cc <__muldf3+0xb0> +204019f0: 000b0513 mv a0,s6 +204019f4: 5ec000ef jal ra,20401fe0 <__clzsi2> +204019f8: 02050513 addi a0,a0,32 +204019fc: fc1ff06f j 204019bc <__muldf3+0x1a0> +20401a00: fd850413 addi s0,a0,-40 +20401a04: 008b1433 sll s0,s6,s0 +20401a08: 00000793 li a5,0 +20401a0c: fd9ff06f j 204019e4 <__muldf3+0x1c8> +20401a10: 016467b3 or a5,s0,s6 +20401a14: 02078263 beqz a5,20401a38 <__muldf3+0x21c> +20401a18: 000b0793 mv a5,s6 +20401a1c: 7ff00513 li a0,2047 +20401a20: 00300713 li a4,3 +20401a24: eadff06f j 204018d0 <__muldf3+0xb4> +20401a28: 00000413 li s0,0 +20401a2c: 00000513 li a0,0 +20401a30: 00100713 li a4,1 +20401a34: e9dff06f j 204018d0 <__muldf3+0xb4> +20401a38: 00000413 li s0,0 +20401a3c: 7ff00513 li a0,2047 +20401a40: 00200713 li a4,2 +20401a44: e8dff06f j 204018d0 <__muldf3+0xb4> +20401a48: 000102b7 lui t0,0x10 +20401a4c: fff28313 addi t1,t0,-1 # ffff <__stack_size+0xf7ff> +20401a50: 01095f13 srli t5,s2,0x10 +20401a54: 0107df93 srli t6,a5,0x10 +20401a58: 00697933 and s2,s2,t1 +20401a5c: 0067f7b3 and a5,a5,t1 +20401a60: 00090513 mv a0,s2 +20401a64: 00078593 mv a1,a5 +20401a68: 4a0000ef jal ra,20401f08 <__mulsi3> +20401a6c: 00050e93 mv t4,a0 +20401a70: 000f8593 mv a1,t6 +20401a74: 00090513 mv a0,s2 +20401a78: 490000ef jal ra,20401f08 <__mulsi3> +20401a7c: 00050e13 mv t3,a0 +20401a80: 00078593 mv a1,a5 +20401a84: 000f0513 mv a0,t5 +20401a88: 480000ef jal ra,20401f08 <__mulsi3> +20401a8c: 00050a13 mv s4,a0 +20401a90: 000f8593 mv a1,t6 +20401a94: 000f0513 mv a0,t5 +20401a98: 470000ef jal ra,20401f08 <__mulsi3> +20401a9c: 010ed713 srli a4,t4,0x10 +20401aa0: 014e0e33 add t3,t3,s4 +20401aa4: 01c70733 add a4,a4,t3 +20401aa8: 00050393 mv t2,a0 +20401aac: 01477463 bgeu a4,s4,20401ab4 <__muldf3+0x298> +20401ab0: 005503b3 add t2,a0,t0 +20401ab4: 00677e33 and t3,a4,t1 +20401ab8: 006efeb3 and t4,t4,t1 +20401abc: 01045a13 srli s4,s0,0x10 +20401ac0: 010e1e13 slli t3,t3,0x10 +20401ac4: 00647433 and s0,s0,t1 +20401ac8: 01075293 srli t0,a4,0x10 +20401acc: 01de0e33 add t3,t3,t4 +20401ad0: 00090513 mv a0,s2 +20401ad4: 00040593 mv a1,s0 +20401ad8: 430000ef jal ra,20401f08 <__mulsi3> +20401adc: 00050e93 mv t4,a0 +20401ae0: 000a0593 mv a1,s4 +20401ae4: 00090513 mv a0,s2 +20401ae8: 420000ef jal ra,20401f08 <__mulsi3> +20401aec: 00050713 mv a4,a0 +20401af0: 00040593 mv a1,s0 +20401af4: 000f0513 mv a0,t5 +20401af8: 410000ef jal ra,20401f08 <__mulsi3> +20401afc: 00050313 mv t1,a0 +20401b00: 000a0593 mv a1,s4 +20401b04: 000f0513 mv a0,t5 +20401b08: 400000ef jal ra,20401f08 <__mulsi3> +20401b0c: 010ed693 srli a3,t4,0x10 +20401b10: 00670733 add a4,a4,t1 +20401b14: 00e686b3 add a3,a3,a4 +20401b18: 0066f663 bgeu a3,t1,20401b24 <__muldf3+0x308> +20401b1c: 00010737 lui a4,0x10 +20401b20: 00e50533 add a0,a0,a4 +20401b24: 00010ab7 lui s5,0x10 +20401b28: fffa8613 addi a2,s5,-1 # ffff <__stack_size+0xf7ff> +20401b2c: 0106d713 srli a4,a3,0x10 +20401b30: 00c6f6b3 and a3,a3,a2 +20401b34: 01069693 slli a3,a3,0x10 +20401b38: 00cefeb3 and t4,t4,a2 +20401b3c: 00a70f33 add t5,a4,a0 +20401b40: 01d68eb3 add t4,a3,t4 +20401b44: 0104d713 srli a4,s1,0x10 +20401b48: 00c4f4b3 and s1,s1,a2 +20401b4c: 01d282b3 add t0,t0,t4 +20401b50: 00048513 mv a0,s1 +20401b54: 00078593 mv a1,a5 +20401b58: 3b0000ef jal ra,20401f08 <__mulsi3> +20401b5c: 00050913 mv s2,a0 +20401b60: 000f8593 mv a1,t6 +20401b64: 00048513 mv a0,s1 +20401b68: 3a0000ef jal ra,20401f08 <__mulsi3> +20401b6c: 00050313 mv t1,a0 +20401b70: 00078593 mv a1,a5 +20401b74: 00070513 mv a0,a4 +20401b78: 390000ef jal ra,20401f08 <__mulsi3> +20401b7c: 00050b13 mv s6,a0 +20401b80: 000f8593 mv a1,t6 +20401b84: 00070513 mv a0,a4 +20401b88: 380000ef jal ra,20401f08 <__mulsi3> +20401b8c: 01095793 srli a5,s2,0x10 +20401b90: 01630333 add t1,t1,s6 +20401b94: 006787b3 add a5,a5,t1 +20401b98: 0167f463 bgeu a5,s6,20401ba0 <__muldf3+0x384> +20401b9c: 01550533 add a0,a0,s5 +20401ba0: 00010ab7 lui s5,0x10 +20401ba4: fffa8693 addi a3,s5,-1 # ffff <__stack_size+0xf7ff> +20401ba8: 00d7f333 and t1,a5,a3 +20401bac: 0107d613 srli a2,a5,0x10 +20401bb0: 00d97933 and s2,s2,a3 +20401bb4: 01031313 slli t1,t1,0x10 +20401bb8: 00a60fb3 add t6,a2,a0 +20401bbc: 01230333 add t1,t1,s2 +20401bc0: 00048513 mv a0,s1 +20401bc4: 00040593 mv a1,s0 +20401bc8: 340000ef jal ra,20401f08 <__mulsi3> +20401bcc: 00050793 mv a5,a0 +20401bd0: 000a0593 mv a1,s4 +20401bd4: 00048513 mv a0,s1 +20401bd8: 330000ef jal ra,20401f08 <__mulsi3> +20401bdc: 00050493 mv s1,a0 +20401be0: 00040593 mv a1,s0 +20401be4: 00070513 mv a0,a4 +20401be8: 320000ef jal ra,20401f08 <__mulsi3> +20401bec: 00050913 mv s2,a0 +20401bf0: 000a0593 mv a1,s4 +20401bf4: 00070513 mv a0,a4 +20401bf8: 310000ef jal ra,20401f08 <__mulsi3> +20401bfc: 0107d693 srli a3,a5,0x10 +20401c00: 012484b3 add s1,s1,s2 +20401c04: 009686b3 add a3,a3,s1 +20401c08: 0126f463 bgeu a3,s2,20401c10 <__muldf3+0x3f4> +20401c0c: 01550533 add a0,a0,s5 +20401c10: 00010637 lui a2,0x10 +20401c14: fff60613 addi a2,a2,-1 # ffff <__stack_size+0xf7ff> +20401c18: 00c6f733 and a4,a3,a2 +20401c1c: 00c7f7b3 and a5,a5,a2 +20401c20: 01071713 slli a4,a4,0x10 +20401c24: 007282b3 add t0,t0,t2 +20401c28: 00f70733 add a4,a4,a5 +20401c2c: 01d2beb3 sltu t4,t0,t4 +20401c30: 01e70733 add a4,a4,t5 +20401c34: 01d70433 add s0,a4,t4 +20401c38: 006282b3 add t0,t0,t1 +20401c3c: 01f40633 add a2,s0,t6 +20401c40: 0062b333 sltu t1,t0,t1 +20401c44: 006605b3 add a1,a2,t1 +20401c48: 01e73733 sltu a4,a4,t5 +20401c4c: 01d43433 sltu s0,s0,t4 +20401c50: 00876433 or s0,a4,s0 +20401c54: 0106d693 srli a3,a3,0x10 +20401c58: 01f63633 sltu a2,a2,t6 +20401c5c: 0065b333 sltu t1,a1,t1 +20401c60: 00d40433 add s0,s0,a3 +20401c64: 00666333 or t1,a2,t1 +20401c68: 00640433 add s0,s0,t1 +20401c6c: 00929793 slli a5,t0,0x9 +20401c70: 00a40433 add s0,s0,a0 +20401c74: 01c7e7b3 or a5,a5,t3 +20401c78: 00941413 slli s0,s0,0x9 +20401c7c: 0175d513 srli a0,a1,0x17 +20401c80: 00f037b3 snez a5,a5 +20401c84: 0172de13 srli t3,t0,0x17 +20401c88: 00959713 slli a4,a1,0x9 +20401c8c: 00a46433 or s0,s0,a0 +20401c90: 01c7e7b3 or a5,a5,t3 +20401c94: 00e7e7b3 or a5,a5,a4 +20401c98: 00741713 slli a4,s0,0x7 +20401c9c: 10075263 bgez a4,20401da0 <__muldf3+0x584> +20401ca0: 0017d713 srli a4,a5,0x1 +20401ca4: 0017f793 andi a5,a5,1 +20401ca8: 00f767b3 or a5,a4,a5 +20401cac: 01f41713 slli a4,s0,0x1f +20401cb0: 00e7e7b3 or a5,a5,a4 +20401cb4: 00145413 srli s0,s0,0x1 +20401cb8: 3ff88693 addi a3,a7,1023 +20401cbc: 0ed05663 blez a3,20401da8 <__muldf3+0x58c> +20401cc0: 0077f713 andi a4,a5,7 +20401cc4: 02070063 beqz a4,20401ce4 <__muldf3+0x4c8> +20401cc8: 00f7f713 andi a4,a5,15 +20401ccc: 00400613 li a2,4 +20401cd0: 00c70a63 beq a4,a2,20401ce4 <__muldf3+0x4c8> +20401cd4: 00478713 addi a4,a5,4 # 800004 <__stack_size+0x7ff804> +20401cd8: 00f737b3 sltu a5,a4,a5 +20401cdc: 00f40433 add s0,s0,a5 +20401ce0: 00070793 mv a5,a4 +20401ce4: 00741713 slli a4,s0,0x7 +20401ce8: 00075a63 bgez a4,20401cfc <__muldf3+0x4e0> +20401cec: ff000737 lui a4,0xff000 +20401cf0: fff70713 addi a4,a4,-1 # feffffff <_sp+0x7effbfff> +20401cf4: 00e47433 and s0,s0,a4 +20401cf8: 40088693 addi a3,a7,1024 +20401cfc: 7fe00713 li a4,2046 +20401d00: 16d74663 blt a4,a3,20401e6c <__muldf3+0x650> +20401d04: 0037d713 srli a4,a5,0x3 +20401d08: 01d41793 slli a5,s0,0x1d +20401d0c: 00e7e7b3 or a5,a5,a4 +20401d10: 00345413 srli s0,s0,0x3 +20401d14: 00c41413 slli s0,s0,0xc +20401d18: 7ff6f713 andi a4,a3,2047 +20401d1c: 01471713 slli a4,a4,0x14 +20401d20: 00c45413 srli s0,s0,0xc +20401d24: 00e46433 or s0,s0,a4 +20401d28: 01f81813 slli a6,a6,0x1f +20401d2c: 01046733 or a4,s0,a6 +20401d30: 02c12083 lw ra,44(sp) +20401d34: 02812403 lw s0,40(sp) +20401d38: 02412483 lw s1,36(sp) +20401d3c: 02012903 lw s2,32(sp) +20401d40: 01c12983 lw s3,28(sp) +20401d44: 01812a03 lw s4,24(sp) +20401d48: 01412a83 lw s5,20(sp) +20401d4c: 01012b03 lw s6,16(sp) +20401d50: 00c12b83 lw s7,12(sp) +20401d54: 00078513 mv a0,a5 +20401d58: 00070593 mv a1,a4 +20401d5c: 03010113 addi sp,sp,48 +20401d60: 00008067 ret +20401d64: 000a0813 mv a6,s4 +20401d68: 00048413 mv s0,s1 +20401d6c: 00090793 mv a5,s2 +20401d70: 000b8713 mv a4,s7 +20401d74: 00200693 li a3,2 +20401d78: 0ed70a63 beq a4,a3,20401e6c <__muldf3+0x650> +20401d7c: 00300693 li a3,3 +20401d80: 0cd70c63 beq a4,a3,20401e58 <__muldf3+0x63c> +20401d84: 00100693 li a3,1 +20401d88: f2d718e3 bne a4,a3,20401cb8 <__muldf3+0x49c> +20401d8c: 00000413 li s0,0 +20401d90: 00000793 li a5,0 +20401d94: 0880006f j 20401e1c <__muldf3+0x600> +20401d98: 000a8813 mv a6,s5 +20401d9c: fd9ff06f j 20401d74 <__muldf3+0x558> +20401da0: 00098893 mv a7,s3 +20401da4: f15ff06f j 20401cb8 <__muldf3+0x49c> +20401da8: 00100613 li a2,1 +20401dac: 40d60633 sub a2,a2,a3 +20401db0: 03800713 li a4,56 +20401db4: fcc74ce3 blt a4,a2,20401d8c <__muldf3+0x570> +20401db8: 01f00713 li a4,31 +20401dbc: 06c74463 blt a4,a2,20401e24 <__muldf3+0x608> +20401dc0: 41e88893 addi a7,a7,1054 +20401dc4: 01141733 sll a4,s0,a7 +20401dc8: 00c7d6b3 srl a3,a5,a2 +20401dcc: 011797b3 sll a5,a5,a7 +20401dd0: 00d76733 or a4,a4,a3 +20401dd4: 00f037b3 snez a5,a5 +20401dd8: 00f767b3 or a5,a4,a5 +20401ddc: 00c45433 srl s0,s0,a2 +20401de0: 0077f713 andi a4,a5,7 +20401de4: 02070063 beqz a4,20401e04 <__muldf3+0x5e8> +20401de8: 00f7f713 andi a4,a5,15 +20401dec: 00400693 li a3,4 +20401df0: 00d70a63 beq a4,a3,20401e04 <__muldf3+0x5e8> +20401df4: 00478713 addi a4,a5,4 +20401df8: 00f737b3 sltu a5,a4,a5 +20401dfc: 00f40433 add s0,s0,a5 +20401e00: 00070793 mv a5,a4 +20401e04: 00841713 slli a4,s0,0x8 +20401e08: 06074a63 bltz a4,20401e7c <__muldf3+0x660> +20401e0c: 01d41713 slli a4,s0,0x1d +20401e10: 0037d793 srli a5,a5,0x3 +20401e14: 00f767b3 or a5,a4,a5 +20401e18: 00345413 srli s0,s0,0x3 +20401e1c: 00000693 li a3,0 +20401e20: ef5ff06f j 20401d14 <__muldf3+0x4f8> +20401e24: fe100713 li a4,-31 +20401e28: 40d70733 sub a4,a4,a3 +20401e2c: 02000593 li a1,32 +20401e30: 00e45733 srl a4,s0,a4 +20401e34: 00000693 li a3,0 +20401e38: 00b60663 beq a2,a1,20401e44 <__muldf3+0x628> +20401e3c: 43e88893 addi a7,a7,1086 +20401e40: 011416b3 sll a3,s0,a7 +20401e44: 00f6e7b3 or a5,a3,a5 +20401e48: 00f037b3 snez a5,a5 +20401e4c: 00f767b3 or a5,a4,a5 20401e50: 00000413 li s0,0 -20401e54: 00000793 li a5,0 -20401e58: 00100693 li a3,1 -20401e5c: e8dff06f j 20401ce8 <__muldf3+0x4f8> +20401e54: f8dff06f j 20401de0 <__muldf3+0x5c4> +20401e58: 00080437 lui s0,0x80 +20401e5c: 00000793 li a5,0 +20401e60: 7ff00693 li a3,2047 +20401e64: 00000813 li a6,0 +20401e68: eadff06f j 20401d14 <__muldf3+0x4f8> +20401e6c: 00000413 li s0,0 +20401e70: 00000793 li a5,0 +20401e74: 7ff00693 li a3,2047 +20401e78: e9dff06f j 20401d14 <__muldf3+0x4f8> +20401e7c: 00000413 li s0,0 +20401e80: 00000793 li a5,0 +20401e84: 00100693 li a3,1 +20401e88: e8dff06f j 20401d14 <__muldf3+0x4f8> -20401e60 <__fixunsdfsi>: -20401e60: 0145d713 srli a4,a1,0x14 -20401e64: 001006b7 lui a3,0x100 -20401e68: 00050613 mv a2,a0 -20401e6c: fff68793 addi a5,a3,-1 # fffff <__stack_size+0xff7ff> -20401e70: 7ff77713 andi a4,a4,2047 -20401e74: 3fe00513 li a0,1022 -20401e78: 00b7f7b3 and a5,a5,a1 -20401e7c: 01f5d593 srli a1,a1,0x1f -20401e80: 04e55a63 bge a0,a4,20401ed4 <__fixunsdfsi+0x74> -20401e84: 00000513 li a0,0 -20401e88: 00059863 bnez a1,20401e98 <__fixunsdfsi+0x38> -20401e8c: 41e00593 li a1,1054 -20401e90: fff00513 li a0,-1 -20401e94: 00e5d463 bge a1,a4,20401e9c <__fixunsdfsi+0x3c> -20401e98: 00008067 ret -20401e9c: 00d7e7b3 or a5,a5,a3 -20401ea0: 43300693 li a3,1075 -20401ea4: 40e686b3 sub a3,a3,a4 -20401ea8: 01f00593 li a1,31 -20401eac: 00d5cc63 blt a1,a3,20401ec4 <__fixunsdfsi+0x64> -20401eb0: bed70713 addi a4,a4,-1043 -20401eb4: 00e797b3 sll a5,a5,a4 -20401eb8: 00d65533 srl a0,a2,a3 -20401ebc: 00a7e533 or a0,a5,a0 -20401ec0: 00008067 ret -20401ec4: 41300513 li a0,1043 -20401ec8: 40e50533 sub a0,a0,a4 -20401ecc: 00a7d533 srl a0,a5,a0 -20401ed0: 00008067 ret -20401ed4: 00000513 li a0,0 -20401ed8: 00008067 ret - -20401edc <__mulsi3>: -20401edc: 00050613 mv a2,a0 -20401ee0: 00000513 li a0,0 -20401ee4: 0015f693 andi a3,a1,1 -20401ee8: 00068463 beqz a3,20401ef0 <__mulsi3+0x14> -20401eec: 00c50533 add a0,a0,a2 -20401ef0: 0015d593 srli a1,a1,0x1 -20401ef4: 00161613 slli a2,a2,0x1 -20401ef8: fe0596e3 bnez a1,20401ee4 <__mulsi3+0x8> +20401e8c <__fixunsdfsi>: +20401e8c: 0145d713 srli a4,a1,0x14 +20401e90: 001006b7 lui a3,0x100 +20401e94: 00050613 mv a2,a0 +20401e98: fff68793 addi a5,a3,-1 # fffff <__stack_size+0xff7ff> +20401e9c: 7ff77713 andi a4,a4,2047 +20401ea0: 3fe00513 li a0,1022 +20401ea4: 00b7f7b3 and a5,a5,a1 +20401ea8: 01f5d593 srli a1,a1,0x1f +20401eac: 04e55a63 bge a0,a4,20401f00 <__fixunsdfsi+0x74> +20401eb0: 00000513 li a0,0 +20401eb4: 00059863 bnez a1,20401ec4 <__fixunsdfsi+0x38> +20401eb8: 41e00593 li a1,1054 +20401ebc: fff00513 li a0,-1 +20401ec0: 00e5d463 bge a1,a4,20401ec8 <__fixunsdfsi+0x3c> +20401ec4: 00008067 ret +20401ec8: 00d7e7b3 or a5,a5,a3 +20401ecc: 43300693 li a3,1075 +20401ed0: 40e686b3 sub a3,a3,a4 +20401ed4: 01f00593 li a1,31 +20401ed8: 00d5cc63 blt a1,a3,20401ef0 <__fixunsdfsi+0x64> +20401edc: bed70713 addi a4,a4,-1043 +20401ee0: 00e797b3 sll a5,a5,a4 +20401ee4: 00d65533 srl a0,a2,a3 +20401ee8: 00a7e533 or a0,a5,a0 +20401eec: 00008067 ret +20401ef0: 41300513 li a0,1043 +20401ef4: 40e50533 sub a0,a0,a4 +20401ef8: 00a7d533 srl a0,a5,a0 20401efc: 00008067 ret +20401f00: 00000513 li a0,0 +20401f04: 00008067 ret -20401f00 <__divsi3>: -20401f00: 06054063 bltz a0,20401f60 <__umodsi3+0x10> -20401f04: 0605c663 bltz a1,20401f70 <__umodsi3+0x20> +20401f08 <__mulsi3>: +20401f08: 00050613 mv a2,a0 +20401f0c: 00000513 li a0,0 +20401f10: 0015f693 andi a3,a1,1 +20401f14: 00068463 beqz a3,20401f1c <__mulsi3+0x14> +20401f18: 00c50533 add a0,a0,a2 +20401f1c: 0015d593 srli a1,a1,0x1 +20401f20: 00161613 slli a2,a2,0x1 +20401f24: fe0596e3 bnez a1,20401f10 <__mulsi3+0x8> +20401f28: 00008067 ret -20401f08 <__udivsi3>: -20401f08: 00058613 mv a2,a1 -20401f0c: 00050593 mv a1,a0 -20401f10: fff00513 li a0,-1 -20401f14: 02060c63 beqz a2,20401f4c <__udivsi3+0x44> -20401f18: 00100693 li a3,1 -20401f1c: 00b67a63 bgeu a2,a1,20401f30 <__udivsi3+0x28> -20401f20: 00c05863 blez a2,20401f30 <__udivsi3+0x28> -20401f24: 00161613 slli a2,a2,0x1 -20401f28: 00169693 slli a3,a3,0x1 -20401f2c: feb66ae3 bltu a2,a1,20401f20 <__udivsi3+0x18> -20401f30: 00000513 li a0,0 -20401f34: 00c5e663 bltu a1,a2,20401f40 <__udivsi3+0x38> -20401f38: 40c585b3 sub a1,a1,a2 -20401f3c: 00d56533 or a0,a0,a3 -20401f40: 0016d693 srli a3,a3,0x1 -20401f44: 00165613 srli a2,a2,0x1 -20401f48: fe0696e3 bnez a3,20401f34 <__udivsi3+0x2c> -20401f4c: 00008067 ret +20401f2c <__divsi3>: +20401f2c: 06054063 bltz a0,20401f8c <__umodsi3+0x10> +20401f30: 0605c663 bltz a1,20401f9c <__umodsi3+0x20> -20401f50 <__umodsi3>: -20401f50: 00008293 mv t0,ra -20401f54: fb5ff0ef jal ra,20401f08 <__udivsi3> -20401f58: 00058513 mv a0,a1 -20401f5c: 00028067 jr t0 -20401f60: 40a00533 neg a0,a0 -20401f64: 0005d863 bgez a1,20401f74 <__umodsi3+0x24> -20401f68: 40b005b3 neg a1,a1 -20401f6c: f9dff06f j 20401f08 <__udivsi3> -20401f70: 40b005b3 neg a1,a1 -20401f74: 00008293 mv t0,ra -20401f78: f91ff0ef jal ra,20401f08 <__udivsi3> -20401f7c: 40a00533 neg a0,a0 -20401f80: 00028067 jr t0 +20401f34 <__udivsi3>: +20401f34: 00058613 mv a2,a1 +20401f38: 00050593 mv a1,a0 +20401f3c: fff00513 li a0,-1 +20401f40: 02060c63 beqz a2,20401f78 <__udivsi3+0x44> +20401f44: 00100693 li a3,1 +20401f48: 00b67a63 bgeu a2,a1,20401f5c <__udivsi3+0x28> +20401f4c: 00c05863 blez a2,20401f5c <__udivsi3+0x28> +20401f50: 00161613 slli a2,a2,0x1 +20401f54: 00169693 slli a3,a3,0x1 +20401f58: feb66ae3 bltu a2,a1,20401f4c <__udivsi3+0x18> +20401f5c: 00000513 li a0,0 +20401f60: 00c5e663 bltu a1,a2,20401f6c <__udivsi3+0x38> +20401f64: 40c585b3 sub a1,a1,a2 +20401f68: 00d56533 or a0,a0,a3 +20401f6c: 0016d693 srli a3,a3,0x1 +20401f70: 00165613 srli a2,a2,0x1 +20401f74: fe0696e3 bnez a3,20401f60 <__udivsi3+0x2c> +20401f78: 00008067 ret -20401f84 <__modsi3>: -20401f84: 00008293 mv t0,ra -20401f88: 0005ca63 bltz a1,20401f9c <__modsi3+0x18> -20401f8c: 00054c63 bltz a0,20401fa4 <__modsi3+0x20> -20401f90: f79ff0ef jal ra,20401f08 <__udivsi3> -20401f94: 00058513 mv a0,a1 -20401f98: 00028067 jr t0 +20401f7c <__umodsi3>: +20401f7c: 00008293 mv t0,ra +20401f80: fb5ff0ef jal ra,20401f34 <__udivsi3> +20401f84: 00058513 mv a0,a1 +20401f88: 00028067 jr t0 +20401f8c: 40a00533 neg a0,a0 +20401f90: 0005d863 bgez a1,20401fa0 <__umodsi3+0x24> +20401f94: 40b005b3 neg a1,a1 +20401f98: f9dff06f j 20401f34 <__udivsi3> 20401f9c: 40b005b3 neg a1,a1 -20401fa0: fe0558e3 bgez a0,20401f90 <__modsi3+0xc> -20401fa4: 40a00533 neg a0,a0 -20401fa8: f61ff0ef jal ra,20401f08 <__udivsi3> -20401fac: 40b00533 neg a0,a1 -20401fb0: 00028067 jr t0 +20401fa0: 00008293 mv t0,ra +20401fa4: f91ff0ef jal ra,20401f34 <__udivsi3> +20401fa8: 40a00533 neg a0,a0 +20401fac: 00028067 jr t0 -20401fb4 <__clzsi2>: -20401fb4: 000107b7 lui a5,0x10 -20401fb8: 02f57a63 bgeu a0,a5,20401fec <__clzsi2+0x38> -20401fbc: 0ff00793 li a5,255 -20401fc0: 00a7b7b3 sltu a5,a5,a0 -20401fc4: 00379793 slli a5,a5,0x3 -20401fc8: 02000713 li a4,32 -20401fcc: 40f70733 sub a4,a4,a5 -20401fd0: 00f557b3 srl a5,a0,a5 -20401fd4: 00000517 auipc a0,0x0 -20401fd8: 2cc50513 addi a0,a0,716 # 204022a0 <__clz_tab> -20401fdc: 00f507b3 add a5,a0,a5 -20401fe0: 0007c503 lbu a0,0(a5) # 10000 <__stack_size+0xf800> -20401fe4: 40a70533 sub a0,a4,a0 -20401fe8: 00008067 ret -20401fec: 01000737 lui a4,0x1000 -20401ff0: 01000793 li a5,16 -20401ff4: fce56ae3 bltu a0,a4,20401fc8 <__clzsi2+0x14> -20401ff8: 01800793 li a5,24 -20401ffc: fcdff06f j 20401fc8 <__clzsi2+0x14> +20401fb0 <__modsi3>: +20401fb0: 00008293 mv t0,ra +20401fb4: 0005ca63 bltz a1,20401fc8 <__modsi3+0x18> +20401fb8: 00054c63 bltz a0,20401fd0 <__modsi3+0x20> +20401fbc: f79ff0ef jal ra,20401f34 <__udivsi3> +20401fc0: 00058513 mv a0,a1 +20401fc4: 00028067 jr t0 +20401fc8: 40b005b3 neg a1,a1 +20401fcc: fe0558e3 bgez a0,20401fbc <__modsi3+0xc> +20401fd0: 40a00533 neg a0,a0 +20401fd4: f61ff0ef jal ra,20401f34 <__udivsi3> +20401fd8: 40b00533 neg a0,a1 +20401fdc: 00028067 jr t0 + +20401fe0 <__clzsi2>: +20401fe0: 000107b7 lui a5,0x10 +20401fe4: 02f57a63 bgeu a0,a5,20402018 <__clzsi2+0x38> +20401fe8: 0ff00793 li a5,255 +20401fec: 00a7b7b3 sltu a5,a5,a0 +20401ff0: 00379793 slli a5,a5,0x3 +20401ff4: 02000713 li a4,32 +20401ff8: 40f70733 sub a4,a4,a5 +20401ffc: 00f557b3 srl a5,a0,a5 +20402000: 00000517 auipc a0,0x0 +20402004: 31050513 addi a0,a0,784 # 20402310 <__clz_tab> +20402008: 00f507b3 add a5,a0,a5 +2040200c: 0007c503 lbu a0,0(a5) # 10000 <__stack_size+0xf800> +20402010: 40a70533 sub a0,a4,a0 +20402014: 00008067 ret +20402018: 01000737 lui a4,0x1000 +2040201c: 01000793 li a5,16 +20402020: fce56ae3 bltu a0,a4,20401ff4 <__clzsi2+0x14> +20402024: 01800793 li a5,24 +20402028: fcdff06f j 20401ff4 <__clzsi2+0x14>