1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global SinFIdx__Q24nw4r4mathFf
SinFIdx__Q24nw4r4mathFf:
/* 80384CDC 0038093C FC 60 0A 10 */ fabs f3, f1
/* 80384CE0 00380940 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80384CE4 00380944 C0 02 A8 20 */ lfs f0, lbl_80642E20-_SDA2_BASE_(r2)
/* 80384CE8 00380948 48 00 00 08 */ b lbl_80384CF0
lbl_80384CEC:
/* 80384CEC 0038094C EC 63 00 28 */ fsubs f3, f3, f0
lbl_80384CF0:
/* 80384CF0 00380950 FC 03 00 40 */ fcmpo cr0, f3, f0
/* 80384CF4 00380954 4C 41 13 82 */ cror 2, 1, 2
/* 80384CF8 00380958 41 82 FF F4 */ beq lbl_80384CEC
/* 80384CFC 0038095C F0 61 B0 0C */ psq_st f3, 12(r1), 1, qr3
/* 80384D00 00380960 A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80384D04 00380964 B0 01 00 08 */ sth r0, 8(r1)
/* 80384D08 00380968 E0 41 B0 08 */ psq_l f2, 8(r1), 1, qr3
/* 80384D0C 0038096C 3C 80 80 45 */ lis r4, lbl_8044D120@ha
/* 80384D10 00380970 54 00 25 36 */ rlwinm r0, r0, 4, 0x14, 0x1b
/* 80384D14 00380974 C0 02 A8 24 */ lfs f0, lbl_80642E24-_SDA2_BASE_(r2)
/* 80384D18 00380978 38 84 D1 20 */ addi r4, r4, lbl_8044D120@l
/* 80384D1C 0038097C EC 83 10 28 */ fsubs f4, f3, f2
/* 80384D20 00380980 7C 64 02 14 */ add r3, r4, r0
/* 80384D24 00380984 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80384D28 00380988 C0 63 00 08 */ lfs f3, 8(r3)
/* 80384D2C 0038098C 7C 44 04 2E */ lfsx f2, r4, r0
/* 80384D30 00380990 EC 04 00 F2 */ fmuls f0, f4, f3
/* 80384D34 00380994 EC 22 00 2A */ fadds f1, f2, f0
/* 80384D38 00380998 40 80 00 08 */ bge lbl_80384D40
/* 80384D3C 0038099C FC 20 08 50 */ fneg f1, f1
lbl_80384D40:
/* 80384D40 003809A0 38 21 00 10 */ addi r1, r1, 0x10
/* 80384D44 003809A4 4E 80 00 20 */ blr
.global CosFIdx__Q24nw4r4mathFf
CosFIdx__Q24nw4r4mathFf:
/* 80384D48 003809A8 FC 20 0A 10 */ fabs f1, f1
/* 80384D4C 003809AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80384D50 003809B0 C0 02 A8 20 */ lfs f0, lbl_80642E20-_SDA2_BASE_(r2)
/* 80384D54 003809B4 48 00 00 08 */ b lbl_80384D5C
lbl_80384D58:
/* 80384D58 003809B8 EC 21 00 28 */ fsubs f1, f1, f0
lbl_80384D5C:
/* 80384D5C 003809BC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80384D60 003809C0 4C 41 13 82 */ cror 2, 1, 2
/* 80384D64 003809C4 41 82 FF F4 */ beq lbl_80384D58
/* 80384D68 003809C8 F0 21 B0 0C */ psq_st f1, 12(r1), 1, qr3
/* 80384D6C 003809CC A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80384D70 003809D0 B0 01 00 08 */ sth r0, 8(r1)
/* 80384D74 003809D4 E0 01 B0 08 */ psq_l f0, 8(r1), 1, qr3
/* 80384D78 003809D8 3C 60 80 45 */ lis r3, lbl_8044D120@ha
/* 80384D7C 003809DC 54 00 25 36 */ rlwinm r0, r0, 4, 0x14, 0x1b
/* 80384D80 003809E0 38 63 D1 20 */ addi r3, r3, lbl_8044D120@l
/* 80384D84 003809E4 EC 41 00 28 */ fsubs f2, f1, f0
/* 80384D88 003809E8 7C 63 02 14 */ add r3, r3, r0
/* 80384D8C 003809EC C0 23 00 0C */ lfs f1, 0xc(r3)
/* 80384D90 003809F0 C0 03 00 04 */ lfs f0, 4(r3)
/* 80384D94 003809F4 EC 22 00 72 */ fmuls f1, f2, f1
/* 80384D98 003809F8 EC 20 08 2A */ fadds f1, f0, f1
/* 80384D9C 003809FC 38 21 00 10 */ addi r1, r1, 0x10
/* 80384DA0 00380A00 4E 80 00 20 */ blr
.global Atan2FIdx__Q24nw4r4mathFff
Atan2FIdx__Q24nw4r4mathFff:
/* 80384DA4 00380A04 C0 02 A8 24 */ lfs f0, lbl_80642E24-_SDA2_BASE_(r2)
/* 80384DA8 00380A08 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80384DAC 00380A0C FC 00 10 00 */ fcmpu cr0, f0, f2
/* 80384DB0 00380A10 40 82 00 14 */ bne lbl_80384DC4
/* 80384DB4 00380A14 FC 00 08 00 */ fcmpu cr0, f0, f1
/* 80384DB8 00380A18 40 82 00 0C */ bne lbl_80384DC4
/* 80384DBC 00380A1C FC 20 00 90 */ fmr f1, f0
/* 80384DC0 00380A20 48 00 01 84 */ b lbl_80384F44
lbl_80384DC4:
/* 80384DC4 00380A24 C0 82 A8 24 */ lfs f4, lbl_80642E24-_SDA2_BASE_(r2)
/* 80384DC8 00380A28 FC 02 20 40 */ fcmpo cr0, f2, f4
/* 80384DCC 00380A2C 4C 41 13 82 */ cror 2, 1, 2
/* 80384DD0 00380A30 40 82 00 6C */ bne lbl_80384E3C
/* 80384DD4 00380A34 FC 01 20 40 */ fcmpo cr0, f1, f4
/* 80384DD8 00380A38 4C 41 13 82 */ cror 2, 1, 2
/* 80384DDC 00380A3C 40 82 00 30 */ bne lbl_80384E0C
/* 80384DE0 00380A40 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 80384DE4 00380A44 4C 41 13 82 */ cror 2, 1, 2
/* 80384DE8 00380A48 40 82 00 10 */ bne lbl_80384DF8
/* 80384DEC 00380A4C FC 60 10 90 */ fmr f3, f2
/* 80384DF0 00380A50 38 00 00 00 */ li r0, 0
/* 80384DF4 00380A54 48 00 00 BC */ b lbl_80384EB0
lbl_80384DF8:
/* 80384DF8 00380A58 FC 60 08 90 */ fmr f3, f1
/* 80384DFC 00380A5C C0 82 A8 2C */ lfs f4, lbl_80642E2C-_SDA2_BASE_(r2)
/* 80384E00 00380A60 FC 20 10 90 */ fmr f1, f2
/* 80384E04 00380A64 38 00 00 01 */ li r0, 1
/* 80384E08 00380A68 48 00 00 A8 */ b lbl_80384EB0
lbl_80384E0C:
/* 80384E0C 00380A6C FC 20 08 50 */ fneg f1, f1
/* 80384E10 00380A70 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 80384E14 00380A74 4C 41 13 82 */ cror 2, 1, 2
/* 80384E18 00380A78 40 82 00 10 */ bne lbl_80384E28
/* 80384E1C 00380A7C FC 60 10 90 */ fmr f3, f2
/* 80384E20 00380A80 38 00 00 01 */ li r0, 1
/* 80384E24 00380A84 48 00 00 8C */ b lbl_80384EB0
lbl_80384E28:
/* 80384E28 00380A88 FC 60 08 90 */ fmr f3, f1
/* 80384E2C 00380A8C C0 82 A8 30 */ lfs f4, lbl_80642E30-_SDA2_BASE_(r2)
/* 80384E30 00380A90 FC 20 10 90 */ fmr f1, f2
/* 80384E34 00380A94 38 00 00 00 */ li r0, 0
/* 80384E38 00380A98 48 00 00 78 */ b lbl_80384EB0
lbl_80384E3C:
/* 80384E3C 00380A9C FC 01 20 40 */ fcmpo cr0, f1, f4
/* 80384E40 00380AA0 4C 41 13 82 */ cror 2, 1, 2
/* 80384E44 00380AA4 40 82 00 38 */ bne lbl_80384E7C
/* 80384E48 00380AA8 FC 00 10 50 */ fneg f0, f2
/* 80384E4C 00380AAC FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80384E50 00380AB0 4C 41 13 82 */ cror 2, 1, 2
/* 80384E54 00380AB4 40 82 00 14 */ bne lbl_80384E68
/* 80384E58 00380AB8 FC 60 00 90 */ fmr f3, f0
/* 80384E5C 00380ABC C0 82 A8 34 */ lfs f4, lbl_80642E34-_SDA2_BASE_(r2)
/* 80384E60 00380AC0 38 00 00 01 */ li r0, 1
/* 80384E64 00380AC4 48 00 00 4C */ b lbl_80384EB0
lbl_80384E68:
/* 80384E68 00380AC8 FC 60 08 90 */ fmr f3, f1
/* 80384E6C 00380ACC C0 82 A8 2C */ lfs f4, lbl_80642E2C-_SDA2_BASE_(r2)
/* 80384E70 00380AD0 FC 20 00 90 */ fmr f1, f0
/* 80384E74 00380AD4 38 00 00 00 */ li r0, 0
/* 80384E78 00380AD8 48 00 00 38 */ b lbl_80384EB0
lbl_80384E7C:
/* 80384E7C 00380ADC FC 00 10 50 */ fneg f0, f2
/* 80384E80 00380AE0 FC 20 08 50 */ fneg f1, f1
/* 80384E84 00380AE4 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80384E88 00380AE8 4C 41 13 82 */ cror 2, 1, 2
/* 80384E8C 00380AEC 40 82 00 14 */ bne lbl_80384EA0
/* 80384E90 00380AF0 FC 60 00 90 */ fmr f3, f0
/* 80384E94 00380AF4 C0 82 A8 38 */ lfs f4, lbl_80642E38-_SDA2_BASE_(r2)
/* 80384E98 00380AF8 38 00 00 00 */ li r0, 0
/* 80384E9C 00380AFC 48 00 00 14 */ b lbl_80384EB0
lbl_80384EA0:
/* 80384EA0 00380B00 FC 60 08 90 */ fmr f3, f1
/* 80384EA4 00380B04 C0 82 A8 30 */ lfs f4, lbl_80642E30-_SDA2_BASE_(r2)
/* 80384EA8 00380B08 FC 20 00 90 */ fmr f1, f0
/* 80384EAC 00380B0C 38 00 00 01 */ li r0, 1
lbl_80384EB0:
/* 80384EB0 00380B10 2C 00 00 00 */ cmpwi r0, 0
/* 80384EB4 00380B14 41 82 00 4C */ beq lbl_80384F00
/* 80384EB8 00380B18 EC 21 18 24 */ fdivs f1, f1, f3
/* 80384EBC 00380B1C C0 02 A8 28 */ lfs f0, lbl_80642E28-_SDA2_BASE_(r2)
/* 80384EC0 00380B20 EC 21 00 32 */ fmuls f1, f1, f0
/* 80384EC4 00380B24 F0 21 B0 10 */ psq_st f1, 16(r1), 1, qr3
/* 80384EC8 00380B28 A0 01 00 10 */ lhz r0, 0x10(r1)
/* 80384ECC 00380B2C B0 01 00 0A */ sth r0, 0xa(r1)
/* 80384ED0 00380B30 E0 01 B0 0A */ psq_l f0, 10(r1), 1, qr3
/* 80384ED4 00380B34 3C 80 80 45 */ lis r4, lbl_8044E130@ha
/* 80384ED8 00380B38 54 00 18 38 */ slwi r0, r0, 3
/* 80384EDC 00380B3C 38 84 E1 30 */ addi r4, r4, lbl_8044E130@l
/* 80384EE0 00380B40 EC 41 00 28 */ fsubs f2, f1, f0
/* 80384EE4 00380B44 7C 64 02 14 */ add r3, r4, r0
/* 80384EE8 00380B48 7C 04 04 2E */ lfsx f0, r4, r0
/* 80384EEC 00380B4C C0 23 00 04 */ lfs f1, 4(r3)
/* 80384EF0 00380B50 EC 22 00 72 */ fmuls f1, f2, f1
/* 80384EF4 00380B54 EC 00 08 2A */ fadds f0, f0, f1
/* 80384EF8 00380B58 EC 24 00 28 */ fsubs f1, f4, f0
/* 80384EFC 00380B5C 48 00 00 48 */ b lbl_80384F44
lbl_80384F00:
/* 80384F00 00380B60 EC 21 18 24 */ fdivs f1, f1, f3
/* 80384F04 00380B64 C0 02 A8 28 */ lfs f0, lbl_80642E28-_SDA2_BASE_(r2)
/* 80384F08 00380B68 EC 21 00 32 */ fmuls f1, f1, f0
/* 80384F0C 00380B6C F0 21 B0 0C */ psq_st f1, 12(r1), 1, qr3
/* 80384F10 00380B70 A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80384F14 00380B74 B0 01 00 08 */ sth r0, 8(r1)
/* 80384F18 00380B78 E0 01 B0 08 */ psq_l f0, 8(r1), 1, qr3
/* 80384F1C 00380B7C 3C 80 80 45 */ lis r4, lbl_8044E130@ha
/* 80384F20 00380B80 54 00 18 38 */ slwi r0, r0, 3
/* 80384F24 00380B84 38 84 E1 30 */ addi r4, r4, lbl_8044E130@l
/* 80384F28 00380B88 EC 41 00 28 */ fsubs f2, f1, f0
/* 80384F2C 00380B8C 7C 64 02 14 */ add r3, r4, r0
/* 80384F30 00380B90 7C 04 04 2E */ lfsx f0, r4, r0
/* 80384F34 00380B94 C0 23 00 04 */ lfs f1, 4(r3)
/* 80384F38 00380B98 EC 22 00 72 */ fmuls f1, f2, f1
/* 80384F3C 00380B9C EC 00 08 2A */ fadds f0, f0, f1
/* 80384F40 00380BA0 EC 24 00 2A */ fadds f1, f4, f0
lbl_80384F44:
/* 80384F44 00380BA4 38 21 00 20 */ addi r1, r1, 0x20
/* 80384F48 00380BA8 4E 80 00 20 */ blr
|