.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global __fpclassifyf __fpclassifyf: /* 801CA6B4 001C6314 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801CA6B8 001C6318 3C 00 7F 80 */ lis r0, 0x7f80 /* 801CA6BC 001C631C D0 21 00 08 */ stfs f1, 8(r1) /* 801CA6C0 001C6320 80 81 00 08 */ lwz r4, 8(r1) /* 801CA6C4 001C6324 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8 /* 801CA6C8 001C6328 7C 03 00 00 */ cmpw r3, r0 /* 801CA6CC 001C632C 41 82 00 14 */ beq lbl_801CA6E0 /* 801CA6D0 001C6330 40 80 00 3C */ bge lbl_801CA70C /* 801CA6D4 001C6334 2C 03 00 00 */ cmpwi r3, 0 /* 801CA6D8 001C6338 41 82 00 20 */ beq lbl_801CA6F8 /* 801CA6DC 001C633C 48 00 00 30 */ b lbl_801CA70C lbl_801CA6E0: /* 801CA6E0 001C6340 54 83 02 7E */ clrlwi r3, r4, 9 /* 801CA6E4 001C6344 7C 03 00 D0 */ neg r0, r3 /* 801CA6E8 001C6348 7C 00 1B 78 */ or r0, r0, r3 /* 801CA6EC 001C634C 7C 03 FE 70 */ srawi r3, r0, 0x1f /* 801CA6F0 001C6350 38 63 00 02 */ addi r3, r3, 2 /* 801CA6F4 001C6354 48 00 00 1C */ b lbl_801CA710 lbl_801CA6F8: /* 801CA6F8 001C6358 54 80 02 7F */ clrlwi. r0, r4, 9 /* 801CA6FC 001C635C 38 60 00 03 */ li r3, 3 /* 801CA700 001C6360 41 82 00 10 */ beq lbl_801CA710 /* 801CA704 001C6364 38 60 00 05 */ li r3, 5 /* 801CA708 001C6368 48 00 00 08 */ b lbl_801CA710 lbl_801CA70C: /* 801CA70C 001C636C 38 60 00 04 */ li r3, 4 lbl_801CA710: /* 801CA710 001C6370 38 21 00 10 */ addi r1, r1, 0x10 /* 801CA714 001C6374 4E 80 00 20 */ blr .global __signbitd __signbitd: /* 801CA718 001C6378 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801CA71C 001C637C D8 21 00 08 */ stfd f1, 8(r1) /* 801CA720 001C6380 80 01 00 08 */ lwz r0, 8(r1) /* 801CA724 001C6384 54 03 00 00 */ rlwinm r3, r0, 0, 0, 0 /* 801CA728 001C6388 38 21 00 10 */ addi r1, r1, 0x10 /* 801CA72C 001C638C 4E 80 00 20 */ blr .global __fpclassifyd __fpclassifyd: /* 801CA730 001C6390 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801CA734 001C6394 3C 00 7F F0 */ lis r0, 0x7ff0 /* 801CA738 001C6398 D8 21 00 08 */ stfd f1, 8(r1) /* 801CA73C 001C639C 80 81 00 08 */ lwz r4, 8(r1) /* 801CA740 001C63A0 54 83 00 56 */ rlwinm r3, r4, 0, 1, 0xb /* 801CA744 001C63A4 7C 03 00 00 */ cmpw r3, r0 /* 801CA748 001C63A8 41 82 00 14 */ beq lbl_801CA75C /* 801CA74C 001C63AC 40 80 00 58 */ bge lbl_801CA7A4 /* 801CA750 001C63B0 2C 03 00 00 */ cmpwi r3, 0 /* 801CA754 001C63B4 41 82 00 2C */ beq lbl_801CA780 /* 801CA758 001C63B8 48 00 00 4C */ b lbl_801CA7A4 lbl_801CA75C: /* 801CA75C 001C63BC 54 80 03 3F */ clrlwi. r0, r4, 0xc /* 801CA760 001C63C0 40 82 00 10 */ bne lbl_801CA770 /* 801CA764 001C63C4 80 01 00 0C */ lwz r0, 0xc(r1) /* 801CA768 001C63C8 2C 00 00 00 */ cmpwi r0, 0 /* 801CA76C 001C63CC 41 82 00 0C */ beq lbl_801CA778 lbl_801CA770: /* 801CA770 001C63D0 38 60 00 01 */ li r3, 1 /* 801CA774 001C63D4 48 00 00 34 */ b lbl_801CA7A8 lbl_801CA778: /* 801CA778 001C63D8 38 60 00 02 */ li r3, 2 /* 801CA77C 001C63DC 48 00 00 2C */ b lbl_801CA7A8 lbl_801CA780: /* 801CA780 001C63E0 54 80 03 3F */ clrlwi. r0, r4, 0xc /* 801CA784 001C63E4 40 82 00 10 */ bne lbl_801CA794 /* 801CA788 001C63E8 80 01 00 0C */ lwz r0, 0xc(r1) /* 801CA78C 001C63EC 2C 00 00 00 */ cmpwi r0, 0 /* 801CA790 001C63F0 41 82 00 0C */ beq lbl_801CA79C lbl_801CA794: /* 801CA794 001C63F4 38 60 00 05 */ li r3, 5 /* 801CA798 001C63F8 48 00 00 10 */ b lbl_801CA7A8 lbl_801CA79C: /* 801CA79C 001C63FC 38 60 00 03 */ li r3, 3 /* 801CA7A0 001C6400 48 00 00 08 */ b lbl_801CA7A8 lbl_801CA7A4: /* 801CA7A4 001C6404 38 60 00 04 */ li r3, 4 lbl_801CA7A8: /* 801CA7A8 001C6408 38 21 00 10 */ addi r1, r1, 0x10 /* 801CA7AC 001C640C 4E 80 00 20 */ blr