.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global cos cos: /* 801D4078 001CFCD8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801D407C 001CFCDC 7C 08 02 A6 */ mflr r0 /* 801D4080 001CFCE0 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha /* 801D4084 001CFCE4 C8 42 95 80 */ lfd f2, lbl_80641B80-_SDA2_BASE_(r2) /* 801D4088 001CFCE8 D8 21 00 08 */ stfd f1, 8(r1) /* 801D408C 001CFCEC 90 01 00 24 */ stw r0, 0x24(r1) /* 801D4090 001CFCF0 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l /* 801D4094 001CFCF4 80 61 00 08 */ lwz r3, 8(r1) /* 801D4098 001CFCF8 54 63 00 7E */ clrlwi r3, r3, 1 /* 801D409C 001CFCFC 7C 03 00 00 */ cmpw r3, r0 /* 801D40A0 001CFD00 41 81 00 0C */ bgt lbl_801D40AC /* 801D40A4 001CFD04 4B FF E2 35 */ bl __kernel_cos /* 801D40A8 001CFD08 48 00 00 94 */ b lbl_801D413C lbl_801D40AC: /* 801D40AC 001CFD0C 3C 00 7F F0 */ lis r0, 0x7ff0 /* 801D40B0 001CFD10 7C 03 00 00 */ cmpw r3, r0 /* 801D40B4 001CFD14 41 80 00 0C */ blt lbl_801D40C0 /* 801D40B8 001CFD18 FC 21 08 28 */ fsub f1, f1, f1 /* 801D40BC 001CFD1C 48 00 00 80 */ b lbl_801D413C lbl_801D40C0: /* 801D40C0 001CFD20 38 61 00 10 */ addi r3, r1, 0x10 /* 801D40C4 001CFD24 4B FF DE 7D */ bl __ieee754_rem_pio2 /* 801D40C8 001CFD28 54 60 07 BE */ clrlwi r0, r3, 0x1e /* 801D40CC 001CFD2C 2C 00 00 01 */ cmpwi r0, 1 /* 801D40D0 001CFD30 41 82 00 30 */ beq lbl_801D4100 /* 801D40D4 001CFD34 40 80 00 10 */ bge lbl_801D40E4 /* 801D40D8 001CFD38 2C 00 00 00 */ cmpwi r0, 0 /* 801D40DC 001CFD3C 40 80 00 14 */ bge lbl_801D40F0 /* 801D40E0 001CFD40 48 00 00 4C */ b lbl_801D412C lbl_801D40E4: /* 801D40E4 001CFD44 2C 00 00 03 */ cmpwi r0, 3 /* 801D40E8 001CFD48 40 80 00 44 */ bge lbl_801D412C /* 801D40EC 001CFD4C 48 00 00 2C */ b lbl_801D4118 lbl_801D40F0: /* 801D40F0 001CFD50 C8 21 00 10 */ lfd f1, 0x10(r1) /* 801D40F4 001CFD54 C8 41 00 18 */ lfd f2, 0x18(r1) /* 801D40F8 001CFD58 4B FF E1 E1 */ bl __kernel_cos /* 801D40FC 001CFD5C 48 00 00 40 */ b lbl_801D413C lbl_801D4100: /* 801D4100 001CFD60 C8 21 00 10 */ lfd f1, 0x10(r1) /* 801D4104 001CFD64 38 60 00 01 */ li r3, 1 /* 801D4108 001CFD68 C8 41 00 18 */ lfd f2, 0x18(r1) /* 801D410C 001CFD6C 4B FF F9 E9 */ bl __kernel_sin /* 801D4110 001CFD70 FC 20 08 50 */ fneg f1, f1 /* 801D4114 001CFD74 48 00 00 28 */ b lbl_801D413C lbl_801D4118: /* 801D4118 001CFD78 C8 21 00 10 */ lfd f1, 0x10(r1) /* 801D411C 001CFD7C C8 41 00 18 */ lfd f2, 0x18(r1) /* 801D4120 001CFD80 4B FF E1 B9 */ bl __kernel_cos /* 801D4124 001CFD84 FC 20 08 50 */ fneg f1, f1 /* 801D4128 001CFD88 48 00 00 14 */ b lbl_801D413C lbl_801D412C: /* 801D412C 001CFD8C C8 21 00 10 */ lfd f1, 0x10(r1) /* 801D4130 001CFD90 38 60 00 01 */ li r3, 1 /* 801D4134 001CFD94 C8 41 00 18 */ lfd f2, 0x18(r1) /* 801D4138 001CFD98 4B FF F9 BD */ bl __kernel_sin lbl_801D413C: /* 801D413C 001CFD9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 801D4140 001CFDA0 7C 08 03 A6 */ mtlr r0 /* 801D4144 001CFDA4 38 21 00 20 */ addi r1, r1, 0x20 /* 801D4148 001CFDA8 4E 80 00 20 */ blr