papermario/ver/ique/asm/os/guNormalize.s
AltoXorg b171712e0e
Match libultra iQue ver (#1111)
* match libultra ique pt 1

* add sgidefs.h to include/gcc

* recvmesg match + _getcount

* add elfpatch.py for those compiled with -mips3

* pt 2

* os/setthreadpri(.data) -> os/thread

* os thread matches

* os timer matches

* pt 4 (erm... 3?)

* vitbl

* os pi matches

* pt. uhmmmm, i've lost track...

* os pfs matches

* replace elfpatch.py

* pt. just forget it...

* outsource from ultralib ique branch

* .

* . 2

* final blow

* add egcs compiler to Jenkinsfile

* fix errors from CI

* minor changes as requested
2023-08-17 02:29:21 +09:00

37 lines
1.5 KiB
ArmAsm

.include "macro.inc"
/* assembler directives */
.set noat /* allow manual use of $at */
.set noreorder /* don't insert nops after branches */
.set gp=64 /* allow use of 64-bit general purpose registers */
.section .text, "ax"
/* Generated by spimdisasm 1.11.1 */
glabel guNormalize
/* 47040 8006BC40 C4840000 */ lwc1 $f4, 0x0($a0)
/* 47044 8006BC44 C4A60000 */ lwc1 $f6, 0x0($a1)
/* 47048 8006BC48 C4C80000 */ lwc1 $f8, 0x0($a2)
/* 4704C 8006BC4C 46042282 */ mul.s $f10, $f4, $f4
/* 47050 8006BC50 3C083F80 */ lui $t0, (0x3F800000 >> 16)
/* 47054 8006BC54 46063402 */ mul.s $f16, $f6, $f6
/* 47058 8006BC58 46105480 */ add.s $f18, $f10, $f16
/* 4705C 8006BC5C 46084402 */ mul.s $f16, $f8, $f8
/* 47060 8006BC60 46128280 */ add.s $f10, $f16, $f18
/* 47064 8006BC64 44889000 */ mtc1 $t0, $f18
/* 47068 8006BC68 46005404 */ sqrt.s $f16, $f10
/* 4706C 8006BC6C 46109283 */ div.s $f10, $f18, $f16
/* 47070 8006BC70 460A2402 */ mul.s $f16, $f4, $f10
/* 47074 8006BC74 00000000 */ nop
/* 47078 8006BC78 460A3482 */ mul.s $f18, $f6, $f10
/* 4707C 8006BC7C 00000000 */ nop
/* 47080 8006BC80 460A4102 */ mul.s $f4, $f8, $f10
/* 47084 8006BC84 E4900000 */ swc1 $f16, 0x0($a0)
/* 47088 8006BC88 E4B20000 */ swc1 $f18, 0x0($a1)
/* 4708C 8006BC8C 03E00008 */ jr $ra
/* 47090 8006BC90 E4C40000 */ swc1 $f4, 0x0($a2)
/* 47094 8006BC94 00000000 */ nop
/* 47098 8006BC98 00000000 */ nop
/* 4709C 8006BC9C 00000000 */ nop