ysyx_22040000 李心杨 Linux calcite 6.6.19 #1-NixOS SMP PREEMPT_DYNAMIC Fri Mar 1 12:35:11 UTC 2024 x86_64 GNU/Linux 16:26:21 up 4 days 3:32, 2 users, load average: 0.85, 0.91, 0.95
426 lines
18 KiB
Text
426 lines
18 KiB
Text
|
|
/home/xin/repo/ysyx-workbench/am-kernels/tests/cpu-tests/build/mersenne-riscv32-nemu.elf: file format elf32-littleriscv
|
|
|
|
|
|
Disassembly of section .text:
|
|
|
|
80000000 <_start>:
|
|
80000000: 00000413 li s0,0
|
|
80000004: 00009117 auipc sp,0x9
|
|
80000008: ffc10113 add sp,sp,-4 # 80009000 <_end>
|
|
8000000c: 134000ef jal 80000140 <_trm_init>
|
|
|
|
80000010 <check>:
|
|
80000010: 00050463 beqz a0,80000018 <check+0x8>
|
|
80000014: 00008067 ret
|
|
80000018: ff010113 add sp,sp,-16
|
|
8000001c: 00100513 li a0,1
|
|
80000020: 00112623 sw ra,12(sp)
|
|
80000024: 110000ef jal 80000134 <halt>
|
|
|
|
80000028 <main>:
|
|
80000028: fe010113 add sp,sp,-32
|
|
8000002c: 00112e23 sw ra,28(sp)
|
|
80000030: 00812c23 sw s0,24(sp)
|
|
80000034: 00500793 li a5,5
|
|
80000038: 3a100693 li a3,929
|
|
8000003c: 00878713 add a4,a5,8
|
|
80000040: 00678793 add a5,a5,6
|
|
80000044: 02f78633 mul a2,a5,a5
|
|
80000048: 02c6c463 blt a3,a2,80000070 <main+0x48>
|
|
8000004c: 00d78663 beq a5,a3,80000058 <main+0x30>
|
|
80000050: 02e6e733 rem a4,a3,a4
|
|
80000054: fe0714e3 bnez a4,8000003c <main+0x14>
|
|
80000058: 00100413 li s0,1
|
|
8000005c: 01c12083 lw ra,28(sp)
|
|
80000060: 00040513 mv a0,s0
|
|
80000064: 01812403 lw s0,24(sp)
|
|
80000068: 02010113 add sp,sp,32
|
|
8000006c: 00008067 ret
|
|
80000070: 01312623 sw s3,12(sp)
|
|
80000074: 00912a23 sw s1,20(sp)
|
|
80000078: 01212823 sw s2,16(sp)
|
|
8000007c: 01412423 sw s4,8(sp)
|
|
80000080: 01600793 li a5,22
|
|
80000084: 3a100993 li s3,929
|
|
80000088: fff78793 add a5,a5,-1
|
|
8000008c: 00199993 sll s3,s3,0x1
|
|
80000090: fe079ce3 bnez a5,80000088 <main+0x60>
|
|
80000094: 74300493 li s1,1859
|
|
80000098: 00100a13 li s4,1
|
|
8000009c: 41f4d913 sra s2,s1,0x1f
|
|
800000a0: 00098413 mv s0,s3
|
|
800000a4: 00100793 li a5,1
|
|
800000a8: 02f795b3 mulh a1,a5,a5
|
|
800000ac: 00048613 mv a2,s1
|
|
800000b0: 00090693 mv a3,s2
|
|
800000b4: 02f78533 mul a0,a5,a5
|
|
800000b8: 410000ef jal 800004c8 <__moddi3>
|
|
800000bc: 00050793 mv a5,a0
|
|
800000c0: 02044663 bltz s0,800000ec <main+0xc4>
|
|
800000c4: 00a4d463 bge s1,a0,800000cc <main+0xa4>
|
|
800000c8: 409507b3 sub a5,a0,s1
|
|
800000cc: 02f795b3 mulh a1,a5,a5
|
|
800000d0: 00048613 mv a2,s1
|
|
800000d4: 00090693 mv a3,s2
|
|
800000d8: 00141413 sll s0,s0,0x1
|
|
800000dc: 02f78533 mul a0,a5,a5
|
|
800000e0: 3e8000ef jal 800004c8 <__moddi3>
|
|
800000e4: 00050793 mv a5,a0
|
|
800000e8: fc045ee3 bgez s0,800000c4 <main+0x9c>
|
|
800000ec: 00151793 sll a5,a0,0x1
|
|
800000f0: 00141413 sll s0,s0,0x1
|
|
800000f4: 00f4d463 bge s1,a5,800000fc <main+0xd4>
|
|
800000f8: 409787b3 sub a5,a5,s1
|
|
800000fc: fa0416e3 bnez s0,800000a8 <main+0x80>
|
|
80000100: 01478663 beq a5,s4,8000010c <main+0xe4>
|
|
80000104: 74248493 add s1,s1,1858
|
|
80000108: f95ff06f j 8000009c <main+0x74>
|
|
8000010c: ffffd7b7 lui a5,0xffffd
|
|
80000110: d3178793 add a5,a5,-719 # ffffcd31 <_end+0x7fff3d31>
|
|
80000114: 00f48533 add a0,s1,a5
|
|
80000118: 00153513 seqz a0,a0
|
|
8000011c: ef5ff0ef jal 80000010 <check>
|
|
80000120: 01412483 lw s1,20(sp)
|
|
80000124: 01012903 lw s2,16(sp)
|
|
80000128: 00c12983 lw s3,12(sp)
|
|
8000012c: 00812a03 lw s4,8(sp)
|
|
80000130: f2dff06f j 8000005c <main+0x34>
|
|
|
|
80000134 <halt>:
|
|
80000134: 00050513 mv a0,a0
|
|
80000138: 00100073 ebreak
|
|
8000013c: 0000006f j 8000013c <halt+0x8>
|
|
|
|
80000140 <_trm_init>:
|
|
80000140: ff010113 add sp,sp,-16
|
|
80000144: 00000517 auipc a0,0x0
|
|
80000148: 50850513 add a0,a0,1288 # 8000064c <_etext>
|
|
8000014c: 00112623 sw ra,12(sp)
|
|
80000150: ed9ff0ef jal 80000028 <main>
|
|
80000154: 00050513 mv a0,a0
|
|
80000158: 00100073 ebreak
|
|
8000015c: 0000006f j 8000015c <_trm_init+0x1c>
|
|
|
|
80000160 <__udivmoddi4>:
|
|
80000160: fd010113 add sp,sp,-48
|
|
80000164: 01312e23 sw s3,28(sp)
|
|
80000168: 01412c23 sw s4,24(sp)
|
|
8000016c: 01612823 sw s6,16(sp)
|
|
80000170: 01712623 sw s7,12(sp)
|
|
80000174: 02112623 sw ra,44(sp)
|
|
80000178: 00068b13 mv s6,a3
|
|
8000017c: 00050993 mv s3,a0
|
|
80000180: 00060a13 mv s4,a2
|
|
80000184: 00070b93 mv s7,a4
|
|
80000188: 02059e63 bnez a1,800001c4 <__udivmoddi4+0x64>
|
|
8000018c: 1a069263 bnez a3,80000330 <__udivmoddi4+0x1d0>
|
|
80000190: 00070863 beqz a4,800001a0 <__udivmoddi4+0x40>
|
|
80000194: 02c577b3 remu a5,a0,a2
|
|
80000198: 00072223 sw zero,4(a4)
|
|
8000019c: 00f72023 sw a5,0(a4)
|
|
800001a0: 0349d533 divu a0,s3,s4
|
|
800001a4: 00000593 li a1,0
|
|
800001a8: 02c12083 lw ra,44(sp)
|
|
800001ac: 01c12983 lw s3,28(sp)
|
|
800001b0: 01812a03 lw s4,24(sp)
|
|
800001b4: 01012b03 lw s6,16(sp)
|
|
800001b8: 00c12b83 lw s7,12(sp)
|
|
800001bc: 03010113 add sp,sp,48
|
|
800001c0: 00008067 ret
|
|
800001c4: 02912223 sw s1,36(sp)
|
|
800001c8: 03212023 sw s2,32(sp)
|
|
800001cc: 01512a23 sw s5,20(sp)
|
|
800001d0: 02812423 sw s0,40(sp)
|
|
800001d4: 00058913 mv s2,a1
|
|
800001d8: 00058493 mv s1,a1
|
|
800001dc: 00060a93 mv s5,a2
|
|
800001e0: 0e061e63 bnez a2,800002dc <__udivmoddi4+0x17c>
|
|
800001e4: 1c068063 beqz a3,800003a4 <__udivmoddi4+0x244>
|
|
800001e8: 22050a63 beqz a0,8000041c <__udivmoddi4+0x2bc>
|
|
800001ec: fff68793 add a5,a3,-1
|
|
800001f0: 00d7f733 and a4,a5,a3
|
|
800001f4: 28070263 beqz a4,80000478 <__udivmoddi4+0x318>
|
|
800001f8: 00068513 mv a0,a3
|
|
800001fc: 348000ef jal 80000544 <__clzsi2>
|
|
80000200: 00050413 mv s0,a0
|
|
80000204: 00090513 mv a0,s2
|
|
80000208: 33c000ef jal 80000544 <__clzsi2>
|
|
8000020c: 40a406b3 sub a3,s0,a0
|
|
80000210: 01e00793 li a5,30
|
|
80000214: 18d7ea63 bltu a5,a3,800003a8 <__udivmoddi4+0x248>
|
|
80000218: 00168693 add a3,a3,1
|
|
8000021c: 02000793 li a5,32
|
|
80000220: 40d787b3 sub a5,a5,a3
|
|
80000224: 00f91633 sll a2,s2,a5
|
|
80000228: 00d9d733 srl a4,s3,a3
|
|
8000022c: 00d95433 srl s0,s2,a3
|
|
80000230: 00f99833 sll a6,s3,a5
|
|
80000234: 00e664b3 or s1,a2,a4
|
|
80000238: 00000713 li a4,0
|
|
8000023c: 01f85793 srl a5,a6,0x1f
|
|
80000240: 00149593 sll a1,s1,0x1
|
|
80000244: 00f5e5b3 or a1,a1,a5
|
|
80000248: 01f4d493 srl s1,s1,0x1f
|
|
8000024c: 00141793 sll a5,s0,0x1
|
|
80000250: 0097e7b3 or a5,a5,s1
|
|
80000254: 40ba0333 sub t1,s4,a1
|
|
80000258: 006a3633 sltu a2,s4,t1
|
|
8000025c: 40fb08b3 sub a7,s6,a5
|
|
80000260: 40c888b3 sub a7,a7,a2
|
|
80000264: 00133313 seqz t1,t1
|
|
80000268: 406888b3 sub a7,a7,t1
|
|
8000026c: 41f8d313 sra t1,a7,0x1f
|
|
80000270: 014374b3 and s1,t1,s4
|
|
80000274: 409584b3 sub s1,a1,s1
|
|
80000278: 01637333 and t1,t1,s6
|
|
8000027c: 01fad613 srl a2,s5,0x1f
|
|
80000280: 00181813 sll a6,a6,0x1
|
|
80000284: 001a9a93 sll s5,s5,0x1
|
|
80000288: 0095b5b3 sltu a1,a1,s1
|
|
8000028c: 406787b3 sub a5,a5,t1
|
|
80000290: fff68693 add a3,a3,-1
|
|
80000294: 00eaeab3 or s5,s5,a4
|
|
80000298: 00c86833 or a6,a6,a2
|
|
8000029c: 01f8d713 srl a4,a7,0x1f
|
|
800002a0: 40b78433 sub s0,a5,a1
|
|
800002a4: f8069ce3 bnez a3,8000023c <__udivmoddi4+0xdc>
|
|
800002a8: 000b8663 beqz s7,800002b4 <__udivmoddi4+0x154>
|
|
800002ac: 009ba023 sw s1,0(s7)
|
|
800002b0: 008ba223 sw s0,4(s7)
|
|
800002b4: 01fad913 srl s2,s5,0x1f
|
|
800002b8: 001a9993 sll s3,s5,0x1
|
|
800002bc: 00181793 sll a5,a6,0x1
|
|
800002c0: 00f965b3 or a1,s2,a5
|
|
800002c4: 02812403 lw s0,40(sp)
|
|
800002c8: 02412483 lw s1,36(sp)
|
|
800002cc: 02012903 lw s2,32(sp)
|
|
800002d0: 01412a83 lw s5,20(sp)
|
|
800002d4: 00e9e533 or a0,s3,a4
|
|
800002d8: ed1ff06f j 800001a8 <__udivmoddi4+0x48>
|
|
800002dc: 06068663 beqz a3,80000348 <__udivmoddi4+0x1e8>
|
|
800002e0: 00068513 mv a0,a3
|
|
800002e4: 260000ef jal 80000544 <__clzsi2>
|
|
800002e8: 00050413 mv s0,a0
|
|
800002ec: 00090513 mv a0,s2
|
|
800002f0: 254000ef jal 80000544 <__clzsi2>
|
|
800002f4: 40a406b3 sub a3,s0,a0
|
|
800002f8: 01f00793 li a5,31
|
|
800002fc: 0ad7e663 bltu a5,a3,800003a8 <__udivmoddi4+0x248>
|
|
80000300: 00168693 add a3,a3,1
|
|
80000304: 02000793 li a5,32
|
|
80000308: 00098813 mv a6,s3
|
|
8000030c: 18f68663 beq a3,a5,80000498 <__udivmoddi4+0x338>
|
|
80000310: 40d787b3 sub a5,a5,a3
|
|
80000314: 00d9d733 srl a4,s3,a3
|
|
80000318: 00f91633 sll a2,s2,a5
|
|
8000031c: 00d95433 srl s0,s2,a3
|
|
80000320: 00f99833 sll a6,s3,a5
|
|
80000324: 00e664b3 or s1,a2,a4
|
|
80000328: 00000a93 li s5,0
|
|
8000032c: f0dff06f j 80000238 <__udivmoddi4+0xd8>
|
|
80000330: 00070663 beqz a4,8000033c <__udivmoddi4+0x1dc>
|
|
80000334: 00aba023 sw a0,0(s7)
|
|
80000338: 00072223 sw zero,4(a4)
|
|
8000033c: 00000513 li a0,0
|
|
80000340: 00000593 li a1,0
|
|
80000344: e65ff06f j 800001a8 <__udivmoddi4+0x48>
|
|
80000348: fff60793 add a5,a2,-1
|
|
8000034c: 00c7f733 and a4,a5,a2
|
|
80000350: 06071c63 bnez a4,800003c8 <__udivmoddi4+0x268>
|
|
80000354: 000b8863 beqz s7,80000364 <__udivmoddi4+0x204>
|
|
80000358: 00a7f7b3 and a5,a5,a0
|
|
8000035c: 00fba023 sw a5,0(s7)
|
|
80000360: 000ba223 sw zero,4(s7)
|
|
80000364: 00100793 li a5,1
|
|
80000368: 0efa0063 beq s4,a5,80000448 <__udivmoddi4+0x2e8>
|
|
8000036c: 000a0513 mv a0,s4
|
|
80000370: 264000ef jal 800005d4 <__ctzsi2>
|
|
80000374: 02000713 li a4,32
|
|
80000378: 40a70733 sub a4,a4,a0
|
|
8000037c: 00050793 mv a5,a0
|
|
80000380: 00e91733 sll a4,s2,a4
|
|
80000384: 00a9d833 srl a6,s3,a0
|
|
80000388: 00f955b3 srl a1,s2,a5
|
|
8000038c: 02812403 lw s0,40(sp)
|
|
80000390: 02412483 lw s1,36(sp)
|
|
80000394: 02012903 lw s2,32(sp)
|
|
80000398: 01412a83 lw s5,20(sp)
|
|
8000039c: 01076533 or a0,a4,a6
|
|
800003a0: e09ff06f j 800001a8 <__udivmoddi4+0x48>
|
|
800003a4: 00100073 ebreak
|
|
800003a8: 0a0b8e63 beqz s7,80000464 <__udivmoddi4+0x304>
|
|
800003ac: 012ba223 sw s2,4(s7)
|
|
800003b0: 02812403 lw s0,40(sp)
|
|
800003b4: 02412483 lw s1,36(sp)
|
|
800003b8: 02012903 lw s2,32(sp)
|
|
800003bc: 01412a83 lw s5,20(sp)
|
|
800003c0: 013ba023 sw s3,0(s7)
|
|
800003c4: f79ff06f j 8000033c <__udivmoddi4+0x1dc>
|
|
800003c8: 00060513 mv a0,a2
|
|
800003cc: 00068413 mv s0,a3
|
|
800003d0: 174000ef jal 80000544 <__clzsi2>
|
|
800003d4: 00050913 mv s2,a0
|
|
800003d8: 00048513 mv a0,s1
|
|
800003dc: 168000ef jal 80000544 <__clzsi2>
|
|
800003e0: 40a90533 sub a0,s2,a0
|
|
800003e4: 02150693 add a3,a0,33
|
|
800003e8: 02000793 li a5,32
|
|
800003ec: 00098813 mv a6,s3
|
|
800003f0: 00000a93 li s5,0
|
|
800003f4: e4f682e3 beq a3,a5,80000238 <__udivmoddi4+0xd8>
|
|
800003f8: 01f00713 li a4,31
|
|
800003fc: 0ad76463 bltu a4,a3,800004a4 <__udivmoddi4+0x344>
|
|
80000400: 40d78733 sub a4,a5,a3
|
|
80000404: 00d4d433 srl s0,s1,a3
|
|
80000408: 00d9d7b3 srl a5,s3,a3
|
|
8000040c: 00e494b3 sll s1,s1,a4
|
|
80000410: 00f4e4b3 or s1,s1,a5
|
|
80000414: 00e99833 sll a6,s3,a4
|
|
80000418: e21ff06f j 80000238 <__udivmoddi4+0xd8>
|
|
8000041c: 00070863 beqz a4,8000042c <__udivmoddi4+0x2cc>
|
|
80000420: 02d5f7b3 remu a5,a1,a3
|
|
80000424: 00072023 sw zero,0(a4)
|
|
80000428: 00f72223 sw a5,4(a4)
|
|
8000042c: 03695533 divu a0,s2,s6
|
|
80000430: 02812403 lw s0,40(sp)
|
|
80000434: 02412483 lw s1,36(sp)
|
|
80000438: 02012903 lw s2,32(sp)
|
|
8000043c: 01412a83 lw s5,20(sp)
|
|
80000440: 00000593 li a1,0
|
|
80000444: d65ff06f j 800001a8 <__udivmoddi4+0x48>
|
|
80000448: 00090593 mv a1,s2
|
|
8000044c: 02812403 lw s0,40(sp)
|
|
80000450: 02412483 lw s1,36(sp)
|
|
80000454: 02012903 lw s2,32(sp)
|
|
80000458: 01412a83 lw s5,20(sp)
|
|
8000045c: 00098513 mv a0,s3
|
|
80000460: d49ff06f j 800001a8 <__udivmoddi4+0x48>
|
|
80000464: 02812403 lw s0,40(sp)
|
|
80000468: 02412483 lw s1,36(sp)
|
|
8000046c: 02012903 lw s2,32(sp)
|
|
80000470: 01412a83 lw s5,20(sp)
|
|
80000474: ec9ff06f j 8000033c <__udivmoddi4+0x1dc>
|
|
80000478: 000b8863 beqz s7,80000488 <__udivmoddi4+0x328>
|
|
8000047c: 00b7f7b3 and a5,a5,a1
|
|
80000480: 00aba023 sw a0,0(s7)
|
|
80000484: 00fba223 sw a5,4(s7)
|
|
80000488: 000b0513 mv a0,s6
|
|
8000048c: 148000ef jal 800005d4 <__ctzsi2>
|
|
80000490: 00a95533 srl a0,s2,a0
|
|
80000494: f9dff06f j 80000430 <__udivmoddi4+0x2d0>
|
|
80000498: 00000413 li s0,0
|
|
8000049c: 00000a93 li s5,0
|
|
800004a0: d99ff06f j 80000238 <__udivmoddi4+0xd8>
|
|
800004a4: 04000a93 li s5,64
|
|
800004a8: 40da8ab3 sub s5,s5,a3
|
|
800004ac: 00150513 add a0,a0,1
|
|
800004b0: 01549733 sll a4,s1,s5
|
|
800004b4: 00a9d7b3 srl a5,s3,a0
|
|
800004b8: 01599ab3 sll s5,s3,s5
|
|
800004bc: 00a4d4b3 srl s1,s1,a0
|
|
800004c0: 00f76833 or a6,a4,a5
|
|
800004c4: d75ff06f j 80000238 <__udivmoddi4+0xd8>
|
|
|
|
800004c8 <__moddi3>:
|
|
800004c8: fe010113 add sp,sp,-32
|
|
800004cc: 00812c23 sw s0,24(sp)
|
|
800004d0: 41f6d893 sra a7,a3,0x1f
|
|
800004d4: 41f5d413 sra s0,a1,0x1f
|
|
800004d8: 01164733 xor a4,a2,a7
|
|
800004dc: 008547b3 xor a5,a0,s0
|
|
800004e0: 41170633 sub a2,a4,a7
|
|
800004e4: 40878533 sub a0,a5,s0
|
|
800004e8: 0116c6b3 xor a3,a3,a7
|
|
800004ec: 0085c5b3 xor a1,a1,s0
|
|
800004f0: 00c73833 sltu a6,a4,a2
|
|
800004f4: 00a7b7b3 sltu a5,a5,a0
|
|
800004f8: 411686b3 sub a3,a3,a7
|
|
800004fc: 408585b3 sub a1,a1,s0
|
|
80000500: 00810713 add a4,sp,8
|
|
80000504: 40f585b3 sub a1,a1,a5
|
|
80000508: 410686b3 sub a3,a3,a6
|
|
8000050c: 00112e23 sw ra,28(sp)
|
|
80000510: c51ff0ef jal 80000160 <__udivmoddi4>
|
|
80000514: 00812783 lw a5,8(sp)
|
|
80000518: 00c12583 lw a1,12(sp)
|
|
8000051c: 01c12083 lw ra,28(sp)
|
|
80000520: 0087c7b3 xor a5,a5,s0
|
|
80000524: 0085c5b3 xor a1,a1,s0
|
|
80000528: 40878533 sub a0,a5,s0
|
|
8000052c: 408585b3 sub a1,a1,s0
|
|
80000530: 01812403 lw s0,24(sp)
|
|
80000534: 00a7b7b3 sltu a5,a5,a0
|
|
80000538: 40f585b3 sub a1,a1,a5
|
|
8000053c: 02010113 add sp,sp,32
|
|
80000540: 00008067 ret
|
|
|
|
80000544 <__clzsi2>:
|
|
80000544: 000105b7 lui a1,0x10
|
|
80000548: 00b535b3 sltu a1,a0,a1
|
|
8000054c: 00459593 sll a1,a1,0x4
|
|
80000550: 01000793 li a5,16
|
|
80000554: 40b787b3 sub a5,a5,a1
|
|
80000558: 00010737 lui a4,0x10
|
|
8000055c: 00f557b3 srl a5,a0,a5
|
|
80000560: f0070713 add a4,a4,-256 # ff00 <_entry_offset+0xff00>
|
|
80000564: 00e7f733 and a4,a5,a4
|
|
80000568: 00173713 seqz a4,a4
|
|
8000056c: 00371713 sll a4,a4,0x3
|
|
80000570: 00800693 li a3,8
|
|
80000574: 40e686b3 sub a3,a3,a4
|
|
80000578: 00d7d7b3 srl a5,a5,a3
|
|
8000057c: 0f07f613 and a2,a5,240
|
|
80000580: 00163613 seqz a2,a2
|
|
80000584: 00261613 sll a2,a2,0x2
|
|
80000588: 00400693 li a3,4
|
|
8000058c: 40c686b3 sub a3,a3,a2
|
|
80000590: 00d7d7b3 srl a5,a5,a3
|
|
80000594: 00c7f693 and a3,a5,12
|
|
80000598: 0016b693 seqz a3,a3
|
|
8000059c: 00200513 li a0,2
|
|
800005a0: 00169693 sll a3,a3,0x1
|
|
800005a4: 40d50833 sub a6,a0,a3
|
|
800005a8: 0107d7b3 srl a5,a5,a6
|
|
800005ac: 0017d813 srl a6,a5,0x1
|
|
800005b0: 00b70733 add a4,a4,a1
|
|
800005b4: 00187593 and a1,a6,1
|
|
800005b8: 00e60633 add a2,a2,a4
|
|
800005bc: 40f50533 sub a0,a0,a5
|
|
800005c0: 00058463 beqz a1,800005c8 <__clzsi2+0x84>
|
|
800005c4: 00000513 li a0,0
|
|
800005c8: 00c686b3 add a3,a3,a2
|
|
800005cc: 00d50533 add a0,a0,a3
|
|
800005d0: 00008067 ret
|
|
|
|
800005d4 <__ctzsi2>:
|
|
800005d4: 01051593 sll a1,a0,0x10
|
|
800005d8: 0105d593 srl a1,a1,0x10
|
|
800005dc: 0015b593 seqz a1,a1
|
|
800005e0: 00459593 sll a1,a1,0x4
|
|
800005e4: 00b557b3 srl a5,a0,a1
|
|
800005e8: 0ff7f613 zext.b a2,a5
|
|
800005ec: 00163613 seqz a2,a2
|
|
800005f0: 00361613 sll a2,a2,0x3
|
|
800005f4: 00c7d7b3 srl a5,a5,a2
|
|
800005f8: 00f7f693 and a3,a5,15
|
|
800005fc: 0016b693 seqz a3,a3
|
|
80000600: 00269693 sll a3,a3,0x2
|
|
80000604: 00d7d7b3 srl a5,a5,a3
|
|
80000608: 0037f713 and a4,a5,3
|
|
8000060c: 00173713 seqz a4,a4
|
|
80000610: 00171713 sll a4,a4,0x1
|
|
80000614: 00e7d7b3 srl a5,a5,a4
|
|
80000618: 0017d513 srl a0,a5,0x1
|
|
8000061c: fff7c793 not a5,a5
|
|
80000620: 00b60633 add a2,a2,a1
|
|
80000624: 0017f793 and a5,a5,1
|
|
80000628: 00157593 and a1,a0,1
|
|
8000062c: 00200513 li a0,2
|
|
80000630: 00c686b3 add a3,a3,a2
|
|
80000634: 40b50533 sub a0,a0,a1
|
|
80000638: 40f007b3 neg a5,a5
|
|
8000063c: 00f57533 and a0,a0,a5
|
|
80000640: 00d70733 add a4,a4,a3
|
|
80000644: 00e50533 add a0,a0,a4
|
|
80000648: 00008067 ret
|