tp/asm/Runtime.PPCEABI.H/runtime/__div2i.s

92 lines
3.5 KiB
ArmAsm

lbl_80362324:
/* 80362324 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362328 54 69 00 01 */ rlwinm. r9, r3, 0, 0, 0
/* 8036232C 41 82 00 0C */ beq lbl_80362338
/* 80362330 20 84 00 00 */ subfic r4, r4, 0
/* 80362334 7C 63 01 90 */ subfze r3, r3
lbl_80362338:
/* 80362338 91 21 00 08 */ stw r9, 8(r1)
/* 8036233C 54 AA 00 01 */ rlwinm. r10, r5, 0, 0, 0
/* 80362340 41 82 00 0C */ beq lbl_8036234C
/* 80362344 20 C6 00 00 */ subfic r6, r6, 0
/* 80362348 7C A5 01 90 */ subfze r5, r5
lbl_8036234C:
/* 8036234C 91 41 00 0C */ stw r10, 0xc(r1)
/* 80362350 2C 03 00 00 */ cmpwi r3, 0
/* 80362354 7C 60 00 34 */ cntlzw r0, r3
/* 80362358 7C 89 00 34 */ cntlzw r9, r4
/* 8036235C 40 82 00 08 */ bne lbl_80362364
/* 80362360 38 09 00 20 */ addi r0, r9, 0x20
lbl_80362364:
/* 80362364 2C 05 00 00 */ cmpwi r5, 0
/* 80362368 7C A9 00 34 */ cntlzw r9, r5
/* 8036236C 7C CA 00 34 */ cntlzw r10, r6
/* 80362370 40 82 00 08 */ bne lbl_80362378
/* 80362374 39 2A 00 20 */ addi r9, r10, 0x20
lbl_80362378:
/* 80362378 7C 00 48 00 */ cmpw r0, r9
/* 8036237C 21 40 00 40 */ subfic r10, r0, 0x40
/* 80362380 41 81 00 CC */ bgt lbl_8036244C
/* 80362384 39 29 00 01 */ addi r9, r9, 1
/* 80362388 21 29 00 40 */ subfic r9, r9, 0x40
/* 8036238C 7C 00 4A 14 */ add r0, r0, r9
/* 80362390 7D 29 50 50 */ subf r9, r9, r10
/* 80362394 7D 29 03 A6 */ mtctr r9
/* 80362398 2C 09 00 20 */ cmpwi r9, 0x20
/* 8036239C 38 E9 FF E0 */ addi r7, r9, -32
/* 803623A0 41 80 00 10 */ blt lbl_803623B0
/* 803623A4 7C 68 3C 30 */ srw r8, r3, r7
/* 803623A8 38 E0 00 00 */ li r7, 0
/* 803623AC 48 00 00 18 */ b lbl_803623C4
lbl_803623B0:
/* 803623B0 7C 88 4C 30 */ srw r8, r4, r9
/* 803623B4 20 E9 00 20 */ subfic r7, r9, 0x20
/* 803623B8 7C 67 38 30 */ slw r7, r3, r7
/* 803623BC 7D 08 3B 78 */ or r8, r8, r7
/* 803623C0 7C 67 4C 30 */ srw r7, r3, r9
lbl_803623C4:
/* 803623C4 2C 00 00 20 */ cmpwi r0, 0x20
/* 803623C8 31 20 FF E0 */ addic r9, r0, -32
/* 803623CC 41 80 00 10 */ blt lbl_803623DC
/* 803623D0 7C 83 48 30 */ slw r3, r4, r9
/* 803623D4 38 80 00 00 */ li r4, 0
/* 803623D8 48 00 00 18 */ b lbl_803623F0
lbl_803623DC:
/* 803623DC 7C 63 00 30 */ slw r3, r3, r0
/* 803623E0 21 20 00 20 */ subfic r9, r0, 0x20
/* 803623E4 7C 89 4C 30 */ srw r9, r4, r9
/* 803623E8 7C 63 4B 78 */ or r3, r3, r9
/* 803623EC 7C 84 00 30 */ slw r4, r4, r0
lbl_803623F0:
/* 803623F0 39 40 FF FF */ li r10, -1
/* 803623F4 30 E7 00 00 */ addic r7, r7, 0
lbl_803623F8:
/* 803623F8 7C 84 21 14 */ adde r4, r4, r4
/* 803623FC 7C 63 19 14 */ adde r3, r3, r3
/* 80362400 7D 08 41 14 */ adde r8, r8, r8
/* 80362404 7C E7 39 14 */ adde r7, r7, r7
/* 80362408 7C 06 40 10 */ subfc r0, r6, r8
/* 8036240C 7D 25 39 11 */ subfe. r9, r5, r7
/* 80362410 41 80 00 10 */ blt lbl_80362420
/* 80362414 7C 08 03 78 */ mr r8, r0
/* 80362418 7D 27 4B 78 */ mr r7, r9
/* 8036241C 30 0A 00 01 */ addic r0, r10, 1
lbl_80362420:
/* 80362420 42 00 FF D8 */ bdnz lbl_803623F8
/* 80362424 7C 84 21 14 */ adde r4, r4, r4
/* 80362428 7C 63 19 14 */ adde r3, r3, r3
/* 8036242C 81 21 00 08 */ lwz r9, 8(r1)
/* 80362430 81 41 00 0C */ lwz r10, 0xc(r1)
/* 80362434 7D 27 52 79 */ xor. r7, r9, r10
/* 80362438 41 82 00 1C */ beq lbl_80362454
/* 8036243C 2C 09 00 00 */ cmpwi r9, 0
/* 80362440 20 84 00 00 */ subfic r4, r4, 0
/* 80362444 7C 63 01 90 */ subfze r3, r3
/* 80362448 48 00 00 0C */ b lbl_80362454
lbl_8036244C:
/* 8036244C 38 80 00 00 */ li r4, 0
/* 80362450 38 60 00 00 */ li r3, 0
lbl_80362454:
/* 80362454 38 21 00 10 */ addi r1, r1, 0x10
/* 80362458 4E 80 00 20 */ blr