Decompile floor

This commit is contained in:
Ryan Dwyer 2020-04-05 12:41:20 +10:00
parent 96ca3dd344
commit d447082482
4 changed files with 24 additions and 39 deletions

View File

@ -248,7 +248,7 @@ glabel func0f00040c
/* f00044c: c43678c4 */ lwc1 $f22,%lo(var7f1a78c4)($at)
/* f000450: 34128000 */ dli $s2,0x8000
.L0f000454:
/* f000454: 0fc25e42 */ jal func0f097908
/* f000454: 0fc25e42 */ jal floor
/* f000458: c60c0004 */ lwc1 $f12,0x4($s0)
/* f00045c: 86040000 */ lh $a0,0x0($s0)
/* f000460: 00002825 */ or $a1,$zero,$zero

View File

@ -46,34 +46,19 @@ glabel func0f097890
/* f097904: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel func0f097908
/* f097908: 44802000 */ mtc1 $zero,$f4
/* f09790c: 00000000 */ sll $zero,$zero,0x0
/* f097910: 460c203e */ c.le.s $f4,$f12
/* f097914: 00000000 */ sll $zero,$zero,0x0
/* f097918: 45020006 */ bc1fl .L0f097934
/* f09791c: 4600620d */ trunc.w.s $f8,$f12
/* f097920: 4600618d */ trunc.w.s $f6,$f12
/* f097924: 44023000 */ mfc1 $v0,$f6
/* f097928: 03e00008 */ jr $ra
/* f09792c: 00000000 */ sll $zero,$zero,0x0
/* f097930: 4600620d */ trunc.w.s $f8,$f12
.L0f097934:
/* f097934: 44034000 */ mfc1 $v1,$f8
/* f097938: 00000000 */ sll $zero,$zero,0x0
/* f09793c: 44835000 */ mtc1 $v1,$f10
/* f097940: 2462ffff */ addiu $v0,$v1,-1
/* f097944: 46805420 */ cvt.s.w $f16,$f10
/* f097948: 46106032 */ c.eq.s $f12,$f16
/* f09794c: 00000000 */ sll $zero,$zero,0x0
/* f097950: 45000003 */ bc1f .L0f097960
/* f097954: 00000000 */ sll $zero,$zero,0x0
/* f097958: 03e00008 */ jr $ra
/* f09795c: 00601025 */ or $v0,$v1,$zero
.L0f097960:
/* f097960: 03e00008 */ jr $ra
/* f097964: 00000000 */ sll $zero,$zero,0x0
/* f097968: 00000000 */ sll $zero,$zero,0x0
/* f09796c: 00000000 */ sll $zero,$zero,0x0
);
s32 floor(f32 value)
{
s32 ivalue;
if (value >= 0) {
return value;
}
ivalue = value;
if (value == ivalue) {
return ivalue;
}
return ivalue - 1;
}

View File

@ -4,6 +4,6 @@
#include "types.h"
u32 func0f097890(void);
u32 func0f097908(void);
s32 floor(f32 value);
#endif

View File

@ -4644,7 +4644,7 @@ glabel func0001e018
/* 1e028: 8c900020 */ lw $s0,0x20($a0)
/* 1e02c: 52000043 */ beqzl $s0,.L0001e13c
/* 1e030: 8fbf001c */ lw $ra,0x1c($sp)
/* 1e034: 0fc25e42 */ jal func0f097908
/* 1e034: 0fc25e42 */ jal floor
/* 1e038: c7ac0034 */ lwc1 $f12,0x34($sp)
/* 1e03c: c604001c */ lwc1 $f4,0x1c($s0)
/* 1e040: 44803000 */ mtc1 $zero,$f6
@ -4738,7 +4738,7 @@ glabel func0001e14c
/* 1e178: 860e0002 */ lh $t6,0x2($s0)
/* 1e17c: 51c00043 */ beqzl $t6,.L0001e28c
/* 1e180: 8fbf001c */ lw $ra,0x1c($sp)
/* 1e184: 0fc25e42 */ jal func0f097908
/* 1e184: 0fc25e42 */ jal floor
/* 1e188: c7ac0038 */ lwc1 $f12,0x38($sp)
/* 1e18c: c6040040 */ lwc1 $f4,0x40($s0)
/* 1e190: 44803000 */ mtc1 $zero,$f6
@ -4925,10 +4925,10 @@ glabel func0001e2b4
/* 1e410: 5280000a */ beqzl $s4,.L0001e43c
/* 1e414: 4600a306 */ mov.s $f12,$f20
/* 1e418: 4600a306 */ mov.s $f12,$f20
/* 1e41c: 0fc25e42 */ jal func0f097908
/* 1e41c: 0fc25e42 */ jal floor
/* 1e420: e7a000bc */ swc1 $f0,0xbc($sp)
/* 1e424: 24530001 */ addiu $s3,$v0,0x1
/* 1e428: 0fc25e42 */ jal func0f097908
/* 1e428: 0fc25e42 */ jal floor
/* 1e42c: c7ac0138 */ lwc1 $f12,0x138($sp)
/* 1e430: 10000009 */ beqz $zero,.L0001e458
/* 1e434: 00403825 */ or $a3,$v0,$zero
@ -5480,11 +5480,11 @@ glabel func0001e2b4
/* 1ec2c: 316a0002 */ andi $t2,$t3,0x2
/* 1ec30: 1540005b */ bnez $t2,.L0001eda0
/* 1ec34: 00000000 */ sll $zero,$zero,0x0
/* 1ec38: 0fc25e42 */ jal func0f097908
/* 1ec38: 0fc25e42 */ jal floor
/* 1ec3c: c7ac013c */ lwc1 $f12,0x13c($sp)
/* 1ec40: c7b40140 */ lwc1 $f20,0x140($sp)
/* 1ec44: 00408025 */ or $s0,$v0,$zero
/* 1ec48: 0fc25e42 */ jal func0f097908
/* 1ec48: 0fc25e42 */ jal floor
/* 1ec4c: 4600a306 */ mov.s $f12,$f20
/* 1ec50: 12800004 */ beqz $s4,.L0001ec64
/* 1ec54: 00409825 */ or $s3,$v0,$zero