summaryrefslogtreecommitdiff
path: root/asm/MSL_C/MSL_Common_Embedded/Math/e_pow.s
blob: 0e021ff680189f91642e2959acba1f4eaf2750ea (plain)
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
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global __ieee754_pow
__ieee754_pow:
/* 801D16F8 001CD358  94 21 FF 40 */	stwu r1, -0xc0(r1)
/* 801D16FC 001CD35C  7C 08 02 A6 */	mflr r0
/* 801D1700 001CD360  90 01 00 C4 */	stw r0, 0xc4(r1)
/* 801D1704 001CD364  DB E1 00 B0 */	stfd f31, 0xb0(r1)
/* 801D1708 001CD368  F3 E1 00 B8 */	psq_st f31, 184(r1), 0, qr0
/* 801D170C 001CD36C  DB C1 00 A0 */	stfd f30, 0xa0(r1)
/* 801D1710 001CD370  F3 C1 00 A8 */	psq_st f30, 168(r1), 0, qr0
/* 801D1714 001CD374  DB A1 00 90 */	stfd f29, 0x90(r1)
/* 801D1718 001CD378  F3 A1 00 98 */	psq_st f29, 152(r1), 0, qr0
/* 801D171C 001CD37C  DB 81 00 80 */	stfd f28, 0x80(r1)
/* 801D1720 001CD380  F3 81 00 88 */	psq_st f28, 136(r1), 0, qr0
/* 801D1724 001CD384  DB 61 00 70 */	stfd f27, 0x70(r1)
/* 801D1728 001CD388  F3 61 00 78 */	psq_st f27, 120(r1), 0, qr0
/* 801D172C 001CD38C  DB 41 00 60 */	stfd f26, 0x60(r1)
/* 801D1730 001CD390  F3 41 00 68 */	psq_st f26, 104(r1), 0, qr0
/* 801D1734 001CD394  D8 41 00 10 */	stfd f2, 0x10(r1)
/* 801D1738 001CD398  3C 60 80 40 */	lis r3, lbl_803FD338@ha
/* 801D173C 001CD39C  38 63 D3 38 */	addi r3, r3, lbl_803FD338@l
/* 801D1740 001CD3A0  80 A1 00 10 */	lwz r5, 0x10(r1)
/* 801D1744 001CD3A4  D8 21 00 08 */	stfd f1, 8(r1)
/* 801D1748 001CD3A8  81 61 00 14 */	lwz r11, 0x14(r1)
/* 801D174C 001CD3AC  54 A7 00 7E */	clrlwi r7, r5, 1
/* 801D1750 001CD3B0  81 21 00 08 */	lwz r9, 8(r1)
/* 801D1754 001CD3B4  7C E0 5B 79 */	or. r0, r7, r11
/* 801D1758 001CD3B8  81 41 00 0C */	lwz r10, 0xc(r1)
/* 801D175C 001CD3BC  55 26 00 7E */	clrlwi r6, r9, 1
/* 801D1760 001CD3C0  40 82 00 0C */	bne lbl_801D176C
/* 801D1764 001CD3C4  C8 22 92 F8 */	lfd f1, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D1768 001CD3C8  48 00 07 98 */	b lbl_801D1F00
lbl_801D176C:
/* 801D176C 001CD3CC  3C 00 7F F0 */	lis r0, 0x7ff0
/* 801D1770 001CD3D0  7C 06 00 00 */	cmpw r6, r0
/* 801D1774 001CD3D4  41 81 00 38 */	bgt lbl_801D17AC
/* 801D1778 001CD3D8  3C 06 80 10 */	addis r0, r6, 0x8010
/* 801D177C 001CD3DC  28 00 00 00 */	cmplwi r0, 0
/* 801D1780 001CD3E0  40 82 00 0C */	bne lbl_801D178C
/* 801D1784 001CD3E4  2C 0A 00 00 */	cmpwi r10, 0
/* 801D1788 001CD3E8  40 82 00 24 */	bne lbl_801D17AC
lbl_801D178C:
/* 801D178C 001CD3EC  3C 00 7F F0 */	lis r0, 0x7ff0
/* 801D1790 001CD3F0  7C 07 00 00 */	cmpw r7, r0
/* 801D1794 001CD3F4  41 81 00 18 */	bgt lbl_801D17AC
/* 801D1798 001CD3F8  3C 07 80 10 */	addis r0, r7, 0x8010
/* 801D179C 001CD3FC  28 00 00 00 */	cmplwi r0, 0
/* 801D17A0 001CD400  40 82 00 14 */	bne lbl_801D17B4
/* 801D17A4 001CD404  2C 0B 00 00 */	cmpwi r11, 0
/* 801D17A8 001CD408  41 82 00 0C */	beq lbl_801D17B4
lbl_801D17AC:
/* 801D17AC 001CD40C  FC 21 10 2A */	fadd f1, f1, f2
/* 801D17B0 001CD410  48 00 07 50 */	b lbl_801D1F00
lbl_801D17B4:
/* 801D17B4 001CD414  2C 09 00 00 */	cmpwi r9, 0
/* 801D17B8 001CD418  38 80 00 00 */	li r4, 0
/* 801D17BC 001CD41C  40 80 00 78 */	bge lbl_801D1834
/* 801D17C0 001CD420  3C 00 43 40 */	lis r0, 0x4340
/* 801D17C4 001CD424  7C 07 00 00 */	cmpw r7, r0
/* 801D17C8 001CD428  41 80 00 0C */	blt lbl_801D17D4
/* 801D17CC 001CD42C  38 80 00 02 */	li r4, 2
/* 801D17D0 001CD430  48 00 00 64 */	b lbl_801D1834
lbl_801D17D4:
/* 801D17D4 001CD434  3C 00 3F F0 */	lis r0, 0x3ff0
/* 801D17D8 001CD438  7C 07 00 00 */	cmpw r7, r0
/* 801D17DC 001CD43C  41 80 00 58 */	blt lbl_801D1834
/* 801D17E0 001CD440  7C E8 A6 70 */	srawi r8, r7, 0x14
/* 801D17E4 001CD444  38 08 FC 01 */	addi r0, r8, -1023
/* 801D17E8 001CD448  2C 00 00 14 */	cmpwi r0, 0x14
/* 801D17EC 001CD44C  40 81 00 24 */	ble lbl_801D1810
/* 801D17F0 001CD450  20 00 00 34 */	subfic r0, r0, 0x34
/* 801D17F4 001CD454  7D 68 04 30 */	srw r8, r11, r0
/* 801D17F8 001CD458  7D 00 00 30 */	slw r0, r8, r0
/* 801D17FC 001CD45C  7C 0B 00 40 */	cmplw r11, r0
/* 801D1800 001CD460  40 82 00 34 */	bne lbl_801D1834
/* 801D1804 001CD464  55 00 07 FE */	clrlwi r0, r8, 0x1f
/* 801D1808 001CD468  20 80 00 02 */	subfic r4, r0, 2
/* 801D180C 001CD46C  48 00 00 28 */	b lbl_801D1834
lbl_801D1810:
/* 801D1810 001CD470  2C 0B 00 00 */	cmpwi r11, 0
/* 801D1814 001CD474  40 82 00 20 */	bne lbl_801D1834
/* 801D1818 001CD478  20 00 00 14 */	subfic r0, r0, 0x14
/* 801D181C 001CD47C  7C E8 06 30 */	sraw r8, r7, r0
/* 801D1820 001CD480  7D 00 00 30 */	slw r0, r8, r0
/* 801D1824 001CD484  7C 07 00 00 */	cmpw r7, r0
/* 801D1828 001CD488  40 82 00 0C */	bne lbl_801D1834
/* 801D182C 001CD48C  55 00 07 FE */	clrlwi r0, r8, 0x1f
/* 801D1830 001CD490  20 80 00 02 */	subfic r4, r0, 2
lbl_801D1834:
/* 801D1834 001CD494  2C 0B 00 00 */	cmpwi r11, 0
/* 801D1838 001CD498  40 82 00 B0 */	bne lbl_801D18E8
/* 801D183C 001CD49C  3C 07 80 10 */	addis r0, r7, 0x8010
/* 801D1840 001CD4A0  28 00 00 00 */	cmplwi r0, 0
/* 801D1844 001CD4A4  40 82 00 54 */	bne lbl_801D1898
/* 801D1848 001CD4A8  3C 06 C0 10 */	addis r0, r6, 0xc010
/* 801D184C 001CD4AC  7C 00 53 79 */	or. r0, r0, r10
/* 801D1850 001CD4B0  40 82 00 0C */	bne lbl_801D185C
/* 801D1854 001CD4B4  FC 22 10 28 */	fsub f1, f2, f2
/* 801D1858 001CD4B8  48 00 06 A8 */	b lbl_801D1F00
lbl_801D185C:
/* 801D185C 001CD4BC  3C 00 3F F0 */	lis r0, 0x3ff0
/* 801D1860 001CD4C0  7C 06 00 00 */	cmpw r6, r0
/* 801D1864 001CD4C4  41 80 00 1C */	blt lbl_801D1880
/* 801D1868 001CD4C8  2C 05 00 00 */	cmpwi r5, 0
/* 801D186C 001CD4CC  41 80 00 0C */	blt lbl_801D1878
/* 801D1870 001CD4D0  FC 20 10 90 */	fmr f1, f2
/* 801D1874 001CD4D4  48 00 06 8C */	b lbl_801D1F00
lbl_801D1878:
/* 801D1878 001CD4D8  C8 22 93 00 */	lfd f1, lbl_80641900-_SDA2_BASE_(r2)
/* 801D187C 001CD4DC  48 00 06 84 */	b lbl_801D1F00
lbl_801D1880:
/* 801D1880 001CD4E0  2C 05 00 00 */	cmpwi r5, 0
/* 801D1884 001CD4E4  40 80 00 0C */	bge lbl_801D1890
/* 801D1888 001CD4E8  FC 20 10 50 */	fneg f1, f2
/* 801D188C 001CD4EC  48 00 06 74 */	b lbl_801D1F00
lbl_801D1890:
/* 801D1890 001CD4F0  C8 22 93 00 */	lfd f1, lbl_80641900-_SDA2_BASE_(r2)
/* 801D1894 001CD4F4  48 00 06 6C */	b lbl_801D1F00
lbl_801D1898:
/* 801D1898 001CD4F8  3C 07 C0 10 */	addis r0, r7, 0xc010
/* 801D189C 001CD4FC  28 00 00 00 */	cmplwi r0, 0
/* 801D18A0 001CD500  40 82 00 18 */	bne lbl_801D18B8
/* 801D18A4 001CD504  2C 05 00 00 */	cmpwi r5, 0
/* 801D18A8 001CD508  40 80 06 58 */	bge lbl_801D1F00
/* 801D18AC 001CD50C  C8 02 92 F8 */	lfd f0, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D18B0 001CD510  FC 20 08 24 */	fdiv f1, f0, f1
/* 801D18B4 001CD514  48 00 06 4C */	b lbl_801D1F00
lbl_801D18B8:
/* 801D18B8 001CD518  3C 05 C0 00 */	addis r0, r5, 0xc000
/* 801D18BC 001CD51C  28 00 00 00 */	cmplwi r0, 0
/* 801D18C0 001CD520  40 82 00 0C */	bne lbl_801D18CC
/* 801D18C4 001CD524  FC 21 00 72 */	fmul f1, f1, f1
/* 801D18C8 001CD528  48 00 06 38 */	b lbl_801D1F00
lbl_801D18CC:
/* 801D18CC 001CD52C  3C 05 C0 20 */	addis r0, r5, 0xc020
/* 801D18D0 001CD530  28 00 00 00 */	cmplwi r0, 0
/* 801D18D4 001CD534  40 82 00 14 */	bne lbl_801D18E8
/* 801D18D8 001CD538  2C 09 00 00 */	cmpwi r9, 0
/* 801D18DC 001CD53C  41 80 00 0C */	blt lbl_801D18E8
/* 801D18E0 001CD540  48 00 2F 55 */	bl sqrt
/* 801D18E4 001CD544  48 00 06 1C */	b lbl_801D1F00
lbl_801D18E8:
/* 801D18E8 001CD548  FC 00 0A 10 */	fabs f0, f1
/* 801D18EC 001CD54C  2C 0A 00 00 */	cmpwi r10, 0
/* 801D18F0 001CD550  D8 01 00 48 */	stfd f0, 0x48(r1)
/* 801D18F4 001CD554  40 82 00 78 */	bne lbl_801D196C
/* 801D18F8 001CD558  3C 06 80 10 */	addis r0, r6, 0x8010
/* 801D18FC 001CD55C  28 00 00 00 */	cmplwi r0, 0
/* 801D1900 001CD560  41 82 00 18 */	beq lbl_801D1918
/* 801D1904 001CD564  2C 06 00 00 */	cmpwi r6, 0
/* 801D1908 001CD568  41 82 00 10 */	beq lbl_801D1918
/* 801D190C 001CD56C  3C 06 C0 10 */	addis r0, r6, 0xc010
/* 801D1910 001CD570  28 00 00 00 */	cmplwi r0, 0
/* 801D1914 001CD574  40 82 00 58 */	bne lbl_801D196C
lbl_801D1918:
/* 801D1918 001CD578  2C 05 00 00 */	cmpwi r5, 0
/* 801D191C 001CD57C  D8 01 00 50 */	stfd f0, 0x50(r1)
/* 801D1920 001CD580  40 80 00 10 */	bge lbl_801D1930
/* 801D1924 001CD584  C8 22 92 F8 */	lfd f1, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D1928 001CD588  FC 01 00 24 */	fdiv f0, f1, f0
/* 801D192C 001CD58C  D8 01 00 50 */	stfd f0, 0x50(r1)
lbl_801D1930:
/* 801D1930 001CD590  2C 09 00 00 */	cmpwi r9, 0
/* 801D1934 001CD594  40 80 00 30 */	bge lbl_801D1964
/* 801D1938 001CD598  3C 06 C0 10 */	addis r0, r6, 0xc010
/* 801D193C 001CD59C  7C 00 23 79 */	or. r0, r0, r4
/* 801D1940 001CD5A0  40 82 00 14 */	bne lbl_801D1954
/* 801D1944 001CD5A4  FC 00 00 28 */	fsub f0, f0, f0
/* 801D1948 001CD5A8  FC 00 00 24 */	fdiv f0, f0, f0
/* 801D194C 001CD5AC  D8 01 00 50 */	stfd f0, 0x50(r1)
/* 801D1950 001CD5B0  48 00 00 14 */	b lbl_801D1964
lbl_801D1954:
/* 801D1954 001CD5B4  2C 04 00 01 */	cmpwi r4, 1
/* 801D1958 001CD5B8  40 82 00 0C */	bne lbl_801D1964
/* 801D195C 001CD5BC  FC 00 00 50 */	fneg f0, f0
/* 801D1960 001CD5C0  D8 01 00 50 */	stfd f0, 0x50(r1)
lbl_801D1964:
/* 801D1964 001CD5C4  FC 20 00 90 */	fmr f1, f0
/* 801D1968 001CD5C8  48 00 05 98 */	b lbl_801D1F00
lbl_801D196C:
/* 801D196C 001CD5CC  7D 28 FE 70 */	srawi r8, r9, 0x1f
/* 801D1970 001CD5D0  38 08 00 01 */	addi r0, r8, 1
/* 801D1974 001CD5D4  7C 08 23 79 */	or. r8, r0, r4
/* 801D1978 001CD5D8  40 82 00 18 */	bne lbl_801D1990
/* 801D197C 001CD5DC  38 00 00 21 */	li r0, 0x21
/* 801D1980 001CD5E0  3C 60 80 64 */	lis r3, lbl_8063D6B8@ha
/* 801D1984 001CD5E4  90 0D 9F C8 */	stw r0, lbl_8063F288-_SDA_BASE_(r13)
/* 801D1988 001CD5E8  C0 23 D6 B8 */	lfs f1, lbl_8063D6B8@l(r3)
/* 801D198C 001CD5EC  48 00 05 74 */	b lbl_801D1F00
lbl_801D1990:
/* 801D1990 001CD5F0  3D 00 41 E0 */	lis r8, 0x41e0
/* 801D1994 001CD5F4  7C 07 40 00 */	cmpw r7, r8
/* 801D1998 001CD5F8  40 81 01 0C */	ble lbl_801D1AA4
/* 801D199C 001CD5FC  3C 60 43 F0 */	lis r3, 0x43f0
/* 801D19A0 001CD600  7C 07 18 00 */	cmpw r7, r3
/* 801D19A4 001CD604  40 81 00 4C */	ble lbl_801D19F0
/* 801D19A8 001CD608  3C 60 3F F0 */	lis r3, 0x3FEFFFFF@ha
/* 801D19AC 001CD60C  38 E3 FF FF */	addi r7, r3, 0x3FEFFFFF@l
/* 801D19B0 001CD610  7C 06 38 00 */	cmpw r6, r7
/* 801D19B4 001CD614  41 81 00 1C */	bgt lbl_801D19D0
/* 801D19B8 001CD618  2C 05 00 00 */	cmpwi r5, 0
/* 801D19BC 001CD61C  40 80 00 0C */	bge lbl_801D19C8
/* 801D19C0 001CD620  C8 22 93 08 */	lfd f1, lbl_80641908-_SDA2_BASE_(r2)
/* 801D19C4 001CD624  48 00 05 3C */	b lbl_801D1F00
lbl_801D19C8:
/* 801D19C8 001CD628  C8 22 93 00 */	lfd f1, lbl_80641900-_SDA2_BASE_(r2)
/* 801D19CC 001CD62C  48 00 05 34 */	b lbl_801D1F00
lbl_801D19D0:
/* 801D19D0 001CD630  7C 06 18 00 */	cmpw r6, r3
/* 801D19D4 001CD634  41 80 00 1C */	blt lbl_801D19F0
/* 801D19D8 001CD638  2C 05 00 00 */	cmpwi r5, 0
/* 801D19DC 001CD63C  40 81 00 0C */	ble lbl_801D19E8
/* 801D19E0 001CD640  C8 22 93 08 */	lfd f1, lbl_80641908-_SDA2_BASE_(r2)
/* 801D19E4 001CD644  48 00 05 1C */	b lbl_801D1F00
lbl_801D19E8:
/* 801D19E8 001CD648  C8 22 93 00 */	lfd f1, lbl_80641900-_SDA2_BASE_(r2)
/* 801D19EC 001CD64C  48 00 05 14 */	b lbl_801D1F00
lbl_801D19F0:
/* 801D19F0 001CD650  3C 60 3F F0 */	lis r3, 0x3FEFFFFF@ha
/* 801D19F4 001CD654  38 E3 FF FF */	addi r7, r3, 0x3FEFFFFF@l
/* 801D19F8 001CD658  7C 06 38 00 */	cmpw r6, r7
/* 801D19FC 001CD65C  40 80 00 1C */	bge lbl_801D1A18
/* 801D1A00 001CD660  2C 05 00 00 */	cmpwi r5, 0
/* 801D1A04 001CD664  40 80 00 0C */	bge lbl_801D1A10
/* 801D1A08 001CD668  C8 22 93 08 */	lfd f1, lbl_80641908-_SDA2_BASE_(r2)
/* 801D1A0C 001CD66C  48 00 04 F4 */	b lbl_801D1F00
lbl_801D1A10:
/* 801D1A10 001CD670  C8 22 93 00 */	lfd f1, lbl_80641900-_SDA2_BASE_(r2)
/* 801D1A14 001CD674  48 00 04 EC */	b lbl_801D1F00
lbl_801D1A18:
/* 801D1A18 001CD678  7C 06 18 00 */	cmpw r6, r3
/* 801D1A1C 001CD67C  40 81 00 1C */	ble lbl_801D1A38
/* 801D1A20 001CD680  2C 05 00 00 */	cmpwi r5, 0
/* 801D1A24 001CD684  40 81 00 0C */	ble lbl_801D1A30
/* 801D1A28 001CD688  C8 22 93 08 */	lfd f1, lbl_80641908-_SDA2_BASE_(r2)
/* 801D1A2C 001CD68C  48 00 04 D4 */	b lbl_801D1F00
lbl_801D1A30:
/* 801D1A30 001CD690  C8 22 93 00 */	lfd f1, lbl_80641900-_SDA2_BASE_(r2)
/* 801D1A34 001CD694  48 00 04 CC */	b lbl_801D1F00
lbl_801D1A38:
/* 801D1A38 001CD698  C8 62 92 F8 */	lfd f3, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D1A3C 001CD69C  38 60 00 00 */	li r3, 0
/* 801D1A40 001CD6A0  C8 02 93 20 */	lfd f0, lbl_80641920-_SDA2_BASE_(r2)
/* 801D1A44 001CD6A4  FD 01 18 28 */	fsub f8, f1, f3
/* 801D1A48 001CD6A8  C8 22 93 30 */	lfd f1, lbl_80641930-_SDA2_BASE_(r2)
/* 801D1A4C 001CD6AC  C8 A2 93 18 */	lfd f5, lbl_80641918-_SDA2_BASE_(r2)
/* 801D1A50 001CD6B0  C8 62 93 28 */	lfd f3, lbl_80641928-_SDA2_BASE_(r2)
/* 801D1A54 001CD6B4  FC C0 02 32 */	fmul f6, f0, f8
/* 801D1A58 001CD6B8  C8 82 93 10 */	lfd f4, lbl_80641910-_SDA2_BASE_(r2)
/* 801D1A5C 001CD6BC  C8 02 93 38 */	lfd f0, lbl_80641938-_SDA2_BASE_(r2)
/* 801D1A60 001CD6C0  FC E8 02 32 */	fmul f7, f8, f8
/* 801D1A64 001CD6C4  D9 01 00 28 */	stfd f8, 0x28(r1)
/* 801D1A68 001CD6C8  FC A5 30 28 */	fsub f5, f5, f6
/* 801D1A6C 001CD6CC  FC C3 02 32 */	fmul f6, f3, f8
/* 801D1A70 001CD6D0  FC A8 01 72 */	fmul f5, f8, f5
/* 801D1A74 001CD6D4  FC 21 02 32 */	fmul f1, f1, f8
/* 801D1A78 001CD6D8  FC 64 28 28 */	fsub f3, f4, f5
/* 801D1A7C 001CD6DC  FC 67 00 F2 */	fmul f3, f7, f3
/* 801D1A80 001CD6E0  FC 00 00 F2 */	fmul f0, f0, f3
/* 801D1A84 001CD6E4  FC 21 00 28 */	fsub f1, f1, f0
/* 801D1A88 001CD6E8  FC 06 08 2A */	fadd f0, f6, f1
/* 801D1A8C 001CD6EC  D8 01 00 30 */	stfd f0, 0x30(r1)
/* 801D1A90 001CD6F0  90 61 00 34 */	stw r3, 0x34(r1)
/* 801D1A94 001CD6F4  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 801D1A98 001CD6F8  FC 00 30 28 */	fsub f0, f0, f6
/* 801D1A9C 001CD6FC  FC 01 00 28 */	fsub f0, f1, f0
/* 801D1AA0 001CD700  48 00 02 10 */	b lbl_801D1CB0
lbl_801D1AA4:
/* 801D1AA4 001CD704  3C A0 00 10 */	lis r5, 0x10
/* 801D1AA8 001CD708  39 60 00 00 */	li r11, 0
/* 801D1AAC 001CD70C  7C 06 28 00 */	cmpw r6, r5
/* 801D1AB0 001CD710  40 80 00 18 */	bge lbl_801D1AC8
/* 801D1AB4 001CD714  C8 22 93 40 */	lfd f1, lbl_80641940-_SDA2_BASE_(r2)
/* 801D1AB8 001CD718  39 60 FF CB */	li r11, -53
/* 801D1ABC 001CD71C  FC 00 00 72 */	fmul f0, f0, f1
/* 801D1AC0 001CD720  D8 01 00 48 */	stfd f0, 0x48(r1)
/* 801D1AC4 001CD724  80 C1 00 48 */	lwz r6, 0x48(r1)
lbl_801D1AC8:
/* 801D1AC8 001CD728  3C A0 00 04 */	lis r5, 0x0003988E@ha
/* 801D1ACC 001CD72C  54 C8 03 3E */	clrlwi r8, r6, 0xc
/* 801D1AD0 001CD730  38 A5 98 8E */	addi r5, r5, 0x0003988E@l
/* 801D1AD4 001CD734  7C C6 A6 70 */	srawi r6, r6, 0x14
/* 801D1AD8 001CD738  7C 08 28 00 */	cmpw r8, r5
/* 801D1ADC 001CD73C  65 07 3F F0 */	oris r7, r8, 0x3ff0
/* 801D1AE0 001CD740  7C AB 32 14 */	add r5, r11, r6
/* 801D1AE4 001CD744  39 65 FC 01 */	addi r11, r5, -1023
/* 801D1AE8 001CD748  41 81 00 0C */	bgt lbl_801D1AF4
/* 801D1AEC 001CD74C  38 C0 00 00 */	li r6, 0
/* 801D1AF0 001CD750  48 00 00 28 */	b lbl_801D1B18
lbl_801D1AF4:
/* 801D1AF4 001CD754  3C A0 00 0C */	lis r5, 0x000BB67A@ha
/* 801D1AF8 001CD758  38 A5 B6 7A */	addi r5, r5, 0x000BB67A@l
/* 801D1AFC 001CD75C  7C 08 28 00 */	cmpw r8, r5
/* 801D1B00 001CD760  40 80 00 0C */	bge lbl_801D1B0C
/* 801D1B04 001CD764  38 C0 00 01 */	li r6, 1
/* 801D1B08 001CD768  48 00 00 10 */	b lbl_801D1B18
lbl_801D1B0C:
/* 801D1B0C 001CD76C  3C E7 FF F0 */	addis r7, r7, 0xfff0
/* 801D1B10 001CD770  38 C0 00 00 */	li r6, 0
/* 801D1B14 001CD774  39 6B 00 01 */	addi r11, r11, 1
lbl_801D1B18:
/* 801D1B18 001CD778  90 E1 00 48 */	stw r7, 0x48(r1)
/* 801D1B1C 001CD77C  7C E9 0E 70 */	srawi r9, r7, 1
/* 801D1B20 001CD780  54 CA 18 38 */	slwi r10, r6, 3
/* 801D1B24 001CD784  38 A3 00 00 */	addi r5, r3, 0
/* 801D1B28 001CD788  7C E5 54 AE */	lfdx f7, r5, r10
/* 801D1B2C 001CD78C  54 C8 90 1A */	slwi r8, r6, 0x12
/* 801D1B30 001CD790  C9 41 00 48 */	lfd f10, 0x48(r1)
/* 801D1B34 001CD794  6D 66 80 00 */	xoris r6, r11, 0x8000
/* 801D1B38 001CD798  C8 82 93 00 */	lfd f4, lbl_80641900-_SDA2_BASE_(r2)
/* 801D1B3C 001CD79C  3C A0 43 30 */	lis r5, 0x4330
/* 801D1B40 001CD7A0  FC 6A 38 2A */	fadd f3, f10, f7
/* 801D1B44 001CD7A4  C8 22 92 F8 */	lfd f1, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D1B48 001CD7A8  FF 4A 38 28 */	fsub f26, f10, f7
/* 801D1B4C 001CD7AC  D8 81 00 18 */	stfd f4, 0x18(r1)
/* 801D1B50 001CD7B0  65 29 20 00 */	oris r9, r9, 0x2000
/* 801D1B54 001CD7B4  3D 08 00 08 */	addis r8, r8, 8
/* 801D1B58 001CD7B8  FC 21 18 24 */	fdiv f1, f1, f3
/* 801D1B5C 001CD7BC  7D 09 42 14 */	add r8, r9, r8
/* 801D1B60 001CD7C0  91 01 00 18 */	stw r8, 0x18(r1)
/* 801D1B64 001CD7C4  39 20 00 00 */	li r9, 0
/* 801D1B68 001CD7C8  C8 02 93 70 */	lfd f0, lbl_80641970-_SDA2_BASE_(r2)
/* 801D1B6C 001CD7CC  38 E3 00 20 */	addi r7, r3, 0x20
/* 801D1B70 001CD7D0  FC 9A 00 72 */	fmul f4, f26, f1
/* 801D1B74 001CD7D4  C9 21 00 18 */	lfd f9, 0x18(r1)
/* 801D1B78 001CD7D8  C8 62 93 68 */	lfd f3, lbl_80641968-_SDA2_BASE_(r2)
/* 801D1B7C 001CD7DC  FD 09 38 28 */	fsub f8, f9, f7
/* 801D1B80 001CD7E0  C8 C2 93 60 */	lfd f6, lbl_80641960-_SDA2_BASE_(r2)
/* 801D1B84 001CD7E4  90 C1 00 5C */	stw r6, 0x5c(r1)
/* 801D1B88 001CD7E8  FC A4 01 32 */	fmul f5, f4, f4
/* 801D1B8C 001CD7EC  D8 81 00 20 */	stfd f4, 0x20(r1)
/* 801D1B90 001CD7F0  CB C2 93 58 */	lfd f30, lbl_80641958-_SDA2_BASE_(r2)
/* 801D1B94 001CD7F4  FD 6A 40 28 */	fsub f11, f10, f8
/* 801D1B98 001CD7F8  90 A1 00 58 */	stw r5, 0x58(r1)
/* 801D1B9C 001CD7FC  CB E2 93 50 */	lfd f31, lbl_80641950-_SDA2_BASE_(r2)
/* 801D1BA0 001CD800  FC E0 01 72 */	fmul f7, f0, f5
/* 801D1BA4 001CD804  91 21 00 24 */	stw r9, 0x24(r1)
/* 801D1BA8 001CD808  C9 A2 93 48 */	lfd f13, lbl_80641948-_SDA2_BASE_(r2)
/* 801D1BAC 001CD80C  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 801D1BB0 001CD810  C9 82 93 78 */	lfd f12, lbl_80641978-_SDA2_BASE_(r2)
/* 801D1BB4 001CD814  FC E3 38 2A */	fadd f7, f3, f7
/* 801D1BB8 001CD818  FF 60 02 72 */	fmul f27, f0, f9
/* 801D1BBC 001CD81C  C9 42 93 88 */	lfd f10, lbl_80641988-_SDA2_BASE_(r2)
/* 801D1BC0 001CD820  C9 22 93 90 */	lfd f9, lbl_80641990-_SDA2_BASE_(r2)
/* 801D1BC4 001CD824  FD 05 01 F2 */	fmul f8, f5, f7
/* 801D1BC8 001CD828  C8 E2 94 00 */	lfd f7, lbl_80641A00-_SDA2_BASE_(r2)
/* 801D1BCC 001CD82C  FF 80 02 F2 */	fmul f28, f0, f11
/* 801D1BD0 001CD830  C9 62 93 80 */	lfd f11, lbl_80641980-_SDA2_BASE_(r2)
/* 801D1BD4 001CD834  FF A6 40 2A */	fadd f29, f6, f8
/* 801D1BD8 001CD838  C8 C1 00 58 */	lfd f6, 0x58(r1)
/* 801D1BDC 001CD83C  FF 7A D8 28 */	fsub f27, f26, f27
/* 801D1BE0 001CD840  7D 07 54 AE */	lfdx f8, r7, r10
/* 801D1BE4 001CD844  FC C6 38 28 */	fsub f6, f6, f7
/* 801D1BE8 001CD848  FF A5 07 72 */	fmul f29, f5, f29
/* 801D1BEC 001CD84C  FF 9B E0 28 */	fsub f28, f27, f28
/* 801D1BF0 001CD850  D8 C1 00 28 */	stfd f6, 0x28(r1)
/* 801D1BF4 001CD854  FC 60 00 32 */	fmul f3, f0, f0
/* 801D1BF8 001CD858  FC FE E8 2A */	fadd f7, f30, f29
/* 801D1BFC 001CD85C  FF 41 07 32 */	fmul f26, f1, f28
/* 801D1C00 001CD860  FC E5 01 F2 */	fmul f7, f5, f7
/* 801D1C04 001CD864  FF A5 01 72 */	fmul f29, f5, f5
/* 801D1C08 001CD868  FF FF 38 2A */	fadd f31, f31, f7
/* 801D1C0C 001CD86C  FC 20 20 2A */	fadd f1, f0, f4
/* 801D1C10 001CD870  FC A5 07 F2 */	fmul f5, f5, f31
/* 801D1C14 001CD874  FC FA 00 72 */	fmul f7, f26, f1
/* 801D1C18 001CD878  FC AD 28 2A */	fadd f5, f13, f5
/* 801D1C1C 001CD87C  FC 2C 18 2A */	fadd f1, f12, f3
/* 801D1C20 001CD880  FD BD 01 72 */	fmul f13, f29, f5
/* 801D1C24 001CD884  FD AD 38 2A */	fadd f13, f13, f7
/* 801D1C28 001CD888  FC 21 68 2A */	fadd f1, f1, f13
/* 801D1C2C 001CD88C  D8 21 00 18 */	stfd f1, 0x18(r1)
/* 801D1C30 001CD890  91 21 00 1C */	stw r9, 0x1c(r1)
/* 801D1C34 001CD894  C8 E1 00 18 */	lfd f7, 0x18(r1)
/* 801D1C38 001CD898  FC A7 60 28 */	fsub f5, f7, f12
/* 801D1C3C 001CD89C  FC 3A 01 F2 */	fmul f1, f26, f7
/* 801D1C40 001CD8A0  FC 65 18 28 */	fsub f3, f5, f3
/* 801D1C44 001CD8A4  FC A0 01 F2 */	fmul f5, f0, f7
/* 801D1C48 001CD8A8  FC 0D 18 28 */	fsub f0, f13, f3
/* 801D1C4C 001CD8AC  FC 00 01 32 */	fmul f0, f0, f4
/* 801D1C50 001CD8B0  FC 81 00 2A */	fadd f4, f1, f0
/* 801D1C54 001CD8B4  FC 65 20 2A */	fadd f3, f5, f4
/* 801D1C58 001CD8B8  D8 61 00 40 */	stfd f3, 0x40(r1)
/* 801D1C5C 001CD8BC  91 21 00 44 */	stw r9, 0x44(r1)
/* 801D1C60 001CD8C0  C8 61 00 40 */	lfd f3, 0x40(r1)
/* 801D1C64 001CD8C4  FC 03 28 28 */	fsub f0, f3, f5
/* 801D1C68 001CD8C8  FC 2A 00 F2 */	fmul f1, f10, f3
/* 801D1C6C 001CD8CC  FC 04 00 28 */	fsub f0, f4, f0
/* 801D1C70 001CD8D0  FC 6B 00 F2 */	fmul f3, f11, f3
/* 801D1C74 001CD8D4  FC 09 00 32 */	fmul f0, f9, f0
/* 801D1C78 001CD8D8  FC 01 00 2A */	fadd f0, f1, f0
/* 801D1C7C 001CD8DC  FC 88 00 2A */	fadd f4, f8, f0
/* 801D1C80 001CD8E0  38 63 00 10 */	addi r3, r3, 0x10
/* 801D1C84 001CD8E4  FC 03 20 2A */	fadd f0, f3, f4
/* 801D1C88 001CD8E8  7C 23 54 AE */	lfdx f1, r3, r10
/* 801D1C8C 001CD8EC  FC 00 08 2A */	fadd f0, f0, f1
/* 801D1C90 001CD8F0  FC 06 00 2A */	fadd f0, f6, f0
/* 801D1C94 001CD8F4  D8 01 00 30 */	stfd f0, 0x30(r1)
/* 801D1C98 001CD8F8  91 21 00 34 */	stw r9, 0x34(r1)
/* 801D1C9C 001CD8FC  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 801D1CA0 001CD900  FC 00 30 28 */	fsub f0, f0, f6
/* 801D1CA4 001CD904  FC 00 08 28 */	fsub f0, f0, f1
/* 801D1CA8 001CD908  FC 00 18 28 */	fsub f0, f0, f3
/* 801D1CAC 001CD90C  FC 04 00 28 */	fsub f0, f4, f0
lbl_801D1CB0:
/* 801D1CB0 001CD910  38 64 FF FF */	addi r3, r4, -1
/* 801D1CB4 001CD914  CB E2 92 F8 */	lfd f31, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D1CB8 001CD918  7C 00 1B 79 */	or. r0, r0, r3
/* 801D1CBC 001CD91C  40 82 00 08 */	bne lbl_801D1CC4
/* 801D1CC0 001CD920  CB E2 93 98 */	lfd f31, lbl_80641998-_SDA2_BASE_(r2)
lbl_801D1CC4:
/* 801D1CC4 001CD924  D8 41 00 38 */	stfd f2, 0x38(r1)
/* 801D1CC8 001CD928  38 00 00 00 */	li r0, 0
/* 801D1CCC 001CD92C  FC 02 00 32 */	fmul f0, f2, f0
/* 801D1CD0 001CD930  C8 21 00 30 */	lfd f1, 0x30(r1)
/* 801D1CD4 001CD934  90 01 00 3C */	stw r0, 0x3c(r1)
/* 801D1CD8 001CD938  3C 00 40 90 */	lis r0, 0x4090
/* 801D1CDC 001CD93C  C8 61 00 38 */	lfd f3, 0x38(r1)
/* 801D1CE0 001CD940  FC 42 18 28 */	fsub f2, f2, f3
/* 801D1CE4 001CD944  FC 63 00 72 */	fmul f3, f3, f1
/* 801D1CE8 001CD948  FC 21 00 B2 */	fmul f1, f1, f2
/* 801D1CEC 001CD94C  D8 61 00 40 */	stfd f3, 0x40(r1)
/* 801D1CF0 001CD950  FD 61 00 2A */	fadd f11, f1, f0
/* 801D1CF4 001CD954  FC 0B 18 2A */	fadd f0, f11, f3
/* 801D1CF8 001CD958  D8 01 00 50 */	stfd f0, 0x50(r1)
/* 801D1CFC 001CD95C  80 C1 00 50 */	lwz r6, 0x50(r1)
/* 801D1D00 001CD960  80 A1 00 54 */	lwz r5, 0x54(r1)
/* 801D1D04 001CD964  7C 06 00 00 */	cmpw r6, r0
/* 801D1D08 001CD968  41 80 00 44 */	blt lbl_801D1D4C
/* 801D1D0C 001CD96C  3C 06 BF 70 */	addis r0, r6, 0xbf70
/* 801D1D10 001CD970  7C 00 2B 79 */	or. r0, r0, r5
/* 801D1D14 001CD974  41 82 00 14 */	beq lbl_801D1D28
/* 801D1D18 001CD978  C8 22 93 A0 */	lfd f1, lbl_806419A0-_SDA2_BASE_(r2)
/* 801D1D1C 001CD97C  FC 01 07 F2 */	fmul f0, f1, f31
/* 801D1D20 001CD980  FC 21 00 32 */	fmul f1, f1, f0
/* 801D1D24 001CD984  48 00 01 DC */	b lbl_801D1F00
lbl_801D1D28:
/* 801D1D28 001CD988  C8 22 93 A8 */	lfd f1, lbl_806419A8-_SDA2_BASE_(r2)
/* 801D1D2C 001CD98C  FC 00 18 28 */	fsub f0, f0, f3
/* 801D1D30 001CD990  FC 21 58 2A */	fadd f1, f1, f11
/* 801D1D34 001CD994  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 801D1D38 001CD998  40 81 00 68 */	ble lbl_801D1DA0
/* 801D1D3C 001CD99C  C8 22 93 A0 */	lfd f1, lbl_806419A0-_SDA2_BASE_(r2)
/* 801D1D40 001CD9A0  FC 01 07 F2 */	fmul f0, f1, f31
/* 801D1D44 001CD9A4  FC 21 00 32 */	fmul f1, f1, f0
/* 801D1D48 001CD9A8  48 00 01 B8 */	b lbl_801D1F00
lbl_801D1D4C:
/* 801D1D4C 001CD9AC  3C 60 40 91 */	lis r3, 0x4090CC00@ha
/* 801D1D50 001CD9B0  54 C4 00 7E */	clrlwi r4, r6, 1
/* 801D1D54 001CD9B4  38 03 CC 00 */	addi r0, r3, 0x4090CC00@l
/* 801D1D58 001CD9B8  7C 04 00 00 */	cmpw r4, r0
/* 801D1D5C 001CD9BC  41 80 00 44 */	blt lbl_801D1DA0
/* 801D1D60 001CD9C0  3C 66 3F 6F */	addis r3, r6, 0x3f6f
/* 801D1D64 001CD9C4  38 03 34 00 */	addi r0, r3, 0x3400
/* 801D1D68 001CD9C8  7C 00 2B 79 */	or. r0, r0, r5
/* 801D1D6C 001CD9CC  41 82 00 14 */	beq lbl_801D1D80
/* 801D1D70 001CD9D0  C8 22 93 B0 */	lfd f1, lbl_806419B0-_SDA2_BASE_(r2)
/* 801D1D74 001CD9D4  FC 01 07 F2 */	fmul f0, f1, f31
/* 801D1D78 001CD9D8  FC 21 00 32 */	fmul f1, f1, f0
/* 801D1D7C 001CD9DC  48 00 01 84 */	b lbl_801D1F00
lbl_801D1D80:
/* 801D1D80 001CD9E0  FC 00 18 28 */	fsub f0, f0, f3
/* 801D1D84 001CD9E4  FC 0B 00 40 */	fcmpo cr0, f11, f0
/* 801D1D88 001CD9E8  4C 40 13 82 */	cror 2, 0, 2
/* 801D1D8C 001CD9EC  40 82 00 14 */	bne lbl_801D1DA0
/* 801D1D90 001CD9F0  C8 22 93 B0 */	lfd f1, lbl_806419B0-_SDA2_BASE_(r2)
/* 801D1D94 001CD9F4  FC 01 07 F2 */	fmul f0, f1, f31
/* 801D1D98 001CD9F8  FC 21 00 32 */	fmul f1, f1, f0
/* 801D1D9C 001CD9FC  48 00 01 64 */	b lbl_801D1F00
lbl_801D1DA0:
/* 801D1DA0 001CDA00  54 C3 00 7E */	clrlwi r3, r6, 1
/* 801D1DA4 001CDA04  3C 00 3F E0 */	lis r0, 0x3fe0
/* 801D1DA8 001CDA08  7C 03 00 00 */	cmpw r3, r0
/* 801D1DAC 001CDA0C  54 C4 65 7E */	rlwinm r4, r6, 0xc, 0x15, 0x1f
/* 801D1DB0 001CDA10  38 60 00 00 */	li r3, 0
/* 801D1DB4 001CDA14  40 81 00 60 */	ble lbl_801D1E14
/* 801D1DB8 001CDA18  3C 60 00 10 */	lis r3, 0x000FFFFF@ha
/* 801D1DBC 001CDA1C  38 04 FC 02 */	addi r0, r4, -1022
/* 801D1DC0 001CDA20  7C 60 06 30 */	sraw r0, r3, r0
/* 801D1DC4 001CDA24  C8 02 93 00 */	lfd f0, lbl_80641900-_SDA2_BASE_(r2)
/* 801D1DC8 001CDA28  7C E6 02 14 */	add r7, r6, r0
/* 801D1DCC 001CDA2C  38 63 FF FF */	addi r3, r3, 0x000FFFFF@l
/* 801D1DD0 001CDA30  54 E0 00 7E */	clrlwi r0, r7, 1
/* 801D1DD4 001CDA34  D8 01 00 28 */	stfd f0, 0x28(r1)
/* 801D1DD8 001CDA38  7C 04 A6 70 */	srawi r4, r0, 0x14
/* 801D1DDC 001CDA3C  2C 06 00 00 */	cmpwi r6, 0
/* 801D1DE0 001CDA40  38 A4 FC 01 */	addi r5, r4, -1023
/* 801D1DE4 001CDA44  54 E0 03 3E */	clrlwi r0, r7, 0xc
/* 801D1DE8 001CDA48  7C 64 2E 30 */	sraw r4, r3, r5
/* 801D1DEC 001CDA4C  7C E4 20 78 */	andc r4, r7, r4
/* 801D1DF0 001CDA50  64 03 00 10 */	oris r3, r0, 0x10
/* 801D1DF4 001CDA54  20 05 00 14 */	subfic r0, r5, 0x14
/* 801D1DF8 001CDA58  90 81 00 28 */	stw r4, 0x28(r1)
/* 801D1DFC 001CDA5C  7C 63 06 30 */	sraw r3, r3, r0
/* 801D1E00 001CDA60  40 80 00 08 */	bge lbl_801D1E08
/* 801D1E04 001CDA64  7C 63 00 D0 */	neg r3, r3
lbl_801D1E08:
/* 801D1E08 001CDA68  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 801D1E0C 001CDA6C  FC 63 00 28 */	fsub f3, f3, f0
/* 801D1E10 001CDA70  D8 61 00 40 */	stfd f3, 0x40(r1)
lbl_801D1E14:
/* 801D1E14 001CDA74  FC 2B 18 2A */	fadd f1, f11, f3
/* 801D1E18 001CDA78  38 00 00 00 */	li r0, 0
/* 801D1E1C 001CDA7C  C8 02 93 C8 */	lfd f0, lbl_806419C8-_SDA2_BASE_(r2)
/* 801D1E20 001CDA80  54 64 A0 16 */	slwi r4, r3, 0x14
/* 801D1E24 001CDA84  C9 02 93 C0 */	lfd f8, lbl_806419C0-_SDA2_BASE_(r2)
/* 801D1E28 001CDA88  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 801D1E2C 001CDA8C  C9 42 93 B8 */	lfd f10, lbl_806419B8-_SDA2_BASE_(r2)
/* 801D1E30 001CDA90  90 01 00 2C */	stw r0, 0x2c(r1)
/* 801D1E34 001CDA94  C8 C2 93 F0 */	lfd f6, lbl_806419F0-_SDA2_BASE_(r2)
/* 801D1E38 001CDA98  C9 21 00 28 */	lfd f9, 0x28(r1)
/* 801D1E3C 001CDA9C  C8 22 93 E8 */	lfd f1, lbl_806419E8-_SDA2_BASE_(r2)
/* 801D1E40 001CDAA0  FC 49 18 28 */	fsub f2, f9, f3
/* 801D1E44 001CDAA4  C8 A2 93 E0 */	lfd f5, lbl_806419E0-_SDA2_BASE_(r2)
/* 801D1E48 001CDAA8  FC E0 02 72 */	fmul f7, f0, f9
/* 801D1E4C 001CDAAC  C8 82 93 D8 */	lfd f4, lbl_806419D8-_SDA2_BASE_(r2)
/* 801D1E50 001CDAB0  C8 62 93 D0 */	lfd f3, lbl_806419D0-_SDA2_BASE_(r2)
/* 801D1E54 001CDAB4  FC 0B 10 28 */	fsub f0, f11, f2
/* 801D1E58 001CDAB8  FD 4A 02 72 */	fmul f10, f10, f9
/* 801D1E5C 001CDABC  C8 42 93 F8 */	lfd f2, lbl_806419F8-_SDA2_BASE_(r2)
/* 801D1E60 001CDAC0  FD 08 00 32 */	fmul f8, f8, f0
/* 801D1E64 001CDAC4  C8 02 92 F8 */	lfd f0, lbl_806418F8-_SDA2_BASE_(r2)
/* 801D1E68 001CDAC8  FD 68 38 2A */	fadd f11, f8, f7
/* 801D1E6C 001CDACC  FD 2A 58 2A */	fadd f9, f10, f11
/* 801D1E70 001CDAD0  FC E9 02 72 */	fmul f7, f9, f9
/* 801D1E74 001CDAD4  FD 09 50 28 */	fsub f8, f9, f10
/* 801D1E78 001CDAD8  FC C6 01 F2 */	fmul f6, f6, f7
/* 801D1E7C 001CDADC  D8 E1 00 28 */	stfd f7, 0x28(r1)
/* 801D1E80 001CDAE0  FD 0B 40 28 */	fsub f8, f11, f8
/* 801D1E84 001CDAE4  FC C1 30 2A */	fadd f6, f1, f6
/* 801D1E88 001CDAE8  FC 29 02 32 */	fmul f1, f9, f8
/* 801D1E8C 001CDAEC  FC C7 01 B2 */	fmul f6, f7, f6
/* 801D1E90 001CDAF0  FC 28 08 2A */	fadd f1, f8, f1
/* 801D1E94 001CDAF4  FC A5 30 2A */	fadd f5, f5, f6
/* 801D1E98 001CDAF8  FC A7 01 72 */	fmul f5, f7, f5
/* 801D1E9C 001CDAFC  FC 84 28 2A */	fadd f4, f4, f5
/* 801D1EA0 001CDB00  FC 87 01 32 */	fmul f4, f7, f4
/* 801D1EA4 001CDB04  FC 63 20 2A */	fadd f3, f3, f4
/* 801D1EA8 001CDB08  FC 67 00 F2 */	fmul f3, f7, f3
/* 801D1EAC 001CDB0C  FC 89 18 28 */	fsub f4, f9, f3
/* 801D1EB0 001CDB10  FC 69 01 32 */	fmul f3, f9, f4
/* 801D1EB4 001CDB14  D8 81 00 30 */	stfd f4, 0x30(r1)
/* 801D1EB8 001CDB18  FC 44 10 28 */	fsub f2, f4, f2
/* 801D1EBC 001CDB1C  FC 43 10 24 */	fdiv f2, f3, f2
/* 801D1EC0 001CDB20  FC 22 08 28 */	fsub f1, f2, f1
/* 801D1EC4 001CDB24  FC 21 48 28 */	fsub f1, f1, f9
/* 801D1EC8 001CDB28  FC 20 08 28 */	fsub f1, f0, f1
/* 801D1ECC 001CDB2C  D8 21 00 50 */	stfd f1, 0x50(r1)
/* 801D1ED0 001CDB30  80 01 00 50 */	lwz r0, 0x50(r1)
/* 801D1ED4 001CDB34  7C 00 22 14 */	add r0, r0, r4
/* 801D1ED8 001CDB38  7C 00 A6 71 */	srawi. r0, r0, 0x14
/* 801D1EDC 001CDB3C  41 81 00 10 */	bgt lbl_801D1EEC
/* 801D1EE0 001CDB40  4B FF EA E1 */	bl scalbn
/* 801D1EE4 001CDB44  D8 21 00 50 */	stfd f1, 0x50(r1)
/* 801D1EE8 001CDB48  48 00 00 10 */	b lbl_801D1EF8
lbl_801D1EEC:
/* 801D1EEC 001CDB4C  80 01 00 50 */	lwz r0, 0x50(r1)
/* 801D1EF0 001CDB50  7C 00 22 14 */	add r0, r0, r4
/* 801D1EF4 001CDB54  90 01 00 50 */	stw r0, 0x50(r1)
lbl_801D1EF8:
/* 801D1EF8 001CDB58  C8 01 00 50 */	lfd f0, 0x50(r1)
/* 801D1EFC 001CDB5C  FC 3F 00 32 */	fmul f1, f31, f0
lbl_801D1F00:
/* 801D1F00 001CDB60  E3 E1 00 B8 */	psq_l f31, 184(r1), 0, qr0
/* 801D1F04 001CDB64  CB E1 00 B0 */	lfd f31, 0xb0(r1)
/* 801D1F08 001CDB68  E3 C1 00 A8 */	psq_l f30, 168(r1), 0, qr0
/* 801D1F0C 001CDB6C  CB C1 00 A0 */	lfd f30, 0xa0(r1)
/* 801D1F10 001CDB70  E3 A1 00 98 */	psq_l f29, 152(r1), 0, qr0
/* 801D1F14 001CDB74  CB A1 00 90 */	lfd f29, 0x90(r1)
/* 801D1F18 001CDB78  E3 81 00 88 */	psq_l f28, 136(r1), 0, qr0
/* 801D1F1C 001CDB7C  CB 81 00 80 */	lfd f28, 0x80(r1)
/* 801D1F20 001CDB80  E3 61 00 78 */	psq_l f27, 120(r1), 0, qr0
/* 801D1F24 001CDB84  CB 61 00 70 */	lfd f27, 0x70(r1)
/* 801D1F28 001CDB88  E3 41 00 68 */	psq_l f26, 104(r1), 0, qr0
/* 801D1F2C 001CDB8C  80 01 00 C4 */	lwz r0, 0xc4(r1)
/* 801D1F30 001CDB90  CB 41 00 60 */	lfd f26, 0x60(r1)
/* 801D1F34 001CDB94  7C 08 03 A6 */	mtlr r0
/* 801D1F38 001CDB98  38 21 00 C0 */	addi r1, r1, 0xc0
/* 801D1F3C 001CDB9C  4E 80 00 20 */	blr