mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
39211 lines
2.1 MiB
Plaintext
39211 lines
2.1 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_0250D7DC @ 0x250d7dc
|
|
void Gambit_fn_0250D7DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164;
|
|
|
|
L_0250D7DC: ; // 0x250d7dc
|
|
/* 0250D7DC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0250D7DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250D7DC */ cpu->r[1] = _t0;
|
|
/* 0250D7E0 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0250D7E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0250D7E4 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0250D7E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0250D7E8 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250D7E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0250D7EC */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 0250D7EC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0250D7F0 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250D7F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0250D7F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0250D7F8 */ cpu->r[3] = 0x00000034u;
|
|
/* 0250D7FC */ Gambit_fn_02801A78(cpu);
|
|
/* 0250D800 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250D800 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250D804 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D804 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250D804 */ if (_t7) goto L_0250D870; else goto L_0250D808;
|
|
L_0250D808: ; // 0x250d808
|
|
/* 0250D808 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250D80C */ cpu->r[4] = 0x00000034u;
|
|
/* 0250D810 */ Gambit_fn_02C89380(cpu);
|
|
/* 0250D814 */ cpu->r[30] = cpu->r[31] + 0x00000004u;
|
|
/* 0250D814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250D818 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D818 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250D818 */ if (_t9) goto L_0250D81C; else goto L_0250D82C;
|
|
L_0250D81C: ; // 0x250d81c
|
|
/* 0250D81C */ cpu->r[3] = 0x00000024u;
|
|
/* 0250D820 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250D824 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250D824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250D828 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D828 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0250D828 */ if (_t11) goto L_0250D85C; else goto L_0250D82C;
|
|
L_0250D82C: ; // 0x250d82c
|
|
/* 0250D82C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250D830 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D830 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0250D830 */ if (_t13) goto L_0250D834; else goto L_0250D83C;
|
|
L_0250D834: ; // 0x250d834
|
|
/* 0250D834 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D838 */ Gambit_fn_02801A78(cpu);
|
|
L_0250D83C: ; // 0x250d83c
|
|
/* 0250D83C */ cpu->r[9] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0250D83C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250D840 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D840 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250D840 */ if (_t15) goto L_0250D844; else goto L_0250D84C;
|
|
L_0250D844: ; // 0x250d844
|
|
/* 0250D844 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D848 */ Gambit_fn_02801A78(cpu);
|
|
L_0250D84C: ; // 0x250d84c
|
|
/* 0250D84C */ cpu->r[0] = cpu->r[30] + 0x00000018u;
|
|
/* 0250D84C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250D850 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D850 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0250D850 */ if (_t17) goto L_0250D854; else goto L_0250D85C;
|
|
L_0250D854: ; // 0x250d854
|
|
/* 0250D854 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D858 */ Gambit_fn_02801A78(cpu);
|
|
L_0250D85C: ; // 0x250d85c
|
|
/* 0250D85C */ cpu->r[12] = cpu->r[31] + 0x00000004u;
|
|
/* 0250D860 */ cpu->r[0] = cpu->r[12] + 0x00000024u;
|
|
/* 0250D860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250D864 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D864 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0250D864 */ if (_t19) goto L_0250D868; else goto L_0250D870;
|
|
L_0250D868: ; // 0x250d868
|
|
/* 0250D868 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D86C */ Gambit_fn_02801A78(cpu);
|
|
L_0250D870: ; // 0x250d870
|
|
/* 0250D870 */ _t20 = cpu->r[29] + 0x00000004u;
|
|
/* 0250D870 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0250D874 */ _t21 = cpu->r[29] + 0x000001E8u;
|
|
/* 0250D874 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 0250D878 */ _t22 = cpu->r[10] + 0x00000234u;
|
|
/* 0250D878 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250D87C */ cpu->ctr = cpu->r[7];
|
|
/* 0250D880 */ cpu->r[3] = cpu->r[29];
|
|
/* 0250D884 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250D888 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250D88C */ cpu->r[5] = cpu->r[3];
|
|
/* 0250D890 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250D894 */ cpu->r[6] = cpu->r[6] + 0xFFFFF24Cu;
|
|
/* 0250D898 */ cpu->r[4] = cpu->r[29];
|
|
/* 0250D89C */ Gambit_fn_024F264C(cpu);
|
|
/* 0250D8A0 */ _t23 = cpu->r[29] + 0x000001E8u;
|
|
/* 0250D8A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250D8A4 */ Gambit_fn_024F288C(cpu);
|
|
/* 0250D8A8 */ cpu->r[3] = 0x00000034u;
|
|
/* 0250D8AC */ Gambit_fn_02801A78(cpu);
|
|
/* 0250D8B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250D8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250D8B4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D8B4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0250D8B4 */ if (_t25) goto L_0250D920; else goto L_0250D8B8;
|
|
L_0250D8B8: ; // 0x250d8b8
|
|
/* 0250D8B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250D8BC */ cpu->r[4] = 0x00000034u;
|
|
/* 0250D8C0 */ Gambit_fn_02C89380(cpu);
|
|
/* 0250D8C4 */ cpu->r[30] = cpu->r[31] + 0x00000004u;
|
|
/* 0250D8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250D8C8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D8C8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250D8C8 */ if (_t27) goto L_0250D8CC; else goto L_0250D8DC;
|
|
L_0250D8CC: ; // 0x250d8cc
|
|
/* 0250D8CC */ cpu->r[3] = 0x00000024u;
|
|
/* 0250D8D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250D8D4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250D8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250D8D8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D8D8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0250D8D8 */ if (_t29) goto L_0250D90C; else goto L_0250D8DC;
|
|
L_0250D8DC: ; // 0x250d8dc
|
|
/* 0250D8DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250D8E0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D8E0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0250D8E0 */ if (_t31) goto L_0250D8E4; else goto L_0250D8EC;
|
|
L_0250D8E4: ; // 0x250d8e4
|
|
/* 0250D8E4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D8E8 */ Gambit_fn_02801A78(cpu);
|
|
L_0250D8EC: ; // 0x250d8ec
|
|
/* 0250D8EC */ cpu->r[10] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0250D8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0250D8F0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D8F0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0250D8F0 */ if (_t33) goto L_0250D8F4; else goto L_0250D8FC;
|
|
L_0250D8F4: ; // 0x250d8f4
|
|
/* 0250D8F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D8F8 */ Gambit_fn_02801A78(cpu);
|
|
L_0250D8FC: ; // 0x250d8fc
|
|
/* 0250D8FC */ cpu->r[0] = cpu->r[30] + 0x00000018u;
|
|
/* 0250D8FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250D900 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D900 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0250D900 */ if (_t35) goto L_0250D904; else goto L_0250D90C;
|
|
L_0250D904: ; // 0x250d904
|
|
/* 0250D904 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D908 */ Gambit_fn_02801A78(cpu);
|
|
L_0250D90C: ; // 0x250d90c
|
|
/* 0250D90C */ cpu->r[12] = cpu->r[31] + 0x00000004u;
|
|
/* 0250D910 */ cpu->r[0] = cpu->r[12] + 0x00000024u;
|
|
/* 0250D910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250D914 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250D914 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0250D914 */ if (_t37) goto L_0250D918; else goto L_0250D920;
|
|
L_0250D918: ; // 0x250d918
|
|
/* 0250D918 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0250D91C */ Gambit_fn_02801A78(cpu);
|
|
L_0250D920: ; // 0x250d920
|
|
/* 0250D920 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0250D920 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0250D924 */ _t39 = cpu->r[29] + 0x000001ECu;
|
|
/* 0250D924 */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 0250D928 */ _t40 = cpu->r[9] + 0x00000234u;
|
|
/* 0250D928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250D92C */ cpu->ctr = cpu->r[0];
|
|
/* 0250D930 */ cpu->r[3] = cpu->r[29];
|
|
/* 0250D934 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250D938 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250D93C */ cpu->r[5] = cpu->r[3];
|
|
/* 0250D940 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250D944 */ cpu->r[6] = cpu->r[6] + 0xFFFFF25Cu;
|
|
/* 0250D948 */ cpu->r[4] = cpu->r[29];
|
|
/* 0250D94C */ Gambit_fn_024F264C(cpu);
|
|
/* 0250D950 */ _t41 = cpu->r[29] + 0x000001ECu;
|
|
/* 0250D950 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0250D954 */ Gambit_fn_024F288C(cpu);
|
|
/* 0250D958 */ cpu->r[31] = 0x100C0000u;
|
|
/* 0250D95C */ _t42 = cpu->r[29] + 0x00000008u;
|
|
/* 0250D95C */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250D960 */ cpu->r[31] = cpu->r[31] + 0xFFFFEFC8u;
|
|
/* 0250D964 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250D968 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250D968 */ rbrew_write32(cpu->mem, _t43, cpu->r[31]);
|
|
/* 0250D96C */ cpu->r[0] = cpu->r[0] + 0xFFFFF264u;
|
|
/* 0250D970 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250D974 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0250D974 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 0250D978 */ Gambit_fn_029807A8(cpu);
|
|
/* 0250D97C */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250D980 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 0250D980 */ rbrew_write32(cpu->mem, _t45, cpu->r[3]);
|
|
/* 0250D984 */ cpu->r[0] = cpu->r[0] + 0xFFFFF254u;
|
|
/* 0250D988 */ _t46 = cpu->r[29] + 0x00000220u;
|
|
/* 0250D988 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 0250D98C */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 0250D98C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0250D990 */ _t48 = cpu->r[29] + 0x00000008u;
|
|
/* 0250D990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0250D994 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250D998 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250D998 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 0250D99C */ Gambit_fn_029807A8(cpu);
|
|
/* 0250D9A0 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 0250D9A0 */ rbrew_write32(cpu->mem, _t50, cpu->r[3]);
|
|
/* 0250D9A4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250D9A8 */ _t51 = cpu->r[29] + 0x00000224u;
|
|
/* 0250D9A8 */ rbrew_write32(cpu->mem, _t51, cpu->r[3]);
|
|
/* 0250D9AC */ cpu->r[0] = cpu->r[0] + 0xFFFFF26Cu;
|
|
/* 0250D9B0 */ _t52 = cpu->r[29] + 0x00000008u;
|
|
/* 0250D9B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0250D9B4 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0250D9B4 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 0250D9B8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250D9BC */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250D9BC */ rbrew_write32(cpu->mem, _t54, cpu->r[31]);
|
|
/* 0250D9C0 */ Gambit_fn_029807A8(cpu);
|
|
/* 0250D9C4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250D9C8 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0250D9C8 */ rbrew_write32(cpu->mem, _t55, cpu->r[3]);
|
|
/* 0250D9CC */ cpu->r[10] = cpu->r[10] + 0xFFFFF274u;
|
|
/* 0250D9D0 */ _t56 = cpu->r[29] + 0x00000228u;
|
|
/* 0250D9D0 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 0250D9D4 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 0250D9D4 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 0250D9D8 */ _t58 = cpu->r[29] + 0x00000008u;
|
|
/* 0250D9D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0250D9DC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250D9E0 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250D9E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
/* 0250D9E4 */ Gambit_fn_02980A18(cpu);
|
|
/* 0250D9E8 */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250D9E8 */ rbrew_write32(cpu->mem, _t60, cpu->r[3]);
|
|
/* 0250D9EC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250D9F0 */ _t61 = cpu->r[29] + 0x0000022Cu;
|
|
/* 0250D9F0 */ rbrew_write32(cpu->mem, _t61, cpu->r[3]);
|
|
/* 0250D9F4 */ cpu->r[11] = cpu->r[11] + 0xFFFFF28Cu;
|
|
/* 0250D9F8 */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250D9F8 */ rbrew_write32(cpu->mem, _t62, cpu->r[31]);
|
|
/* 0250D9FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250DA00 */ _t63 = cpu->r[29] + 0x00000008u;
|
|
/* 0250DA00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0250DA04 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DA04 */ rbrew_write32(cpu->mem, _t64, cpu->r[11]);
|
|
/* 0250DA08 */ Gambit_fn_02980A18(cpu);
|
|
/* 0250DA0C */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250DA10 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 0250DA10 */ rbrew_write32(cpu->mem, _t65, cpu->r[3]);
|
|
/* 0250DA14 */ cpu->r[0] = cpu->r[0] + 0xFFFFF27Cu;
|
|
/* 0250DA18 */ _t66 = cpu->r[29] + 0x00000230u;
|
|
/* 0250DA18 */ rbrew_write32(cpu->mem, _t66, cpu->r[3]);
|
|
/* 0250DA1C */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DA1C */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 0250DA20 */ _t68 = cpu->r[29] + 0x00000008u;
|
|
/* 0250DA20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0250DA24 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250DA28 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DA28 */ rbrew_write32(cpu->mem, _t69, cpu->r[31]);
|
|
/* 0250DA2C */ Gambit_fn_029807A8(cpu);
|
|
/* 0250DA30 */ cpu->r[28] = cpu->r[3];
|
|
/* 0250DA34 */ _t70 = cpu->r[29] + 0x00000008u;
|
|
/* 0250DA34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0250DA38 */ /* nop */
|
|
/* 0250DA3C */ cpu->r[3] = cpu->r[30];
|
|
/* 0250DA40 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250DA44 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0250DA48 */ _t71 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0250DA48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0250DA4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0250DA50 */ cpu->r[9] = 0x00000000u;
|
|
/* 0250DA54 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DA54 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0250DA54 */ if (_t73) goto L_0250DA58; else goto L_0250DA64;
|
|
L_0250DA58: ; // 0x250da58
|
|
/* 0250DA58 */ _t74 = cpu->r[30] + 0x00000024u;
|
|
/* 0250DA58 */ cpu->r[8] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0250DA5C */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250DA60 */ _t75 = cpu->r[7] + cpu->r[8];
|
|
/* 0250DA60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t75);
|
|
L_0250DA64: ; // 0x250da64
|
|
/* 0250DA64 */ _t76 = cpu->r[9] + 0x00000000u;
|
|
/* 0250DA64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0250DA68 */ _t77 = cpu->r[3] + 0x00000088u;
|
|
/* 0250DA68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0250DA6C */ _t78 = cpu->r[9] + 0x0000007Cu;
|
|
/* 0250DA6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0250DA70 */ cpu->ctr = cpu->r[10];
|
|
/* 0250DA74 */ /* nop */
|
|
/* 0250DA78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250DA7C */ _t79 = cpu->r[29] + 0x00000224u;
|
|
/* 0250DA7C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t79);
|
|
/* 0250DA80 */ _t80 = cpu->r[29] + 0x00000008u;
|
|
/* 0250DA80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0250DA84 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250DA88 */ _t81 = cpu->r[29] + 0x00000234u;
|
|
/* 0250DA88 */ rbrew_write32(cpu->mem, _t81, cpu->r[3]);
|
|
/* 0250DA8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0250DA90 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0250DA94 */ _t82 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0250DA94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0250DA98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0250DA9C */ cpu->r[7] = 0x00000000u;
|
|
/* 0250DAA0 */ _t83 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DAA0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0250DAA0 */ if (_t84) goto L_0250DAA4; else goto L_0250DAB0;
|
|
L_0250DAA4: ; // 0x250daa4
|
|
/* 0250DAA4 */ _t85 = cpu->r[30] + 0x00000024u;
|
|
/* 0250DAA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0250DAA8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250DAAC */ _t86 = cpu->r[12] + cpu->r[7];
|
|
/* 0250DAAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
L_0250DAB0: ; // 0x250dab0
|
|
/* 0250DAB0 */ _t87 = cpu->r[7] + 0x00000000u;
|
|
/* 0250DAB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0250DAB4 */ _t88 = cpu->r[3] + 0x00000088u;
|
|
/* 0250DAB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0250DAB8 */ _t89 = cpu->r[8] + 0x0000007Cu;
|
|
/* 0250DAB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0250DABC */ _t90 = cpu->r[29] + 0x00000226u;
|
|
/* 0250DABC */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t90);
|
|
/* 0250DAC0 */ cpu->ctr = cpu->r[0];
|
|
/* 0250DAC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250DAC8 */ _t91 = cpu->r[29] + 0x00000228u;
|
|
/* 0250DAC8 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t91);
|
|
/* 0250DACC */ _t92 = cpu->r[29] + 0x00000008u;
|
|
/* 0250DACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0250DAD0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0250DAD4 */ _t93 = cpu->r[29] + 0x00000238u;
|
|
/* 0250DAD4 */ rbrew_write32(cpu->mem, _t93, cpu->r[3]);
|
|
/* 0250DAD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250DADC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0250DAE0 */ _t94 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0250DAE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0250DAE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 0250DAE8 */ cpu->r[9] = 0x00000000u;
|
|
/* 0250DAEC */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DAEC */ _t96 = _t95 & 0x00000001u;
|
|
/* 0250DAEC */ if (_t96) goto L_0250DAF0; else goto L_0250DAFC;
|
|
L_0250DAF0: ; // 0x250daf0
|
|
/* 0250DAF0 */ _t97 = cpu->r[31] + 0x00000024u;
|
|
/* 0250DAF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0250DAF4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250DAF8 */ _t98 = cpu->r[8] + cpu->r[9];
|
|
/* 0250DAF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t98);
|
|
L_0250DAFC: ; // 0x250dafc
|
|
/* 0250DAFC */ _t99 = cpu->r[9] + 0x00000000u;
|
|
/* 0250DAFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0250DB00 */ _t100 = cpu->r[3] + 0x00000088u;
|
|
/* 0250DB00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250DB04 */ _t101 = cpu->r[10] + 0x0000007Cu;
|
|
/* 0250DB04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0250DB08 */ cpu->ctr = cpu->r[0];
|
|
/* 0250DB0C */ _t102 = cpu->r[29] + 0x0000022Au;
|
|
/* 0250DB0C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t102);
|
|
/* 0250DB10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250DB14 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250DB18 */ _t103 = cpu->r[29] + 0x0000023Cu;
|
|
/* 0250DB18 */ rbrew_write32(cpu->mem, _t103, cpu->r[3]);
|
|
/* 0250DB1C */ _t104 = cpu->r[12] + 0x00006000u;
|
|
/* 0250DB1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0250DB20 */ _t105 = cpu->r[12] + 0x00000264u;
|
|
/* 0250DB20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0250DB24 */ _t106 = cpu->r[10] + 0x00000030u;
|
|
/* 0250DB24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0250DB28 */ _t107 = cpu->r[12] + 0x00000014u;
|
|
/* 0250DB28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0250DB2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250DB30 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DB30 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0250DB30 */ if (_t109) goto L_0250DC10; else goto L_0250DB34;
|
|
L_0250DB34: ; // 0x250db34
|
|
/* 0250DB34 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0250DB38 */ _t110 = cpu->r[11] + 0x00006B80u;
|
|
/* 0250DB38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0250DB3C */ cpu->r[8] = cpu->r[10] + cpu->r[11];
|
|
/* 0250DB40 */ _t111 = cpu->r[8] + 0x00000104u;
|
|
/* 0250DB40 */ cpu->r[9] = rbrew_read8(cpu->mem, _t111);
|
|
/* 0250DB44 */ _t112 = cpu->r[10] + 0x00000030u;
|
|
/* 0250DB44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0250DB48 */ cpu->r[11] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250DB4C */ _t113 = cpu->r[11] + cpu->r[7];
|
|
/* 0250DB4C */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0250DB50 */ _t114 = cpu->r[9] + 0x00000004u;
|
|
/* 0250DB50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0250DB54 */ _t115 = cpu->r[11] + 0x00000000u;
|
|
/* 0250DB54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0250DB58 */ _t116 = cpu->r[29] + 0x000002B8u;
|
|
/* 0250DB58 */ rbrew_write32(cpu->mem, _t116, cpu->r[7]);
|
|
/* 0250DB5C */ _t117 = cpu->r[7] + 0x00000250u;
|
|
/* 0250DB5C */ rbrew_write32(cpu->mem, _t117, cpu->r[29]);
|
|
/* 0250DB60 */ _t118 = cpu->r[29] + 0x000002B8u;
|
|
/* 0250DB60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0250DB64 */ _t119 = cpu->r[10] + 0x00000050u;
|
|
/* 0250DB64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0250DB68 */ _t120 = cpu->r[3] + 0x000046BCu;
|
|
/* 0250DB68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0250DB6C */ _t121 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0250DB6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0250DB70 */ cpu->ctr = cpu->r[0];
|
|
/* 0250DB74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250DB78 */ _t122 = cpu->r[3] + 0x00000000u;
|
|
/* 0250DB78 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0250DB7C */ _t123 = cpu->r[29] + 0x000000D8u;
|
|
/* 0250DB7C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[6]);
|
|
/* 0250DB80 */ _t124 = cpu->r[3] + 0x00000004u;
|
|
/* 0250DB80 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0250DB84 */ _t125 = cpu->r[29] + 0x000002B8u;
|
|
/* 0250DB84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0250DB88 */ _t126 = cpu->r[29] + 0x000000DCu;
|
|
/* 0250DB88 */ rbrew_write_f32(cpu->mem, _t126, cpu->f[8]);
|
|
/* 0250DB8C */ _t127 = cpu->r[3] + 0x00000008u;
|
|
/* 0250DB8C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0250DB90 */ _t128 = cpu->r[29] + 0x000000E0u;
|
|
/* 0250DB90 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[11]);
|
|
/* 0250DB94 */ _t129 = cpu->r[10] + 0x00000050u;
|
|
/* 0250DB94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0250DB98 */ _t130 = cpu->r[12] + 0x00000068u;
|
|
/* 0250DB98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0250DB9C */ _t131 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0250DB9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0250DBA0 */ _t132 = cpu->r[12] + 0x00000074u;
|
|
/* 0250DBA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0250DBA4 */ _t133 = cpu->r[29] + 0x000000B4u;
|
|
/* 0250DBA4 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[12]);
|
|
/* 0250DBA8 */ _t134 = cpu->r[29] + 0x000000B8u;
|
|
/* 0250DBA8 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[13]);
|
|
/* 0250DBAC */ _t135 = cpu->r[29] + 0x000000BCu;
|
|
/* 0250DBAC */ rbrew_write_f32(cpu->mem, _t135, cpu->f[0]);
|
|
/* 0250DBB0 */ _t136 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0250DBB0 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 0250DBB4 */ _t137 = cpu->r[12] + 0x00000060u;
|
|
/* 0250DBB4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 0250DBB8 */ _t138 = cpu->r[12] + 0x00000078u;
|
|
/* 0250DBB8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0250DBBC */ _t139 = cpu->r[29] + 0x000000C0u;
|
|
/* 0250DBBC */ rbrew_write_f32(cpu->mem, _t139, cpu->f[3]);
|
|
/* 0250DBC0 */ _t140 = cpu->r[29] + 0x000000C8u;
|
|
/* 0250DBC0 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[5]);
|
|
/* 0250DBC4 */ _t141 = cpu->r[29] + 0x000000C4u;
|
|
/* 0250DBC4 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[4]);
|
|
/* 0250DBC8 */ _t142 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0250DBC8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 0250DBCC */ _t143 = cpu->r[12] + 0x00000070u;
|
|
/* 0250DBCC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 0250DBD0 */ _t144 = cpu->r[12] + 0x00000064u;
|
|
/* 0250DBD0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0250DBD4 */ _t145 = cpu->r[29] + 0x00000080u;
|
|
/* 0250DBD4 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[11]);
|
|
/* 0250DBD8 */ _t146 = cpu->r[29] + 0x00000070u;
|
|
/* 0250DBD8 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[9]);
|
|
/* 0250DBDC */ _t147 = cpu->r[29] + 0x00000064u;
|
|
/* 0250DBDC */ rbrew_write_f32(cpu->mem, _t147, cpu->f[4]);
|
|
/* 0250DBE0 */ _t148 = cpu->r[29] + 0x000000D0u;
|
|
/* 0250DBE0 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[9]);
|
|
/* 0250DBE4 */ _t149 = cpu->r[29] + 0x00000054u;
|
|
/* 0250DBE4 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[12]);
|
|
/* 0250DBE8 */ _t150 = cpu->r[29] + 0x00000078u;
|
|
/* 0250DBE8 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[6]);
|
|
/* 0250DBEC */ _t151 = cpu->r[29] + 0x00000068u;
|
|
/* 0250DBEC */ rbrew_write_f32(cpu->mem, _t151, cpu->f[5]);
|
|
/* 0250DBF0 */ _t152 = cpu->r[29] + 0x00000074u;
|
|
/* 0250DBF0 */ rbrew_write_f32(cpu->mem, _t152, cpu->f[10]);
|
|
/* 0250DBF4 */ _t153 = cpu->r[29] + 0x00000060u;
|
|
/* 0250DBF4 */ rbrew_write_f32(cpu->mem, _t153, cpu->f[3]);
|
|
/* 0250DBF8 */ _t154 = cpu->r[29] + 0x000000CCu;
|
|
/* 0250DBF8 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[7]);
|
|
/* 0250DBFC */ _t155 = cpu->r[29] + 0x0000006Cu;
|
|
/* 0250DBFC */ rbrew_write_f32(cpu->mem, _t155, cpu->f[7]);
|
|
/* 0250DC00 */ _t156 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0250DC00 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[8]);
|
|
/* 0250DC04 */ _t157 = cpu->r[29] + 0x00000058u;
|
|
/* 0250DC04 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[13]);
|
|
/* 0250DC08 */ _t158 = cpu->r[29] + 0x000000D4u;
|
|
/* 0250DC08 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[10]);
|
|
/* 0250DC0C */ _t159 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0250DC0C */ rbrew_write_f32(cpu->mem, _t159, cpu->f[0]);
|
|
L_0250DC10: ; // 0x250dc10
|
|
/* 0250DC10 */ _t160 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DC10 */ cpu->r[28] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0250DC14 */ _t161 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250DC14 */ cpu->r[29] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0250DC18 */ _t162 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250DC18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0250DC1C */ _t163 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DC1C */ cpu->r[30] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0250DC20 */ cpu->lr = cpu->r[0];
|
|
/* 0250DC24 */ _t164 = cpu->r[1] + 0x00000034u;
|
|
/* 0250DC24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0250DC28 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0250DC2C */ return;
|
|
}
|
|
|
|
// fn_0250DC30 @ 0x250dc30
|
|
void Gambit_fn_0250DC30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100;
|
|
|
|
L_0250DC30: ; // 0x250dc30
|
|
/* 0250DC30 */ cpu->r[0] = cpu->lr;
|
|
/* 0250DC34 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0250DC34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250DC34 */ cpu->r[1] = _t0;
|
|
/* 0250DC38 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DC38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250DC3C */ /* nop */
|
|
/* 0250DC40 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DC40 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250DC44 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0250DC44 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0250DC48 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250DC4C */ _t4 = cpu->r[9] + 0xFFFFEFB0u;
|
|
/* 0250DC4C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250DC50 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250DC54 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250DC54 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0250DC58 */ _t6 = cpu->r[31] + 0x00000134u;
|
|
/* 0250DC58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250DC5C */ cpu->f[1] = cpu->f[31];
|
|
/* 0250DC60 */ _t7 = cpu->r[6] + 0x00000294u;
|
|
/* 0250DC60 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0250DC64 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 0250DC64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250DC68 */ Gambit_fn_024F28D0(cpu);
|
|
/* 0250DC6C */ cpu->f[1] = cpu->f[31];
|
|
/* 0250DC70 */ _t9 = cpu->r[31] + 0x000001ECu;
|
|
/* 0250DC70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250DC74 */ Gambit_fn_024F28D0(cpu);
|
|
/* 0250DC78 */ _t10 = cpu->r[31] + 0x00000134u;
|
|
/* 0250DC78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250DC7C */ cpu->r[4] = 0x00000001u;
|
|
/* 0250DC80 */ Gambit_fn_02040BB0(cpu);
|
|
/* 0250DC84 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250DC88 */ _t11 = cpu->r[31] + 0x00000130u;
|
|
/* 0250DC88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250DC8C */ cpu->r[5] = 0x00000001u;
|
|
/* 0250DC90 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2A4u;
|
|
/* 0250DC94 */ Gambit_fn_02398850(cpu);
|
|
/* 0250DC98 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250DC9C */ _t12 = cpu->r[31] + 0x00000130u;
|
|
/* 0250DC9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250DCA0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250DCA4 */ cpu->r[4] = cpu->r[4] + 0xFFFFF29Cu;
|
|
/* 0250DCA8 */ Gambit_fn_02398850(cpu);
|
|
/* 0250DCAC */ _t13 = cpu->r[31] + 0x00000130u;
|
|
/* 0250DCAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0250DCB0 */ _t14 = cpu->r[10] + 0x00000004u;
|
|
/* 0250DCB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0250DCB4 */ _t15 = cpu->r[11] + 0x00000008u;
|
|
/* 0250DCB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250DCB8 */ _t16 = cpu->r[12] + 0x00000008u;
|
|
/* 0250DCB8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 0250DCBC */ _t17 = cpu->r[31] + 0x00000054u;
|
|
/* 0250DCBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0250DCC0 */ _t18 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0250DCC0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0250DCC4 */ _t19 = cpu->r[31] + 0x000001F0u;
|
|
/* 0250DCC4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 0250DCC8 */ _t20 = cpu->r[31] + 0x000001F8u;
|
|
/* 0250DCC8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 0250DCCC */ _t21 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0250DCCC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0250DCD0 */ _t22 = cpu->r[31] + 0x00000074u;
|
|
/* 0250DCD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250DCD4 */ _t23 = cpu->r[31] + 0x00000208u;
|
|
/* 0250DCD4 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 0250DCD8 */ _t24 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0250DCD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250DCDC */ _t25 = cpu->r[31] + 0x00000210u;
|
|
/* 0250DCDC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0250DCE0 */ _t26 = cpu->r[31] + 0x00000218u;
|
|
/* 0250DCE0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 0250DCE4 */ _t27 = cpu->r[31] + 0x00000234u;
|
|
/* 0250DCE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0250DCE8 */ _t28 = cpu->r[31] + 0x00000070u;
|
|
/* 0250DCE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0250DCEC */ _t29 = cpu->r[31] + 0x00000064u;
|
|
/* 0250DCEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250DCF0 */ _t30 = cpu->r[31] + 0x00000078u;
|
|
/* 0250DCF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250DCF4 */ _t31 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0250DCF4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 0250DCF8 */ _t32 = cpu->r[31] + 0x00000214u;
|
|
/* 0250DCF8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 0250DCFC */ _t33 = cpu->r[31] + 0x00000058u;
|
|
/* 0250DCFC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0250DD00 */ _t34 = cpu->r[31] + 0x00000080u;
|
|
/* 0250DD00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0250DD04 */ _t35 = cpu->r[31] + 0x000001F4u;
|
|
/* 0250DD04 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 0250DD08 */ _t36 = cpu->r[31] + 0x00000068u;
|
|
/* 0250DD08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0250DD0C */ cpu->r[5] = 0x00000003u;
|
|
/* 0250DD10 */ _t37 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0250DD10 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[13]);
|
|
/* 0250DD14 */ _t38 = cpu->r[31] + 0x00000060u;
|
|
/* 0250DD14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0250DD18 */ _t39 = cpu->r[31] + 0x00000204u;
|
|
/* 0250DD18 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 0250DD1C */ _t40 = cpu->r[31] + 0x00000200u;
|
|
/* 0250DD1C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 0250DD20 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0250DD24 */ _t41 = cpu->r[31] + 0x000001FCu;
|
|
/* 0250DD24 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 0250DD28 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0250DD2C */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 0250DD2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250DD30 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 0250DD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0250DD34 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DD34 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 0250DD38 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DD38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0250DD3C */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250DD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0250DD40 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DD40 */ rbrew_write32(cpu->mem, _t47, cpu->r[8]);
|
|
/* 0250DD44 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DD44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0250DD48 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 0250DD48 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0250DD4C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0250DD4C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0250DD50 */ _t51 = cpu->r[31] + 0x00000244u;
|
|
/* 0250DD50 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 0250DD54 */ _t52 = cpu->r[31] + 0x00000248u;
|
|
/* 0250DD54 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 0250DD58 */ cpu->r[9] = 0x101E0000u;
|
|
/* 0250DD5C */ _t53 = cpu->r[31] + 0x00000240u;
|
|
/* 0250DD5C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0250DD60 */ _t54 = cpu->r[9] + 0xFFFF96D8u;
|
|
/* 0250DD60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0250DD60 */ cpu->r[9] = _t54;
|
|
/* 0250DD64 */ _t55 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0250DD64 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 0250DD68 */ _t56 = cpu->r[9] + 0x00000004u;
|
|
/* 0250DD68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0250DD6C */ _t57 = cpu->r[31] + 0x00000250u;
|
|
/* 0250DD6C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 0250DD70 */ _t58 = cpu->r[9] + 0x00000008u;
|
|
/* 0250DD70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0250DD74 */ _t59 = cpu->r[31] + 0x00000254u;
|
|
/* 0250DD74 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 0250DD78 */ _t60 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0250DD78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0250DD7C */ _t61 = cpu->r[31] + 0x00000258u;
|
|
/* 0250DD7C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 0250DD80 */ _t62 = cpu->r[9] + 0x00000010u;
|
|
/* 0250DD80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0250DD84 */ _t63 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0250DD84 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0250DD88 */ _t64 = cpu->r[9] + 0x00000014u;
|
|
/* 0250DD88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0250DD8C */ _t65 = cpu->r[31] + 0x00000260u;
|
|
/* 0250DD8C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 0250DD90 */ _t66 = cpu->r[9] + 0x00000018u;
|
|
/* 0250DD90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0250DD94 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250DD98 */ _t67 = cpu->r[31] + 0x00000264u;
|
|
/* 0250DD98 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[11]);
|
|
/* 0250DD9C */ _t68 = cpu->r[9] + 0x0000001Cu;
|
|
/* 0250DD9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0250DDA0 */ _t69 = cpu->r[7] + 0xFFFFF298u;
|
|
/* 0250DDA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0250DDA4 */ _t70 = cpu->r[31] + 0x00000268u;
|
|
/* 0250DDA4 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[12]);
|
|
/* 0250DDA8 */ _t71 = cpu->r[9] + 0x00000020u;
|
|
/* 0250DDA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0250DDAC */ _t72 = cpu->r[31] + 0x00000274u;
|
|
/* 0250DDAC */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 0250DDB0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0250DDB4 */ _t73 = cpu->r[31] + 0x0000026Cu;
|
|
/* 0250DDB4 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 0250DDB8 */ _t74 = cpu->r[31] + 0x0000028Eu;
|
|
/* 0250DDB8 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[11]);
|
|
/* 0250DDBC */ _t75 = cpu->r[31] + 0x00000278u;
|
|
/* 0250DDBC */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 0250DDC0 */ _t76 = cpu->r[31] + 0x0000027Cu;
|
|
/* 0250DDC0 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 0250DDC4 */ _t77 = cpu->r[31] + 0x00000270u;
|
|
/* 0250DDC4 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[11]);
|
|
/* 0250DDC8 */ _t78 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250DDC8 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[11]);
|
|
/* 0250DDCC */ _t79 = cpu->r[31] + 0x00000284u;
|
|
/* 0250DDCC */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[11]);
|
|
/* 0250DDD0 */ _t80 = cpu->r[31] + 0x00000290u;
|
|
/* 0250DDD0 */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 0250DDD4 */ _t81 = cpu->r[31] + 0x0000028Du;
|
|
/* 0250DDD4 */ rbrew_write8(cpu->mem, _t81, (uint8_t)cpu->r[11]);
|
|
/* 0250DDD8 */ _t82 = cpu->r[31] + 0x00000288u;
|
|
/* 0250DDD8 */ rbrew_write32(cpu->mem, _t82, cpu->r[11]);
|
|
/* 0250DDDC */ _t83 = cpu->r[31] + 0x0000028Fu;
|
|
/* 0250DDDC */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[11]);
|
|
/* 0250DDE0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250DDE4 */ _t84 = cpu->r[31] + 0x00000280u;
|
|
/* 0250DDE4 */ rbrew_write32(cpu->mem, _t84, cpu->r[11]);
|
|
/* 0250DDE8 */ _t85 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0250DDE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0250DDEC */ _t86 = cpu->r[31] + 0x00000024u;
|
|
/* 0250DDEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0250DDF0 */ _t87 = cpu->r[12] + 0x000001F0u;
|
|
/* 0250DDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0250DDF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 0250DDF8 */ cpu->r[8] = cpu->r[11];
|
|
/* 0250DDFC */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DDFC */ _t89 = _t88 & 0x00000001u;
|
|
/* 0250DDFC */ if (_t89) goto L_0250DE00; else goto L_0250DE0C;
|
|
L_0250DE00: ; // 0x250de00
|
|
/* 0250DE00 */ _t90 = cpu->r[12] + 0x000001F8u;
|
|
/* 0250DE00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0250DE04 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250DE08 */ _t91 = cpu->r[5] + cpu->r[6];
|
|
/* 0250DE08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
L_0250DE0C: ; // 0x250de0c
|
|
/* 0250DE0C */ _t92 = cpu->r[31] + 0x000002BCu;
|
|
/* 0250DE0C */ rbrew_write_f32(cpu->mem, _t92, cpu->f[31]);
|
|
/* 0250DE10 */ _t93 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250DE10 */ rbrew_write32(cpu->mem, _t93, cpu->r[8]);
|
|
/* 0250DE14 */ _t94 = cpu->r[31] + 0x000002C0u;
|
|
/* 0250DE14 */ rbrew_write8(cpu->mem, _t94, (uint8_t)cpu->r[11]);
|
|
/* 0250DE18 */ _t95 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DE18 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0250DE1C */ _t96 = cpu->r[1] + 0x00000024u;
|
|
/* 0250DE1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0250DE20 */ _t97 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DE20 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 0250DE24 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DE24 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0250DE24 */ if (_t99) goto L_0250DE28; // else: addr-0 trap, fall-through
|
|
L_0250DE28: ; // 0x250de28
|
|
/* 0250DE28 */ _t100 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250DE28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250DE2C */ cpu->lr = cpu->r[0];
|
|
/* 0250DE30 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0250DE34 */ return;
|
|
}
|
|
|
|
// fn_0250DC34 @ 0x250dc34
|
|
void Gambit_fn_0250DC34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100;
|
|
|
|
L_0250DC34: ; // 0x250dc34
|
|
/* 0250DC34 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0250DC34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250DC34 */ cpu->r[1] = _t0;
|
|
/* 0250DC38 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DC38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250DC3C */ /* nop */
|
|
/* 0250DC40 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DC40 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250DC44 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0250DC44 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0250DC48 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250DC4C */ _t4 = cpu->r[9] + 0xFFFFEFB0u;
|
|
/* 0250DC4C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250DC50 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250DC54 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250DC54 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0250DC58 */ _t6 = cpu->r[31] + 0x00000134u;
|
|
/* 0250DC58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250DC5C */ cpu->f[1] = cpu->f[31];
|
|
/* 0250DC60 */ _t7 = cpu->r[6] + 0x00000294u;
|
|
/* 0250DC60 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0250DC64 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 0250DC64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250DC68 */ Gambit_fn_024F28D0(cpu);
|
|
/* 0250DC6C */ cpu->f[1] = cpu->f[31];
|
|
/* 0250DC70 */ _t9 = cpu->r[31] + 0x000001ECu;
|
|
/* 0250DC70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250DC74 */ Gambit_fn_024F28D0(cpu);
|
|
/* 0250DC78 */ _t10 = cpu->r[31] + 0x00000134u;
|
|
/* 0250DC78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250DC7C */ cpu->r[4] = 0x00000001u;
|
|
/* 0250DC80 */ Gambit_fn_02040BB0(cpu);
|
|
/* 0250DC84 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250DC88 */ _t11 = cpu->r[31] + 0x00000130u;
|
|
/* 0250DC88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250DC8C */ cpu->r[5] = 0x00000001u;
|
|
/* 0250DC90 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2A4u;
|
|
/* 0250DC94 */ Gambit_fn_02398850(cpu);
|
|
/* 0250DC98 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250DC9C */ _t12 = cpu->r[31] + 0x00000130u;
|
|
/* 0250DC9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250DCA0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250DCA4 */ cpu->r[4] = cpu->r[4] + 0xFFFFF29Cu;
|
|
/* 0250DCA8 */ Gambit_fn_02398850(cpu);
|
|
/* 0250DCAC */ _t13 = cpu->r[31] + 0x00000130u;
|
|
/* 0250DCAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0250DCB0 */ _t14 = cpu->r[10] + 0x00000004u;
|
|
/* 0250DCB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0250DCB4 */ _t15 = cpu->r[11] + 0x00000008u;
|
|
/* 0250DCB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250DCB8 */ _t16 = cpu->r[12] + 0x00000008u;
|
|
/* 0250DCB8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 0250DCBC */ _t17 = cpu->r[31] + 0x00000054u;
|
|
/* 0250DCBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0250DCC0 */ _t18 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0250DCC0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0250DCC4 */ _t19 = cpu->r[31] + 0x000001F0u;
|
|
/* 0250DCC4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 0250DCC8 */ _t20 = cpu->r[31] + 0x000001F8u;
|
|
/* 0250DCC8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 0250DCCC */ _t21 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0250DCCC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0250DCD0 */ _t22 = cpu->r[31] + 0x00000074u;
|
|
/* 0250DCD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250DCD4 */ _t23 = cpu->r[31] + 0x00000208u;
|
|
/* 0250DCD4 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 0250DCD8 */ _t24 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0250DCD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250DCDC */ _t25 = cpu->r[31] + 0x00000210u;
|
|
/* 0250DCDC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0250DCE0 */ _t26 = cpu->r[31] + 0x00000218u;
|
|
/* 0250DCE0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 0250DCE4 */ _t27 = cpu->r[31] + 0x00000234u;
|
|
/* 0250DCE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0250DCE8 */ _t28 = cpu->r[31] + 0x00000070u;
|
|
/* 0250DCE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0250DCEC */ _t29 = cpu->r[31] + 0x00000064u;
|
|
/* 0250DCEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250DCF0 */ _t30 = cpu->r[31] + 0x00000078u;
|
|
/* 0250DCF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250DCF4 */ _t31 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0250DCF4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 0250DCF8 */ _t32 = cpu->r[31] + 0x00000214u;
|
|
/* 0250DCF8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 0250DCFC */ _t33 = cpu->r[31] + 0x00000058u;
|
|
/* 0250DCFC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0250DD00 */ _t34 = cpu->r[31] + 0x00000080u;
|
|
/* 0250DD00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0250DD04 */ _t35 = cpu->r[31] + 0x000001F4u;
|
|
/* 0250DD04 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 0250DD08 */ _t36 = cpu->r[31] + 0x00000068u;
|
|
/* 0250DD08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0250DD0C */ cpu->r[5] = 0x00000003u;
|
|
/* 0250DD10 */ _t37 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0250DD10 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[13]);
|
|
/* 0250DD14 */ _t38 = cpu->r[31] + 0x00000060u;
|
|
/* 0250DD14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0250DD18 */ _t39 = cpu->r[31] + 0x00000204u;
|
|
/* 0250DD18 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 0250DD1C */ _t40 = cpu->r[31] + 0x00000200u;
|
|
/* 0250DD1C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 0250DD20 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0250DD24 */ _t41 = cpu->r[31] + 0x000001FCu;
|
|
/* 0250DD24 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 0250DD28 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0250DD2C */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 0250DD2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250DD30 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 0250DD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0250DD34 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DD34 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 0250DD38 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DD38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0250DD3C */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250DD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0250DD40 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DD40 */ rbrew_write32(cpu->mem, _t47, cpu->r[8]);
|
|
/* 0250DD44 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DD44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0250DD48 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 0250DD48 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0250DD4C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0250DD4C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0250DD50 */ _t51 = cpu->r[31] + 0x00000244u;
|
|
/* 0250DD50 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 0250DD54 */ _t52 = cpu->r[31] + 0x00000248u;
|
|
/* 0250DD54 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 0250DD58 */ cpu->r[9] = 0x101E0000u;
|
|
/* 0250DD5C */ _t53 = cpu->r[31] + 0x00000240u;
|
|
/* 0250DD5C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0250DD60 */ _t54 = cpu->r[9] + 0xFFFF96D8u;
|
|
/* 0250DD60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0250DD60 */ cpu->r[9] = _t54;
|
|
/* 0250DD64 */ _t55 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0250DD64 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 0250DD68 */ _t56 = cpu->r[9] + 0x00000004u;
|
|
/* 0250DD68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0250DD6C */ _t57 = cpu->r[31] + 0x00000250u;
|
|
/* 0250DD6C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 0250DD70 */ _t58 = cpu->r[9] + 0x00000008u;
|
|
/* 0250DD70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0250DD74 */ _t59 = cpu->r[31] + 0x00000254u;
|
|
/* 0250DD74 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 0250DD78 */ _t60 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0250DD78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0250DD7C */ _t61 = cpu->r[31] + 0x00000258u;
|
|
/* 0250DD7C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 0250DD80 */ _t62 = cpu->r[9] + 0x00000010u;
|
|
/* 0250DD80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0250DD84 */ _t63 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0250DD84 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0250DD88 */ _t64 = cpu->r[9] + 0x00000014u;
|
|
/* 0250DD88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0250DD8C */ _t65 = cpu->r[31] + 0x00000260u;
|
|
/* 0250DD8C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 0250DD90 */ _t66 = cpu->r[9] + 0x00000018u;
|
|
/* 0250DD90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0250DD94 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250DD98 */ _t67 = cpu->r[31] + 0x00000264u;
|
|
/* 0250DD98 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[11]);
|
|
/* 0250DD9C */ _t68 = cpu->r[9] + 0x0000001Cu;
|
|
/* 0250DD9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0250DDA0 */ _t69 = cpu->r[7] + 0xFFFFF298u;
|
|
/* 0250DDA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0250DDA4 */ _t70 = cpu->r[31] + 0x00000268u;
|
|
/* 0250DDA4 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[12]);
|
|
/* 0250DDA8 */ _t71 = cpu->r[9] + 0x00000020u;
|
|
/* 0250DDA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0250DDAC */ _t72 = cpu->r[31] + 0x00000274u;
|
|
/* 0250DDAC */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 0250DDB0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0250DDB4 */ _t73 = cpu->r[31] + 0x0000026Cu;
|
|
/* 0250DDB4 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 0250DDB8 */ _t74 = cpu->r[31] + 0x0000028Eu;
|
|
/* 0250DDB8 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[11]);
|
|
/* 0250DDBC */ _t75 = cpu->r[31] + 0x00000278u;
|
|
/* 0250DDBC */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 0250DDC0 */ _t76 = cpu->r[31] + 0x0000027Cu;
|
|
/* 0250DDC0 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 0250DDC4 */ _t77 = cpu->r[31] + 0x00000270u;
|
|
/* 0250DDC4 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[11]);
|
|
/* 0250DDC8 */ _t78 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250DDC8 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[11]);
|
|
/* 0250DDCC */ _t79 = cpu->r[31] + 0x00000284u;
|
|
/* 0250DDCC */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[11]);
|
|
/* 0250DDD0 */ _t80 = cpu->r[31] + 0x00000290u;
|
|
/* 0250DDD0 */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 0250DDD4 */ _t81 = cpu->r[31] + 0x0000028Du;
|
|
/* 0250DDD4 */ rbrew_write8(cpu->mem, _t81, (uint8_t)cpu->r[11]);
|
|
/* 0250DDD8 */ _t82 = cpu->r[31] + 0x00000288u;
|
|
/* 0250DDD8 */ rbrew_write32(cpu->mem, _t82, cpu->r[11]);
|
|
/* 0250DDDC */ _t83 = cpu->r[31] + 0x0000028Fu;
|
|
/* 0250DDDC */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[11]);
|
|
/* 0250DDE0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250DDE4 */ _t84 = cpu->r[31] + 0x00000280u;
|
|
/* 0250DDE4 */ rbrew_write32(cpu->mem, _t84, cpu->r[11]);
|
|
/* 0250DDE8 */ _t85 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0250DDE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0250DDEC */ _t86 = cpu->r[31] + 0x00000024u;
|
|
/* 0250DDEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0250DDF0 */ _t87 = cpu->r[12] + 0x000001F0u;
|
|
/* 0250DDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0250DDF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 0250DDF8 */ cpu->r[8] = cpu->r[11];
|
|
/* 0250DDFC */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DDFC */ _t89 = _t88 & 0x00000001u;
|
|
/* 0250DDFC */ if (_t89) goto L_0250DE00; else goto L_0250DE0C;
|
|
L_0250DE00: ; // 0x250de00
|
|
/* 0250DE00 */ _t90 = cpu->r[12] + 0x000001F8u;
|
|
/* 0250DE00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0250DE04 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250DE08 */ _t91 = cpu->r[5] + cpu->r[6];
|
|
/* 0250DE08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
L_0250DE0C: ; // 0x250de0c
|
|
/* 0250DE0C */ _t92 = cpu->r[31] + 0x000002BCu;
|
|
/* 0250DE0C */ rbrew_write_f32(cpu->mem, _t92, cpu->f[31]);
|
|
/* 0250DE10 */ _t93 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250DE10 */ rbrew_write32(cpu->mem, _t93, cpu->r[8]);
|
|
/* 0250DE14 */ _t94 = cpu->r[31] + 0x000002C0u;
|
|
/* 0250DE14 */ rbrew_write8(cpu->mem, _t94, (uint8_t)cpu->r[11]);
|
|
/* 0250DE18 */ _t95 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DE18 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0250DE1C */ _t96 = cpu->r[1] + 0x00000024u;
|
|
/* 0250DE1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0250DE20 */ _t97 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DE20 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 0250DE24 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250DE24 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0250DE24 */ if (_t99) goto L_0250DE28; // else: addr-0 trap, fall-through
|
|
L_0250DE28: ; // 0x250de28
|
|
/* 0250DE28 */ _t100 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250DE28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250DE2C */ cpu->lr = cpu->r[0];
|
|
/* 0250DE30 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0250DE34 */ return;
|
|
}
|
|
|
|
// fn_0250DE38 @ 0x250de38
|
|
void Gambit_fn_0250DE38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0250DE38: ; // 0x250de38
|
|
/* 0250DE38 */ cpu->r[0] = cpu->lr;
|
|
/* 0250DE3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250DE3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250DE3C */ cpu->r[1] = _t0;
|
|
/* 0250DE40 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DE40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250DE44 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250DE48 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250DE48 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250DE4C */ _t3 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0250DE4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250DE50 */ _t4 = cpu->r[12] + 0x00000044u;
|
|
/* 0250DE50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250DE54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250DE58 */ cpu->r[31] = 0x00000001u;
|
|
/* 0250DE5C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DE5C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250DE5C */ if (_t6) goto L_0250DE60; else goto L_0250DE74;
|
|
L_0250DE60: ; // 0x250de60
|
|
/* 0250DE60 */ _t7 = cpu->r[3] + 0x000002B4u;
|
|
/* 0250DE60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250DE64 */ Gambit_fn_02512EB4(cpu);
|
|
/* 0250DE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250DE6C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DE6C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250DE6C */ if (_t9) goto L_0250DE70; else goto L_0250DE74;
|
|
L_0250DE70: ; // 0x250de70
|
|
/* 0250DE70 */ cpu->r[31] = 0x00000000u;
|
|
L_0250DE74: ; // 0x250de74
|
|
/* 0250DE74 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0250DE74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250DE78 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0250DE7C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DE7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250DE80 */ cpu->lr = cpu->r[0];
|
|
/* 0250DE84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250DE88 */ return;
|
|
}
|
|
|
|
// fn_0250DE3C @ 0x250de3c
|
|
void Gambit_fn_0250DE3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0250DE3C: ; // 0x250de3c
|
|
/* 0250DE3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250DE3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250DE3C */ cpu->r[1] = _t0;
|
|
/* 0250DE40 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DE40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250DE44 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250DE48 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250DE48 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250DE4C */ _t3 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0250DE4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250DE50 */ _t4 = cpu->r[12] + 0x00000044u;
|
|
/* 0250DE50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250DE54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250DE58 */ cpu->r[31] = 0x00000001u;
|
|
/* 0250DE5C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DE5C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250DE5C */ if (_t6) goto L_0250DE60; else goto L_0250DE74;
|
|
L_0250DE60: ; // 0x250de60
|
|
/* 0250DE60 */ _t7 = cpu->r[3] + 0x000002B4u;
|
|
/* 0250DE60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250DE64 */ Gambit_fn_02512EB4(cpu);
|
|
/* 0250DE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250DE6C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DE6C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250DE6C */ if (_t9) goto L_0250DE70; else goto L_0250DE74;
|
|
L_0250DE70: ; // 0x250de70
|
|
/* 0250DE70 */ cpu->r[31] = 0x00000000u;
|
|
L_0250DE74: ; // 0x250de74
|
|
/* 0250DE74 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0250DE74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250DE78 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0250DE7C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DE7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250DE80 */ cpu->lr = cpu->r[0];
|
|
/* 0250DE84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250DE88 */ return;
|
|
}
|
|
|
|
// fn_0250DE8C @ 0x250de8c
|
|
void Gambit_fn_0250DE8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161;
|
|
|
|
L_0250DE8C: ; // 0x250de8c
|
|
/* 0250DE8C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0250DE8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250DE8C */ cpu->r[1] = _t0;
|
|
/* 0250DE90 */ /* nop */
|
|
/* 0250DE94 */ cpu->r[0] = cpu->lr;
|
|
/* 0250DE98 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 0250DE98 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250DE9C */ /* nop */
|
|
/* 0250DEA0 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 0250DEA0 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250DEA4 */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250DEA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250DEA8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0250DEAC */ cpu->r[5] = 0x00000003u;
|
|
/* 0250DEB0 */ _t4 = cpu->r[29] + 0x00000234u;
|
|
/* 0250DEB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250DEB4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0250DEB8 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0250DEBC */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250DEBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250DEC0 */ _t6 = cpu->r[1] + 0x00000038u;
|
|
/* 0250DEC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250DEC4 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DEC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0250DEC8 */ _t8 = cpu->r[1] + 0x00000030u;
|
|
/* 0250DEC8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0250DECC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250DED0 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250DED0 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 0250DED4 */ _t10 = cpu->r[29] + 0x00000278u;
|
|
/* 0250DED4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0250DED8 */ cpu->r[27] = 0x101D0000u;
|
|
/* 0250DEDC */ _t11 = cpu->r[1] + 0x00000034u;
|
|
/* 0250DEDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250DEE0 */ _t12 = cpu->r[12] + 0xFFFFF2BCu;
|
|
/* 0250DEE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0250DEE4 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250DEE4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0250DEE8 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DEE8 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 0250DEEC */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 0250DEEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0250DEF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0250DEF4 */ _t16 = cpu->r[29] + 0x00000274u;
|
|
/* 0250DEF4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0250DEF8 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0250DEFC */ _t17 = cpu->r[29] + 0x00000244u;
|
|
/* 0250DEFC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0250DF00 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0250DF04 */ _t18 = cpu->r[29] + 0x00000248u;
|
|
/* 0250DF04 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[8]);
|
|
/* 0250DF08 */ cpu->f[31] = cpu->f[9] - cpu->f[10];
|
|
/* 0250DF0C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0250DF10 */ _t19 = cpu->r[29] + 0x00000240u;
|
|
/* 0250DF10 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 0250DF14 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DF14 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0250DF14 */ if (_t21) goto L_0250DFF4; else goto L_0250DF18;
|
|
L_0250DF18: ; // 0x250df18
|
|
/* 0250DF18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0250DF1C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DF1C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0250DF1C */ if (_t23) goto L_0250DF20; else goto L_0250DFF4;
|
|
L_0250DF20: ; // 0x250df20
|
|
/* 0250DF20 */ _t24 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250DF20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250DF24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0250DF28 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DF28 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0250DF28 */ if (_t26) goto L_0250DF2C; else goto L_0250DF48;
|
|
L_0250DF2C: ; // 0x250df2c
|
|
/* 0250DF2C */ cpu->r[12] = 0x00000001u;
|
|
/* 0250DF30 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250DF34 */ cpu->r[3] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250DF38 */ cpu->r[5] = 0x0000001Fu;
|
|
/* 0250DF3C */ cpu->r[4] = cpu->r[4] + 0x0000675Cu;
|
|
/* 0250DF40 */ _t27 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250DF40 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 0250DF44 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0250DF48: ; // 0x250df48
|
|
/* 0250DF48 */ _t28 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250DF48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0250DF4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0250DF50 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DF50 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0250DF50 */ if (_t30) goto L_0250DF54; else goto L_0250DF80;
|
|
L_0250DF54: ; // 0x250df54
|
|
/* 0250DF54 */ cpu->r[7] = 0x00000001u;
|
|
/* 0250DF58 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250DF5C */ _t31 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250DF5C */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 0250DF60 */ _t32 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250DF60 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 0250DF64 */ Gambit_fn_0282A450(cpu);
|
|
/* 0250DF68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250DF6C */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250DF70 */ _t33 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250DF70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0250DF74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250DF78 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DF78 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0250DF78 */ if (_t35) goto L_0250DFA4; else goto L_0250DF7C;
|
|
L_0250DF7C: ; // 0x250df7c
|
|
/* 0250DF7C */ goto L_0250DFC0;
|
|
L_0250DF80: ; // 0x250df80
|
|
/* 0250DF80 */ _t36 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250DF80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0250DF84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250DF88 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DF88 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250DF88 */ if (_t38) goto L_0250DF8C; else goto L_0250DFCC;
|
|
L_0250DF8C: ; // 0x250df8c
|
|
/* 0250DF8C */ Gambit_fn_0282A450(cpu);
|
|
/* 0250DF90 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250DF94 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250DF98 */ _t39 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250DF98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250DF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250DFA0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250DFA0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0250DFA0 */ if (_t41) goto L_0250DFA4; else goto L_0250DFC0;
|
|
L_0250DFA4: ; // 0x250dfa4
|
|
/* 0250DFA4 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0250DFA8 */ cpu->r[4] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250DFAC */ cpu->r[30] = cpu->r[30] + 0x00000994u;
|
|
/* 0250DFB0 */ cpu->r[5] = 0x00000004u;
|
|
/* 0250DFB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250DFB8 */ Gambit_fn_0282A374(cpu);
|
|
/* 0250DFBC */ _t42 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250DFBC */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
L_0250DFC0: ; // 0x250dfc0
|
|
/* 0250DFC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250DFC4 */ Gambit_fn_02837030(cpu);
|
|
/* 0250DFC8 */ _t43 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250DFC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
L_0250DFCC: ; // 0x250dfcc
|
|
/* 0250DFCC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250DFD0 */ _t44 = cpu->r[8] + 0x00000004u;
|
|
/* 0250DFD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0250DFD4 */ cpu->r[11] = cpu->r[11] + 0xFFFFEFC8u;
|
|
/* 0250DFD8 */ _t45 = cpu->r[29] + 0x00000030u;
|
|
/* 0250DFD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0250DFDC */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 0250DFDC */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 0250DFE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250DFE4 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250DFE4 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 0250DFE8 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0250DFEC */ _t48 = cpu->r[29] + 0x00000274u;
|
|
/* 0250DFEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0250DFF0 */ goto L_0250E2B0;
|
|
L_0250DFF4: ; // 0x250dff4
|
|
/* 0250DFF4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250DFF8 */ _t49 = cpu->r[10] + 0xFFFFF298u;
|
|
/* 0250DFF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0250DFFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 0250E000 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E000 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0250E000 */ if (_t51) goto L_0250E0E0; else goto L_0250E004;
|
|
L_0250E004: ; // 0x250e004
|
|
/* 0250E004 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 0250E008 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E008 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0250E008 */ if (_t53) goto L_0250E00C; else goto L_0250E0E0;
|
|
L_0250E00C: ; // 0x250e00c
|
|
/* 0250E00C */ _t54 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250E00C */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0250E010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0250E014 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E014 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0250E014 */ if (_t56) goto L_0250E018; else goto L_0250E034;
|
|
L_0250E018: ; // 0x250e018
|
|
/* 0250E018 */ cpu->r[0] = 0x00000001u;
|
|
/* 0250E01C */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250E020 */ cpu->r[3] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250E024 */ cpu->r[5] = 0x0000001Fu;
|
|
/* 0250E028 */ cpu->r[4] = cpu->r[4] + 0x0000675Cu;
|
|
/* 0250E02C */ _t57 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250E02C */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
/* 0250E030 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0250E034: ; // 0x250e034
|
|
/* 0250E034 */ _t58 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250E034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0250E038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E03C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E03C */ _t60 = _t59 & 0x00000001u;
|
|
/* 0250E03C */ if (_t60) goto L_0250E040; else goto L_0250E06C;
|
|
L_0250E040: ; // 0x250e040
|
|
/* 0250E040 */ cpu->r[7] = 0x00000001u;
|
|
/* 0250E044 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250E048 */ _t61 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250E048 */ rbrew_write32(cpu->mem, _t61, cpu->r[7]);
|
|
/* 0250E04C */ _t62 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E04C */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
/* 0250E050 */ Gambit_fn_0282A450(cpu);
|
|
/* 0250E054 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E058 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250E05C */ _t63 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E05C */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0250E060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250E064 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E064 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0250E064 */ if (_t65) goto L_0250E090; else goto L_0250E068;
|
|
L_0250E068: ; // 0x250e068
|
|
/* 0250E068 */ goto L_0250E0AC;
|
|
L_0250E06C: ; // 0x250e06c
|
|
/* 0250E06C */ _t66 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E06C */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0250E070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E074 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E074 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0250E074 */ if (_t68) goto L_0250E078; else goto L_0250E0B8;
|
|
L_0250E078: ; // 0x250e078
|
|
/* 0250E078 */ Gambit_fn_0282A450(cpu);
|
|
/* 0250E07C */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E080 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250E084 */ _t69 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E084 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0250E088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250E08C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E08C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0250E08C */ if (_t71) goto L_0250E090; else goto L_0250E0AC;
|
|
L_0250E090: ; // 0x250e090
|
|
/* 0250E090 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0250E094 */ cpu->r[4] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250E098 */ cpu->r[30] = cpu->r[30] + 0x00000994u;
|
|
/* 0250E09C */ cpu->r[5] = 0x00000004u;
|
|
/* 0250E0A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250E0A4 */ Gambit_fn_0282A374(cpu);
|
|
/* 0250E0A8 */ _t72 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E0A8 */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
L_0250E0AC: ; // 0x250e0ac
|
|
/* 0250E0AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0250E0B0 */ Gambit_fn_02837030(cpu);
|
|
/* 0250E0B4 */ _t73 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E0B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t73);
|
|
L_0250E0B8: ; // 0x250e0b8
|
|
/* 0250E0B8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250E0BC */ _t74 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0250E0BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0250E0C0 */ cpu->r[10] = cpu->r[10] + 0xFFFFEFC8u;
|
|
/* 0250E0C4 */ _t75 = cpu->r[29] + 0x00000030u;
|
|
/* 0250E0C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0250E0C8 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 0250E0C8 */ rbrew_write32(cpu->mem, _t76, cpu->r[6]);
|
|
/* 0250E0CC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0250E0D0 */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E0D0 */ rbrew_write32(cpu->mem, _t77, cpu->r[10]);
|
|
/* 0250E0D4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0250E0D8 */ _t78 = cpu->r[29] + 0x00000274u;
|
|
/* 0250E0D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0250E0DC */ goto L_0250E2B0;
|
|
L_0250E0E0: ; // 0x250e0e0
|
|
/* 0250E0E0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250E0E4 */ _t79 = cpu->r[29] + 0x0000027Cu;
|
|
/* 0250E0E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0250E0E8 */ _t80 = cpu->r[6] + 0xFFFFEFB0u;
|
|
/* 0250E0E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0250E0EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0250E0F0 */ _t81 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E0F0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0250E0F0 */ if (_t82) goto L_0250E1D0; else goto L_0250E0F4;
|
|
L_0250E0F4: ; // 0x250e0f4
|
|
/* 0250E0F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 0250E0F8 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E0F8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0250E0F8 */ if (_t84) goto L_0250E0FC; else goto L_0250E1D0;
|
|
L_0250E0FC: ; // 0x250e0fc
|
|
/* 0250E0FC */ _t85 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250E0FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0250E100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0250E104 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E104 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0250E104 */ if (_t87) goto L_0250E108; else goto L_0250E124;
|
|
L_0250E108: ; // 0x250e108
|
|
/* 0250E108 */ cpu->r[0] = 0x00000001u;
|
|
/* 0250E10C */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250E110 */ cpu->r[3] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250E114 */ cpu->r[5] = 0x0000001Fu;
|
|
/* 0250E118 */ cpu->r[4] = cpu->r[4] + 0x0000675Cu;
|
|
/* 0250E11C */ _t88 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250E11C */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0250E120 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0250E124: ; // 0x250e124
|
|
/* 0250E124 */ _t89 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250E124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0250E128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E12C */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E12C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0250E12C */ if (_t91) goto L_0250E130; else goto L_0250E15C;
|
|
L_0250E130: ; // 0x250e130
|
|
/* 0250E130 */ cpu->r[0] = 0x00000001u;
|
|
/* 0250E134 */ cpu->r[7] = 0x00000000u;
|
|
/* 0250E138 */ _t92 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250E138 */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 0250E13C */ _t93 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E13C */ rbrew_write32(cpu->mem, _t93, cpu->r[7]);
|
|
/* 0250E140 */ Gambit_fn_0282A450(cpu);
|
|
/* 0250E144 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E148 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250E14C */ _t94 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E14C */ cpu->r[8] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0250E150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E154 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E154 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0250E154 */ if (_t96) goto L_0250E180; else goto L_0250E158;
|
|
L_0250E158: ; // 0x250e158
|
|
/* 0250E158 */ goto L_0250E19C;
|
|
L_0250E15C: ; // 0x250e15c
|
|
/* 0250E15C */ _t97 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E15C */ cpu->r[8] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0250E160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E164 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E164 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0250E164 */ if (_t99) goto L_0250E168; else goto L_0250E1A8;
|
|
L_0250E168: ; // 0x250e168
|
|
/* 0250E168 */ Gambit_fn_0282A450(cpu);
|
|
/* 0250E16C */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E170 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250E174 */ _t100 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E174 */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250E178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E17C */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E17C */ _t102 = _t101 & 0x00000001u;
|
|
/* 0250E17C */ if (_t102) goto L_0250E180; else goto L_0250E19C;
|
|
L_0250E180: ; // 0x250e180
|
|
/* 0250E180 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0250E184 */ cpu->r[4] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250E188 */ cpu->r[30] = cpu->r[30] + 0x00000994u;
|
|
/* 0250E18C */ cpu->r[5] = 0x00000004u;
|
|
/* 0250E190 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250E194 */ Gambit_fn_0282A374(cpu);
|
|
/* 0250E198 */ _t103 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E198 */ rbrew_write32(cpu->mem, _t103, cpu->r[30]);
|
|
L_0250E19C: ; // 0x250e19c
|
|
/* 0250E19C */ cpu->r[3] = cpu->r[31];
|
|
/* 0250E1A0 */ Gambit_fn_02837030(cpu);
|
|
/* 0250E1A4 */ _t104 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E1A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
L_0250E1A8: ; // 0x250e1a8
|
|
/* 0250E1A8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250E1AC */ _t105 = cpu->r[8] + 0x00000000u;
|
|
/* 0250E1AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0250E1B0 */ cpu->r[9] = cpu->r[9] + 0xFFFFEFC8u;
|
|
/* 0250E1B4 */ _t106 = cpu->r[29] + 0x00000030u;
|
|
/* 0250E1B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0250E1B8 */ _t107 = cpu->r[1] + 0x00000018u;
|
|
/* 0250E1B8 */ rbrew_write32(cpu->mem, _t107, cpu->r[0]);
|
|
/* 0250E1BC */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0250E1C0 */ _t108 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E1C0 */ rbrew_write32(cpu->mem, _t108, cpu->r[9]);
|
|
/* 0250E1C4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0250E1C8 */ _t109 = cpu->r[29] + 0x00000274u;
|
|
/* 0250E1C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0250E1CC */ goto L_0250E2B0;
|
|
L_0250E1D0: ; // 0x250e1d0
|
|
/* 0250E1D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0250E1D4 */ _t110 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E1D4 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0250E1D4 */ if (_t111) goto L_0250E2B0; else goto L_0250E1D8;
|
|
L_0250E1D8: ; // 0x250e1d8
|
|
/* 0250E1D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 0250E1DC */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E1DC */ _t113 = _t112 & 0x00000001u;
|
|
/* 0250E1DC */ if (_t113) goto L_0250E1E0; else goto L_0250E2B0;
|
|
L_0250E1E0: ; // 0x250e1e0
|
|
/* 0250E1E0 */ _t114 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250E1E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0250E1E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0250E1E8 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E1E8 */ _t116 = _t115 & 0x00000001u;
|
|
/* 0250E1E8 */ if (_t116) goto L_0250E1EC; else goto L_0250E208;
|
|
L_0250E1EC: ; // 0x250e1ec
|
|
/* 0250E1EC */ cpu->r[11] = 0x00000001u;
|
|
/* 0250E1F0 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250E1F4 */ cpu->r[3] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250E1F8 */ cpu->r[5] = 0x0000001Fu;
|
|
/* 0250E1FC */ cpu->r[4] = cpu->r[4] + 0x0000675Cu;
|
|
/* 0250E200 */ _t117 = cpu->r[9] + 0xFFFFFE80u;
|
|
/* 0250E200 */ rbrew_write32(cpu->mem, _t117, cpu->r[11]);
|
|
/* 0250E204 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0250E208: ; // 0x250e208
|
|
/* 0250E208 */ _t118 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250E208 */ cpu->r[12] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0250E20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0250E210 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E210 */ _t120 = _t119 & 0x00000001u;
|
|
/* 0250E210 */ if (_t120) goto L_0250E214; else goto L_0250E240;
|
|
L_0250E214: ; // 0x250e214
|
|
/* 0250E214 */ cpu->r[0] = 0x00000001u;
|
|
/* 0250E218 */ cpu->r[7] = 0x00000000u;
|
|
/* 0250E21C */ _t121 = cpu->r[31] + 0xFFFFFE7Cu;
|
|
/* 0250E21C */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0250E220 */ _t122 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E220 */ rbrew_write32(cpu->mem, _t122, cpu->r[7]);
|
|
/* 0250E224 */ Gambit_fn_0282A450(cpu);
|
|
/* 0250E228 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E22C */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250E230 */ _t123 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0250E234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E238 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E238 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0250E238 */ if (_t125) goto L_0250E264; else goto L_0250E23C;
|
|
L_0250E23C: ; // 0x250e23c
|
|
/* 0250E23C */ goto L_0250E280;
|
|
L_0250E240: ; // 0x250e240
|
|
/* 0250E240 */ _t126 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E240 */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0250E244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E248 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E248 */ _t128 = _t127 & 0x00000001u;
|
|
/* 0250E248 */ if (_t128) goto L_0250E24C; else goto L_0250E28C;
|
|
L_0250E24C: ; // 0x250e24c
|
|
/* 0250E24C */ Gambit_fn_0282A450(cpu);
|
|
/* 0250E250 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E254 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250E258 */ _t129 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E258 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0250E25C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E260 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E260 */ _t131 = _t130 & 0x00000001u;
|
|
/* 0250E260 */ if (_t131) goto L_0250E264; else goto L_0250E280;
|
|
L_0250E264: ; // 0x250e264
|
|
/* 0250E264 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0250E268 */ cpu->r[4] = cpu->r[28] + 0x0000519Du;
|
|
/* 0250E26C */ cpu->r[30] = cpu->r[30] + 0x00000994u;
|
|
/* 0250E270 */ cpu->r[5] = 0x00000004u;
|
|
/* 0250E274 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250E278 */ Gambit_fn_0282A374(cpu);
|
|
/* 0250E27C */ _t132 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E27C */ rbrew_write32(cpu->mem, _t132, cpu->r[30]);
|
|
L_0250E280: ; // 0x250e280
|
|
/* 0250E280 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250E284 */ Gambit_fn_02837030(cpu);
|
|
/* 0250E288 */ _t133 = cpu->r[27] + 0x000009A8u;
|
|
/* 0250E288 */ cpu->r[8] = rbrew_read32(cpu->mem, _t133);
|
|
L_0250E28C: ; // 0x250e28c
|
|
/* 0250E28C */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250E290 */ _t134 = cpu->r[8] + 0x00000008u;
|
|
/* 0250E290 */ cpu->r[10] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0250E294 */ cpu->r[0] = cpu->r[0] + 0xFFFFEFC8u;
|
|
/* 0250E298 */ _t135 = cpu->r[29] + 0x00000030u;
|
|
/* 0250E298 */ cpu->r[3] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0250E29C */ _t136 = cpu->r[1] + 0x00000020u;
|
|
/* 0250E29C */ rbrew_write32(cpu->mem, _t136, cpu->r[10]);
|
|
/* 0250E2A0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0250E2A4 */ _t137 = cpu->r[1] + 0x00000024u;
|
|
/* 0250E2A4 */ rbrew_write32(cpu->mem, _t137, cpu->r[0]);
|
|
/* 0250E2A8 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0250E2AC */ _t138 = cpu->r[29] + 0x00000274u;
|
|
/* 0250E2AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t138);
|
|
L_0250E2B0: ; // 0x250e2b0
|
|
/* 0250E2B0 */ _t139 = cpu->r[29] + 0x000001BCu;
|
|
/* 0250E2B0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t139);
|
|
/* 0250E2B4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0250E2B8 */ _t140 = cpu->r[29] + 0x0000027Cu;
|
|
/* 0250E2B8 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[31]);
|
|
/* 0250E2BC */ /* nop */
|
|
/* 0250E2C0 */ _t141 = cpu->r[29] + 0x00000278u;
|
|
/* 0250E2C0 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0250E2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000001u);
|
|
/* 0250E2C8 */ _t142 = cpu->r[29] + 0x0000028Eu;
|
|
/* 0250E2C8 */ rbrew_write8(cpu->mem, _t142, (uint8_t)cpu->r[0]);
|
|
/* 0250E2CC */ _t143 = cpu->r[29] + 0x00000284u;
|
|
/* 0250E2CC */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[0]);
|
|
/* 0250E2D0 */ _t144 = cpu->r[29] + 0x0000028Fu;
|
|
/* 0250E2D0 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[0]);
|
|
/* 0250E2D4 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E2D4 */ _t146 = _t145 & 0x00000001u;
|
|
/* 0250E2D4 */ if (_t146) goto L_0250E2E0; else goto L_0250E2D8;
|
|
L_0250E2D8: ; // 0x250e2d8
|
|
/* 0250E2D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0250E2DC */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E2DC */ _t148 = _t147 & 0x00000001u;
|
|
/* 0250E2DC */ if (_t148) goto L_0250E2E0; else goto L_0250E30C;
|
|
L_0250E2E0: ; // 0x250e2e0
|
|
/* 0250E2E0 */ _t149 = cpu->r[29] + 0x00000290u;
|
|
/* 0250E2E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0250E2E4 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0250E2E8 */ _t150 = cpu->r[29] + 0x00000290u;
|
|
/* 0250E2E8 */ rbrew_write32(cpu->mem, _t150, cpu->r[7]);
|
|
/* 0250E2EC */ /* nop */
|
|
/* 0250E2F0 */ _t151 = cpu->r[1] + 0x00000060u;
|
|
/* 0250E2F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 0250E2F4 */ _t152 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E2F4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t152);
|
|
/* 0250E2F8 */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E2F8 */ _t154 = _t153 & 0x00000001u;
|
|
/* 0250E2F8 */ if (_t154) goto L_0250E2FC; // else: addr-0 trap, fall-through
|
|
L_0250E2FC: ; // 0x250e2fc
|
|
/* 0250E2FC */ _t155 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250E2FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0250E300 */ cpu->lr = cpu->r[0];
|
|
/* 0250E304 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0250E308 */ return;
|
|
L_0250E30C: ; // 0x250e30c
|
|
/* 0250E30C */ cpu->r[7] = 0x00000000u;
|
|
/* 0250E310 */ _t156 = cpu->r[29] + 0x00000290u;
|
|
/* 0250E310 */ rbrew_write32(cpu->mem, _t156, cpu->r[7]);
|
|
/* 0250E314 */ /* nop */
|
|
/* 0250E318 */ _t157 = cpu->r[1] + 0x00000060u;
|
|
/* 0250E318 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 0250E31C */ _t158 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E31C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t158);
|
|
/* 0250E320 */ _t159 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E320 */ _t160 = _t159 & 0x00000001u;
|
|
/* 0250E320 */ if (_t160) goto L_0250E324; // else: addr-0 trap, fall-through
|
|
L_0250E324: ; // 0x250e324
|
|
/* 0250E324 */ _t161 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250E324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0250E328 */ cpu->lr = cpu->r[0];
|
|
/* 0250E32C */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0250E330 */ return;
|
|
}
|
|
|
|
// fn_0250E334 @ 0x250e334
|
|
void Gambit_fn_0250E334(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t32, _t33, _t34, _t35, _t36;
|
|
double _ft30, _ft31;
|
|
|
|
L_0250E334: ; // 0x250e334
|
|
/* 0250E334 */ _t0 = cpu->r[3] + 0x000001BCu;
|
|
/* 0250E334 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0250E338 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250E33C */ /* nop */
|
|
/* 0250E340 */ _t1 = cpu->r[10] + 0xFFFFF2BCu;
|
|
/* 0250E340 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0250E344 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E344 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0250E344 */ if (_t3) goto L_0250E35C; else goto L_0250E348;
|
|
L_0250E348: ; // 0x250e348
|
|
/* 0250E348 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 0250E34C */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E34C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0250E34C */ _t6 = _t5 ^ 0x00000001u;
|
|
/* 0250E34C */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0250E34C */ goto L_0250E350;
|
|
L_0250E350: ; // 0x250e350
|
|
/* 0250E350 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E354 */ _t7 = cpu->r[12] + 0xFFFFF298u;
|
|
/* 0250E354 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0250E358 */ return;
|
|
L_0250E35C: ; // 0x250e35c
|
|
/* 0250E35C */ _t8 = cpu->r[3] + 0x00000274u;
|
|
/* 0250E35C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0250E360 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 0250E364 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E364 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0250E364 */ if (_t10) goto L_0250E368; else goto L_0250E3F8;
|
|
L_0250E368: ; // 0x250e368
|
|
/* 0250E368 */ _t11 = cpu->r[3] + 0x00000280u;
|
|
/* 0250E368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250E36C */ _t12 = cpu->r[12] + 0x00000468u;
|
|
/* 0250E36C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250E370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E374 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E374 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0250E374 */ if (_t14) goto L_0250E3F8; else goto L_0250E378;
|
|
L_0250E378: ; // 0x250e378
|
|
/* 0250E378 */ _t15 = cpu->r[12] + 0x0000046Cu;
|
|
/* 0250E378 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250E37C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0250E380 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E380 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0250E380 */ if (_t17) goto L_0250E3F8; else goto L_0250E384;
|
|
L_0250E384: ; // 0x250e384
|
|
/* 0250E384 */ _t18 = cpu->r[12] + 0x00000474u;
|
|
/* 0250E384 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0250E388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E38C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E38C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250E38C */ if (_t20) goto L_0250E3F8; else goto L_0250E390;
|
|
L_0250E390: ; // 0x250e390
|
|
/* 0250E390 */ _t21 = cpu->r[3] + 0x00000080u;
|
|
/* 0250E390 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0250E394 */ _t22 = cpu->r[12] + 0x0000024Cu;
|
|
/* 0250E394 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250E398 */ _t23 = cpu->r[12] + 0x00000244u;
|
|
/* 0250E398 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0250E39C */ cpu->f[9] = cpu->f[9] - cpu->f[10];
|
|
/* 0250E3A0 */ _t24 = cpu->r[3] + 0x00000078u;
|
|
/* 0250E3A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250E3A4 */ cpu->f[8] = cpu->f[7] - cpu->f[8];
|
|
/* 0250E3A8 */ cpu->f[7] = cpu->f[9] * cpu->f[9];
|
|
/* 0250E3AC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E3B0 */ cpu->f[11] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 0250E3B4 */ _t25 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0250E3B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0250E3B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0250E3BC */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E3BC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250E3BC */ if (_t27) goto L_0250E3C0; else goto L_0250E3E4;
|
|
L_0250E3C0: ; // 0x250e3c0
|
|
/* 0250E3C0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250E3C4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250E3C8 */ _t28 = cpu->r[11] + 0xFFFFF2C4u;
|
|
/* 0250E3C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0250E3CC */ _t29 = cpu->r[10] + 0xFFFFF2C0u;
|
|
/* 0250E3CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250E3D0 */ _ft30 = sqrt(cpu->f[11]);
|
|
/* 0250E3D0 */ _ft31 = (double)(int32_t)0x00000001u;
|
|
/* 0250E3D0 */ cpu->f[0] = _ft31 / _ft30;
|
|
/* 0250E3D4 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 0250E3D8 */ cpu->f[10] = cpu->f[0] * cpu->f[12];
|
|
/* 0250E3DC */ cpu->f[9] = -fma(cpu->f[9], cpu->f[11], -(cpu->f[13]));
|
|
/* 0250E3E0 */ cpu->f[0] = cpu->f[9] * cpu->f[10];
|
|
L_0250E3E4: ; // 0x250e3e4
|
|
/* 0250E3E4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250E3E8 */ cpu->f[10] = cpu->f[0] * cpu->f[11];
|
|
/* 0250E3EC */ _t32 = cpu->r[10] + 0xFFFFF2C8u;
|
|
/* 0250E3EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0250E3F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0250E3F4 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E3F4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0250E3F4 */ _t35 = _t34 ^ 0x00000001u;
|
|
/* 0250E3F4 */ if (_t35) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0250E3F4 */ goto L_0250E3F8;
|
|
L_0250E3F8: ; // 0x250e3f8
|
|
/* 0250E3F8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E3FC */ _t36 = cpu->r[12] + 0xFFFFF298u;
|
|
/* 0250E3FC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0250E400 */ return;
|
|
}
|
|
|
|
// fn_0250E404 @ 0x250e404
|
|
void Gambit_fn_0250E404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43;
|
|
|
|
L_0250E404: ; // 0x250e404
|
|
/* 0250E404 */ cpu->r[0] = cpu->lr;
|
|
/* 0250E408 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250E408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250E408 */ cpu->r[1] = _t0;
|
|
/* 0250E40C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E40C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250E410 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E414 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E414 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250E418 */ Gambit_fn_0250E334(cpu);
|
|
/* 0250E41C */ _t3 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E41C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0250E420 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250E424 */ cpu->f[11] = cpu->f[1] - cpu->f[10];
|
|
/* 0250E428 */ _t4 = cpu->r[11] + 0xFFFFEFB0u;
|
|
/* 0250E428 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250E42C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0250E430 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E430 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250E430 */ if (_t6) goto L_0250E518; else goto L_0250E434;
|
|
L_0250E434: ; // 0x250e434
|
|
/* 0250E434 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0250E438 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E43C */ _t7 = cpu->r[12] + 0xFFFFF2CCu;
|
|
/* 0250E43C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0250E440 */ cpu->f[0] = cpu->f[10];
|
|
/* 0250E444 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E444 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250E444 */ if (_t9) goto L_0250E448; else goto L_0250E4AC;
|
|
L_0250E448: ; // 0x250e448
|
|
/* 0250E448 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250E44C */ cpu->f[10] = cpu->f[10] + cpu->f[12];
|
|
/* 0250E450 */ _t10 = cpu->r[10] + 0xFFFFF2BCu;
|
|
/* 0250E450 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0250E454 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[10]);
|
|
/* 0250E458 */ cpu->f[12] = cpu->f[10];
|
|
/* 0250E45C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E45C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0250E45C */ if (_t12) goto L_0250E460; else goto L_0250E470;
|
|
L_0250E460: ; // 0x250e460
|
|
/* 0250E460 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0250E464 */ _t13 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E464 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 0250E468 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E468 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250E468 */ if (_t15) goto L_0250E484; else goto L_0250E46C;
|
|
L_0250E46C: ; // 0x250e46c
|
|
/* 0250E46C */ goto L_0250E518;
|
|
L_0250E470: ; // 0x250e470
|
|
/* 0250E470 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 0250E474 */ _t16 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E474 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 0250E478 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E478 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250E478 */ if (_t18) goto L_0250E47C; else goto L_0250E518;
|
|
L_0250E47C: ; // 0x250e47c
|
|
/* 0250E47C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0250E480 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E480 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250E480 */ if (_t20) goto L_0250E484; else goto L_0250E518;
|
|
L_0250E484: ; // 0x250e484
|
|
/* 0250E484 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250E488 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250E48C */ _t21 = cpu->r[31] + 0x00000130u;
|
|
/* 0250E48C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250E490 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2D0u;
|
|
/* 0250E494 */ Gambit_fn_02398850(cpu);
|
|
/* 0250E498 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250E49C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E49C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250E4A0 */ cpu->lr = cpu->r[0];
|
|
/* 0250E4A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250E4A8 */ return;
|
|
L_0250E4AC: ; // 0x250e4ac
|
|
/* 0250E4AC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E4B0 */ cpu->f[10] = cpu->f[10] - cpu->f[12];
|
|
/* 0250E4B4 */ _t24 = cpu->r[12] + 0xFFFFF298u;
|
|
/* 0250E4B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250E4B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 0250E4BC */ cpu->f[12] = cpu->f[10];
|
|
/* 0250E4C0 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E4C0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0250E4C0 */ if (_t26) goto L_0250E4C4; else goto L_0250E4D4;
|
|
L_0250E4C4: ; // 0x250e4c4
|
|
/* 0250E4C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0250E4C8 */ _t27 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E4C8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 0250E4CC */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E4CC */ _t29 = _t28 & 0x00000001u;
|
|
/* 0250E4CC */ if (_t29) goto L_0250E4E8; else goto L_0250E4D0;
|
|
L_0250E4D0: ; // 0x250e4d0
|
|
/* 0250E4D0 */ goto L_0250E518;
|
|
L_0250E4D4: ; // 0x250e4d4
|
|
/* 0250E4D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0250E4D8 */ _t30 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E4D8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0250E4DC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E4DC */ _t32 = _t31 & 0x00000001u;
|
|
/* 0250E4DC */ if (_t32) goto L_0250E4E0; else goto L_0250E518;
|
|
L_0250E4E0: ; // 0x250e4e0
|
|
/* 0250E4E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0250E4E4 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E4E4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0250E4E4 */ if (_t34) goto L_0250E4E8; else goto L_0250E518;
|
|
L_0250E4E8: ; // 0x250e4e8
|
|
/* 0250E4E8 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250E4EC */ cpu->r[5] = 0x00000001u;
|
|
/* 0250E4F0 */ _t35 = cpu->r[31] + 0x00000130u;
|
|
/* 0250E4F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0250E4F4 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2D4u;
|
|
/* 0250E4F8 */ Gambit_fn_02398850(cpu);
|
|
/* 0250E4FC */ _t36 = cpu->r[31] + 0x000002B8u;
|
|
/* 0250E4FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0250E500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250E504 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E504 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250E504 */ if (_t38) goto L_0250E518; else goto L_0250E508;
|
|
L_0250E508: ; // 0x250e508
|
|
/* 0250E508 */ _t39 = cpu->r[31] + 0x00000280u;
|
|
/* 0250E508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250E50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E510 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E510 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0250E510 */ if (_t41) goto L_0250E518; else goto L_0250E514;
|
|
L_0250E514: ; // 0x250e514
|
|
/* 0250E514 */ Gambit_fn_0256C01C(cpu);
|
|
L_0250E518: ; // 0x250e518
|
|
/* 0250E518 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250E51C */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E51C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0250E520 */ cpu->lr = cpu->r[0];
|
|
/* 0250E524 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250E528 */ return;
|
|
}
|
|
|
|
// fn_0250E408 @ 0x250e408
|
|
void Gambit_fn_0250E408(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43;
|
|
|
|
L_0250E408: ; // 0x250e408
|
|
/* 0250E408 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250E408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250E408 */ cpu->r[1] = _t0;
|
|
/* 0250E40C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E40C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250E410 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E414 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E414 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250E418 */ Gambit_fn_0250E334(cpu);
|
|
/* 0250E41C */ _t3 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E41C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0250E420 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250E424 */ cpu->f[11] = cpu->f[1] - cpu->f[10];
|
|
/* 0250E428 */ _t4 = cpu->r[11] + 0xFFFFEFB0u;
|
|
/* 0250E428 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250E42C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0250E430 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E430 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250E430 */ if (_t6) goto L_0250E518; else goto L_0250E434;
|
|
L_0250E434: ; // 0x250e434
|
|
/* 0250E434 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0250E438 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E43C */ _t7 = cpu->r[12] + 0xFFFFF2CCu;
|
|
/* 0250E43C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0250E440 */ cpu->f[0] = cpu->f[10];
|
|
/* 0250E444 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E444 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250E444 */ if (_t9) goto L_0250E448; else goto L_0250E4AC;
|
|
L_0250E448: ; // 0x250e448
|
|
/* 0250E448 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250E44C */ cpu->f[10] = cpu->f[10] + cpu->f[12];
|
|
/* 0250E450 */ _t10 = cpu->r[10] + 0xFFFFF2BCu;
|
|
/* 0250E450 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0250E454 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[10]);
|
|
/* 0250E458 */ cpu->f[12] = cpu->f[10];
|
|
/* 0250E45C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E45C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0250E45C */ if (_t12) goto L_0250E460; else goto L_0250E470;
|
|
L_0250E460: ; // 0x250e460
|
|
/* 0250E460 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0250E464 */ _t13 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E464 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 0250E468 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E468 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250E468 */ if (_t15) goto L_0250E484; else goto L_0250E46C;
|
|
L_0250E46C: ; // 0x250e46c
|
|
/* 0250E46C */ goto L_0250E518;
|
|
L_0250E470: ; // 0x250e470
|
|
/* 0250E470 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 0250E474 */ _t16 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E474 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 0250E478 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E478 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250E478 */ if (_t18) goto L_0250E47C; else goto L_0250E518;
|
|
L_0250E47C: ; // 0x250e47c
|
|
/* 0250E47C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0250E480 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250E480 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250E480 */ if (_t20) goto L_0250E484; else goto L_0250E518;
|
|
L_0250E484: ; // 0x250e484
|
|
/* 0250E484 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250E488 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250E48C */ _t21 = cpu->r[31] + 0x00000130u;
|
|
/* 0250E48C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250E490 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2D0u;
|
|
/* 0250E494 */ Gambit_fn_02398850(cpu);
|
|
/* 0250E498 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250E49C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E49C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250E4A0 */ cpu->lr = cpu->r[0];
|
|
/* 0250E4A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250E4A8 */ return;
|
|
L_0250E4AC: ; // 0x250e4ac
|
|
/* 0250E4AC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250E4B0 */ cpu->f[10] = cpu->f[10] - cpu->f[12];
|
|
/* 0250E4B4 */ _t24 = cpu->r[12] + 0xFFFFF298u;
|
|
/* 0250E4B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250E4B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 0250E4BC */ cpu->f[12] = cpu->f[10];
|
|
/* 0250E4C0 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E4C0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0250E4C0 */ if (_t26) goto L_0250E4C4; else goto L_0250E4D4;
|
|
L_0250E4C4: ; // 0x250e4c4
|
|
/* 0250E4C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0250E4C8 */ _t27 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E4C8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 0250E4CC */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E4CC */ _t29 = _t28 & 0x00000001u;
|
|
/* 0250E4CC */ if (_t29) goto L_0250E4E8; else goto L_0250E4D0;
|
|
L_0250E4D0: ; // 0x250e4d0
|
|
/* 0250E4D0 */ goto L_0250E518;
|
|
L_0250E4D4: ; // 0x250e4d4
|
|
/* 0250E4D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0250E4D8 */ _t30 = cpu->r[31] + 0x00000274u;
|
|
/* 0250E4D8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0250E4DC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E4DC */ _t32 = _t31 & 0x00000001u;
|
|
/* 0250E4DC */ if (_t32) goto L_0250E4E0; else goto L_0250E518;
|
|
L_0250E4E0: ; // 0x250e4e0
|
|
/* 0250E4E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0250E4E4 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250E4E4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0250E4E4 */ if (_t34) goto L_0250E4E8; else goto L_0250E518;
|
|
L_0250E4E8: ; // 0x250e4e8
|
|
/* 0250E4E8 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250E4EC */ cpu->r[5] = 0x00000001u;
|
|
/* 0250E4F0 */ _t35 = cpu->r[31] + 0x00000130u;
|
|
/* 0250E4F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0250E4F4 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2D4u;
|
|
/* 0250E4F8 */ Gambit_fn_02398850(cpu);
|
|
/* 0250E4FC */ _t36 = cpu->r[31] + 0x000002B8u;
|
|
/* 0250E4FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0250E500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250E504 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E504 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250E504 */ if (_t38) goto L_0250E518; else goto L_0250E508;
|
|
L_0250E508: ; // 0x250e508
|
|
/* 0250E508 */ _t39 = cpu->r[31] + 0x00000280u;
|
|
/* 0250E508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250E50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250E510 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E510 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0250E510 */ if (_t41) goto L_0250E518; else goto L_0250E514;
|
|
L_0250E514: ; // 0x250e514
|
|
/* 0250E514 */ Gambit_fn_0256C01C(cpu);
|
|
L_0250E518: ; // 0x250e518
|
|
/* 0250E518 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250E51C */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E51C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0250E520 */ cpu->lr = cpu->r[0];
|
|
/* 0250E524 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250E528 */ return;
|
|
}
|
|
|
|
// fn_0250E52C @ 0x250e52c
|
|
void Gambit_fn_0250E52C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205;
|
|
|
|
L_0250E52C: ; // 0x250e52c
|
|
/* 0250E52C */ cpu->r[0] = cpu->lr;
|
|
/* 0250E530 */ _t0 = cpu->r[1] + 0xFFFFFF18u;
|
|
/* 0250E530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250E530 */ cpu->r[1] = _t0;
|
|
/* 0250E534 */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 0250E534 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250E538 */ cpu->r[9] = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E53C */ _t2 = cpu->r[1] + 0x000000ECu;
|
|
/* 0250E53C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250E540 */ cpu->r[0] = 0x00000003u;
|
|
/* 0250E544 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E548 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E54C */ cpu->r[8] = cpu->r[31] + 0x00000050u;
|
|
L_0250E550: ; // 0x250e550
|
|
/* 0250E550 */ _t3 = cpu->r[8] + 0x00000004u;
|
|
/* 0250E550 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250E554 */ _t4 = cpu->r[9] + 0x00000004u;
|
|
/* 0250E554 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 0250E558 */ _t5 = cpu->r[8] + 0x00000008u;
|
|
/* 0250E558 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250E55C */ _t6 = cpu->r[9] + 0x00000008u;
|
|
/* 0250E55C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0250E560 */ _t7 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0250E560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250E564 */ _t8 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0250E564 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0250E568 */ _t9 = cpu->r[8] + 0x00000010u;
|
|
/* 0250E568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250E568 */ cpu->r[8] = _t9;
|
|
/* 0250E56C */ _t10 = cpu->r[9] + 0x00000010u;
|
|
/* 0250E56C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0250E56C */ cpu->r[9] = _t10;
|
|
/* 0250E570 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0250E570 */ _t11 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0250E570 */ _t12 = _t11 >> (0x00000002u & 31u);
|
|
/* 0250E570 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0250E570 */ if (_t13) goto L_0250E550; else goto L_0250E574;
|
|
L_0250E574: ; // 0x250e574
|
|
/* 0250E574 */ _t14 = cpu->r[31] + 0x000000B8u;
|
|
/* 0250E574 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0250E578 */ _t15 = cpu->r[31] + 0x000000BCu;
|
|
/* 0250E578 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0250E57C */ _t16 = cpu->r[31] + 0x000000B4u;
|
|
/* 0250E57C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0250E580 */ _t17 = cpu->r[31] + 0x00000264u;
|
|
/* 0250E580 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0250E584 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0250E584 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 0250E588 */ _t19 = cpu->r[31] + 0x000000C8u;
|
|
/* 0250E588 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0250E58C */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 0250E590 */ _t20 = cpu->r[31] + 0x00000268u;
|
|
/* 0250E590 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0250E594 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E594 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0250E598 */ /* nop */
|
|
/* 0250E59C */ cpu->f[11] = fma(cpu->f[7], cpu->f[0], cpu->f[11]);
|
|
/* 0250E5A0 */ _t22 = cpu->r[31] + 0x0000026Cu;
|
|
/* 0250E5A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250E5A4 */ /* nop */
|
|
/* 0250E5A8 */ /* nop */
|
|
/* 0250E5AC */ /* nop */
|
|
/* 0250E5B0 */ /* nop */
|
|
/* 0250E5B4 */ _t23 = cpu->r[31] + 0x000000D4u;
|
|
/* 0250E5B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0250E5B8 */ /* nop */
|
|
/* 0250E5BC */ /* nop */
|
|
/* 0250E5C0 */ cpu->f[11] = fma(cpu->f[0], cpu->f[10], cpu->f[11]);
|
|
/* 0250E5C4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E5C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250E5C8 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0250E5C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250E5CC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0250E5CC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 0250E5D0 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0250E5D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0250E5D4 */ _t28 = cpu->r[1] + 0x000000D8u;
|
|
/* 0250E5D4 */ rbrew_write32(cpu->mem, _t28, cpu->r[7]);
|
|
/* 0250E5D8 */ _t29 = cpu->r[1] + 0x000000D8u;
|
|
/* 0250E5D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250E5DC */ _t30 = cpu->r[1] + 0x000000D4u;
|
|
/* 0250E5DC */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 0250E5E0 */ _t31 = cpu->r[1] + 0x000000D4u;
|
|
/* 0250E5E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0250E5E4 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250E5E8 */ _t32 = cpu->r[1] + 0x000000DCu;
|
|
/* 0250E5E8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0250E5EC */ _t33 = cpu->r[1] + 0x000000DCu;
|
|
/* 0250E5EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0250E5F0 */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 0250E5F4 */ _t34 = cpu->r[1] + 0x000000BCu;
|
|
/* 0250E5F4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 0250E5F8 */ cpu->r[5] = 0x00000489u;
|
|
/* 0250E5FC */ _t35 = cpu->r[1] + 0x000000C0u;
|
|
/* 0250E5FC */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 0250E600 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2DCu;
|
|
/* 0250E604 */ _t36 = cpu->r[1] + 0x000000C4u;
|
|
/* 0250E604 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0250E608 */ Gambit_fn_0204D380(cpu);
|
|
/* 0250E60C */ _t37 = cpu->r[31] + 0x00000134u;
|
|
/* 0250E60C */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0250E610 */ _t38 = cpu->r[3] + 0x000001CCu;
|
|
/* 0250E610 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0250E614 */ _t39 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0250E614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250E618 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E61C */ cpu->r[4] = cpu->r[1] + 0x000000A4u;
|
|
/* 0250E620 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250E624 */ _t40 = cpu->r[31] + 0x00000134u;
|
|
/* 0250E624 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250E628 */ _t41 = cpu->r[3] + 0x000001CCu;
|
|
/* 0250E628 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0250E62C */ _t42 = cpu->r[12] + 0x00000024u;
|
|
/* 0250E62C */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250E630 */ cpu->ctr = cpu->r[7];
|
|
/* 0250E634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250E638 */ cpu->r[0] = 0x00000003u;
|
|
/* 0250E63C */ cpu->r[8] = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E640 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E644 */ cpu->r[11] = cpu->r[1] + 0x00000010u;
|
|
L_0250E648: ; // 0x250e648
|
|
/* 0250E648 */ _t43 = cpu->r[8] + 0x00000004u;
|
|
/* 0250E648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0250E64C */ _t44 = cpu->r[11] + 0x00000004u;
|
|
/* 0250E64C */ rbrew_write32(cpu->mem, _t44, cpu->r[6]);
|
|
/* 0250E650 */ _t45 = cpu->r[8] + 0x00000008u;
|
|
/* 0250E650 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0250E654 */ _t46 = cpu->r[11] + 0x00000008u;
|
|
/* 0250E654 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0250E658 */ _t47 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0250E658 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0250E65C */ _t48 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0250E65C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0250E660 */ _t49 = cpu->r[8] + 0x00000010u;
|
|
/* 0250E660 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0250E660 */ cpu->r[8] = _t49;
|
|
/* 0250E664 */ _t50 = cpu->r[11] + 0x00000010u;
|
|
/* 0250E664 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 0250E664 */ cpu->r[11] = _t50;
|
|
/* 0250E668 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0250E668 */ _t51 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0250E668 */ _t52 = _t51 >> (0x00000002u & 31u);
|
|
/* 0250E668 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0250E668 */ if (_t53) goto L_0250E648; else goto L_0250E66C;
|
|
L_0250E66C: ; // 0x250e66c
|
|
/* 0250E66C */ cpu->r[0] = 0x00000003u;
|
|
/* 0250E670 */ cpu->r[11] = cpu->r[31] + 0x000001ECu;
|
|
/* 0250E674 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E678 */ cpu->r[12] = cpu->r[1] + 0x00000040u;
|
|
L_0250E67C: ; // 0x250e67c
|
|
/* 0250E67C */ _t54 = cpu->r[11] + 0x00000004u;
|
|
/* 0250E67C */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0250E680 */ _t55 = cpu->r[12] + 0x00000004u;
|
|
/* 0250E680 */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 0250E684 */ _t56 = cpu->r[11] + 0x00000008u;
|
|
/* 0250E684 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0250E688 */ _t57 = cpu->r[12] + 0x00000008u;
|
|
/* 0250E688 */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 0250E68C */ _t58 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0250E68C */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0250E690 */ _t59 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0250E690 */ rbrew_write32(cpu->mem, _t59, cpu->r[9]);
|
|
/* 0250E694 */ _t60 = cpu->r[11] + 0x00000010u;
|
|
/* 0250E694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0250E694 */ cpu->r[11] = _t60;
|
|
/* 0250E698 */ _t61 = cpu->r[12] + 0x00000010u;
|
|
/* 0250E698 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 0250E698 */ cpu->r[12] = _t61;
|
|
/* 0250E69C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0250E69C */ _t62 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0250E69C */ _t63 = _t62 >> (0x00000002u & 31u);
|
|
/* 0250E69C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0250E69C */ if (_t64) goto L_0250E67C; else goto L_0250E6A0;
|
|
L_0250E6A0: ; // 0x250e6a0
|
|
/* 0250E6A0 */ _t65 = cpu->r[31] + 0x000000E4u;
|
|
/* 0250E6A0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0250E6A4 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 0250E6A4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0250E6A8 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E6A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0250E6AC */ cpu->f[8] = cpu->f[8] * cpu->f[5];
|
|
/* 0250E6B0 */ /* nop */
|
|
/* 0250E6B4 */ /* nop */
|
|
/* 0250E6B8 */ cpu->f[10] = cpu->f[10] * cpu->f[5];
|
|
/* 0250E6BC */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 0250E6BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0250E6C0 */ _t69 = cpu->r[1] + 0x00000028u;
|
|
/* 0250E6C0 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[8]);
|
|
/* 0250E6C4 */ /* nop */
|
|
/* 0250E6C8 */ /* nop */
|
|
/* 0250E6CC */ cpu->f[13] = cpu->f[13] * cpu->f[5];
|
|
/* 0250E6D0 */ _t70 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E6D0 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[10]);
|
|
/* 0250E6D4 */ /* nop */
|
|
/* 0250E6D8 */ /* nop */
|
|
/* 0250E6DC */ /* nop */
|
|
/* 0250E6E0 */ /* nop */
|
|
/* 0250E6E4 */ /* nop */
|
|
/* 0250E6E8 */ _t71 = cpu->r[31] + 0x000000E8u;
|
|
/* 0250E6E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0250E6EC */ /* nop */
|
|
/* 0250E6F0 */ /* nop */
|
|
/* 0250E6F4 */ /* nop */
|
|
/* 0250E6F8 */ _t72 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E6F8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0250E6FC */ /* nop */
|
|
/* 0250E700 */ _t73 = cpu->r[1] + 0x00000034u;
|
|
/* 0250E700 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 0250E704 */ /* nop */
|
|
/* 0250E708 */ _t74 = cpu->r[1] + 0x00000064u;
|
|
/* 0250E708 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0250E70C */ cpu->f[11] = cpu->f[11] * cpu->f[6];
|
|
/* 0250E710 */ _t75 = cpu->r[31] + 0x00000134u;
|
|
/* 0250E710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0250E714 */ /* nop */
|
|
/* 0250E718 */ /* nop */
|
|
/* 0250E71C */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250E71C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0250E720 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E720 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[11]);
|
|
/* 0250E724 */ cpu->f[13] = cpu->f[13] * cpu->f[6];
|
|
/* 0250E728 */ /* nop */
|
|
/* 0250E72C */ /* nop */
|
|
/* 0250E730 */ cpu->f[7] = cpu->f[7] * cpu->f[6];
|
|
/* 0250E734 */ _t78 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250E734 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[7]);
|
|
/* 0250E738 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E738 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0250E73C */ _t80 = cpu->r[1] + 0x00000064u;
|
|
/* 0250E73C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 0250E740 */ _t81 = cpu->r[12] + 0x000001ECu;
|
|
/* 0250E740 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[0]);
|
|
/* 0250E744 */ _t82 = cpu->r[1] + 0x00000018u;
|
|
/* 0250E744 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0250E748 */ _t83 = cpu->r[12] + 0x000001F0u;
|
|
/* 0250E748 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[7]);
|
|
/* 0250E74C */ _t84 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E74C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0250E750 */ _t85 = cpu->r[12] + 0x000001F4u;
|
|
/* 0250E750 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[8]);
|
|
/* 0250E754 */ _t86 = cpu->r[1] + 0x00000020u;
|
|
/* 0250E754 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0250E758 */ _t87 = cpu->r[12] + 0x000001F8u;
|
|
/* 0250E758 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[9]);
|
|
/* 0250E75C */ _t88 = cpu->r[1] + 0x00000024u;
|
|
/* 0250E75C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0250E760 */ _t89 = cpu->r[12] + 0x000001FCu;
|
|
/* 0250E760 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[10]);
|
|
/* 0250E764 */ _t90 = cpu->r[1] + 0x00000028u;
|
|
/* 0250E764 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0250E768 */ _t91 = cpu->r[12] + 0x00000200u;
|
|
/* 0250E768 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[12]);
|
|
/* 0250E76C */ _t92 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250E76C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0250E770 */ _t93 = cpu->r[12] + 0x00000204u;
|
|
/* 0250E770 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[10]);
|
|
/* 0250E774 */ _t94 = cpu->r[1] + 0x00000030u;
|
|
/* 0250E774 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0250E778 */ _t95 = cpu->r[12] + 0x00000208u;
|
|
/* 0250E778 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[11]);
|
|
/* 0250E77C */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 0250E77C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0250E780 */ _t97 = cpu->r[12] + 0x0000020Cu;
|
|
/* 0250E780 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[12]);
|
|
/* 0250E784 */ _t98 = cpu->r[1] + 0x00000038u;
|
|
/* 0250E784 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0250E788 */ _t99 = cpu->r[12] + 0x00000210u;
|
|
/* 0250E788 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[13]);
|
|
/* 0250E78C */ _t100 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250E78C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0250E790 */ _t101 = cpu->r[12] + 0x00000214u;
|
|
/* 0250E790 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[0]);
|
|
/* 0250E794 */ _t102 = cpu->r[1] + 0x00000040u;
|
|
/* 0250E794 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0250E798 */ _t103 = cpu->r[12] + 0x00000218u;
|
|
/* 0250E798 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[7]);
|
|
/* 0250E79C */ _t104 = cpu->r[1] + 0x00000044u;
|
|
/* 0250E79C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0250E7A0 */ _t105 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0250E7A0 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[8]);
|
|
/* 0250E7A4 */ _t106 = cpu->r[1] + 0x00000048u;
|
|
/* 0250E7A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0250E7A8 */ _t107 = cpu->r[12] + 0x00000220u;
|
|
/* 0250E7A8 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[9]);
|
|
/* 0250E7AC */ _t108 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250E7AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0250E7B0 */ _t109 = cpu->r[12] + 0x00000224u;
|
|
/* 0250E7B0 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[10]);
|
|
/* 0250E7B4 */ _t110 = cpu->r[1] + 0x00000050u;
|
|
/* 0250E7B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0250E7B8 */ _t111 = cpu->r[12] + 0x00000228u;
|
|
/* 0250E7B8 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[11]);
|
|
/* 0250E7BC */ _t112 = cpu->r[1] + 0x00000054u;
|
|
/* 0250E7BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0250E7C0 */ _t113 = cpu->r[12] + 0x0000022Cu;
|
|
/* 0250E7C0 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[0]);
|
|
/* 0250E7C4 */ _t114 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E7C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0250E7C8 */ _t115 = cpu->r[12] + 0x00000230u;
|
|
/* 0250E7C8 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[13]);
|
|
/* 0250E7CC */ _t116 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0250E7CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0250E7D0 */ _t117 = cpu->r[12] + 0x00000234u;
|
|
/* 0250E7D0 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[9]);
|
|
/* 0250E7D4 */ _t118 = cpu->r[1] + 0x00000060u;
|
|
/* 0250E7D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 0250E7D8 */ _t119 = cpu->r[12] + 0x00000238u;
|
|
/* 0250E7D8 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[10]);
|
|
/* 0250E7DC */ _t120 = cpu->r[1] + 0x00000064u;
|
|
/* 0250E7DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0250E7E0 */ _t121 = cpu->r[12] + 0x0000023Cu;
|
|
/* 0250E7E0 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[11]);
|
|
/* 0250E7E4 */ _t122 = cpu->r[1] + 0x00000068u;
|
|
/* 0250E7E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0250E7E8 */ _t123 = cpu->r[12] + 0x00000240u;
|
|
/* 0250E7E8 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[12]);
|
|
/* 0250E7EC */ _t124 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250E7EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0250E7F0 */ _t125 = cpu->r[12] + 0x00000244u;
|
|
/* 0250E7F0 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[13]);
|
|
/* 0250E7F4 */ _t126 = cpu->r[1] + 0x00000070u;
|
|
/* 0250E7F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 0250E7F8 */ _t127 = cpu->r[12] + 0x00000248u;
|
|
/* 0250E7F8 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[0]);
|
|
/* 0250E7FC */ _t128 = cpu->r[1] + 0x000000CCu;
|
|
/* 0250E7FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0250E800 */ _t129 = cpu->r[1] + 0x000000A8u;
|
|
/* 0250E800 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0250E804 */ _t130 = cpu->r[31] + 0x00000218u;
|
|
/* 0250E804 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[7]);
|
|
/* 0250E808 */ _t131 = cpu->r[1] + 0x000000A4u;
|
|
/* 0250E808 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0250E80C */ _t132 = cpu->r[31] + 0x000001F4u;
|
|
/* 0250E80C */ rbrew_write_f32(cpu->mem, _t132, cpu->f[8]);
|
|
/* 0250E810 */ _t133 = cpu->r[31] + 0x000001F0u;
|
|
/* 0250E810 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[7]);
|
|
/* 0250E814 */ _t134 = cpu->r[1] + 0x000000B8u;
|
|
/* 0250E814 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0250E818 */ _t135 = cpu->r[1] + 0x000000D0u;
|
|
/* 0250E818 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0250E81C */ _t136 = cpu->r[31] + 0x00000204u;
|
|
/* 0250E81C */ rbrew_write_f32(cpu->mem, _t136, cpu->f[12]);
|
|
/* 0250E820 */ _t137 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0250E820 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[8]);
|
|
/* 0250E824 */ _t138 = cpu->r[1] + 0x000000C4u;
|
|
/* 0250E824 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0250E828 */ _t139 = cpu->r[1] + 0x000000C0u;
|
|
/* 0250E828 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 0250E82C */ _t140 = cpu->r[31] + 0x00000210u;
|
|
/* 0250E82C */ rbrew_write_f32(cpu->mem, _t140, cpu->f[10]);
|
|
/* 0250E830 */ _t141 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0250E830 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0250E834 */ _t142 = cpu->r[31] + 0x00000238u;
|
|
/* 0250E834 */ cpu->r[7] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0250E838 */ _t143 = cpu->r[1] + 0x000000C8u;
|
|
/* 0250E838 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 0250E83C */ _t144 = cpu->r[1] + 0x000000ACu;
|
|
/* 0250E83C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0250E840 */ _t145 = cpu->r[1] + 0x000000B4u;
|
|
/* 0250E840 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 0250E844 */ _t146 = cpu->r[31] + 0x000001F8u;
|
|
/* 0250E844 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[9]);
|
|
/* 0250E848 */ _t147 = cpu->r[31] + 0x00000200u;
|
|
/* 0250E848 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[11]);
|
|
/* 0250E84C */ _t148 = cpu->r[1] + 0x000000BCu;
|
|
/* 0250E84C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 0250E850 */ _t149 = cpu->r[1] + 0x000000B0u;
|
|
/* 0250E850 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 0250E854 */ _t150 = cpu->r[31] + 0x00000208u;
|
|
/* 0250E854 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[7]);
|
|
/* 0250E858 */ _t151 = cpu->r[31] + 0x000001FCu;
|
|
/* 0250E858 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[10]);
|
|
/* 0250E85C */ _t152 = cpu->r[31] + 0x00000214u;
|
|
/* 0250E85C */ rbrew_write_f32(cpu->mem, _t152, cpu->f[13]);
|
|
/* 0250E860 */ _t153 = cpu->r[7] + 0x00000020u;
|
|
/* 0250E860 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0250E864 */ _t154 = cpu->r[7] + 0x00000000u;
|
|
/* 0250E864 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0250E868 */ _t155 = cpu->r[7] + 0x00000010u;
|
|
/* 0250E868 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 0250E86C */ _t156 = cpu->r[1] + 0x00000074u;
|
|
/* 0250E86C */ rbrew_write_f32(cpu->mem, _t156, cpu->f[13]);
|
|
/* 0250E870 */ _t157 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250E870 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[8]);
|
|
/* 0250E874 */ _t158 = cpu->r[1] + 0x00000078u;
|
|
/* 0250E874 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[0]);
|
|
/* 0250E878 */ _t159 = cpu->r[7] + 0x00000024u;
|
|
/* 0250E878 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 0250E87C */ _t160 = cpu->r[7] + 0x00000014u;
|
|
/* 0250E87C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0250E880 */ _t161 = cpu->r[7] + 0x00000004u;
|
|
/* 0250E880 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0250E884 */ _t162 = cpu->r[1] + 0x00000084u;
|
|
/* 0250E884 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[12]);
|
|
/* 0250E888 */ _t163 = cpu->r[1] + 0x00000080u;
|
|
/* 0250E888 */ rbrew_write_f32(cpu->mem, _t163, cpu->f[11]);
|
|
/* 0250E88C */ _t164 = cpu->r[1] + 0x00000088u;
|
|
/* 0250E88C */ rbrew_write_f32(cpu->mem, _t164, cpu->f[0]);
|
|
/* 0250E890 */ _t165 = cpu->r[7] + 0x00000018u;
|
|
/* 0250E890 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 0250E894 */ _t166 = cpu->r[7] + 0x00000008u;
|
|
/* 0250E894 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 0250E898 */ _t167 = cpu->r[7] + 0x00000028u;
|
|
/* 0250E898 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0250E89C */ _t168 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0250E89C */ rbrew_write_f32(cpu->mem, _t168, cpu->f[9]);
|
|
/* 0250E8A0 */ _t169 = cpu->r[1] + 0x00000090u;
|
|
/* 0250E8A0 */ rbrew_write_f32(cpu->mem, _t169, cpu->f[10]);
|
|
/* 0250E8A4 */ _t170 = cpu->r[1] + 0x00000094u;
|
|
/* 0250E8A4 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[11]);
|
|
/* 0250E8A8 */ _t171 = cpu->r[7] + 0x0000001Cu;
|
|
/* 0250E8A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0250E8AC */ _t172 = cpu->r[7] + 0x0000002Cu;
|
|
/* 0250E8AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0250E8B0 */ _t173 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0250E8B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 0250E8B4 */ _t174 = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E8B4 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[0]);
|
|
/* 0250E8B8 */ _t175 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0250E8B8 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[13]);
|
|
/* 0250E8BC */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E8C0 */ _t176 = cpu->r[1] + 0x00000098u;
|
|
/* 0250E8C0 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0250E8C4 */ Gambit_fn_0204CAC0(cpu);
|
|
/* 0250E8C8 */ _t177 = cpu->r[31] + 0x000001E8u;
|
|
/* 0250E8C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0250E8CC */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E8D0 */ Gambit_fn_024F270C(cpu);
|
|
/* 0250E8D4 */ _t178 = cpu->r[31] + 0x0000023Cu;
|
|
/* 0250E8D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0250E8D8 */ _t179 = cpu->r[6] + 0x00000020u;
|
|
/* 0250E8D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 0250E8DC */ _t180 = cpu->r[6] + 0x00000000u;
|
|
/* 0250E8DC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0250E8E0 */ _t181 = cpu->r[6] + 0x00000010u;
|
|
/* 0250E8E0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 0250E8E4 */ _t182 = cpu->r[1] + 0x00000074u;
|
|
/* 0250E8E4 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[7]);
|
|
/* 0250E8E8 */ _t183 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250E8E8 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[9]);
|
|
/* 0250E8EC */ _t184 = cpu->r[1] + 0x00000078u;
|
|
/* 0250E8EC */ rbrew_write_f32(cpu->mem, _t184, cpu->f[8]);
|
|
/* 0250E8F0 */ _t185 = cpu->r[6] + 0x00000004u;
|
|
/* 0250E8F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 0250E8F4 */ _t186 = cpu->r[6] + 0x00000014u;
|
|
/* 0250E8F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 0250E8F8 */ _t187 = cpu->r[6] + 0x00000024u;
|
|
/* 0250E8F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 0250E8FC */ _t188 = cpu->r[1] + 0x00000080u;
|
|
/* 0250E8FC */ rbrew_write_f32(cpu->mem, _t188, cpu->f[10]);
|
|
/* 0250E900 */ _t189 = cpu->r[1] + 0x00000088u;
|
|
/* 0250E900 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[12]);
|
|
/* 0250E904 */ _t190 = cpu->r[1] + 0x00000084u;
|
|
/* 0250E904 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[11]);
|
|
/* 0250E908 */ _t191 = cpu->r[6] + 0x00000028u;
|
|
/* 0250E908 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 0250E90C */ _t192 = cpu->r[6] + 0x00000008u;
|
|
/* 0250E90C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 0250E910 */ _t193 = cpu->r[6] + 0x00000018u;
|
|
/* 0250E910 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 0250E914 */ _t194 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0250E914 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[13]);
|
|
/* 0250E918 */ _t195 = cpu->r[1] + 0x00000094u;
|
|
/* 0250E918 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[7]);
|
|
/* 0250E91C */ _t196 = cpu->r[1] + 0x00000090u;
|
|
/* 0250E91C */ rbrew_write_f32(cpu->mem, _t196, cpu->f[0]);
|
|
/* 0250E920 */ _t197 = cpu->r[6] + 0x0000001Cu;
|
|
/* 0250E920 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 0250E924 */ _t198 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0250E924 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0250E928 */ _t199 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0250E928 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0250E92C */ _t200 = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E92C */ rbrew_write_f32(cpu->mem, _t200, cpu->f[10]);
|
|
/* 0250E930 */ _t201 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0250E930 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[9]);
|
|
/* 0250E934 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E938 */ _t202 = cpu->r[1] + 0x00000098u;
|
|
/* 0250E938 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[8]);
|
|
/* 0250E93C */ Gambit_fn_0204CAC0(cpu);
|
|
/* 0250E940 */ _t203 = cpu->r[31] + 0x000001ECu;
|
|
/* 0250E940 */ cpu->r[3] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0250E944 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E948 */ Gambit_fn_024F270C(cpu);
|
|
/* 0250E94C */ _t204 = cpu->r[1] + 0x000000ECu;
|
|
/* 0250E94C */ cpu->r[0] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0250E950 */ _t205 = cpu->r[1] + 0x000000E4u;
|
|
/* 0250E950 */ cpu->r[31] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0250E954 */ cpu->lr = cpu->r[0];
|
|
/* 0250E958 */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 0250E95C */ return;
|
|
}
|
|
|
|
// fn_0250E530 @ 0x250e530
|
|
void Gambit_fn_0250E530(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205;
|
|
|
|
L_0250E530: ; // 0x250e530
|
|
/* 0250E530 */ _t0 = cpu->r[1] + 0xFFFFFF18u;
|
|
/* 0250E530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250E530 */ cpu->r[1] = _t0;
|
|
/* 0250E534 */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 0250E534 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250E538 */ cpu->r[9] = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E53C */ _t2 = cpu->r[1] + 0x000000ECu;
|
|
/* 0250E53C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250E540 */ cpu->r[0] = 0x00000003u;
|
|
/* 0250E544 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E548 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E54C */ cpu->r[8] = cpu->r[31] + 0x00000050u;
|
|
L_0250E550: ; // 0x250e550
|
|
/* 0250E550 */ _t3 = cpu->r[8] + 0x00000004u;
|
|
/* 0250E550 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250E554 */ _t4 = cpu->r[9] + 0x00000004u;
|
|
/* 0250E554 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 0250E558 */ _t5 = cpu->r[8] + 0x00000008u;
|
|
/* 0250E558 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250E55C */ _t6 = cpu->r[9] + 0x00000008u;
|
|
/* 0250E55C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0250E560 */ _t7 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0250E560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250E564 */ _t8 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0250E564 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0250E568 */ _t9 = cpu->r[8] + 0x00000010u;
|
|
/* 0250E568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250E568 */ cpu->r[8] = _t9;
|
|
/* 0250E56C */ _t10 = cpu->r[9] + 0x00000010u;
|
|
/* 0250E56C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0250E56C */ cpu->r[9] = _t10;
|
|
/* 0250E570 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0250E570 */ _t11 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0250E570 */ _t12 = _t11 >> (0x00000002u & 31u);
|
|
/* 0250E570 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0250E570 */ if (_t13) goto L_0250E550; else goto L_0250E574;
|
|
L_0250E574: ; // 0x250e574
|
|
/* 0250E574 */ _t14 = cpu->r[31] + 0x000000B8u;
|
|
/* 0250E574 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0250E578 */ _t15 = cpu->r[31] + 0x000000BCu;
|
|
/* 0250E578 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0250E57C */ _t16 = cpu->r[31] + 0x000000B4u;
|
|
/* 0250E57C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0250E580 */ _t17 = cpu->r[31] + 0x00000264u;
|
|
/* 0250E580 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0250E584 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0250E584 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 0250E588 */ _t19 = cpu->r[31] + 0x000000C8u;
|
|
/* 0250E588 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0250E58C */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 0250E590 */ _t20 = cpu->r[31] + 0x00000268u;
|
|
/* 0250E590 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0250E594 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E594 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0250E598 */ /* nop */
|
|
/* 0250E59C */ cpu->f[11] = fma(cpu->f[7], cpu->f[0], cpu->f[11]);
|
|
/* 0250E5A0 */ _t22 = cpu->r[31] + 0x0000026Cu;
|
|
/* 0250E5A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250E5A4 */ /* nop */
|
|
/* 0250E5A8 */ /* nop */
|
|
/* 0250E5AC */ /* nop */
|
|
/* 0250E5B0 */ /* nop */
|
|
/* 0250E5B4 */ _t23 = cpu->r[31] + 0x000000D4u;
|
|
/* 0250E5B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0250E5B8 */ /* nop */
|
|
/* 0250E5BC */ /* nop */
|
|
/* 0250E5C0 */ cpu->f[11] = fma(cpu->f[0], cpu->f[10], cpu->f[11]);
|
|
/* 0250E5C4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E5C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250E5C8 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0250E5C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250E5CC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0250E5CC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 0250E5D0 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0250E5D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0250E5D4 */ _t28 = cpu->r[1] + 0x000000D8u;
|
|
/* 0250E5D4 */ rbrew_write32(cpu->mem, _t28, cpu->r[7]);
|
|
/* 0250E5D8 */ _t29 = cpu->r[1] + 0x000000D8u;
|
|
/* 0250E5D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250E5DC */ _t30 = cpu->r[1] + 0x000000D4u;
|
|
/* 0250E5DC */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 0250E5E0 */ _t31 = cpu->r[1] + 0x000000D4u;
|
|
/* 0250E5E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0250E5E4 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250E5E8 */ _t32 = cpu->r[1] + 0x000000DCu;
|
|
/* 0250E5E8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0250E5EC */ _t33 = cpu->r[1] + 0x000000DCu;
|
|
/* 0250E5EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0250E5F0 */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 0250E5F4 */ _t34 = cpu->r[1] + 0x000000BCu;
|
|
/* 0250E5F4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 0250E5F8 */ cpu->r[5] = 0x00000489u;
|
|
/* 0250E5FC */ _t35 = cpu->r[1] + 0x000000C0u;
|
|
/* 0250E5FC */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 0250E600 */ cpu->r[4] = cpu->r[4] + 0xFFFFF2DCu;
|
|
/* 0250E604 */ _t36 = cpu->r[1] + 0x000000C4u;
|
|
/* 0250E604 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0250E608 */ Gambit_fn_0204D380(cpu);
|
|
/* 0250E60C */ _t37 = cpu->r[31] + 0x00000134u;
|
|
/* 0250E60C */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0250E610 */ _t38 = cpu->r[3] + 0x000001CCu;
|
|
/* 0250E610 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0250E614 */ _t39 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0250E614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250E618 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E61C */ cpu->r[4] = cpu->r[1] + 0x000000A4u;
|
|
/* 0250E620 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250E624 */ _t40 = cpu->r[31] + 0x00000134u;
|
|
/* 0250E624 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250E628 */ _t41 = cpu->r[3] + 0x000001CCu;
|
|
/* 0250E628 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0250E62C */ _t42 = cpu->r[12] + 0x00000024u;
|
|
/* 0250E62C */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0250E630 */ cpu->ctr = cpu->r[7];
|
|
/* 0250E634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250E638 */ cpu->r[0] = 0x00000003u;
|
|
/* 0250E63C */ cpu->r[8] = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E640 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E644 */ cpu->r[11] = cpu->r[1] + 0x00000010u;
|
|
L_0250E648: ; // 0x250e648
|
|
/* 0250E648 */ _t43 = cpu->r[8] + 0x00000004u;
|
|
/* 0250E648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0250E64C */ _t44 = cpu->r[11] + 0x00000004u;
|
|
/* 0250E64C */ rbrew_write32(cpu->mem, _t44, cpu->r[6]);
|
|
/* 0250E650 */ _t45 = cpu->r[8] + 0x00000008u;
|
|
/* 0250E650 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0250E654 */ _t46 = cpu->r[11] + 0x00000008u;
|
|
/* 0250E654 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0250E658 */ _t47 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0250E658 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0250E65C */ _t48 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0250E65C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0250E660 */ _t49 = cpu->r[8] + 0x00000010u;
|
|
/* 0250E660 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0250E660 */ cpu->r[8] = _t49;
|
|
/* 0250E664 */ _t50 = cpu->r[11] + 0x00000010u;
|
|
/* 0250E664 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 0250E664 */ cpu->r[11] = _t50;
|
|
/* 0250E668 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0250E668 */ _t51 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0250E668 */ _t52 = _t51 >> (0x00000002u & 31u);
|
|
/* 0250E668 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0250E668 */ if (_t53) goto L_0250E648; else goto L_0250E66C;
|
|
L_0250E66C: ; // 0x250e66c
|
|
/* 0250E66C */ cpu->r[0] = 0x00000003u;
|
|
/* 0250E670 */ cpu->r[11] = cpu->r[31] + 0x000001ECu;
|
|
/* 0250E674 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E678 */ cpu->r[12] = cpu->r[1] + 0x00000040u;
|
|
L_0250E67C: ; // 0x250e67c
|
|
/* 0250E67C */ _t54 = cpu->r[11] + 0x00000004u;
|
|
/* 0250E67C */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0250E680 */ _t55 = cpu->r[12] + 0x00000004u;
|
|
/* 0250E680 */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 0250E684 */ _t56 = cpu->r[11] + 0x00000008u;
|
|
/* 0250E684 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0250E688 */ _t57 = cpu->r[12] + 0x00000008u;
|
|
/* 0250E688 */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 0250E68C */ _t58 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0250E68C */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0250E690 */ _t59 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0250E690 */ rbrew_write32(cpu->mem, _t59, cpu->r[9]);
|
|
/* 0250E694 */ _t60 = cpu->r[11] + 0x00000010u;
|
|
/* 0250E694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0250E694 */ cpu->r[11] = _t60;
|
|
/* 0250E698 */ _t61 = cpu->r[12] + 0x00000010u;
|
|
/* 0250E698 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 0250E698 */ cpu->r[12] = _t61;
|
|
/* 0250E69C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0250E69C */ _t62 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0250E69C */ _t63 = _t62 >> (0x00000002u & 31u);
|
|
/* 0250E69C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0250E69C */ if (_t64) goto L_0250E67C; else goto L_0250E6A0;
|
|
L_0250E6A0: ; // 0x250e6a0
|
|
/* 0250E6A0 */ _t65 = cpu->r[31] + 0x000000E4u;
|
|
/* 0250E6A0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0250E6A4 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 0250E6A4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0250E6A8 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E6A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0250E6AC */ cpu->f[8] = cpu->f[8] * cpu->f[5];
|
|
/* 0250E6B0 */ /* nop */
|
|
/* 0250E6B4 */ /* nop */
|
|
/* 0250E6B8 */ cpu->f[10] = cpu->f[10] * cpu->f[5];
|
|
/* 0250E6BC */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 0250E6BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0250E6C0 */ _t69 = cpu->r[1] + 0x00000028u;
|
|
/* 0250E6C0 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[8]);
|
|
/* 0250E6C4 */ /* nop */
|
|
/* 0250E6C8 */ /* nop */
|
|
/* 0250E6CC */ cpu->f[13] = cpu->f[13] * cpu->f[5];
|
|
/* 0250E6D0 */ _t70 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E6D0 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[10]);
|
|
/* 0250E6D4 */ /* nop */
|
|
/* 0250E6D8 */ /* nop */
|
|
/* 0250E6DC */ /* nop */
|
|
/* 0250E6E0 */ /* nop */
|
|
/* 0250E6E4 */ /* nop */
|
|
/* 0250E6E8 */ _t71 = cpu->r[31] + 0x000000E8u;
|
|
/* 0250E6E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0250E6EC */ /* nop */
|
|
/* 0250E6F0 */ /* nop */
|
|
/* 0250E6F4 */ /* nop */
|
|
/* 0250E6F8 */ _t72 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E6F8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0250E6FC */ /* nop */
|
|
/* 0250E700 */ _t73 = cpu->r[1] + 0x00000034u;
|
|
/* 0250E700 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 0250E704 */ /* nop */
|
|
/* 0250E708 */ _t74 = cpu->r[1] + 0x00000064u;
|
|
/* 0250E708 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0250E70C */ cpu->f[11] = cpu->f[11] * cpu->f[6];
|
|
/* 0250E710 */ _t75 = cpu->r[31] + 0x00000134u;
|
|
/* 0250E710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0250E714 */ /* nop */
|
|
/* 0250E718 */ /* nop */
|
|
/* 0250E71C */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250E71C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0250E720 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E720 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[11]);
|
|
/* 0250E724 */ cpu->f[13] = cpu->f[13] * cpu->f[6];
|
|
/* 0250E728 */ /* nop */
|
|
/* 0250E72C */ /* nop */
|
|
/* 0250E730 */ cpu->f[7] = cpu->f[7] * cpu->f[6];
|
|
/* 0250E734 */ _t78 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250E734 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[7]);
|
|
/* 0250E738 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E738 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0250E73C */ _t80 = cpu->r[1] + 0x00000064u;
|
|
/* 0250E73C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 0250E740 */ _t81 = cpu->r[12] + 0x000001ECu;
|
|
/* 0250E740 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[0]);
|
|
/* 0250E744 */ _t82 = cpu->r[1] + 0x00000018u;
|
|
/* 0250E744 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0250E748 */ _t83 = cpu->r[12] + 0x000001F0u;
|
|
/* 0250E748 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[7]);
|
|
/* 0250E74C */ _t84 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250E74C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0250E750 */ _t85 = cpu->r[12] + 0x000001F4u;
|
|
/* 0250E750 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[8]);
|
|
/* 0250E754 */ _t86 = cpu->r[1] + 0x00000020u;
|
|
/* 0250E754 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0250E758 */ _t87 = cpu->r[12] + 0x000001F8u;
|
|
/* 0250E758 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[9]);
|
|
/* 0250E75C */ _t88 = cpu->r[1] + 0x00000024u;
|
|
/* 0250E75C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0250E760 */ _t89 = cpu->r[12] + 0x000001FCu;
|
|
/* 0250E760 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[10]);
|
|
/* 0250E764 */ _t90 = cpu->r[1] + 0x00000028u;
|
|
/* 0250E764 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0250E768 */ _t91 = cpu->r[12] + 0x00000200u;
|
|
/* 0250E768 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[12]);
|
|
/* 0250E76C */ _t92 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250E76C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0250E770 */ _t93 = cpu->r[12] + 0x00000204u;
|
|
/* 0250E770 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[10]);
|
|
/* 0250E774 */ _t94 = cpu->r[1] + 0x00000030u;
|
|
/* 0250E774 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0250E778 */ _t95 = cpu->r[12] + 0x00000208u;
|
|
/* 0250E778 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[11]);
|
|
/* 0250E77C */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 0250E77C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0250E780 */ _t97 = cpu->r[12] + 0x0000020Cu;
|
|
/* 0250E780 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[12]);
|
|
/* 0250E784 */ _t98 = cpu->r[1] + 0x00000038u;
|
|
/* 0250E784 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0250E788 */ _t99 = cpu->r[12] + 0x00000210u;
|
|
/* 0250E788 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[13]);
|
|
/* 0250E78C */ _t100 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250E78C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0250E790 */ _t101 = cpu->r[12] + 0x00000214u;
|
|
/* 0250E790 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[0]);
|
|
/* 0250E794 */ _t102 = cpu->r[1] + 0x00000040u;
|
|
/* 0250E794 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0250E798 */ _t103 = cpu->r[12] + 0x00000218u;
|
|
/* 0250E798 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[7]);
|
|
/* 0250E79C */ _t104 = cpu->r[1] + 0x00000044u;
|
|
/* 0250E79C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0250E7A0 */ _t105 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0250E7A0 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[8]);
|
|
/* 0250E7A4 */ _t106 = cpu->r[1] + 0x00000048u;
|
|
/* 0250E7A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0250E7A8 */ _t107 = cpu->r[12] + 0x00000220u;
|
|
/* 0250E7A8 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[9]);
|
|
/* 0250E7AC */ _t108 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250E7AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0250E7B0 */ _t109 = cpu->r[12] + 0x00000224u;
|
|
/* 0250E7B0 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[10]);
|
|
/* 0250E7B4 */ _t110 = cpu->r[1] + 0x00000050u;
|
|
/* 0250E7B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0250E7B8 */ _t111 = cpu->r[12] + 0x00000228u;
|
|
/* 0250E7B8 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[11]);
|
|
/* 0250E7BC */ _t112 = cpu->r[1] + 0x00000054u;
|
|
/* 0250E7BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0250E7C0 */ _t113 = cpu->r[12] + 0x0000022Cu;
|
|
/* 0250E7C0 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[0]);
|
|
/* 0250E7C4 */ _t114 = cpu->r[1] + 0x00000058u;
|
|
/* 0250E7C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0250E7C8 */ _t115 = cpu->r[12] + 0x00000230u;
|
|
/* 0250E7C8 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[13]);
|
|
/* 0250E7CC */ _t116 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0250E7CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0250E7D0 */ _t117 = cpu->r[12] + 0x00000234u;
|
|
/* 0250E7D0 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[9]);
|
|
/* 0250E7D4 */ _t118 = cpu->r[1] + 0x00000060u;
|
|
/* 0250E7D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 0250E7D8 */ _t119 = cpu->r[12] + 0x00000238u;
|
|
/* 0250E7D8 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[10]);
|
|
/* 0250E7DC */ _t120 = cpu->r[1] + 0x00000064u;
|
|
/* 0250E7DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0250E7E0 */ _t121 = cpu->r[12] + 0x0000023Cu;
|
|
/* 0250E7E0 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[11]);
|
|
/* 0250E7E4 */ _t122 = cpu->r[1] + 0x00000068u;
|
|
/* 0250E7E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0250E7E8 */ _t123 = cpu->r[12] + 0x00000240u;
|
|
/* 0250E7E8 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[12]);
|
|
/* 0250E7EC */ _t124 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250E7EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0250E7F0 */ _t125 = cpu->r[12] + 0x00000244u;
|
|
/* 0250E7F0 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[13]);
|
|
/* 0250E7F4 */ _t126 = cpu->r[1] + 0x00000070u;
|
|
/* 0250E7F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 0250E7F8 */ _t127 = cpu->r[12] + 0x00000248u;
|
|
/* 0250E7F8 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[0]);
|
|
/* 0250E7FC */ _t128 = cpu->r[1] + 0x000000CCu;
|
|
/* 0250E7FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0250E800 */ _t129 = cpu->r[1] + 0x000000A8u;
|
|
/* 0250E800 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0250E804 */ _t130 = cpu->r[31] + 0x00000218u;
|
|
/* 0250E804 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[7]);
|
|
/* 0250E808 */ _t131 = cpu->r[1] + 0x000000A4u;
|
|
/* 0250E808 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0250E80C */ _t132 = cpu->r[31] + 0x000001F4u;
|
|
/* 0250E80C */ rbrew_write_f32(cpu->mem, _t132, cpu->f[8]);
|
|
/* 0250E810 */ _t133 = cpu->r[31] + 0x000001F0u;
|
|
/* 0250E810 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[7]);
|
|
/* 0250E814 */ _t134 = cpu->r[1] + 0x000000B8u;
|
|
/* 0250E814 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0250E818 */ _t135 = cpu->r[1] + 0x000000D0u;
|
|
/* 0250E818 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0250E81C */ _t136 = cpu->r[31] + 0x00000204u;
|
|
/* 0250E81C */ rbrew_write_f32(cpu->mem, _t136, cpu->f[12]);
|
|
/* 0250E820 */ _t137 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0250E820 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[8]);
|
|
/* 0250E824 */ _t138 = cpu->r[1] + 0x000000C4u;
|
|
/* 0250E824 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0250E828 */ _t139 = cpu->r[1] + 0x000000C0u;
|
|
/* 0250E828 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 0250E82C */ _t140 = cpu->r[31] + 0x00000210u;
|
|
/* 0250E82C */ rbrew_write_f32(cpu->mem, _t140, cpu->f[10]);
|
|
/* 0250E830 */ _t141 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0250E830 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0250E834 */ _t142 = cpu->r[31] + 0x00000238u;
|
|
/* 0250E834 */ cpu->r[7] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0250E838 */ _t143 = cpu->r[1] + 0x000000C8u;
|
|
/* 0250E838 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 0250E83C */ _t144 = cpu->r[1] + 0x000000ACu;
|
|
/* 0250E83C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0250E840 */ _t145 = cpu->r[1] + 0x000000B4u;
|
|
/* 0250E840 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 0250E844 */ _t146 = cpu->r[31] + 0x000001F8u;
|
|
/* 0250E844 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[9]);
|
|
/* 0250E848 */ _t147 = cpu->r[31] + 0x00000200u;
|
|
/* 0250E848 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[11]);
|
|
/* 0250E84C */ _t148 = cpu->r[1] + 0x000000BCu;
|
|
/* 0250E84C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 0250E850 */ _t149 = cpu->r[1] + 0x000000B0u;
|
|
/* 0250E850 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 0250E854 */ _t150 = cpu->r[31] + 0x00000208u;
|
|
/* 0250E854 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[7]);
|
|
/* 0250E858 */ _t151 = cpu->r[31] + 0x000001FCu;
|
|
/* 0250E858 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[10]);
|
|
/* 0250E85C */ _t152 = cpu->r[31] + 0x00000214u;
|
|
/* 0250E85C */ rbrew_write_f32(cpu->mem, _t152, cpu->f[13]);
|
|
/* 0250E860 */ _t153 = cpu->r[7] + 0x00000020u;
|
|
/* 0250E860 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0250E864 */ _t154 = cpu->r[7] + 0x00000000u;
|
|
/* 0250E864 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0250E868 */ _t155 = cpu->r[7] + 0x00000010u;
|
|
/* 0250E868 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 0250E86C */ _t156 = cpu->r[1] + 0x00000074u;
|
|
/* 0250E86C */ rbrew_write_f32(cpu->mem, _t156, cpu->f[13]);
|
|
/* 0250E870 */ _t157 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250E870 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[8]);
|
|
/* 0250E874 */ _t158 = cpu->r[1] + 0x00000078u;
|
|
/* 0250E874 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[0]);
|
|
/* 0250E878 */ _t159 = cpu->r[7] + 0x00000024u;
|
|
/* 0250E878 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 0250E87C */ _t160 = cpu->r[7] + 0x00000014u;
|
|
/* 0250E87C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0250E880 */ _t161 = cpu->r[7] + 0x00000004u;
|
|
/* 0250E880 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0250E884 */ _t162 = cpu->r[1] + 0x00000084u;
|
|
/* 0250E884 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[12]);
|
|
/* 0250E888 */ _t163 = cpu->r[1] + 0x00000080u;
|
|
/* 0250E888 */ rbrew_write_f32(cpu->mem, _t163, cpu->f[11]);
|
|
/* 0250E88C */ _t164 = cpu->r[1] + 0x00000088u;
|
|
/* 0250E88C */ rbrew_write_f32(cpu->mem, _t164, cpu->f[0]);
|
|
/* 0250E890 */ _t165 = cpu->r[7] + 0x00000018u;
|
|
/* 0250E890 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 0250E894 */ _t166 = cpu->r[7] + 0x00000008u;
|
|
/* 0250E894 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 0250E898 */ _t167 = cpu->r[7] + 0x00000028u;
|
|
/* 0250E898 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0250E89C */ _t168 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0250E89C */ rbrew_write_f32(cpu->mem, _t168, cpu->f[9]);
|
|
/* 0250E8A0 */ _t169 = cpu->r[1] + 0x00000090u;
|
|
/* 0250E8A0 */ rbrew_write_f32(cpu->mem, _t169, cpu->f[10]);
|
|
/* 0250E8A4 */ _t170 = cpu->r[1] + 0x00000094u;
|
|
/* 0250E8A4 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[11]);
|
|
/* 0250E8A8 */ _t171 = cpu->r[7] + 0x0000001Cu;
|
|
/* 0250E8A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0250E8AC */ _t172 = cpu->r[7] + 0x0000002Cu;
|
|
/* 0250E8AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0250E8B0 */ _t173 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0250E8B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 0250E8B4 */ _t174 = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E8B4 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[0]);
|
|
/* 0250E8B8 */ _t175 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0250E8B8 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[13]);
|
|
/* 0250E8BC */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E8C0 */ _t176 = cpu->r[1] + 0x00000098u;
|
|
/* 0250E8C0 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0250E8C4 */ Gambit_fn_0204CAC0(cpu);
|
|
/* 0250E8C8 */ _t177 = cpu->r[31] + 0x000001E8u;
|
|
/* 0250E8C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0250E8CC */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E8D0 */ Gambit_fn_024F270C(cpu);
|
|
/* 0250E8D4 */ _t178 = cpu->r[31] + 0x0000023Cu;
|
|
/* 0250E8D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0250E8D8 */ _t179 = cpu->r[6] + 0x00000020u;
|
|
/* 0250E8D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 0250E8DC */ _t180 = cpu->r[6] + 0x00000000u;
|
|
/* 0250E8DC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0250E8E0 */ _t181 = cpu->r[6] + 0x00000010u;
|
|
/* 0250E8E0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 0250E8E4 */ _t182 = cpu->r[1] + 0x00000074u;
|
|
/* 0250E8E4 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[7]);
|
|
/* 0250E8E8 */ _t183 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250E8E8 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[9]);
|
|
/* 0250E8EC */ _t184 = cpu->r[1] + 0x00000078u;
|
|
/* 0250E8EC */ rbrew_write_f32(cpu->mem, _t184, cpu->f[8]);
|
|
/* 0250E8F0 */ _t185 = cpu->r[6] + 0x00000004u;
|
|
/* 0250E8F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 0250E8F4 */ _t186 = cpu->r[6] + 0x00000014u;
|
|
/* 0250E8F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 0250E8F8 */ _t187 = cpu->r[6] + 0x00000024u;
|
|
/* 0250E8F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 0250E8FC */ _t188 = cpu->r[1] + 0x00000080u;
|
|
/* 0250E8FC */ rbrew_write_f32(cpu->mem, _t188, cpu->f[10]);
|
|
/* 0250E900 */ _t189 = cpu->r[1] + 0x00000088u;
|
|
/* 0250E900 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[12]);
|
|
/* 0250E904 */ _t190 = cpu->r[1] + 0x00000084u;
|
|
/* 0250E904 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[11]);
|
|
/* 0250E908 */ _t191 = cpu->r[6] + 0x00000028u;
|
|
/* 0250E908 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 0250E90C */ _t192 = cpu->r[6] + 0x00000008u;
|
|
/* 0250E90C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 0250E910 */ _t193 = cpu->r[6] + 0x00000018u;
|
|
/* 0250E910 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 0250E914 */ _t194 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0250E914 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[13]);
|
|
/* 0250E918 */ _t195 = cpu->r[1] + 0x00000094u;
|
|
/* 0250E918 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[7]);
|
|
/* 0250E91C */ _t196 = cpu->r[1] + 0x00000090u;
|
|
/* 0250E91C */ rbrew_write_f32(cpu->mem, _t196, cpu->f[0]);
|
|
/* 0250E920 */ _t197 = cpu->r[6] + 0x0000001Cu;
|
|
/* 0250E920 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 0250E924 */ _t198 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0250E924 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0250E928 */ _t199 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0250E928 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0250E92C */ _t200 = cpu->r[1] + 0x000000A0u;
|
|
/* 0250E92C */ rbrew_write_f32(cpu->mem, _t200, cpu->f[10]);
|
|
/* 0250E930 */ _t201 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0250E930 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[9]);
|
|
/* 0250E934 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E938 */ _t202 = cpu->r[1] + 0x00000098u;
|
|
/* 0250E938 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[8]);
|
|
/* 0250E93C */ Gambit_fn_0204CAC0(cpu);
|
|
/* 0250E940 */ _t203 = cpu->r[31] + 0x000001ECu;
|
|
/* 0250E940 */ cpu->r[3] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0250E944 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 0250E948 */ Gambit_fn_024F270C(cpu);
|
|
/* 0250E94C */ _t204 = cpu->r[1] + 0x000000ECu;
|
|
/* 0250E94C */ cpu->r[0] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0250E950 */ _t205 = cpu->r[1] + 0x000000E4u;
|
|
/* 0250E950 */ cpu->r[31] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0250E954 */ cpu->lr = cpu->r[0];
|
|
/* 0250E958 */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 0250E95C */ return;
|
|
}
|
|
|
|
// fn_0250E960 @ 0x250e960
|
|
void Gambit_fn_0250E960(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_0250E960: ; // 0x250e960
|
|
/* 0250E960 */ cpu->r[0] = cpu->lr;
|
|
/* 0250E964 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250E964 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250E964 */ cpu->r[1] = _t0;
|
|
/* 0250E968 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0250E968 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0250E96C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E96C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0250E970 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250E974 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E974 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250E978 */ _t4 = cpu->r[30] + 0x000000A8u;
|
|
/* 0250E978 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250E97C */ _t5 = cpu->r[30] + 0x00000078u;
|
|
/* 0250E97C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0250E980 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0250E984 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E984 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250E984 */ if (_t7) goto L_0250E988; else goto L_0250E9A8;
|
|
L_0250E988: ; // 0x250e988
|
|
/* 0250E988 */ _t8 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0250E988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0250E98C */ _t9 = cpu->r[30] + 0x000000ACu;
|
|
/* 0250E98C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0250E990 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0250E994 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E994 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0250E994 */ if (_t11) goto L_0250E998; else goto L_0250E9A8;
|
|
L_0250E998: ; // 0x250e998
|
|
/* 0250E998 */ _t12 = cpu->r[30] + 0x00000080u;
|
|
/* 0250E998 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0250E99C */ _t13 = cpu->r[30] + 0x000000B0u;
|
|
/* 0250E99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0250E9A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0250E9A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E9A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250E9A4 */ if (_t15) goto L_0250EA34; else goto L_0250E9A8;
|
|
L_0250E9A8: ; // 0x250e9a8
|
|
/* 0250E9A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250E9AC */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250E9B0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0250E9B4 */ _t16 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 0250E9B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0250E9B4 */ cpu->r[12] = _t16;
|
|
/* 0250E9B8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0250E9BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E9C4 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 0250E9C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E9C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250E9C8 */ if (_t18) goto L_0250E9CC; else goto L_0250E9E0;
|
|
L_0250E9CC: ; // 0x250e9cc
|
|
/* 0250E9CC */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250E9D0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0250E9D4 */ cpu->r[0] = cpu->r[0] + 0xFFFFF0C8u;
|
|
/* 0250E9D8 */ _t19 = cpu->r[12] + 0x00000000u;
|
|
/* 0250E9D8 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 0250E9DC */ _t20 = cpu->r[4] + 0x00000000u;
|
|
/* 0250E9DC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
L_0250E9E0: ; // 0x250e9e0
|
|
/* 0250E9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250E9E4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E9E4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0250E9E4 */ if (_t22) goto L_0250EA04; else goto L_0250E9E8;
|
|
L_0250E9E8: ; // 0x250e9e8
|
|
/* 0250E9E8 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 0250E9E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250E9EC */ _t24 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0250E9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250E9F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E9F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250E9F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250E9FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250EA00 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EA00 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0250EA00 */ if (_t26) goto L_0250EA04; else goto L_0250EA08;
|
|
L_0250EA04: ; // 0x250ea04
|
|
/* 0250EA04 */ cpu->r[31] = 0x00000000u;
|
|
L_0250EA08: ; // 0x250ea08
|
|
/* 0250EA08 */ _t27 = cpu->r[31] + 0x000002FCu;
|
|
/* 0250EA08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0250EA0C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EA10 */ _t28 = cpu->r[30] + 0x00000080u;
|
|
/* 0250EA10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0250EA14 */ _t29 = cpu->r[30] + 0x00000078u;
|
|
/* 0250EA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250EA18 */ cpu->f[3] = cpu->f[12] - cpu->f[0];
|
|
/* 0250EA1C */ _t30 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0250EA1C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250EA20 */ cpu->f[2] = cpu->f[13] + cpu->f[0];
|
|
/* 0250EA24 */ _t31 = cpu->r[30] + 0x000002ACu;
|
|
/* 0250EA24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0250EA28 */ cpu->f[1] = cpu->f[13] - cpu->f[0];
|
|
/* 0250EA2C */ cpu->f[4] = cpu->f[12] + cpu->f[0];
|
|
/* 0250EA30 */ Gambit_fn_02031EFC(cpu);
|
|
L_0250EA34: ; // 0x250ea34
|
|
/* 0250EA34 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EA34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0250EA38 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EA38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0250EA3C */ cpu->lr = cpu->r[0];
|
|
/* 0250EA40 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EA40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0250EA44 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EA48 */ return;
|
|
}
|
|
|
|
// fn_0250E964 @ 0x250e964
|
|
void Gambit_fn_0250E964(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_0250E964: ; // 0x250e964
|
|
/* 0250E964 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250E964 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250E964 */ cpu->r[1] = _t0;
|
|
/* 0250E968 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0250E968 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0250E96C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250E96C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0250E970 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250E974 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250E974 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250E978 */ _t4 = cpu->r[30] + 0x000000A8u;
|
|
/* 0250E978 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250E97C */ _t5 = cpu->r[30] + 0x00000078u;
|
|
/* 0250E97C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0250E980 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0250E984 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E984 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250E984 */ if (_t7) goto L_0250E988; else goto L_0250E9A8;
|
|
L_0250E988: ; // 0x250e988
|
|
/* 0250E988 */ _t8 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0250E988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0250E98C */ _t9 = cpu->r[30] + 0x000000ACu;
|
|
/* 0250E98C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0250E990 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0250E994 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E994 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0250E994 */ if (_t11) goto L_0250E998; else goto L_0250E9A8;
|
|
L_0250E998: ; // 0x250e998
|
|
/* 0250E998 */ _t12 = cpu->r[30] + 0x00000080u;
|
|
/* 0250E998 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0250E99C */ _t13 = cpu->r[30] + 0x000000B0u;
|
|
/* 0250E99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0250E9A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0250E9A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E9A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250E9A4 */ if (_t15) goto L_0250EA34; else goto L_0250E9A8;
|
|
L_0250E9A8: ; // 0x250e9a8
|
|
/* 0250E9A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250E9AC */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250E9B0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0250E9B4 */ _t16 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 0250E9B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0250E9B4 */ cpu->r[12] = _t16;
|
|
/* 0250E9B8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0250E9BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0250E9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0250E9C4 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 0250E9C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E9C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250E9C8 */ if (_t18) goto L_0250E9CC; else goto L_0250E9E0;
|
|
L_0250E9CC: ; // 0x250e9cc
|
|
/* 0250E9CC */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250E9D0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0250E9D4 */ cpu->r[0] = cpu->r[0] + 0xFFFFF0C8u;
|
|
/* 0250E9D8 */ _t19 = cpu->r[12] + 0x00000000u;
|
|
/* 0250E9D8 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 0250E9DC */ _t20 = cpu->r[4] + 0x00000000u;
|
|
/* 0250E9DC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
L_0250E9E0: ; // 0x250e9e0
|
|
/* 0250E9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250E9E4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250E9E4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0250E9E4 */ if (_t22) goto L_0250EA04; else goto L_0250E9E8;
|
|
L_0250E9E8: ; // 0x250e9e8
|
|
/* 0250E9E8 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 0250E9E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250E9EC */ _t24 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0250E9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250E9F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0250E9F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250E9F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250E9FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250EA00 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EA00 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0250EA00 */ if (_t26) goto L_0250EA04; else goto L_0250EA08;
|
|
L_0250EA04: ; // 0x250ea04
|
|
/* 0250EA04 */ cpu->r[31] = 0x00000000u;
|
|
L_0250EA08: ; // 0x250ea08
|
|
/* 0250EA08 */ _t27 = cpu->r[31] + 0x000002FCu;
|
|
/* 0250EA08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0250EA0C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EA10 */ _t28 = cpu->r[30] + 0x00000080u;
|
|
/* 0250EA10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0250EA14 */ _t29 = cpu->r[30] + 0x00000078u;
|
|
/* 0250EA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250EA18 */ cpu->f[3] = cpu->f[12] - cpu->f[0];
|
|
/* 0250EA1C */ _t30 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0250EA1C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250EA20 */ cpu->f[2] = cpu->f[13] + cpu->f[0];
|
|
/* 0250EA24 */ _t31 = cpu->r[30] + 0x000002ACu;
|
|
/* 0250EA24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0250EA28 */ cpu->f[1] = cpu->f[13] - cpu->f[0];
|
|
/* 0250EA2C */ cpu->f[4] = cpu->f[12] + cpu->f[0];
|
|
/* 0250EA30 */ Gambit_fn_02031EFC(cpu);
|
|
L_0250EA34: ; // 0x250ea34
|
|
/* 0250EA34 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EA34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0250EA38 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EA38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0250EA3C */ cpu->lr = cpu->r[0];
|
|
/* 0250EA40 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EA40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0250EA44 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EA48 */ return;
|
|
}
|
|
|
|
// fn_0250EA4C @ 0x250ea4c
|
|
void Gambit_fn_0250EA4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0250EA4C: ; // 0x250ea4c
|
|
/* 0250EA4C */ cpu->r[0] = cpu->lr;
|
|
/* 0250EA50 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250EA50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EA50 */ cpu->r[1] = _t0;
|
|
/* 0250EA54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EA54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250EA58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EA5C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EA5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250EA60 */ Gambit_fn_0250DE38(cpu);
|
|
/* 0250EA64 */ cpu->r[5] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0250EA68 */ _t3 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250EA68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250EA6C */ cpu->r[4] = cpu->r[31];
|
|
/* 0250EA70 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0250EA74 */ Gambit_fn_02512518(cpu);
|
|
/* 0250EA78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA7C */ Gambit_fn_0250DE8C(cpu);
|
|
/* 0250EA80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA84 */ Gambit_fn_0250E404(cpu);
|
|
/* 0250EA88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA8C */ Gambit_fn_0250E52C(cpu);
|
|
/* 0250EA90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA94 */ Gambit_fn_0250E960(cpu);
|
|
/* 0250EA98 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250EA9C */ cpu->lr = cpu->r[0];
|
|
/* 0250EAA0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EAA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250EAA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EAA8 */ return;
|
|
}
|
|
|
|
// fn_0250EA50 @ 0x250ea50
|
|
void Gambit_fn_0250EA50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0250EA50: ; // 0x250ea50
|
|
/* 0250EA50 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250EA50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EA50 */ cpu->r[1] = _t0;
|
|
/* 0250EA54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EA54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250EA58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EA5C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EA5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250EA60 */ Gambit_fn_0250DE38(cpu);
|
|
/* 0250EA64 */ cpu->r[5] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0250EA68 */ _t3 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250EA68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250EA6C */ cpu->r[4] = cpu->r[31];
|
|
/* 0250EA70 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0250EA74 */ Gambit_fn_02512518(cpu);
|
|
/* 0250EA78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA7C */ Gambit_fn_0250DE8C(cpu);
|
|
/* 0250EA80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA84 */ Gambit_fn_0250E404(cpu);
|
|
/* 0250EA88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA8C */ Gambit_fn_0250E52C(cpu);
|
|
/* 0250EA90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EA94 */ Gambit_fn_0250E960(cpu);
|
|
/* 0250EA98 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250EA9C */ cpu->lr = cpu->r[0];
|
|
/* 0250EAA0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EAA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250EAA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EAA8 */ return;
|
|
}
|
|
|
|
// fn_0250EAAC @ 0x250eaac
|
|
void Gambit_fn_0250EAAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_0250EAAC: ; // 0x250eaac
|
|
/* 0250EAAC */ cpu->r[0] = cpu->lr;
|
|
/* 0250EAB0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0250EAB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EAB0 */ cpu->r[1] = _t0;
|
|
/* 0250EAB4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EAB4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250EAB8 */ /* nop */
|
|
/* 0250EABC */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EABC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250EAC0 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EAC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250EAC4 */ _t4 = cpu->r[3] + 0x000001BCu;
|
|
/* 0250EAC4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250EAC8 */ /* nop */
|
|
/* 0250EACC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250EAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0250EAD4 */ _t5 = cpu->r[11] + 0xFFFFF2F8u;
|
|
/* 0250EAD4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0250EAD8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EAD8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250EAD8 */ if (_t7) goto L_0250EAE4; else goto L_0250EADC;
|
|
L_0250EADC: ; // 0x250eadc
|
|
/* 0250EADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0250EAE0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EAE0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250EAE0 */ if (_t9) goto L_0250EAE4; else goto L_0250EBA0;
|
|
L_0250EAE4: ; // 0x250eae4
|
|
/* 0250EAE4 */ _t10 = cpu->r[3] + 0x0000023Cu;
|
|
/* 0250EAE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250EAE8 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0250EAEC */ cpu->r[5] = 0x00000003u;
|
|
/* 0250EAF0 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0250EAF4 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EAF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250EAF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0250EAFC */ _t12 = cpu->r[3] + 0x00000E14u;
|
|
/* 0250EAFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250EB00 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EB00 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0250EB04 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250EB04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0250EB08 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EB08 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250EB0C */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 0250EB0C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0250EB10 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250EB14 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EB14 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0250EB18 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0250EB1C */ Gambit_fn_02014444(cpu);
|
|
/* 0250EB20 */ Gambit_fn_0200ED68(cpu);
|
|
/* 0250EB24 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250EB28 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0250EB2C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EB30 */ _t18 = cpu->r[12] + 0xFFFFF2FCu;
|
|
/* 0250EB30 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0250EB34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0250EB38 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250EB38 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250EB38 */ if (_t20) goto L_0250EB3C; else goto L_0250EB98;
|
|
L_0250EB3C: ; // 0x250eb3c
|
|
/* 0250EB3C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250EB40 */ _t21 = cpu->r[10] + 0xFFFFF300u;
|
|
/* 0250EB40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0250EB44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 0250EB48 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EB48 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0250EB48 */ if (_t23) goto L_0250EB6C; else goto L_0250EB4C;
|
|
L_0250EB4C: ; // 0x250eb4c
|
|
/* 0250EB4C */ cpu->f[1] = cpu->f[31];
|
|
/* 0250EB50 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EB50 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250EB54 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EB54 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0250EB58 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EB58 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250EB58 */ if (_t27) goto L_0250EB5C; // else: addr-0 trap, fall-through
|
|
L_0250EB5C: ; // 0x250eb5c
|
|
/* 0250EB5C */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0250EB60 */ cpu->lr = cpu->r[0];
|
|
/* 0250EB64 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EB68 */ return;
|
|
L_0250EB6C: ; // 0x250eb6c
|
|
/* 0250EB6C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EB70 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EB70 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250EB74 */ cpu->f[0] = cpu->f[1] - cpu->f[0];
|
|
/* 0250EB78 */ _t30 = cpu->r[12] + 0xFFFFF304u;
|
|
/* 0250EB78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250EB7C */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EB7C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 0250EB80 */ cpu->f[1] = cpu->f[0] / cpu->f[13];
|
|
/* 0250EB84 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EB84 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0250EB84 */ if (_t33) goto L_0250EB88; // else: addr-0 trap, fall-through
|
|
L_0250EB88: ; // 0x250eb88
|
|
/* 0250EB88 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EB88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0250EB8C */ cpu->lr = cpu->r[0];
|
|
/* 0250EB90 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EB94 */ return;
|
|
L_0250EB98: ; // 0x250eb98
|
|
/* 0250EB98 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EB9C */ _t35 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0250EB9C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
L_0250EBA0: ; // 0x250eba0
|
|
/* 0250EBA0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0250EBA4 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EBA4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0250EBA8 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EBA8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0250EBAC */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EBAC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0250EBAC */ if (_t39) goto L_0250EBB0; // else: addr-0 trap, fall-through
|
|
L_0250EBB0: ; // 0x250ebb0
|
|
/* 0250EBB0 */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250EBB4 */ cpu->lr = cpu->r[0];
|
|
/* 0250EBB8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EBBC */ return;
|
|
}
|
|
|
|
// fn_0250EAB0 @ 0x250eab0
|
|
void Gambit_fn_0250EAB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_0250EAB0: ; // 0x250eab0
|
|
/* 0250EAB0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0250EAB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EAB0 */ cpu->r[1] = _t0;
|
|
/* 0250EAB4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EAB4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250EAB8 */ /* nop */
|
|
/* 0250EABC */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EABC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250EAC0 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EAC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250EAC4 */ _t4 = cpu->r[3] + 0x000001BCu;
|
|
/* 0250EAC4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250EAC8 */ /* nop */
|
|
/* 0250EACC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250EAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0250EAD4 */ _t5 = cpu->r[11] + 0xFFFFF2F8u;
|
|
/* 0250EAD4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0250EAD8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EAD8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250EAD8 */ if (_t7) goto L_0250EAE4; else goto L_0250EADC;
|
|
L_0250EADC: ; // 0x250eadc
|
|
/* 0250EADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0250EAE0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EAE0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250EAE0 */ if (_t9) goto L_0250EAE4; else goto L_0250EBA0;
|
|
L_0250EAE4: ; // 0x250eae4
|
|
/* 0250EAE4 */ _t10 = cpu->r[3] + 0x0000023Cu;
|
|
/* 0250EAE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250EAE8 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0250EAEC */ cpu->r[5] = 0x00000003u;
|
|
/* 0250EAF0 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0250EAF4 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EAF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250EAF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0250EAFC */ _t12 = cpu->r[3] + 0x00000E14u;
|
|
/* 0250EAFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250EB00 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EB00 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0250EB04 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250EB04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0250EB08 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EB08 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250EB0C */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 0250EB0C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0250EB10 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250EB14 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EB14 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0250EB18 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0250EB1C */ Gambit_fn_02014444(cpu);
|
|
/* 0250EB20 */ Gambit_fn_0200ED68(cpu);
|
|
/* 0250EB24 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250EB28 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0250EB2C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EB30 */ _t18 = cpu->r[12] + 0xFFFFF2FCu;
|
|
/* 0250EB30 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0250EB34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0250EB38 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250EB38 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250EB38 */ if (_t20) goto L_0250EB3C; else goto L_0250EB98;
|
|
L_0250EB3C: ; // 0x250eb3c
|
|
/* 0250EB3C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250EB40 */ _t21 = cpu->r[10] + 0xFFFFF300u;
|
|
/* 0250EB40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0250EB44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 0250EB48 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EB48 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0250EB48 */ if (_t23) goto L_0250EB6C; else goto L_0250EB4C;
|
|
L_0250EB4C: ; // 0x250eb4c
|
|
/* 0250EB4C */ cpu->f[1] = cpu->f[31];
|
|
/* 0250EB50 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EB50 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0250EB54 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EB54 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0250EB58 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EB58 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250EB58 */ if (_t27) goto L_0250EB5C; // else: addr-0 trap, fall-through
|
|
L_0250EB5C: ; // 0x250eb5c
|
|
/* 0250EB5C */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0250EB60 */ cpu->lr = cpu->r[0];
|
|
/* 0250EB64 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EB68 */ return;
|
|
L_0250EB6C: ; // 0x250eb6c
|
|
/* 0250EB6C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EB70 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EB70 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0250EB74 */ cpu->f[0] = cpu->f[1] - cpu->f[0];
|
|
/* 0250EB78 */ _t30 = cpu->r[12] + 0xFFFFF304u;
|
|
/* 0250EB78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250EB7C */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EB7C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 0250EB80 */ cpu->f[1] = cpu->f[0] / cpu->f[13];
|
|
/* 0250EB84 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EB84 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0250EB84 */ if (_t33) goto L_0250EB88; // else: addr-0 trap, fall-through
|
|
L_0250EB88: ; // 0x250eb88
|
|
/* 0250EB88 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EB88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0250EB8C */ cpu->lr = cpu->r[0];
|
|
/* 0250EB90 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EB94 */ return;
|
|
L_0250EB98: ; // 0x250eb98
|
|
/* 0250EB98 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250EB9C */ _t35 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0250EB9C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
L_0250EBA0: ; // 0x250eba0
|
|
/* 0250EBA0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0250EBA4 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EBA4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0250EBA8 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EBA8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0250EBAC */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EBAC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0250EBAC */ if (_t39) goto L_0250EBB0; // else: addr-0 trap, fall-through
|
|
L_0250EBB0: ; // 0x250ebb0
|
|
/* 0250EBB0 */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 0250EBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250EBB4 */ cpu->lr = cpu->r[0];
|
|
/* 0250EBB8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EBBC */ return;
|
|
}
|
|
|
|
// fn_0250EBC0 @ 0x250ebc0
|
|
void Gambit_fn_0250EBC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_0250EBC0: ; // 0x250ebc0
|
|
/* 0250EBC0 */ cpu->r[0] = cpu->lr;
|
|
/* 0250EBC4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0250EBC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EBC4 */ cpu->r[1] = _t0;
|
|
/* 0250EBC8 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EBC8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250EBCC */ /* nop */
|
|
/* 0250EBD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EBD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0250EBD4 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EBD4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0250EBD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EBDC */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250EBDC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0250EBE0 */ Gambit_fn_0250DE38(cpu);
|
|
/* 0250EBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250EBE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EBE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250EBE8 */ if (_t6) goto L_0250EBF8; else goto L_0250EBEC;
|
|
L_0250EBEC: ; // 0x250ebec
|
|
/* 0250EBEC */ _t7 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250EBEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250EBF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250EBF4 */ Gambit_fn_02512380(cpu);
|
|
L_0250EBF8: ; // 0x250ebf8
|
|
/* 0250EBF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EBFC */ Gambit_fn_0250EAAC(cpu);
|
|
/* 0250EC00 */ _t8 = cpu->r[31] + 0x0000022Cu;
|
|
/* 0250EC00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250EC04 */ cpu->f[31] = cpu->f[1];
|
|
/* 0250EC08 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0250EC08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250EC0C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0250EC10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250EC14 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EC14 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0250EC18 */ Gambit_fn_02981258(cpu);
|
|
/* 0250EC1C */ _t11 = cpu->r[31] + 0x00000230u;
|
|
/* 0250EC1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250EC20 */ cpu->f[1] = cpu->f[31];
|
|
/* 0250EC24 */ _t12 = cpu->r[31] + 0x00000008u;
|
|
/* 0250EC24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250EC28 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EC2C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0250EC30 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EC30 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0250EC34 */ Gambit_fn_02981258(cpu);
|
|
/* 0250EC38 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EC3C */ Gambit_fn_024F606C(cpu);
|
|
/* 0250EC40 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EC44 */ Gambit_fn_024F607C(cpu);
|
|
/* 0250EC48 */ _t14 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EC48 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0250EC4C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EC4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250EC50 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EC50 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 0250EC54 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EC54 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250EC54 */ if (_t18) goto L_0250EC58; // else: addr-0 trap, fall-through
|
|
L_0250EC58: ; // 0x250ec58
|
|
/* 0250EC58 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250EC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0250EC5C */ cpu->lr = cpu->r[0];
|
|
/* 0250EC60 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0250EC64 */ return;
|
|
}
|
|
|
|
// fn_0250EBC4 @ 0x250ebc4
|
|
void Gambit_fn_0250EBC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_0250EBC4: ; // 0x250ebc4
|
|
/* 0250EBC4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0250EBC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EBC4 */ cpu->r[1] = _t0;
|
|
/* 0250EBC8 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EBC8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250EBCC */ /* nop */
|
|
/* 0250EBD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EBD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0250EBD4 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EBD4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0250EBD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EBDC */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250EBDC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0250EBE0 */ Gambit_fn_0250DE38(cpu);
|
|
/* 0250EBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250EBE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EBE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250EBE8 */ if (_t6) goto L_0250EBF8; else goto L_0250EBEC;
|
|
L_0250EBEC: ; // 0x250ebec
|
|
/* 0250EBEC */ _t7 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250EBEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250EBF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250EBF4 */ Gambit_fn_02512380(cpu);
|
|
L_0250EBF8: ; // 0x250ebf8
|
|
/* 0250EBF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EBFC */ Gambit_fn_0250EAAC(cpu);
|
|
/* 0250EC00 */ _t8 = cpu->r[31] + 0x0000022Cu;
|
|
/* 0250EC00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250EC04 */ cpu->f[31] = cpu->f[1];
|
|
/* 0250EC08 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0250EC08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250EC0C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0250EC10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250EC14 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EC14 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0250EC18 */ Gambit_fn_02981258(cpu);
|
|
/* 0250EC1C */ _t11 = cpu->r[31] + 0x00000230u;
|
|
/* 0250EC1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250EC20 */ cpu->f[1] = cpu->f[31];
|
|
/* 0250EC24 */ _t12 = cpu->r[31] + 0x00000008u;
|
|
/* 0250EC24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250EC28 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EC2C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0250EC30 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EC30 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0250EC34 */ Gambit_fn_02981258(cpu);
|
|
/* 0250EC38 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EC3C */ Gambit_fn_024F606C(cpu);
|
|
/* 0250EC40 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EC44 */ Gambit_fn_024F607C(cpu);
|
|
/* 0250EC48 */ _t14 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EC48 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0250EC4C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EC4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0250EC50 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EC50 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 0250EC54 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EC54 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250EC54 */ if (_t18) goto L_0250EC58; // else: addr-0 trap, fall-through
|
|
L_0250EC58: ; // 0x250ec58
|
|
/* 0250EC58 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250EC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0250EC5C */ cpu->lr = cpu->r[0];
|
|
/* 0250EC60 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0250EC64 */ return;
|
|
}
|
|
|
|
// fn_0250EC68 @ 0x250ec68
|
|
void Gambit_fn_0250EC68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_0250EC68: ; // 0x250ec68
|
|
/* 0250EC68 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0250EC68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EC68 */ cpu->r[1] = _t0;
|
|
/* 0250EC6C */ cpu->r[0] = cpu->lr;
|
|
/* 0250EC70 */ /* nop */
|
|
/* 0250EC74 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 0250EC74 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 0250EC78 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0250EC78 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250EC7C */ /* nop */
|
|
/* 0250EC80 */ _t3 = cpu->r[1] + 0x00000098u;
|
|
/* 0250EC80 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0250EC84 */ _t4 = cpu->r[1] + 0x00000090u;
|
|
/* 0250EC84 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0250EC88 */ /* nop */
|
|
/* 0250EC8C */ _t5 = cpu->r[1] + 0x000000A8u;
|
|
/* 0250EC8C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0250EC90 */ _t6 = cpu->r[1] + 0x000000A0u;
|
|
/* 0250EC90 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 0250EC94 */ /* nop */
|
|
/* 0250EC98 */ _t7 = cpu->r[1] + 0x000000B0u;
|
|
/* 0250EC98 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0250EC9C */ cpu->r[30] = cpu->r[3];
|
|
/* 0250ECA0 */ _t8 = cpu->r[4] + 0x0000001Cu;
|
|
/* 0250ECA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250ECA4 */ _t9 = cpu->r[4] + 0x00000018u;
|
|
/* 0250ECA4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250ECA8 */ Gambit_fn_0281BC48(cpu);
|
|
/* 0250ECAC */ cpu->r[31] = 0x101F0000u;
|
|
/* 0250ECB0 */ cpu->r[27] = 0x101F0000u;
|
|
/* 0250ECB4 */ _t10 = cpu->r[31] + 0xFFFF9594u;
|
|
/* 0250ECB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0250ECB4 */ cpu->r[31] = _t10;
|
|
/* 0250ECB8 */ _t11 = cpu->r[27] + 0xFFFF958Cu;
|
|
/* 0250ECB8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0250ECB8 */ cpu->r[27] = _t11;
|
|
/* 0250ECBC */ _t12 = cpu->r[27] + 0x00000004u;
|
|
/* 0250ECBC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0250ECC0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250ECC4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0250ECC4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[7]);
|
|
/* 0250ECC8 */ _t14 = cpu->r[9] + 0xFFFFEFB0u;
|
|
/* 0250ECC8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0250ECCC */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 0250ECCC */ rbrew_write_f32(cpu->mem, _t15, cpu->f[8]);
|
|
/* 0250ECD0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0250ECD4 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 0250ECD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0250ECD8 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250ECD8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[29]);
|
|
/* 0250ECDC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250ECE0 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250ECE0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
/* 0250ECE4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250ECE8 */ _t19 = cpu->r[7] + 0xFFFFF2F8u;
|
|
/* 0250ECE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0250ECEC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0250ECF0 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0250ECF0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[9]);
|
|
/* 0250ECF4 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0250ECF8 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0250ECF8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 0250ECFC */ Gambit_fn_020FF2BC(cpu);
|
|
/* 0250ED00 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 0250ED04 */ cpu->r[3] = cpu->r[28];
|
|
/* 0250ED08 */ cpu->r[5] = cpu->r[4];
|
|
/* 0250ED0C */ Gambit_fn_02C69544(cpu);
|
|
/* 0250ED10 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0250ED14 */ _t22 = cpu->r[9] + 0x00005BCCu;
|
|
/* 0250ED14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250ED14 */ cpu->r[9] = _t22;
|
|
/* 0250ED18 */ _t23 = cpu->r[9] + 0x00000008u;
|
|
/* 0250ED18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0250ED1C */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 0250ED1C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 0250ED20 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0250ED20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250ED24 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250ED28 */ _t26 = cpu->r[9] + 0x00000004u;
|
|
/* 0250ED28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0250ED2C */ _t27 = cpu->r[12] + 0xFFFFF2C0u;
|
|
/* 0250ED2C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0250ED30 */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 0250ED30 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 0250ED34 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0250ED34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0250ED38 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 0250ED38 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0250ED3C */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 0250ED3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0250ED40 */ _t32 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250ED40 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[30]);
|
|
/* 0250ED44 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250ED44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0250ED48 */ cpu->r[5] = cpu->r[29];
|
|
/* 0250ED4C */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 0250ED4C */ rbrew_write32(cpu->mem, _t34, cpu->r[11]);
|
|
/* 0250ED50 */ cpu->r[6] = 0x00000004u;
|
|
/* 0250ED54 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 0250ED54 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 0250ED58 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 0250ED5C */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 0250ED5C */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 0250ED60 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0250ED64 */ _t37 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250ED64 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0250ED68 */ Gambit_fn_02943A4C(cpu);
|
|
/* 0250ED6C */ _t38 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250ED6C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0250ED70 */ _t39 = cpu->r[31] + 0x00000004u;
|
|
/* 0250ED70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0250ED74 */ cpu->f[12] = cpu->f[31] - cpu->f[9];
|
|
/* 0250ED78 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 0250ED78 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0250ED7C */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 0250ED7C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[31]);
|
|
/* 0250ED80 */ _t42 = cpu->r[27] + 0x00000000u;
|
|
/* 0250ED80 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0250ED84 */ cpu->f[13] = cpu->f[7] * cpu->f[12];
|
|
/* 0250ED88 */ _t43 = cpu->r[27] + 0x00000004u;
|
|
/* 0250ED88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0250ED8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250ED90 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250ED90 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[29]);
|
|
/* 0250ED94 */ cpu->f[8] = -fma(cpu->f[13], cpu->f[30], -(cpu->f[11]));
|
|
/* 0250ED98 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250ED98 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 0250ED9C */ cpu->f[13] = cpu->f[7] * cpu->f[9];
|
|
/* 0250EDA0 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 0250EDA0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[12]);
|
|
/* 0250EDA4 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EDA8 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EDA8 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[8]);
|
|
/* 0250EDAC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0250EDB0 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EDB0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 0250EDB4 */ Gambit_fn_020FF2BC(cpu);
|
|
/* 0250EDB8 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EDBC */ cpu->r[3] = cpu->r[28];
|
|
/* 0250EDC0 */ cpu->r[5] = cpu->r[4];
|
|
/* 0250EDC4 */ Gambit_fn_02C69544(cpu);
|
|
/* 0250EDC8 */ _t49 = cpu->r[30] + 0x000002C0u;
|
|
/* 0250EDC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 0250EDCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250EDD0 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EDD0 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0250EDD0 */ if (_t51) goto L_0250EE0C; else goto L_0250EDD4;
|
|
L_0250EDD4: ; // 0x250edd4
|
|
/* 0250EDD4 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0250EDD8 */ _t52 = cpu->r[7] + 0x00005BFCu;
|
|
/* 0250EDD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0250EDD8 */ cpu->r[7] = _t52;
|
|
/* 0250EDDC */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EDDC */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 0250EDE0 */ _t54 = cpu->r[7] + 0x00000004u;
|
|
/* 0250EDE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0250EDE4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0250EDE8 */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 0250EDE8 */ rbrew_write32(cpu->mem, _t55, cpu->r[11]);
|
|
/* 0250EDEC */ _t56 = cpu->r[7] + 0x00000008u;
|
|
/* 0250EDEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0250EDF0 */ cpu->r[5] = cpu->r[29];
|
|
/* 0250EDF4 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EDF8 */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250EDF8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[30]);
|
|
/* 0250EDFC */ cpu->r[6] = 0x00000004u;
|
|
/* 0250EE00 */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EE00 */ rbrew_write32(cpu->mem, _t58, cpu->r[12]);
|
|
/* 0250EE04 */ Gambit_fn_02943A4C(cpu);
|
|
/* 0250EE08 */ goto L_0250EE60;
|
|
L_0250EE0C: ; // 0x250ee0c
|
|
/* 0250EE0C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250EE10 */ _t59 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250EE10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0250EE14 */ _t60 = cpu->r[10] + 0xFFFFF308u;
|
|
/* 0250EE14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0250EE18 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0250EE1C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0250EE20 */ cpu->r[7] = cpu->r[7] + 0x00005BECu;
|
|
/* 0250EE24 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EE24 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0250EE24 */ if (_t62) goto L_0250EE30; else goto L_0250EE28;
|
|
L_0250EE28: ; // 0x250ee28
|
|
/* 0250EE28 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0250EE2C */ cpu->r[7] = cpu->r[7] + 0x00005C2Cu;
|
|
L_0250EE30: ; // 0x250ee30
|
|
/* 0250EE30 */ _t63 = cpu->r[7] + 0x00000000u;
|
|
/* 0250EE30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0250EE34 */ _t64 = cpu->r[1] + 0x00000020u;
|
|
/* 0250EE34 */ rbrew_write32(cpu->mem, _t64, cpu->r[10]);
|
|
/* 0250EE38 */ _t65 = cpu->r[7] + 0x00000004u;
|
|
/* 0250EE38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0250EE3C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0250EE40 */ cpu->r[5] = cpu->r[29];
|
|
/* 0250EE44 */ _t66 = cpu->r[1] + 0x00000024u;
|
|
/* 0250EE44 */ rbrew_write32(cpu->mem, _t66, cpu->r[11]);
|
|
/* 0250EE48 */ _t67 = cpu->r[7] + 0x00000008u;
|
|
/* 0250EE48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0250EE4C */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0250EE50 */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250EE50 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[30]);
|
|
/* 0250EE54 */ cpu->r[6] = 0x00000004u;
|
|
/* 0250EE58 */ _t69 = cpu->r[1] + 0x00000028u;
|
|
/* 0250EE58 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 0250EE5C */ Gambit_fn_02943A4C(cpu);
|
|
L_0250EE60: ; // 0x250ee60
|
|
/* 0250EE60 */ /* nop */
|
|
/* 0250EE64 */ _t70 = cpu->r[1] + 0x00000090u;
|
|
/* 0250EE64 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0250EE68 */ _t71 = cpu->r[1] + 0x000000A0u;
|
|
/* 0250EE68 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0250EE6C */ _t72 = cpu->r[1] + 0x00000088u;
|
|
/* 0250EE6C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 0250EE70 */ _t73 = cpu->r[1] + 0x000000B0u;
|
|
/* 0250EE70 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0250EE74 */ _t74 = cpu->r[1] + 0x00000098u;
|
|
/* 0250EE74 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0250EE78 */ _t75 = cpu->r[1] + 0x000000A8u;
|
|
/* 0250EE78 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0250EE7C */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250EE7C */ _t77 = _t76 & 0x00000001u;
|
|
/* 0250EE7C */ if (_t77) goto L_0250EE80; // else: addr-0 trap, fall-through
|
|
L_0250EE80: ; // 0x250ee80
|
|
/* 0250EE80 */ _t78 = cpu->r[1] + 0x000000BCu;
|
|
/* 0250EE80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0250EE84 */ cpu->lr = cpu->r[0];
|
|
/* 0250EE88 */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0250EE8C */ return;
|
|
}
|
|
|
|
// fn_0250EE90 @ 0x250ee90
|
|
void Gambit_fn_0250EE90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_0250EE90: ; // 0x250ee90
|
|
/* 0250EE90 */ cpu->r[0] = cpu->lr;
|
|
/* 0250EE94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250EE94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EE94 */ cpu->r[1] = _t0;
|
|
/* 0250EE98 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EE98 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0250EE9C */ cpu->r[30] = cpu->r[3];
|
|
/* 0250EEA0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EEA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0250EEA4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EEA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250EEA8 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250EEAC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0250EEB0 */ _t4 = cpu->r[10] + 0xFFFFFE84u;
|
|
/* 0250EEB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250EEB0 */ cpu->r[10] = _t4;
|
|
/* 0250EEB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EEB8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0250EEBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250EEC0 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 0250EEC4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EEC4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250EEC4 */ if (_t6) goto L_0250EEC8; else goto L_0250EEDC;
|
|
L_0250EEC8: ; // 0x250eec8
|
|
/* 0250EEC8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250EECC */ cpu->r[8] = 0x00000001u;
|
|
/* 0250EED0 */ cpu->r[0] = cpu->r[0] + 0xFFFFF0C8u;
|
|
/* 0250EED4 */ _t7 = cpu->r[10] + 0x00000000u;
|
|
/* 0250EED4 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 0250EED8 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 0250EED8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0250EEDC: ; // 0x250eedc
|
|
/* 0250EEDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250EEE0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EEE0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0250EEE0 */ if (_t10) goto L_0250EF00; else goto L_0250EEE4;
|
|
L_0250EEE4: ; // 0x250eee4
|
|
/* 0250EEE4 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0250EEE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250EEE8 */ _t12 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0250EEE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250EEEC */ cpu->ctr = cpu->r[12];
|
|
/* 0250EEF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EEF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250EEF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250EEFC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EEFC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0250EEFC */ if (_t14) goto L_0250EF00; else goto L_0250EF04;
|
|
L_0250EF00: ; // 0x250ef00
|
|
/* 0250EF00 */ cpu->r[31] = 0x00000000u;
|
|
L_0250EF04: ; // 0x250ef04
|
|
/* 0250EF04 */ _t15 = cpu->r[30] + 0x00000078u;
|
|
/* 0250EF04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0250EF08 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0250EF0C */ _t16 = cpu->r[31] + 0x000002FCu;
|
|
/* 0250EF0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0250EF10 */ _t17 = cpu->r[3] + 0x00001D14u;
|
|
/* 0250EF10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0250EF14 */ cpu->f[1] = cpu->f[0] - cpu->f[13];
|
|
/* 0250EF18 */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 0250EF18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0250EF1C */ cpu->f[2] = cpu->f[0] + cpu->f[13];
|
|
/* 0250EF20 */ _t19 = cpu->r[3] + 0x00005444u;
|
|
/* 0250EF20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0250EF24 */ cpu->f[4] = cpu->f[12] + cpu->f[13];
|
|
/* 0250EF28 */ _t20 = cpu->r[30] + 0x000002B0u;
|
|
/* 0250EF28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0250EF2C */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250EF30 */ cpu->f[3] = cpu->f[12] - cpu->f[13];
|
|
/* 0250EF34 */ _t21 = cpu->r[4] + 0x00006648u;
|
|
/* 0250EF34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250EF38 */ cpu->r[5] = cpu->r[30];
|
|
/* 0250EF3C */ Gambit_fn_02031B20(cpu);
|
|
/* 0250EF40 */ _t22 = cpu->r[30] + 0x000002ACu;
|
|
/* 0250EF40 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 0250EF44 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EF44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250EF48 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EF48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250EF4C */ cpu->lr = cpu->r[0];
|
|
/* 0250EF50 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EF50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250EF54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EF58 */ return;
|
|
}
|
|
|
|
// fn_0250EE94 @ 0x250ee94
|
|
void Gambit_fn_0250EE94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_0250EE94: ; // 0x250ee94
|
|
/* 0250EE94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250EE94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EE94 */ cpu->r[1] = _t0;
|
|
/* 0250EE98 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EE98 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0250EE9C */ cpu->r[30] = cpu->r[3];
|
|
/* 0250EEA0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EEA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0250EEA4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EEA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250EEA8 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250EEAC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0250EEB0 */ _t4 = cpu->r[10] + 0xFFFFFE84u;
|
|
/* 0250EEB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250EEB0 */ cpu->r[10] = _t4;
|
|
/* 0250EEB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EEB8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0250EEBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250EEC0 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 0250EEC4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EEC4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250EEC4 */ if (_t6) goto L_0250EEC8; else goto L_0250EEDC;
|
|
L_0250EEC8: ; // 0x250eec8
|
|
/* 0250EEC8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250EECC */ cpu->r[8] = 0x00000001u;
|
|
/* 0250EED0 */ cpu->r[0] = cpu->r[0] + 0xFFFFF0C8u;
|
|
/* 0250EED4 */ _t7 = cpu->r[10] + 0x00000000u;
|
|
/* 0250EED4 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 0250EED8 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 0250EED8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0250EEDC: ; // 0x250eedc
|
|
/* 0250EEDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250EEE0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EEE0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0250EEE0 */ if (_t10) goto L_0250EF00; else goto L_0250EEE4;
|
|
L_0250EEE4: ; // 0x250eee4
|
|
/* 0250EEE4 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0250EEE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250EEE8 */ _t12 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0250EEE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250EEEC */ cpu->ctr = cpu->r[12];
|
|
/* 0250EEF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250EEF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250EEF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250EEFC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250EEFC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0250EEFC */ if (_t14) goto L_0250EF00; else goto L_0250EF04;
|
|
L_0250EF00: ; // 0x250ef00
|
|
/* 0250EF00 */ cpu->r[31] = 0x00000000u;
|
|
L_0250EF04: ; // 0x250ef04
|
|
/* 0250EF04 */ _t15 = cpu->r[30] + 0x00000078u;
|
|
/* 0250EF04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0250EF08 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0250EF0C */ _t16 = cpu->r[31] + 0x000002FCu;
|
|
/* 0250EF0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0250EF10 */ _t17 = cpu->r[3] + 0x00001D14u;
|
|
/* 0250EF10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0250EF14 */ cpu->f[1] = cpu->f[0] - cpu->f[13];
|
|
/* 0250EF18 */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 0250EF18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0250EF1C */ cpu->f[2] = cpu->f[0] + cpu->f[13];
|
|
/* 0250EF20 */ _t19 = cpu->r[3] + 0x00005444u;
|
|
/* 0250EF20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0250EF24 */ cpu->f[4] = cpu->f[12] + cpu->f[13];
|
|
/* 0250EF28 */ _t20 = cpu->r[30] + 0x000002B0u;
|
|
/* 0250EF28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0250EF2C */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250EF30 */ cpu->f[3] = cpu->f[12] - cpu->f[13];
|
|
/* 0250EF34 */ _t21 = cpu->r[4] + 0x00006648u;
|
|
/* 0250EF34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250EF38 */ cpu->r[5] = cpu->r[30];
|
|
/* 0250EF3C */ Gambit_fn_02031B20(cpu);
|
|
/* 0250EF40 */ _t22 = cpu->r[30] + 0x000002ACu;
|
|
/* 0250EF40 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 0250EF44 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EF44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250EF48 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0250EF48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250EF4C */ cpu->lr = cpu->r[0];
|
|
/* 0250EF50 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EF50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250EF54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EF58 */ return;
|
|
}
|
|
|
|
// fn_0250EF5C @ 0x250ef5c
|
|
void Gambit_fn_0250EF5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0250EF5C: ; // 0x250ef5c
|
|
/* 0250EF5C */ cpu->r[0] = cpu->lr;
|
|
/* 0250EF60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250EF60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EF60 */ cpu->r[1] = _t0;
|
|
/* 0250EF64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EF64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250EF68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EF6C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0250EF70 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EF70 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250EF74 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 0250EF74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250EF78 */ cpu->r[4] = cpu->r[31] + 0x000002ACu;
|
|
/* 0250EF7C */ Gambit_fn_02031BD0(cpu);
|
|
/* 0250EF80 */ cpu->r[0] = 0x00000000u;
|
|
/* 0250EF84 */ _t4 = cpu->r[31] + 0x000002ACu;
|
|
/* 0250EF84 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0250EF88 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EF88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250EF8C */ cpu->lr = cpu->r[0];
|
|
/* 0250EF90 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EF90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250EF94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EF98 */ return;
|
|
}
|
|
|
|
// fn_0250EF60 @ 0x250ef60
|
|
void Gambit_fn_0250EF60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0250EF60: ; // 0x250ef60
|
|
/* 0250EF60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250EF60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EF60 */ cpu->r[1] = _t0;
|
|
/* 0250EF64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EF64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250EF68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EF6C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0250EF70 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EF70 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250EF74 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 0250EF74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250EF78 */ cpu->r[4] = cpu->r[31] + 0x000002ACu;
|
|
/* 0250EF7C */ Gambit_fn_02031BD0(cpu);
|
|
/* 0250EF80 */ cpu->r[0] = 0x00000000u;
|
|
/* 0250EF84 */ _t4 = cpu->r[31] + 0x000002ACu;
|
|
/* 0250EF84 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0250EF88 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0250EF88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0250EF8C */ cpu->lr = cpu->r[0];
|
|
/* 0250EF90 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250EF90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250EF94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250EF98 */ return;
|
|
}
|
|
|
|
// fn_0250EF9C @ 0x250ef9c
|
|
void Gambit_fn_0250EF9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132;
|
|
|
|
L_0250EF9C: ; // 0x250ef9c
|
|
/* 0250EF9C */ cpu->r[0] = cpu->lr;
|
|
/* 0250EFA0 */ _t0 = cpu->r[1] + 0xFFFFFC40u;
|
|
/* 0250EFA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EFA0 */ cpu->r[1] = _t0;
|
|
/* 0250EFA4 */ _t1 = cpu->r[1] + 0x000003A0u;
|
|
/* 0250EFA4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0250EFA8 */ /* nop */
|
|
/* 0250EFAC */ _t2 = cpu->r[1] + 0x000003B0u;
|
|
/* 0250EFAC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250EFB0 */ /* nop */
|
|
/* 0250EFB4 */ _t3 = cpu->r[1] + 0x000003A8u;
|
|
/* 0250EFB4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0250EFB8 */ _t4 = cpu->r[1] + 0x000003B8u;
|
|
/* 0250EFB8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0250EFBC */ _t5 = cpu->r[1] + 0x000003C4u;
|
|
/* 0250EFBC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0250EFC0 */ _t6 = cpu->r[1] + 0x00000394u;
|
|
/* 0250EFC0 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 0250EFC4 */ _t7 = cpu->r[1] + 0x00000398u;
|
|
/* 0250EFC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 0250EFC8 */ _t8 = cpu->r[1] + 0x0000039Cu;
|
|
/* 0250EFC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0250EFCC */ _t9 = cpu->r[3] + 0x000002C0u;
|
|
/* 0250EFCC */ cpu->r[30] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0250EFD0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0250EFD4 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250EFD8 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250EFDC */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EFE0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0250EFE4 */ _t10 = cpu->r[8] + 0xFFFFEFB0u;
|
|
/* 0250EFE4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0250EFE8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250EFEC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250EFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250EFF4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0250EFF8 */ _t11 = cpu->r[7] + 0xFFFFF2F8u;
|
|
/* 0250EFF8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0250EFFC */ cpu->r[5] = cpu->r[5] + 0xFFFFF0C8u;
|
|
/* 0250F000 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 0250F004 */ _t12 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 0250F004 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250F004 */ cpu->r[12] = _t12;
|
|
/* 0250F008 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F008 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0250F008 */ if (_t14) goto L_0250F130; else goto L_0250F00C;
|
|
L_0250F00C: ; // 0x250f00c
|
|
/* 0250F00C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250F010 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F010 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0250F010 */ if (_t16) goto L_0250F014; else goto L_0250F020;
|
|
L_0250F014: ; // 0x250f014
|
|
/* 0250F014 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 0250F014 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 0250F018 */ cpu->r[9] = 0x00000001u;
|
|
/* 0250F01C */ _t18 = cpu->r[12] + 0x00000000u;
|
|
/* 0250F01C */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_0250F020: ; // 0x250f020
|
|
/* 0250F020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250F024 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F024 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250F024 */ if (_t20) goto L_0250F044; else goto L_0250F028;
|
|
L_0250F028: ; // 0x250f028
|
|
/* 0250F028 */ _t21 = cpu->r[31] + 0x00000000u;
|
|
/* 0250F028 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250F02C */ _t22 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0250F02C */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250F030 */ cpu->ctr = cpu->r[11];
|
|
/* 0250F034 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F038 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F03C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F040 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F040 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0250F040 */ if (_t24) goto L_0250F044; else goto L_0250F048;
|
|
L_0250F044: ; // 0x250f044
|
|
/* 0250F044 */ cpu->r[31] = 0x00000000u;
|
|
L_0250F048: ; // 0x250f048
|
|
/* 0250F048 */ _t25 = cpu->r[31] + 0x0000041Cu;
|
|
/* 0250F048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250F04C */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F050 */ _t26 = cpu->r[6] + 0xFFFFF310u;
|
|
/* 0250F050 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 0250F054 */ cpu->r[0] = 0x43300000u;
|
|
/* 0250F058 */ cpu->r[5] = cpu->r[12] ^ 0x80000000u;
|
|
/* 0250F05C */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F05C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0250F060 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F060 */ rbrew_write32(cpu->mem, _t28, cpu->r[5]);
|
|
/* 0250F064 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F064 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 0250F068 */ cpu->f[13] = cpu->f[11] - cpu->f[13];
|
|
/* 0250F06C */ cpu->f[12] = (double)(float)cpu->f[13];
|
|
/* 0250F070 */ cpu->f[0] = cpu->f[31] / cpu->f[12];
|
|
/* 0250F074 */ _t30 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F074 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250F078 */ cpu->f[12] = cpu->f[11] - cpu->f[0];
|
|
/* 0250F07C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[12]);
|
|
/* 0250F080 */ cpu->f[0] = cpu->f[12];
|
|
/* 0250F084 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F084 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0250F084 */ if (_t32) goto L_0250F088; else goto L_0250F09C;
|
|
L_0250F088: ; // 0x250f088
|
|
/* 0250F088 */ cpu->f[12] = cpu->f[30];
|
|
/* 0250F08C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 0250F090 */ _t33 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F090 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 0250F094 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F094 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0250F094 */ if (_t35) goto L_0250F0B0; else goto L_0250F098;
|
|
L_0250F098: ; // 0x250f098
|
|
/* 0250F098 */ goto L_0250F22C;
|
|
L_0250F09C: ; // 0x250f09c
|
|
/* 0250F09C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[30]);
|
|
/* 0250F0A0 */ _t36 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F0A0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0250F0A4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F0A4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250F0A4 */ if (_t38) goto L_0250F0A8; else goto L_0250F22C;
|
|
L_0250F0A8: ; // 0x250f0a8
|
|
/* 0250F0A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 0250F0AC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F0AC */ _t40 = _t39 & 0x00000001u;
|
|
/* 0250F0AC */ if (_t40) goto L_0250F0B0; else goto L_0250F22C;
|
|
L_0250F0B0: ; // 0x250f0b0
|
|
/* 0250F0B0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0250F0B4 */ cpu->r[12] = 0x10110000u;
|
|
/* 0250F0B8 */ _t41 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F0B8 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[6]);
|
|
/* 0250F0BC */ _t42 = cpu->r[12] + 0x00007399u;
|
|
/* 0250F0BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t42);
|
|
/* 0250F0C0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F0C4 */ _t43 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F0C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0250F0C8 */ _t44 = cpu->r[9] + 0xFFFFF318u;
|
|
/* 0250F0C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0250F0CC */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0250F0D0 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F0D4 */ _t45 = cpu->r[1] + 0x00000127u;
|
|
/* 0250F0D4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[12]);
|
|
/* 0250F0D8 */ cpu->r[7] = 0x00000100u;
|
|
/* 0250F0DC */ cpu->f[13] = cpu->f[12] * cpu->f[11];
|
|
/* 0250F0E0 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F0E0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0250F0E4 */ cpu->r[8] = cpu->r[8] + 0xFFFFF040u;
|
|
/* 0250F0E8 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F0E8 */ rbrew_write32(cpu->mem, _t47, cpu->r[6]);
|
|
/* 0250F0EC */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F0F0 */ cpu->f[1] = cpu->f[13];
|
|
/* 0250F0F4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F0F4 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[12]);
|
|
/* 0250F0F8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F0FC */ cpu->r[4] = cpu->r[4] + 0xFFFFF31Cu;
|
|
/* 0250F100 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F100 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 0250F104 */ _t50 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F104 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0250F104 */ if (_t51) goto L_0250F108; // else: addr-0 trap, fall-through
|
|
L_0250F108: ; // 0x250f108
|
|
/* 0250F108 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0250F10C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F110 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0250F114 */ cpu->r[4] = 0x00000111u;
|
|
/* 0250F118 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F11C */ Gambit_fn_027FF658(cpu);
|
|
/* 0250F120 */ _t52 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F120 */ cpu->r[0] = rbrew_read8(cpu->mem, _t52);
|
|
/* 0250F124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F128 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F128 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0250F128 */ if (_t54) goto L_0250F320; else goto L_0250F12C;
|
|
L_0250F12C: ; // 0x250f12c
|
|
/* 0250F12C */ goto L_0250F29C;
|
|
L_0250F130: ; // 0x250f130
|
|
/* 0250F130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250F134 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F134 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0250F134 */ if (_t56) goto L_0250F138; else goto L_0250F144;
|
|
L_0250F138: ; // 0x250f138
|
|
/* 0250F138 */ _t57 = cpu->r[4] + 0x00000000u;
|
|
/* 0250F138 */ rbrew_write32(cpu->mem, _t57, cpu->r[5]);
|
|
/* 0250F13C */ cpu->r[8] = 0x00000001u;
|
|
/* 0250F140 */ _t58 = cpu->r[12] + 0x00000000u;
|
|
/* 0250F140 */ rbrew_write32(cpu->mem, _t58, cpu->r[8]);
|
|
L_0250F144: ; // 0x250f144
|
|
/* 0250F144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250F148 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F148 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0250F148 */ if (_t60) goto L_0250F168; else goto L_0250F14C;
|
|
L_0250F14C: ; // 0x250f14c
|
|
/* 0250F14C */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 0250F14C */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0250F150 */ _t62 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0250F150 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0250F154 */ cpu->ctr = cpu->r[10];
|
|
/* 0250F158 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F15C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F164 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F164 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0250F164 */ if (_t64) goto L_0250F168; else goto L_0250F16C;
|
|
L_0250F168: ; // 0x250f168
|
|
/* 0250F168 */ cpu->r[31] = 0x00000000u;
|
|
L_0250F16C: ; // 0x250f16c
|
|
/* 0250F16C */ _t65 = cpu->r[31] + 0x000003BCu;
|
|
/* 0250F16C */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0250F170 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250F174 */ _t66 = cpu->r[10] + 0xFFFFF310u;
|
|
/* 0250F174 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0250F178 */ cpu->r[12] = 0x43300000u;
|
|
/* 0250F17C */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0250F180 */ _t67 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F180 */ rbrew_write32(cpu->mem, _t67, cpu->r[12]);
|
|
/* 0250F184 */ _t68 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F184 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 0250F188 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F188 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 0250F18C */ cpu->f[13] = cpu->f[11] - cpu->f[12];
|
|
/* 0250F190 */ cpu->f[11] = (double)(float)cpu->f[13];
|
|
/* 0250F194 */ cpu->f[12] = cpu->f[31] / cpu->f[11];
|
|
/* 0250F198 */ _t70 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F198 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0250F19C */ cpu->f[12] = cpu->f[0] - cpu->f[12];
|
|
/* 0250F1A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[12]);
|
|
/* 0250F1A4 */ cpu->f[0] = cpu->f[12];
|
|
/* 0250F1A8 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F1A8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0250F1A8 */ if (_t72) goto L_0250F224; else goto L_0250F1AC;
|
|
L_0250F1AC: ; // 0x250f1ac
|
|
/* 0250F1AC */ cpu->r[12] = 0x10110000u;
|
|
/* 0250F1B0 */ _t73 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F1B0 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 0250F1B4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F1B8 */ _t74 = cpu->r[12] + 0x00007399u;
|
|
/* 0250F1B8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0250F1BC */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0250F1C0 */ _t75 = cpu->r[9] + 0xFFFFF318u;
|
|
/* 0250F1C0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0250F1C4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F1C8 */ _t76 = cpu->r[1] + 0x00000127u;
|
|
/* 0250F1C8 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[12]);
|
|
/* 0250F1CC */ cpu->r[7] = 0x00000100u;
|
|
/* 0250F1D0 */ cpu->f[13] = cpu->f[12] * cpu->f[11];
|
|
/* 0250F1D4 */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F1D4 */ rbrew_write32(cpu->mem, _t77, cpu->r[6]);
|
|
/* 0250F1D8 */ cpu->r[8] = cpu->r[8] + 0xFFFFF040u;
|
|
/* 0250F1DC */ _t78 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F1DC */ rbrew_write32(cpu->mem, _t78, cpu->r[7]);
|
|
/* 0250F1E0 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F1E4 */ cpu->f[1] = cpu->f[13];
|
|
/* 0250F1E8 */ _t79 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F1E8 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 0250F1EC */ cpu->r[4] = cpu->r[4] + 0xFFFFF31Cu;
|
|
/* 0250F1F0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F1F4 */ _t80 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F1F4 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[12]);
|
|
/* 0250F1F8 */ _t81 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F1F8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0250F1F8 */ if (_t82) goto L_0250F1FC; // else: addr-0 trap, fall-through
|
|
L_0250F1FC: ; // 0x250f1fc
|
|
/* 0250F1FC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0250F200 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F204 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0250F208 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F20C */ cpu->r[4] = 0x00000111u;
|
|
/* 0250F210 */ Gambit_fn_027FF658(cpu);
|
|
/* 0250F214 */ _t83 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F214 */ cpu->r[0] = rbrew_read8(cpu->mem, _t83);
|
|
/* 0250F218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F21C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F21C */ _t85 = _t84 & 0x00000001u;
|
|
/* 0250F21C */ if (_t85) goto L_0250F320; else goto L_0250F220;
|
|
L_0250F220: ; // 0x250f220
|
|
/* 0250F220 */ goto L_0250F29C;
|
|
L_0250F224: ; // 0x250f224
|
|
/* 0250F224 */ cpu->f[12] = cpu->f[30];
|
|
/* 0250F228 */ _t86 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F228 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
L_0250F22C: ; // 0x250f22c
|
|
/* 0250F22C */ cpu->r[12] = 0x10110000u;
|
|
/* 0250F230 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F234 */ _t87 = cpu->r[12] + 0x00007399u;
|
|
/* 0250F234 */ cpu->r[12] = rbrew_read8(cpu->mem, _t87);
|
|
/* 0250F238 */ _t88 = cpu->r[9] + 0xFFFFF318u;
|
|
/* 0250F238 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0250F23C */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0250F240 */ cpu->r[7] = 0x00000100u;
|
|
/* 0250F244 */ _t89 = cpu->r[1] + 0x00000127u;
|
|
/* 0250F244 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[12]);
|
|
/* 0250F248 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F24C */ cpu->f[13] = cpu->f[12] * cpu->f[11];
|
|
/* 0250F250 */ _t90 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F250 */ rbrew_write32(cpu->mem, _t90, cpu->r[7]);
|
|
/* 0250F254 */ cpu->r[8] = cpu->r[8] + 0xFFFFF040u;
|
|
/* 0250F258 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F258 */ rbrew_write32(cpu->mem, _t91, cpu->r[6]);
|
|
/* 0250F25C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F260 */ cpu->f[1] = cpu->f[13];
|
|
/* 0250F264 */ _t92 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F264 */ rbrew_write32(cpu->mem, _t92, cpu->r[8]);
|
|
/* 0250F268 */ cpu->r[4] = cpu->r[4] + 0xFFFFF31Cu;
|
|
/* 0250F26C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F270 */ _t93 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F270 */ rbrew_write8(cpu->mem, _t93, (uint8_t)cpu->r[12]);
|
|
/* 0250F274 */ _t94 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F274 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0250F274 */ if (_t95) goto L_0250F278; // else: addr-0 trap, fall-through
|
|
L_0250F278: ; // 0x250f278
|
|
/* 0250F278 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0250F27C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F280 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0250F284 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F288 */ cpu->r[4] = 0x00000111u;
|
|
/* 0250F28C */ Gambit_fn_027FF658(cpu);
|
|
/* 0250F290 */ _t96 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F290 */ cpu->r[0] = rbrew_read8(cpu->mem, _t96);
|
|
/* 0250F294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F298 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F298 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0250F298 */ if (_t98) goto L_0250F320; else goto L_0250F29C;
|
|
L_0250F29C: ; // 0x250f29c
|
|
/* 0250F29C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F2A0 */ _t99 = cpu->r[5] + 0x00005C68u;
|
|
/* 0250F2A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0250F2A4 */ cpu->r[0] = 0x00000080u;
|
|
/* 0250F2A8 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2AC */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F2AC */ rbrew_write32(cpu->mem, _t100, cpu->r[10]);
|
|
/* 0250F2B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F2B4 */ _t101 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0250F2B4 */ rbrew_write8(cpu->mem, _t101, (uint8_t)cpu->r[0]);
|
|
/* 0250F2B8 */ Gambit_fn_027FF610(cpu);
|
|
/* 0250F2BC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250F2C0 */ _t102 = cpu->r[11] + 0xFFFFF2C0u;
|
|
/* 0250F2C0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0250F2C4 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2C8 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 0250F2CC */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250F2D4 */ Gambit_fn_027FF668(cpu);
|
|
/* 0250F2D8 */ _t103 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F2D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0250F2DC */ cpu->r[5] = 0x00000040u;
|
|
/* 0250F2E0 */ _t104 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F2E0 */ rbrew_write32(cpu->mem, _t104, cpu->r[5]);
|
|
/* 0250F2E4 */ _t105 = cpu->r[7] + 0x00000014u;
|
|
/* 0250F2E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0250F2E8 */ cpu->ctr = cpu->r[8];
|
|
/* 0250F2EC */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F2F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F2F4 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2F8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0250F2FC */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F2FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0250F300 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F304 */ cpu->r[6] = 0x00000001u;
|
|
/* 0250F308 */ _t107 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F308 */ cpu->r[7] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0250F30C */ cpu->r[5] = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 0250F310 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0250F314 */ _t108 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F314 */ rbrew_write32(cpu->mem, _t108, cpu->r[0]);
|
|
/* 0250F318 */ Gambit_fn_027FF75C(cpu);
|
|
/* 0250F31C */ goto L_0250F3C0;
|
|
L_0250F320: ; // 0x250f320
|
|
/* 0250F320 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F324 */ _t109 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F324 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0250F328 */ _t110 = cpu->r[6] + 0xFFFFF308u;
|
|
/* 0250F328 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0250F32C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F330 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0250F334 */ cpu->r[5] = cpu->r[5] + 0x00005C64u;
|
|
/* 0250F338 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F338 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0250F338 */ if (_t112) goto L_0250F344; else goto L_0250F33C;
|
|
L_0250F33C: ; // 0x250f33c
|
|
/* 0250F33C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F340 */ cpu->r[5] = cpu->r[5] + 0x00005C74u;
|
|
L_0250F344: ; // 0x250f344
|
|
/* 0250F344 */ _t113 = cpu->r[5] + 0x00000000u;
|
|
/* 0250F344 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0250F348 */ cpu->r[0] = 0x00000080u;
|
|
/* 0250F34C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F350 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F350 */ rbrew_write32(cpu->mem, _t114, cpu->r[10]);
|
|
/* 0250F354 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F358 */ _t115 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0250F358 */ rbrew_write8(cpu->mem, _t115, (uint8_t)cpu->r[0]);
|
|
/* 0250F35C */ Gambit_fn_027FF610(cpu);
|
|
/* 0250F360 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250F364 */ _t116 = cpu->r[11] + 0xFFFFF2C0u;
|
|
/* 0250F364 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0250F368 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F36C */ Gambit_fn_027FF5D4(cpu);
|
|
/* 0250F370 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F374 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250F378 */ Gambit_fn_027FF668(cpu);
|
|
/* 0250F37C */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F37C */ cpu->r[7] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0250F380 */ cpu->r[5] = 0x00000040u;
|
|
/* 0250F384 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F384 */ rbrew_write32(cpu->mem, _t118, cpu->r[5]);
|
|
/* 0250F388 */ _t119 = cpu->r[7] + 0x00000014u;
|
|
/* 0250F388 */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0250F38C */ cpu->ctr = cpu->r[8];
|
|
/* 0250F390 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F394 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F398 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0250F39C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F3A0 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F3A4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0250F3A8 */ _t121 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F3A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0250F3AC */ cpu->r[5] = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 0250F3B0 */ cpu->r[6] = 0x00000001u;
|
|
/* 0250F3B4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0250F3B8 */ _t122 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F3B8 */ rbrew_write32(cpu->mem, _t122, cpu->r[0]);
|
|
/* 0250F3BC */ Gambit_fn_027FF75C(cpu);
|
|
L_0250F3C0: ; // 0x250f3c0
|
|
/* 0250F3C0 */ _t123 = cpu->r[1] + 0x00000394u;
|
|
/* 0250F3C0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0250F3C4 */ _t124 = cpu->r[1] + 0x000003B8u;
|
|
/* 0250F3C4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0250F3C8 */ _t125 = cpu->r[1] + 0x000003A8u;
|
|
/* 0250F3C8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 0250F3CC */ _t126 = cpu->r[1] + 0x000003B0u;
|
|
/* 0250F3CC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 0250F3D0 */ _t127 = cpu->r[1] + 0x000003A0u;
|
|
/* 0250F3D0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t127);
|
|
/* 0250F3D4 */ _t128 = cpu->r[1] + 0x0000039Cu;
|
|
/* 0250F3D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0250F3D8 */ _t129 = cpu->r[1] + 0x00000398u;
|
|
/* 0250F3D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0250F3DC */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F3DC */ _t131 = _t130 & 0x00000001u;
|
|
/* 0250F3DC */ if (_t131) goto L_0250F3E0; // else: addr-0 trap, fall-through
|
|
L_0250F3E0: ; // 0x250f3e0
|
|
/* 0250F3E0 */ _t132 = cpu->r[1] + 0x000003C4u;
|
|
/* 0250F3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0250F3E4 */ cpu->lr = cpu->r[0];
|
|
/* 0250F3E8 */ cpu->r[1] = cpu->r[1] + 0x000003C0u;
|
|
/* 0250F3EC */ return;
|
|
}
|
|
|
|
// fn_0250EFA0 @ 0x250efa0
|
|
void Gambit_fn_0250EFA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132;
|
|
|
|
L_0250EFA0: ; // 0x250efa0
|
|
/* 0250EFA0 */ _t0 = cpu->r[1] + 0xFFFFFC40u;
|
|
/* 0250EFA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250EFA0 */ cpu->r[1] = _t0;
|
|
/* 0250EFA4 */ _t1 = cpu->r[1] + 0x000003A0u;
|
|
/* 0250EFA4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0250EFA8 */ /* nop */
|
|
/* 0250EFAC */ _t2 = cpu->r[1] + 0x000003B0u;
|
|
/* 0250EFAC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250EFB0 */ /* nop */
|
|
/* 0250EFB4 */ _t3 = cpu->r[1] + 0x000003A8u;
|
|
/* 0250EFB4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0250EFB8 */ _t4 = cpu->r[1] + 0x000003B8u;
|
|
/* 0250EFB8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0250EFBC */ _t5 = cpu->r[1] + 0x000003C4u;
|
|
/* 0250EFBC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0250EFC0 */ _t6 = cpu->r[1] + 0x00000394u;
|
|
/* 0250EFC0 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 0250EFC4 */ _t7 = cpu->r[1] + 0x00000398u;
|
|
/* 0250EFC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 0250EFC8 */ _t8 = cpu->r[1] + 0x0000039Cu;
|
|
/* 0250EFC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0250EFCC */ _t9 = cpu->r[3] + 0x000002C0u;
|
|
/* 0250EFCC */ cpu->r[30] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0250EFD0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0250EFD4 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250EFD8 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250EFDC */ cpu->r[31] = cpu->r[3];
|
|
/* 0250EFE0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0250EFE4 */ _t10 = cpu->r[8] + 0xFFFFEFB0u;
|
|
/* 0250EFE4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0250EFE8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250EFEC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250EFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250EFF4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0250EFF8 */ _t11 = cpu->r[7] + 0xFFFFF2F8u;
|
|
/* 0250EFF8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0250EFFC */ cpu->r[5] = cpu->r[5] + 0xFFFFF0C8u;
|
|
/* 0250F000 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 0250F004 */ _t12 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 0250F004 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250F004 */ cpu->r[12] = _t12;
|
|
/* 0250F008 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F008 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0250F008 */ if (_t14) goto L_0250F130; else goto L_0250F00C;
|
|
L_0250F00C: ; // 0x250f00c
|
|
/* 0250F00C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250F010 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F010 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0250F010 */ if (_t16) goto L_0250F014; else goto L_0250F020;
|
|
L_0250F014: ; // 0x250f014
|
|
/* 0250F014 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 0250F014 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 0250F018 */ cpu->r[9] = 0x00000001u;
|
|
/* 0250F01C */ _t18 = cpu->r[12] + 0x00000000u;
|
|
/* 0250F01C */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_0250F020: ; // 0x250f020
|
|
/* 0250F020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250F024 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F024 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250F024 */ if (_t20) goto L_0250F044; else goto L_0250F028;
|
|
L_0250F028: ; // 0x250f028
|
|
/* 0250F028 */ _t21 = cpu->r[31] + 0x00000000u;
|
|
/* 0250F028 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250F02C */ _t22 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0250F02C */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250F030 */ cpu->ctr = cpu->r[11];
|
|
/* 0250F034 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F038 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F03C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F040 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F040 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0250F040 */ if (_t24) goto L_0250F044; else goto L_0250F048;
|
|
L_0250F044: ; // 0x250f044
|
|
/* 0250F044 */ cpu->r[31] = 0x00000000u;
|
|
L_0250F048: ; // 0x250f048
|
|
/* 0250F048 */ _t25 = cpu->r[31] + 0x0000041Cu;
|
|
/* 0250F048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250F04C */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F050 */ _t26 = cpu->r[6] + 0xFFFFF310u;
|
|
/* 0250F050 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 0250F054 */ cpu->r[0] = 0x43300000u;
|
|
/* 0250F058 */ cpu->r[5] = cpu->r[12] ^ 0x80000000u;
|
|
/* 0250F05C */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F05C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0250F060 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F060 */ rbrew_write32(cpu->mem, _t28, cpu->r[5]);
|
|
/* 0250F064 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F064 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 0250F068 */ cpu->f[13] = cpu->f[11] - cpu->f[13];
|
|
/* 0250F06C */ cpu->f[12] = (double)(float)cpu->f[13];
|
|
/* 0250F070 */ cpu->f[0] = cpu->f[31] / cpu->f[12];
|
|
/* 0250F074 */ _t30 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F074 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0250F078 */ cpu->f[12] = cpu->f[11] - cpu->f[0];
|
|
/* 0250F07C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[12]);
|
|
/* 0250F080 */ cpu->f[0] = cpu->f[12];
|
|
/* 0250F084 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F084 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0250F084 */ if (_t32) goto L_0250F088; else goto L_0250F09C;
|
|
L_0250F088: ; // 0x250f088
|
|
/* 0250F088 */ cpu->f[12] = cpu->f[30];
|
|
/* 0250F08C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 0250F090 */ _t33 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F090 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 0250F094 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F094 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0250F094 */ if (_t35) goto L_0250F0B0; else goto L_0250F098;
|
|
L_0250F098: ; // 0x250f098
|
|
/* 0250F098 */ goto L_0250F22C;
|
|
L_0250F09C: ; // 0x250f09c
|
|
/* 0250F09C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[30]);
|
|
/* 0250F0A0 */ _t36 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F0A0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0250F0A4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F0A4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250F0A4 */ if (_t38) goto L_0250F0A8; else goto L_0250F22C;
|
|
L_0250F0A8: ; // 0x250f0a8
|
|
/* 0250F0A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 0250F0AC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F0AC */ _t40 = _t39 & 0x00000001u;
|
|
/* 0250F0AC */ if (_t40) goto L_0250F0B0; else goto L_0250F22C;
|
|
L_0250F0B0: ; // 0x250f0b0
|
|
/* 0250F0B0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0250F0B4 */ cpu->r[12] = 0x10110000u;
|
|
/* 0250F0B8 */ _t41 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F0B8 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[6]);
|
|
/* 0250F0BC */ _t42 = cpu->r[12] + 0x00007399u;
|
|
/* 0250F0BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t42);
|
|
/* 0250F0C0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F0C4 */ _t43 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F0C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0250F0C8 */ _t44 = cpu->r[9] + 0xFFFFF318u;
|
|
/* 0250F0C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0250F0CC */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0250F0D0 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F0D4 */ _t45 = cpu->r[1] + 0x00000127u;
|
|
/* 0250F0D4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[12]);
|
|
/* 0250F0D8 */ cpu->r[7] = 0x00000100u;
|
|
/* 0250F0DC */ cpu->f[13] = cpu->f[12] * cpu->f[11];
|
|
/* 0250F0E0 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F0E0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0250F0E4 */ cpu->r[8] = cpu->r[8] + 0xFFFFF040u;
|
|
/* 0250F0E8 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F0E8 */ rbrew_write32(cpu->mem, _t47, cpu->r[6]);
|
|
/* 0250F0EC */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F0F0 */ cpu->f[1] = cpu->f[13];
|
|
/* 0250F0F4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F0F4 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[12]);
|
|
/* 0250F0F8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F0FC */ cpu->r[4] = cpu->r[4] + 0xFFFFF31Cu;
|
|
/* 0250F100 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F100 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 0250F104 */ _t50 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F104 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0250F104 */ if (_t51) goto L_0250F108; // else: addr-0 trap, fall-through
|
|
L_0250F108: ; // 0x250f108
|
|
/* 0250F108 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0250F10C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F110 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0250F114 */ cpu->r[4] = 0x00000111u;
|
|
/* 0250F118 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F11C */ Gambit_fn_027FF658(cpu);
|
|
/* 0250F120 */ _t52 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F120 */ cpu->r[0] = rbrew_read8(cpu->mem, _t52);
|
|
/* 0250F124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F128 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F128 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0250F128 */ if (_t54) goto L_0250F320; else goto L_0250F12C;
|
|
L_0250F12C: ; // 0x250f12c
|
|
/* 0250F12C */ goto L_0250F29C;
|
|
L_0250F130: ; // 0x250f130
|
|
/* 0250F130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250F134 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F134 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0250F134 */ if (_t56) goto L_0250F138; else goto L_0250F144;
|
|
L_0250F138: ; // 0x250f138
|
|
/* 0250F138 */ _t57 = cpu->r[4] + 0x00000000u;
|
|
/* 0250F138 */ rbrew_write32(cpu->mem, _t57, cpu->r[5]);
|
|
/* 0250F13C */ cpu->r[8] = 0x00000001u;
|
|
/* 0250F140 */ _t58 = cpu->r[12] + 0x00000000u;
|
|
/* 0250F140 */ rbrew_write32(cpu->mem, _t58, cpu->r[8]);
|
|
L_0250F144: ; // 0x250f144
|
|
/* 0250F144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250F148 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F148 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0250F148 */ if (_t60) goto L_0250F168; else goto L_0250F14C;
|
|
L_0250F14C: ; // 0x250f14c
|
|
/* 0250F14C */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 0250F14C */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0250F150 */ _t62 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0250F150 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0250F154 */ cpu->ctr = cpu->r[10];
|
|
/* 0250F158 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F15C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F164 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F164 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0250F164 */ if (_t64) goto L_0250F168; else goto L_0250F16C;
|
|
L_0250F168: ; // 0x250f168
|
|
/* 0250F168 */ cpu->r[31] = 0x00000000u;
|
|
L_0250F16C: ; // 0x250f16c
|
|
/* 0250F16C */ _t65 = cpu->r[31] + 0x000003BCu;
|
|
/* 0250F16C */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0250F170 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250F174 */ _t66 = cpu->r[10] + 0xFFFFF310u;
|
|
/* 0250F174 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0250F178 */ cpu->r[12] = 0x43300000u;
|
|
/* 0250F17C */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0250F180 */ _t67 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F180 */ rbrew_write32(cpu->mem, _t67, cpu->r[12]);
|
|
/* 0250F184 */ _t68 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F184 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 0250F188 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F188 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 0250F18C */ cpu->f[13] = cpu->f[11] - cpu->f[12];
|
|
/* 0250F190 */ cpu->f[11] = (double)(float)cpu->f[13];
|
|
/* 0250F194 */ cpu->f[12] = cpu->f[31] / cpu->f[11];
|
|
/* 0250F198 */ _t70 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F198 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0250F19C */ cpu->f[12] = cpu->f[0] - cpu->f[12];
|
|
/* 0250F1A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[12]);
|
|
/* 0250F1A4 */ cpu->f[0] = cpu->f[12];
|
|
/* 0250F1A8 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0250F1A8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0250F1A8 */ if (_t72) goto L_0250F224; else goto L_0250F1AC;
|
|
L_0250F1AC: ; // 0x250f1ac
|
|
/* 0250F1AC */ cpu->r[12] = 0x10110000u;
|
|
/* 0250F1B0 */ _t73 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F1B0 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 0250F1B4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F1B8 */ _t74 = cpu->r[12] + 0x00007399u;
|
|
/* 0250F1B8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0250F1BC */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0250F1C0 */ _t75 = cpu->r[9] + 0xFFFFF318u;
|
|
/* 0250F1C0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0250F1C4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F1C8 */ _t76 = cpu->r[1] + 0x00000127u;
|
|
/* 0250F1C8 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[12]);
|
|
/* 0250F1CC */ cpu->r[7] = 0x00000100u;
|
|
/* 0250F1D0 */ cpu->f[13] = cpu->f[12] * cpu->f[11];
|
|
/* 0250F1D4 */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F1D4 */ rbrew_write32(cpu->mem, _t77, cpu->r[6]);
|
|
/* 0250F1D8 */ cpu->r[8] = cpu->r[8] + 0xFFFFF040u;
|
|
/* 0250F1DC */ _t78 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F1DC */ rbrew_write32(cpu->mem, _t78, cpu->r[7]);
|
|
/* 0250F1E0 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F1E4 */ cpu->f[1] = cpu->f[13];
|
|
/* 0250F1E8 */ _t79 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F1E8 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 0250F1EC */ cpu->r[4] = cpu->r[4] + 0xFFFFF31Cu;
|
|
/* 0250F1F0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F1F4 */ _t80 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F1F4 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[12]);
|
|
/* 0250F1F8 */ _t81 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F1F8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0250F1F8 */ if (_t82) goto L_0250F1FC; // else: addr-0 trap, fall-through
|
|
L_0250F1FC: ; // 0x250f1fc
|
|
/* 0250F1FC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0250F200 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F204 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0250F208 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F20C */ cpu->r[4] = 0x00000111u;
|
|
/* 0250F210 */ Gambit_fn_027FF658(cpu);
|
|
/* 0250F214 */ _t83 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F214 */ cpu->r[0] = rbrew_read8(cpu->mem, _t83);
|
|
/* 0250F218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F21C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F21C */ _t85 = _t84 & 0x00000001u;
|
|
/* 0250F21C */ if (_t85) goto L_0250F320; else goto L_0250F220;
|
|
L_0250F220: ; // 0x250f220
|
|
/* 0250F220 */ goto L_0250F29C;
|
|
L_0250F224: ; // 0x250f224
|
|
/* 0250F224 */ cpu->f[12] = cpu->f[30];
|
|
/* 0250F228 */ _t86 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F228 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
L_0250F22C: ; // 0x250f22c
|
|
/* 0250F22C */ cpu->r[12] = 0x10110000u;
|
|
/* 0250F230 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F234 */ _t87 = cpu->r[12] + 0x00007399u;
|
|
/* 0250F234 */ cpu->r[12] = rbrew_read8(cpu->mem, _t87);
|
|
/* 0250F238 */ _t88 = cpu->r[9] + 0xFFFFF318u;
|
|
/* 0250F238 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0250F23C */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0250F240 */ cpu->r[7] = 0x00000100u;
|
|
/* 0250F244 */ _t89 = cpu->r[1] + 0x00000127u;
|
|
/* 0250F244 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[12]);
|
|
/* 0250F248 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F24C */ cpu->f[13] = cpu->f[12] * cpu->f[11];
|
|
/* 0250F250 */ _t90 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F250 */ rbrew_write32(cpu->mem, _t90, cpu->r[7]);
|
|
/* 0250F254 */ cpu->r[8] = cpu->r[8] + 0xFFFFF040u;
|
|
/* 0250F258 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F258 */ rbrew_write32(cpu->mem, _t91, cpu->r[6]);
|
|
/* 0250F25C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F260 */ cpu->f[1] = cpu->f[13];
|
|
/* 0250F264 */ _t92 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F264 */ rbrew_write32(cpu->mem, _t92, cpu->r[8]);
|
|
/* 0250F268 */ cpu->r[4] = cpu->r[4] + 0xFFFFF31Cu;
|
|
/* 0250F26C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F270 */ _t93 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F270 */ rbrew_write8(cpu->mem, _t93, (uint8_t)cpu->r[12]);
|
|
/* 0250F274 */ _t94 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F274 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0250F274 */ if (_t95) goto L_0250F278; // else: addr-0 trap, fall-through
|
|
L_0250F278: ; // 0x250f278
|
|
/* 0250F278 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0250F27C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F280 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0250F284 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F288 */ cpu->r[4] = 0x00000111u;
|
|
/* 0250F28C */ Gambit_fn_027FF658(cpu);
|
|
/* 0250F290 */ _t96 = cpu->r[29] + 0x000002C0u;
|
|
/* 0250F290 */ cpu->r[0] = rbrew_read8(cpu->mem, _t96);
|
|
/* 0250F294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F298 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F298 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0250F298 */ if (_t98) goto L_0250F320; else goto L_0250F29C;
|
|
L_0250F29C: ; // 0x250f29c
|
|
/* 0250F29C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F2A0 */ _t99 = cpu->r[5] + 0x00005C68u;
|
|
/* 0250F2A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0250F2A4 */ cpu->r[0] = 0x00000080u;
|
|
/* 0250F2A8 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2AC */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F2AC */ rbrew_write32(cpu->mem, _t100, cpu->r[10]);
|
|
/* 0250F2B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F2B4 */ _t101 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0250F2B4 */ rbrew_write8(cpu->mem, _t101, (uint8_t)cpu->r[0]);
|
|
/* 0250F2B8 */ Gambit_fn_027FF610(cpu);
|
|
/* 0250F2BC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250F2C0 */ _t102 = cpu->r[11] + 0xFFFFF2C0u;
|
|
/* 0250F2C0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0250F2C4 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2C8 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 0250F2CC */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250F2D4 */ Gambit_fn_027FF668(cpu);
|
|
/* 0250F2D8 */ _t103 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F2D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0250F2DC */ cpu->r[5] = 0x00000040u;
|
|
/* 0250F2E0 */ _t104 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F2E0 */ rbrew_write32(cpu->mem, _t104, cpu->r[5]);
|
|
/* 0250F2E4 */ _t105 = cpu->r[7] + 0x00000014u;
|
|
/* 0250F2E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0250F2E8 */ cpu->ctr = cpu->r[8];
|
|
/* 0250F2EC */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F2F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F2F4 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F2F8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0250F2FC */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F2FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0250F300 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F304 */ cpu->r[6] = 0x00000001u;
|
|
/* 0250F308 */ _t107 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F308 */ cpu->r[7] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0250F30C */ cpu->r[5] = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 0250F310 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0250F314 */ _t108 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F314 */ rbrew_write32(cpu->mem, _t108, cpu->r[0]);
|
|
/* 0250F318 */ Gambit_fn_027FF75C(cpu);
|
|
/* 0250F31C */ goto L_0250F3C0;
|
|
L_0250F320: ; // 0x250f320
|
|
/* 0250F320 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F324 */ _t109 = cpu->r[29] + 0x000002BCu;
|
|
/* 0250F324 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0250F328 */ _t110 = cpu->r[6] + 0xFFFFF308u;
|
|
/* 0250F328 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0250F32C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F330 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0250F334 */ cpu->r[5] = cpu->r[5] + 0x00005C64u;
|
|
/* 0250F338 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F338 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0250F338 */ if (_t112) goto L_0250F344; else goto L_0250F33C;
|
|
L_0250F33C: ; // 0x250f33c
|
|
/* 0250F33C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F340 */ cpu->r[5] = cpu->r[5] + 0x00005C74u;
|
|
L_0250F344: ; // 0x250f344
|
|
/* 0250F344 */ _t113 = cpu->r[5] + 0x00000000u;
|
|
/* 0250F344 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0250F348 */ cpu->r[0] = 0x00000080u;
|
|
/* 0250F34C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F350 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F350 */ rbrew_write32(cpu->mem, _t114, cpu->r[10]);
|
|
/* 0250F354 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F358 */ _t115 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0250F358 */ rbrew_write8(cpu->mem, _t115, (uint8_t)cpu->r[0]);
|
|
/* 0250F35C */ Gambit_fn_027FF610(cpu);
|
|
/* 0250F360 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250F364 */ _t116 = cpu->r[11] + 0xFFFFF2C0u;
|
|
/* 0250F364 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0250F368 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F36C */ Gambit_fn_027FF5D4(cpu);
|
|
/* 0250F370 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F374 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250F378 */ Gambit_fn_027FF668(cpu);
|
|
/* 0250F37C */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F37C */ cpu->r[7] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0250F380 */ cpu->r[5] = 0x00000040u;
|
|
/* 0250F384 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F384 */ rbrew_write32(cpu->mem, _t118, cpu->r[5]);
|
|
/* 0250F388 */ _t119 = cpu->r[7] + 0x00000014u;
|
|
/* 0250F388 */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0250F38C */ cpu->ctr = cpu->r[8];
|
|
/* 0250F390 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F394 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250F398 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0250F39C */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 0250F3A0 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0250F3A4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0250F3A8 */ _t121 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F3A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0250F3AC */ cpu->r[5] = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 0250F3B0 */ cpu->r[6] = 0x00000001u;
|
|
/* 0250F3B4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0250F3B8 */ _t122 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F3B8 */ rbrew_write32(cpu->mem, _t122, cpu->r[0]);
|
|
/* 0250F3BC */ Gambit_fn_027FF75C(cpu);
|
|
L_0250F3C0: ; // 0x250f3c0
|
|
/* 0250F3C0 */ _t123 = cpu->r[1] + 0x00000394u;
|
|
/* 0250F3C0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0250F3C4 */ _t124 = cpu->r[1] + 0x000003B8u;
|
|
/* 0250F3C4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0250F3C8 */ _t125 = cpu->r[1] + 0x000003A8u;
|
|
/* 0250F3C8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 0250F3CC */ _t126 = cpu->r[1] + 0x000003B0u;
|
|
/* 0250F3CC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 0250F3D0 */ _t127 = cpu->r[1] + 0x000003A0u;
|
|
/* 0250F3D0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t127);
|
|
/* 0250F3D4 */ _t128 = cpu->r[1] + 0x0000039Cu;
|
|
/* 0250F3D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0250F3D8 */ _t129 = cpu->r[1] + 0x00000398u;
|
|
/* 0250F3D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0250F3DC */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F3DC */ _t131 = _t130 & 0x00000001u;
|
|
/* 0250F3DC */ if (_t131) goto L_0250F3E0; // else: addr-0 trap, fall-through
|
|
L_0250F3E0: ; // 0x250f3e0
|
|
/* 0250F3E0 */ _t132 = cpu->r[1] + 0x000003C4u;
|
|
/* 0250F3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0250F3E4 */ cpu->lr = cpu->r[0];
|
|
/* 0250F3E8 */ cpu->r[1] = cpu->r[1] + 0x000003C0u;
|
|
/* 0250F3EC */ return;
|
|
}
|
|
|
|
// fn_0250F3F0 @ 0x250f3f0
|
|
void Gambit_fn_0250F3F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110;
|
|
|
|
L_0250F3F0: ; // 0x250f3f0
|
|
/* 0250F3F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0250F3F4 */ _t0 = cpu->r[1] + 0xFFFFFEF0u;
|
|
/* 0250F3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250F3F4 */ cpu->r[1] = _t0;
|
|
/* 0250F3F8 */ _t1 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F3F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250F3FC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250F400 */ _t2 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F400 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250F404 */ _t3 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0250F404 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250F408 */ _t4 = cpu->r[12] + 0x00000044u;
|
|
/* 0250F408 */ cpu->r[6] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250F40C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0250F410 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250F414 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F414 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250F414 */ if (_t6) goto L_0250F440; else goto L_0250F418;
|
|
L_0250F418: ; // 0x250f418
|
|
/* 0250F418 */ _t7 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F418 */ cpu->r[9] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0250F41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250F420 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F420 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250F420 */ if (_t9) goto L_0250F698; else goto L_0250F424;
|
|
L_0250F424: ; // 0x250f424
|
|
/* 0250F424 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250F428 */ _t10 = cpu->r[31] + 0x0000028Du;
|
|
/* 0250F428 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[5]);
|
|
/* 0250F42C */ _t11 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F42C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250F430 */ _t12 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F430 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250F434 */ cpu->lr = cpu->r[0];
|
|
/* 0250F438 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F43C */ return;
|
|
L_0250F440: ; // 0x250f440
|
|
/* 0250F440 */ _t13 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F440 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0250F444 */ Gambit_fn_02512EB4(cpu);
|
|
/* 0250F448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F44C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F44C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250F44C */ if (_t15) goto L_0250F484; else goto L_0250F450;
|
|
L_0250F450: ; // 0x250f450
|
|
/* 0250F450 */ _t16 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F450 */ cpu->r[11] = rbrew_read8(cpu->mem, _t16);
|
|
/* 0250F454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0250F458 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F458 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250F458 */ if (_t18) goto L_0250F45C; else goto L_0250F468;
|
|
L_0250F45C: ; // 0x250f45c
|
|
/* 0250F45C */ _t19 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F45C */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0250F460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F464 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F464 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0250F464 */ if (_t21) goto L_0250F468; else goto L_0250F424;
|
|
L_0250F468: ; // 0x250f468
|
|
/* 0250F468 */ _t22 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F468 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250F46C */ Gambit_fn_02512EA4(cpu);
|
|
/* 0250F470 */ _t23 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250F474 */ _t24 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F474 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250F478 */ cpu->lr = cpu->r[0];
|
|
/* 0250F47C */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F480 */ return;
|
|
L_0250F484: ; // 0x250f484
|
|
/* 0250F484 */ _t25 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250F488 */ Gambit_fn_02512EBC(cpu);
|
|
/* 0250F48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F490 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F490 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250F490 */ if (_t27) goto L_0250F668; else goto L_0250F494;
|
|
L_0250F494: ; // 0x250f494
|
|
/* 0250F494 */ _t28 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F494 */ cpu->r[7] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0250F498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250F49C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F49C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0250F49C */ if (_t30) goto L_0250F4A0; else goto L_0250F4BC;
|
|
L_0250F4A0: ; // 0x250f4a0
|
|
/* 0250F4A0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0250F4A4 */ _t31 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F4A4 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[10]);
|
|
/* 0250F4A8 */ _t32 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0250F4AC */ _t33 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F4AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0250F4B0 */ cpu->lr = cpu->r[0];
|
|
/* 0250F4B4 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F4B8 */ return;
|
|
L_0250F4BC: ; // 0x250f4bc
|
|
/* 0250F4BC */ _t34 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F4BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0250F4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0250F4C4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F4C4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0250F4C4 */ if (_t36) goto L_0250F4C8; else goto L_0250F698;
|
|
L_0250F4C8: ; // 0x250f4c8
|
|
/* 0250F4C8 */ _t37 = cpu->r[31] + 0x00000288u;
|
|
/* 0250F4C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0250F4CC */ cpu->r[6] = 0x43300000u;
|
|
/* 0250F4D0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F4D4 */ _t38 = cpu->r[1] + 0x00000060u;
|
|
/* 0250F4D4 */ rbrew_write32(cpu->mem, _t38, cpu->r[6]);
|
|
/* 0250F4D8 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0250F4DC */ _t39 = cpu->r[9] + 0xFFFFF310u;
|
|
/* 0250F4DC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 0250F4E0 */ cpu->r[0] = cpu->r[7] ^ 0x80000000u;
|
|
/* 0250F4E4 */ _t40 = cpu->r[1] + 0x00000064u;
|
|
/* 0250F4E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0250F4E8 */ _t41 = cpu->r[1] + 0x00000060u;
|
|
/* 0250F4E8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0250F4EC */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 0250F4F0 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F4F4 */ cpu->f[7] = (double)(float)cpu->f[0];
|
|
/* 0250F4F8 */ _t42 = cpu->r[8] + 0xFFFFF330u;
|
|
/* 0250F4F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0250F4FC */ cpu->f[8] = cpu->f[7] / cpu->f[13];
|
|
/* 0250F500 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F504 */ cpu->f[1] = cpu->f[8];
|
|
/* 0250F508 */ cpu->r[4] = cpu->r[4] + 0xFFFFF34Cu;
|
|
/* 0250F50C */ _t43 = cpu->r[31] + 0x00000288u;
|
|
/* 0250F50C */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 0250F510 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0250F514 */ _t44 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F514 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0250F514 */ if (_t45) goto L_0250F518; // else: addr-0 trap, fall-through
|
|
L_0250F518: ; // 0x250f518
|
|
/* 0250F518 */ Gambit_fn_0251175C(cpu);
|
|
/* 0250F51C */ cpu->r[9] = 0x101F0000u;
|
|
/* 0250F520 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250F524 */ _t46 = cpu->r[9] + 0x00006338u;
|
|
/* 0250F524 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0250F524 */ cpu->r[9] = _t46;
|
|
/* 0250F528 */ _t47 = cpu->r[9] + 0x00000004u;
|
|
/* 0250F528 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0250F52C */ _t48 = cpu->r[9] + 0x00000008u;
|
|
/* 0250F52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0250F530 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0250F534 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F534 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 0250F538 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 0250F53C */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F53C */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 0250F540 */ _t51 = cpu->r[5] + 0xFFFFF334u;
|
|
/* 0250F540 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0250F544 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F548 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F548 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0250F54C */ cpu->r[8] = cpu->r[8] + 0xFFFFEFC8u;
|
|
/* 0250F550 */ /* nop */
|
|
/* 0250F554 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0250F558 */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F558 */ rbrew_write32(cpu->mem, _t53, cpu->r[8]);
|
|
/* 0250F55C */ _t54 = cpu->r[11] + 0x00005C64u;
|
|
/* 0250F55C */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0250F560 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0250F564 */ _t55 = cpu->r[1] + 0x00000080u;
|
|
/* 0250F564 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0250F568 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250F56C */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250F56C */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 0250F570 */ _t57 = cpu->r[10] + 0x00005C5Cu;
|
|
/* 0250F570 */ cpu->r[10] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0250F574 */ /* nop */
|
|
/* 0250F578 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F578 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 0250F57C */ _t59 = cpu->r[9] + 0x00000008u;
|
|
/* 0250F57C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0250F580 */ _t60 = cpu->r[1] + 0x00000040u;
|
|
/* 0250F580 */ rbrew_write32(cpu->mem, _t60, cpu->r[10]);
|
|
/* 0250F584 */ /* nop */
|
|
/* 0250F588 */ /* nop */
|
|
/* 0250F58C */ _t61 = cpu->r[1] + 0x00000044u;
|
|
/* 0250F58C */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0250F590 */ _t62 = cpu->r[1] + 0x00000048u;
|
|
/* 0250F590 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0250F594 */ _t63 = cpu->r[1] + 0x00000074u;
|
|
/* 0250F594 */ rbrew_write32(cpu->mem, _t63, cpu->r[11]);
|
|
/* 0250F598 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 0250F59C */ _t64 = cpu->r[1] + 0x00000078u;
|
|
/* 0250F59C */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 0250F5A0 */ /* nop */
|
|
/* 0250F5A4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250F5A8 */ _t65 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250F5A8 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 0250F5AC */ _t66 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250F5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0250F5B0 */ /* nop */
|
|
/* 0250F5B4 */ _t67 = cpu->r[12] + 0xFFFFF344u;
|
|
/* 0250F5B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0250F5B8 */ _t68 = cpu->r[31] + 0x00000080u;
|
|
/* 0250F5B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0250F5BC */ _t69 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250F5BC */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 0250F5C0 */ _t70 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250F5C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0250F5C4 */ /* nop */
|
|
/* 0250F5C8 */ _t71 = cpu->r[1] + 0x00000050u;
|
|
/* 0250F5C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0250F5CC */ _t72 = cpu->r[1] + 0x00000054u;
|
|
/* 0250F5CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0250F5D0 */ cpu->f[7] = cpu->f[9] + cpu->f[13];
|
|
/* 0250F5D4 */ _t73 = cpu->r[1] + 0x00000068u;
|
|
/* 0250F5D4 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0250F5D8 */ _t74 = cpu->r[1] + 0x00000068u;
|
|
/* 0250F5D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0250F5DC */ _t75 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250F5DC */ rbrew_write32(cpu->mem, _t75, cpu->r[12]);
|
|
/* 0250F5E0 */ _t76 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250F5E0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0250F5E4 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0250F5E4 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[7]);
|
|
/* 0250F5E8 */ _t78 = cpu->r[1] + 0x00000058u;
|
|
/* 0250F5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0250F5EC */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F5F0 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F5F0 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[8]);
|
|
/* 0250F5F4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250F5F8 */ _t80 = cpu->r[1] + 0x00000070u;
|
|
/* 0250F5F8 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0250F5FC */ _t81 = cpu->r[1] + 0x00000070u;
|
|
/* 0250F5FC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0250F600 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F604 */ _t82 = cpu->r[6] + 0xFFFFF340u;
|
|
/* 0250F604 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0250F608 */ _t83 = cpu->r[10] + 0xFFFFF338u;
|
|
/* 0250F608 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 0250F60C */ _t84 = cpu->r[9] + 0xFFFFF33Cu;
|
|
/* 0250F60C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0250F610 */ _t85 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F610 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[9]);
|
|
/* 0250F614 */ _t86 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F614 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[7]);
|
|
/* 0250F618 */ _t87 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F618 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[10]);
|
|
/* 0250F61C */ _t88 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F61C */ rbrew_write_f32(cpu->mem, _t88, cpu->f[11]);
|
|
/* 0250F620 */ _t89 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250F620 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[7]);
|
|
/* 0250F624 */ _t90 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F624 */ rbrew_write32(cpu->mem, _t90, cpu->r[7]);
|
|
/* 0250F628 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F62C */ _t91 = cpu->r[8] + 0xFFFFF348u;
|
|
/* 0250F62C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0250F630 */ _t92 = cpu->r[1] + 0x00000030u;
|
|
/* 0250F630 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[12]);
|
|
/* 0250F634 */ _t93 = cpu->r[1] + 0x00000034u;
|
|
/* 0250F634 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[9]);
|
|
/* 0250F638 */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F638 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[0]);
|
|
/* 0250F63C */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250F640 */ _t95 = cpu->r[7] + 0xFFFFEFB0u;
|
|
/* 0250F640 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0250F644 */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F644 */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0250F648 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F64C */ _t97 = cpu->r[1] + 0x00000038u;
|
|
/* 0250F64C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 0250F650 */ Gambit_fn_02394060(cpu);
|
|
/* 0250F654 */ _t98 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0250F658 */ cpu->lr = cpu->r[0];
|
|
/* 0250F65C */ _t99 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F65C */ cpu->r[31] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0250F660 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F664 */ return;
|
|
L_0250F668: ; // 0x250f668
|
|
/* 0250F668 */ _t100 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250F66C */ Gambit_fn_02512EAC(cpu);
|
|
/* 0250F670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F674 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F674 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0250F674 */ if (_t102) goto L_0250F698; else goto L_0250F678;
|
|
L_0250F678: ; // 0x250f678
|
|
/* 0250F678 */ _t103 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F678 */ cpu->r[0] = rbrew_read8(cpu->mem, _t103);
|
|
/* 0250F67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F680 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F680 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0250F680 */ if (_t105) goto L_0250F698; else goto L_0250F684;
|
|
L_0250F684: ; // 0x250f684
|
|
/* 0250F684 */ _t106 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F684 */ cpu->r[3] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0250F688 */ Gambit_fn_02512E9C(cpu);
|
|
/* 0250F68C */ cpu->r[11] = 0x00000000u;
|
|
/* 0250F690 */ _t107 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F690 */ rbrew_write8(cpu->mem, _t107, (uint8_t)cpu->r[11]);
|
|
/* 0250F694 */ _t108 = cpu->r[31] + 0x00000288u;
|
|
/* 0250F694 */ rbrew_write32(cpu->mem, _t108, cpu->r[11]);
|
|
L_0250F698: ; // 0x250f698
|
|
/* 0250F698 */ _t109 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0250F69C */ _t110 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F69C */ cpu->r[31] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0250F6A0 */ cpu->lr = cpu->r[0];
|
|
/* 0250F6A4 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F6A8 */ return;
|
|
}
|
|
|
|
// fn_0250F3F4 @ 0x250f3f4
|
|
void Gambit_fn_0250F3F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110;
|
|
|
|
L_0250F3F4: ; // 0x250f3f4
|
|
/* 0250F3F4 */ _t0 = cpu->r[1] + 0xFFFFFEF0u;
|
|
/* 0250F3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250F3F4 */ cpu->r[1] = _t0;
|
|
/* 0250F3F8 */ _t1 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F3F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250F3FC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250F400 */ _t2 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F400 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250F404 */ _t3 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0250F404 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250F408 */ _t4 = cpu->r[12] + 0x00000044u;
|
|
/* 0250F408 */ cpu->r[6] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250F40C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0250F410 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250F414 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F414 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250F414 */ if (_t6) goto L_0250F440; else goto L_0250F418;
|
|
L_0250F418: ; // 0x250f418
|
|
/* 0250F418 */ _t7 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F418 */ cpu->r[9] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0250F41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0250F420 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F420 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250F420 */ if (_t9) goto L_0250F698; else goto L_0250F424;
|
|
L_0250F424: ; // 0x250f424
|
|
/* 0250F424 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250F428 */ _t10 = cpu->r[31] + 0x0000028Du;
|
|
/* 0250F428 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[5]);
|
|
/* 0250F42C */ _t11 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F42C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250F430 */ _t12 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F430 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0250F434 */ cpu->lr = cpu->r[0];
|
|
/* 0250F438 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F43C */ return;
|
|
L_0250F440: ; // 0x250f440
|
|
/* 0250F440 */ _t13 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F440 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0250F444 */ Gambit_fn_02512EB4(cpu);
|
|
/* 0250F448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F44C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F44C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250F44C */ if (_t15) goto L_0250F484; else goto L_0250F450;
|
|
L_0250F450: ; // 0x250f450
|
|
/* 0250F450 */ _t16 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F450 */ cpu->r[11] = rbrew_read8(cpu->mem, _t16);
|
|
/* 0250F454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0250F458 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F458 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250F458 */ if (_t18) goto L_0250F45C; else goto L_0250F468;
|
|
L_0250F45C: ; // 0x250f45c
|
|
/* 0250F45C */ _t19 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F45C */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0250F460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F464 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F464 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0250F464 */ if (_t21) goto L_0250F468; else goto L_0250F424;
|
|
L_0250F468: ; // 0x250f468
|
|
/* 0250F468 */ _t22 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F468 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0250F46C */ Gambit_fn_02512EA4(cpu);
|
|
/* 0250F470 */ _t23 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0250F474 */ _t24 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F474 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0250F478 */ cpu->lr = cpu->r[0];
|
|
/* 0250F47C */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F480 */ return;
|
|
L_0250F484: ; // 0x250f484
|
|
/* 0250F484 */ _t25 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0250F488 */ Gambit_fn_02512EBC(cpu);
|
|
/* 0250F48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F490 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F490 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250F490 */ if (_t27) goto L_0250F668; else goto L_0250F494;
|
|
L_0250F494: ; // 0x250f494
|
|
/* 0250F494 */ _t28 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F494 */ cpu->r[7] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0250F498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0250F49C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F49C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0250F49C */ if (_t30) goto L_0250F4A0; else goto L_0250F4BC;
|
|
L_0250F4A0: ; // 0x250f4a0
|
|
/* 0250F4A0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0250F4A4 */ _t31 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F4A4 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[10]);
|
|
/* 0250F4A8 */ _t32 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0250F4AC */ _t33 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F4AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0250F4B0 */ cpu->lr = cpu->r[0];
|
|
/* 0250F4B4 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F4B8 */ return;
|
|
L_0250F4BC: ; // 0x250f4bc
|
|
/* 0250F4BC */ _t34 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F4BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0250F4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0250F4C4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F4C4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0250F4C4 */ if (_t36) goto L_0250F4C8; else goto L_0250F698;
|
|
L_0250F4C8: ; // 0x250f4c8
|
|
/* 0250F4C8 */ _t37 = cpu->r[31] + 0x00000288u;
|
|
/* 0250F4C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0250F4CC */ cpu->r[6] = 0x43300000u;
|
|
/* 0250F4D0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F4D4 */ _t38 = cpu->r[1] + 0x00000060u;
|
|
/* 0250F4D4 */ rbrew_write32(cpu->mem, _t38, cpu->r[6]);
|
|
/* 0250F4D8 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0250F4DC */ _t39 = cpu->r[9] + 0xFFFFF310u;
|
|
/* 0250F4DC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 0250F4E0 */ cpu->r[0] = cpu->r[7] ^ 0x80000000u;
|
|
/* 0250F4E4 */ _t40 = cpu->r[1] + 0x00000064u;
|
|
/* 0250F4E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0250F4E8 */ _t41 = cpu->r[1] + 0x00000060u;
|
|
/* 0250F4E8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0250F4EC */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 0250F4F0 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F4F4 */ cpu->f[7] = (double)(float)cpu->f[0];
|
|
/* 0250F4F8 */ _t42 = cpu->r[8] + 0xFFFFF330u;
|
|
/* 0250F4F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0250F4FC */ cpu->f[8] = cpu->f[7] / cpu->f[13];
|
|
/* 0250F500 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0250F504 */ cpu->f[1] = cpu->f[8];
|
|
/* 0250F508 */ cpu->r[4] = cpu->r[4] + 0xFFFFF34Cu;
|
|
/* 0250F50C */ _t43 = cpu->r[31] + 0x00000288u;
|
|
/* 0250F50C */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 0250F510 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0250F514 */ _t44 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0250F514 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0250F514 */ if (_t45) goto L_0250F518; // else: addr-0 trap, fall-through
|
|
L_0250F518: ; // 0x250f518
|
|
/* 0250F518 */ Gambit_fn_0251175C(cpu);
|
|
/* 0250F51C */ cpu->r[9] = 0x101F0000u;
|
|
/* 0250F520 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250F524 */ _t46 = cpu->r[9] + 0x00006338u;
|
|
/* 0250F524 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0250F524 */ cpu->r[9] = _t46;
|
|
/* 0250F528 */ _t47 = cpu->r[9] + 0x00000004u;
|
|
/* 0250F528 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0250F52C */ _t48 = cpu->r[9] + 0x00000008u;
|
|
/* 0250F52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0250F530 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0250F534 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F534 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 0250F538 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 0250F53C */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F53C */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 0250F540 */ _t51 = cpu->r[5] + 0xFFFFF334u;
|
|
/* 0250F540 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0250F544 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F548 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F548 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0250F54C */ cpu->r[8] = cpu->r[8] + 0xFFFFEFC8u;
|
|
/* 0250F550 */ /* nop */
|
|
/* 0250F554 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0250F558 */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 0250F558 */ rbrew_write32(cpu->mem, _t53, cpu->r[8]);
|
|
/* 0250F55C */ _t54 = cpu->r[11] + 0x00005C64u;
|
|
/* 0250F55C */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0250F560 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0250F564 */ _t55 = cpu->r[1] + 0x00000080u;
|
|
/* 0250F564 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0250F568 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250F56C */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0250F56C */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 0250F570 */ _t57 = cpu->r[10] + 0x00005C5Cu;
|
|
/* 0250F570 */ cpu->r[10] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0250F574 */ /* nop */
|
|
/* 0250F578 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F578 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 0250F57C */ _t59 = cpu->r[9] + 0x00000008u;
|
|
/* 0250F57C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0250F580 */ _t60 = cpu->r[1] + 0x00000040u;
|
|
/* 0250F580 */ rbrew_write32(cpu->mem, _t60, cpu->r[10]);
|
|
/* 0250F584 */ /* nop */
|
|
/* 0250F588 */ /* nop */
|
|
/* 0250F58C */ _t61 = cpu->r[1] + 0x00000044u;
|
|
/* 0250F58C */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0250F590 */ _t62 = cpu->r[1] + 0x00000048u;
|
|
/* 0250F590 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0250F594 */ _t63 = cpu->r[1] + 0x00000074u;
|
|
/* 0250F594 */ rbrew_write32(cpu->mem, _t63, cpu->r[11]);
|
|
/* 0250F598 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 0250F59C */ _t64 = cpu->r[1] + 0x00000078u;
|
|
/* 0250F59C */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 0250F5A0 */ /* nop */
|
|
/* 0250F5A4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250F5A8 */ _t65 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250F5A8 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 0250F5AC */ _t66 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0250F5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0250F5B0 */ /* nop */
|
|
/* 0250F5B4 */ _t67 = cpu->r[12] + 0xFFFFF344u;
|
|
/* 0250F5B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0250F5B8 */ _t68 = cpu->r[31] + 0x00000080u;
|
|
/* 0250F5B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0250F5BC */ _t69 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250F5BC */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 0250F5C0 */ _t70 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0250F5C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0250F5C4 */ /* nop */
|
|
/* 0250F5C8 */ _t71 = cpu->r[1] + 0x00000050u;
|
|
/* 0250F5C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0250F5CC */ _t72 = cpu->r[1] + 0x00000054u;
|
|
/* 0250F5CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0250F5D0 */ cpu->f[7] = cpu->f[9] + cpu->f[13];
|
|
/* 0250F5D4 */ _t73 = cpu->r[1] + 0x00000068u;
|
|
/* 0250F5D4 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0250F5D8 */ _t74 = cpu->r[1] + 0x00000068u;
|
|
/* 0250F5D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0250F5DC */ _t75 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250F5DC */ rbrew_write32(cpu->mem, _t75, cpu->r[12]);
|
|
/* 0250F5E0 */ _t76 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0250F5E0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0250F5E4 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0250F5E4 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[7]);
|
|
/* 0250F5E8 */ _t78 = cpu->r[1] + 0x00000058u;
|
|
/* 0250F5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0250F5EC */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F5F0 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0250F5F0 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[8]);
|
|
/* 0250F5F4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250F5F8 */ _t80 = cpu->r[1] + 0x00000070u;
|
|
/* 0250F5F8 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0250F5FC */ _t81 = cpu->r[1] + 0x00000070u;
|
|
/* 0250F5FC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0250F600 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0250F604 */ _t82 = cpu->r[6] + 0xFFFFF340u;
|
|
/* 0250F604 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0250F608 */ _t83 = cpu->r[10] + 0xFFFFF338u;
|
|
/* 0250F608 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 0250F60C */ _t84 = cpu->r[9] + 0xFFFFF33Cu;
|
|
/* 0250F60C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0250F610 */ _t85 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0250F610 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[9]);
|
|
/* 0250F614 */ _t86 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F614 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[7]);
|
|
/* 0250F618 */ _t87 = cpu->r[1] + 0x00000024u;
|
|
/* 0250F618 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[10]);
|
|
/* 0250F61C */ _t88 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F61C */ rbrew_write_f32(cpu->mem, _t88, cpu->f[11]);
|
|
/* 0250F620 */ _t89 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250F620 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[7]);
|
|
/* 0250F624 */ _t90 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F624 */ rbrew_write32(cpu->mem, _t90, cpu->r[7]);
|
|
/* 0250F628 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250F62C */ _t91 = cpu->r[8] + 0xFFFFF348u;
|
|
/* 0250F62C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0250F630 */ _t92 = cpu->r[1] + 0x00000030u;
|
|
/* 0250F630 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[12]);
|
|
/* 0250F634 */ _t93 = cpu->r[1] + 0x00000034u;
|
|
/* 0250F634 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[9]);
|
|
/* 0250F638 */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F638 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[0]);
|
|
/* 0250F63C */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250F640 */ _t95 = cpu->r[7] + 0xFFFFEFB0u;
|
|
/* 0250F640 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0250F644 */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F644 */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0250F648 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F64C */ _t97 = cpu->r[1] + 0x00000038u;
|
|
/* 0250F64C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 0250F650 */ Gambit_fn_02394060(cpu);
|
|
/* 0250F654 */ _t98 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0250F658 */ cpu->lr = cpu->r[0];
|
|
/* 0250F65C */ _t99 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F65C */ cpu->r[31] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0250F660 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F664 */ return;
|
|
L_0250F668: ; // 0x250f668
|
|
/* 0250F668 */ _t100 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250F66C */ Gambit_fn_02512EAC(cpu);
|
|
/* 0250F670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250F674 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F674 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0250F674 */ if (_t102) goto L_0250F698; else goto L_0250F678;
|
|
L_0250F678: ; // 0x250f678
|
|
/* 0250F678 */ _t103 = cpu->r[31] + 0x00000284u;
|
|
/* 0250F678 */ cpu->r[0] = rbrew_read8(cpu->mem, _t103);
|
|
/* 0250F67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F680 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F680 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0250F680 */ if (_t105) goto L_0250F698; else goto L_0250F684;
|
|
L_0250F684: ; // 0x250f684
|
|
/* 0250F684 */ _t106 = cpu->r[31] + 0x000002B4u;
|
|
/* 0250F684 */ cpu->r[3] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0250F688 */ Gambit_fn_02512E9C(cpu);
|
|
/* 0250F68C */ cpu->r[11] = 0x00000000u;
|
|
/* 0250F690 */ _t107 = cpu->r[31] + 0x0000028Cu;
|
|
/* 0250F690 */ rbrew_write8(cpu->mem, _t107, (uint8_t)cpu->r[11]);
|
|
/* 0250F694 */ _t108 = cpu->r[31] + 0x00000288u;
|
|
/* 0250F694 */ rbrew_write32(cpu->mem, _t108, cpu->r[11]);
|
|
L_0250F698: ; // 0x250f698
|
|
/* 0250F698 */ _t109 = cpu->r[1] + 0x00000114u;
|
|
/* 0250F698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0250F69C */ _t110 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0250F69C */ cpu->r[31] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0250F6A0 */ cpu->lr = cpu->r[0];
|
|
/* 0250F6A4 */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0250F6A8 */ return;
|
|
}
|
|
|
|
// fn_0250F6AC @ 0x250f6ac
|
|
void Gambit_fn_0250F6AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_0250F6AC: ; // 0x250f6ac
|
|
/* 0250F6AC */ cpu->r[12] = cpu->r[3];
|
|
/* 0250F6B0 */ _t0 = cpu->r[12] + 0x000002B8u;
|
|
/* 0250F6B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0250F6B4 */ cpu->r[4] = cpu->r[12] + 0x00000078u;
|
|
/* 0250F6B8 */ goto L_0256BEE4;
|
|
L_0256BEE4: ; // 0x256bee4
|
|
/* 0256BEE4 */ _t1 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0256BEE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0256BEE4 */ cpu->r[1] = _t1;
|
|
/* 0256BEE8 */ cpu->r[9] = 0x100D0000u;
|
|
/* 0256BEEC */ /* nop */
|
|
/* 0256BEF0 */ _t2 = cpu->r[9] + 0xFFFFDF04u;
|
|
/* 0256BEF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0256BEF4 */ /* nop */
|
|
/* 0256BEF8 */ /* nop */
|
|
/* 0256BEFC */ _t3 = cpu->r[3] + 0x00000068u;
|
|
/* 0256BEFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0256BF00 */ /* nop */
|
|
/* 0256BF04 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0256BF04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0256BF08 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0256BF08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0256BF0C */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 0256BF10 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0256BF10 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0256BF14 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 0256BF14 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0256BF18 */ /* nop */
|
|
/* 0256BF1C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0256BF1C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 0256BF20 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0256BF20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0256BF24 */ _t10 = cpu->r[1] + 0x00000034u;
|
|
/* 0256BF24 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0256BF28 */ /* nop */
|
|
/* 0256BF2C */ _t11 = cpu->r[1] + 0x00000034u;
|
|
/* 0256BF2C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0256BF30 */ /* nop */
|
|
/* 0256BF34 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 0256BF34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0256BF38 */ _t13 = cpu->r[3] + 0x00000080u;
|
|
/* 0256BF38 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0256BF3C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0256BF3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0256BF40 */ cpu->f[0] = cpu->f[9] + cpu->f[11];
|
|
/* 0256BF44 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0256BF44 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0256BF48 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0256BF48 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0256BF4C */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 0256BF4C */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0256BF50 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 0256BF50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0256BF54 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0256BF54 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 0256BF58 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0256BF58 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0256BF5C */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 0256BF5C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 0256BF60 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 0256BF60 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 0256BF64 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 0256BF64 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0256BF68 */ _t24 = cpu->r[4] + 0x00000004u;
|
|
/* 0256BF68 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[8]);
|
|
/* 0256BF6C */ _t25 = cpu->r[4] + 0x00000008u;
|
|
/* 0256BF6C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 0256BF70 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0256BF74 */ return;
|
|
}
|
|
|
|
// fn_0250F6BC @ 0x250f6bc
|
|
void Gambit_fn_0250F6BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0250F6BC: ; // 0x250f6bc
|
|
/* 0250F6BC */ cpu->r[0] = cpu->lr;
|
|
/* 0250F6C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250F6C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250F6C0 */ cpu->r[1] = _t0;
|
|
/* 0250F6C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F6C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250F6C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250F6CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F6CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250F6D0 */ Gambit_fn_0250EF9C(cpu);
|
|
/* 0250F6D4 */ _t3 = cpu->r[31] + 0x000001BCu;
|
|
/* 0250F6D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0250F6D8 */ /* nop */
|
|
/* 0250F6DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F6DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0250F6DC */ if (_t5) goto L_0250F6E0; else goto L_0250F6E8;
|
|
L_0250F6E0: ; // 0x250f6e0
|
|
/* 0250F6E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F6E4 */ Gambit_fn_0250F3F0(cpu);
|
|
L_0250F6E8: ; // 0x250f6e8
|
|
/* 0250F6E8 */ _t6 = cpu->r[31] + 0x000002B8u;
|
|
/* 0250F6E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250F6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F6F0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F6F0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0250F6F0 */ if (_t8) goto L_0250F6FC; else goto L_0250F6F4;
|
|
L_0250F6F4: ; // 0x250f6f4
|
|
/* 0250F6F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F6F8 */ Gambit_fn_0250F6AC(cpu);
|
|
L_0250F6FC: ; // 0x250f6fc
|
|
/* 0250F6FC */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F700 */ Gambit_fn_024F4264(cpu);
|
|
/* 0250F704 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250F708 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F708 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250F70C */ cpu->lr = cpu->r[0];
|
|
/* 0250F710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250F714 */ return;
|
|
}
|
|
|
|
// fn_0250F6C0 @ 0x250f6c0
|
|
void Gambit_fn_0250F6C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0250F6C0: ; // 0x250f6c0
|
|
/* 0250F6C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250F6C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250F6C0 */ cpu->r[1] = _t0;
|
|
/* 0250F6C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F6C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250F6C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250F6CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F6CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250F6D0 */ Gambit_fn_0250EF9C(cpu);
|
|
/* 0250F6D4 */ _t3 = cpu->r[31] + 0x000001BCu;
|
|
/* 0250F6D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0250F6D8 */ /* nop */
|
|
/* 0250F6DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F6DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0250F6DC */ if (_t5) goto L_0250F6E0; else goto L_0250F6E8;
|
|
L_0250F6E0: ; // 0x250f6e0
|
|
/* 0250F6E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F6E4 */ Gambit_fn_0250F3F0(cpu);
|
|
L_0250F6E8: ; // 0x250f6e8
|
|
/* 0250F6E8 */ _t6 = cpu->r[31] + 0x000002B8u;
|
|
/* 0250F6E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250F6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F6F0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F6F0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0250F6F0 */ if (_t8) goto L_0250F6FC; else goto L_0250F6F4;
|
|
L_0250F6F4: ; // 0x250f6f4
|
|
/* 0250F6F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F6F8 */ Gambit_fn_0250F6AC(cpu);
|
|
L_0250F6FC: ; // 0x250f6fc
|
|
/* 0250F6FC */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F700 */ Gambit_fn_024F4264(cpu);
|
|
/* 0250F704 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0250F704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250F708 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F708 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250F70C */ cpu->lr = cpu->r[0];
|
|
/* 0250F710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250F714 */ return;
|
|
}
|
|
|
|
// fn_0250F718 @ 0x250f718
|
|
void Gambit_fn_0250F718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31;
|
|
|
|
L_0250F718: ; // 0x250f718
|
|
/* 0250F718 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0250F718 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250F718 */ cpu->r[1] = _t0;
|
|
/* 0250F71C */ /* nop */
|
|
/* 0250F720 */ cpu->r[0] = cpu->lr;
|
|
/* 0250F724 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0250F728 */ cpu->r[28] = 0x100C0000u;
|
|
/* 0250F72C */ cpu->r[31] = 0x00000000u;
|
|
/* 0250F730 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0250F730 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0250F734 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0250F738 */ cpu->r[21] = 0x00000001u;
|
|
/* 0250F73C */ cpu->r[22] = 0x101D0000u;
|
|
/* 0250F740 */ cpu->r[24] = 0x101D0000u;
|
|
/* 0250F744 */ cpu->r[25] = cpu->r[25] + 0x00000994u;
|
|
/* 0250F748 */ cpu->r[28] = cpu->r[28] + 0xFFFFEFC8u;
|
|
/* 0250F74C */ cpu->r[26] = cpu->r[31];
|
|
/* 0250F750 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 0250F750 */ cpu->r[23] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0250F754 */ cpu->r[29] = 0x101D0000u;
|
|
L_0250F758: ; // 0x250f758
|
|
/* 0250F758 */ _t3 = cpu->r[22] + 0xFFFFFE80u;
|
|
/* 0250F758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250F75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F760 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F760 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0250F760 */ if (_t5) goto L_0250F764; else goto L_0250F77C;
|
|
L_0250F764: ; // 0x250f764
|
|
/* 0250F764 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0250F768 */ cpu->r[3] = cpu->r[24] + 0x0000519Du;
|
|
/* 0250F76C */ cpu->r[5] = 0x0000001Fu;
|
|
/* 0250F770 */ cpu->r[4] = cpu->r[4] + 0x0000675Cu;
|
|
/* 0250F774 */ _t6 = cpu->r[22] + 0xFFFFFE80u;
|
|
/* 0250F774 */ rbrew_write32(cpu->mem, _t6, cpu->r[21]);
|
|
/* 0250F778 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0250F77C: ; // 0x250f77c
|
|
/* 0250F77C */ _t7 = cpu->r[30] + 0xFFFFFE7Cu;
|
|
/* 0250F77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250F780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F784 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F784 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250F784 */ if (_t9) goto L_0250F788; else goto L_0250F790;
|
|
L_0250F788: ; // 0x250f788
|
|
/* 0250F788 */ _t10 = cpu->r[29] + 0x000009A8u;
|
|
/* 0250F788 */ rbrew_write32(cpu->mem, _t10, cpu->r[26]);
|
|
/* 0250F78C */ _t11 = cpu->r[30] + 0xFFFFFE7Cu;
|
|
/* 0250F78C */ rbrew_write32(cpu->mem, _t11, cpu->r[21]);
|
|
L_0250F790: ; // 0x250f790
|
|
/* 0250F790 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000004u);
|
|
/* 0250F794 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F794 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0250F794 */ if (_t13) goto L_0250F7C0; else goto L_0250F798;
|
|
L_0250F798: ; // 0x250f798
|
|
/* 0250F798 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F798 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 0250F79C */ cpu->r[0] = 0x00000000u;
|
|
/* 0250F7A0 */ cpu->r[3] = cpu->r[23];
|
|
/* 0250F7A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F7A8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F7A8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0250F7AC */ Gambit_fn_027B70B8(cpu);
|
|
/* 0250F7B0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0250F7B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000004u);
|
|
/* 0250F7B8 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F7B8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0250F7B8 */ if (_t17) goto L_0250F758; else goto L_0250F7BC;
|
|
L_0250F7BC: ; // 0x250f7bc
|
|
/* 0250F7BC */ goto L_0250F82C;
|
|
L_0250F7C0: ; // 0x250f7c0
|
|
/* 0250F7C0 */ _t18 = cpu->r[29] + 0x000009A8u;
|
|
/* 0250F7C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0250F7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0250F7C8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F7C8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0250F7C8 */ if (_t20) goto L_0250F7CC; else goto L_0250F804;
|
|
L_0250F7CC: ; // 0x250f7cc
|
|
/* 0250F7CC */ Gambit_fn_0282A450(cpu);
|
|
/* 0250F7D0 */ cpu->r[27] = cpu->r[3];
|
|
/* 0250F7D4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0250F7D8 */ _t21 = cpu->r[29] + 0x000009A8u;
|
|
/* 0250F7D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0250F7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250F7E0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F7E0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0250F7E0 */ if (_t23) goto L_0250F7E4; else goto L_0250F7F8;
|
|
L_0250F7E4: ; // 0x250f7e4
|
|
/* 0250F7E4 */ cpu->r[5] = 0x00000004u;
|
|
/* 0250F7E8 */ cpu->r[4] = cpu->r[24] + 0x0000519Du;
|
|
/* 0250F7EC */ cpu->r[3] = cpu->r[25];
|
|
/* 0250F7F0 */ Gambit_fn_0282A374(cpu);
|
|
/* 0250F7F4 */ _t24 = cpu->r[29] + 0x000009A8u;
|
|
/* 0250F7F4 */ rbrew_write32(cpu->mem, _t24, cpu->r[25]);
|
|
L_0250F7F8: ; // 0x250f7f8
|
|
/* 0250F7F8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0250F7FC */ Gambit_fn_02837030(cpu);
|
|
/* 0250F800 */ _t25 = cpu->r[29] + 0x000009A8u;
|
|
/* 0250F800 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
L_0250F804: ; // 0x250f804
|
|
/* 0250F804 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0250F808 */ _t26 = cpu->r[10] + cpu->r[11];
|
|
/* 0250F808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0250F80C */ cpu->r[3] = cpu->r[23];
|
|
/* 0250F810 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250F810 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 0250F814 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0250F818 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0250F818 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0250F81C */ Gambit_fn_027B70B8(cpu);
|
|
/* 0250F820 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0250F824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000004u);
|
|
/* 0250F828 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250F828 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0250F828 */ if (_t30) goto L_0250F758; else goto L_0250F82C;
|
|
L_0250F82C: ; // 0x250f82c
|
|
/* 0250F82C */ /* nop */
|
|
/* 0250F830 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 0250F830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0250F834 */ cpu->lr = cpu->r[0];
|
|
/* 0250F838 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0250F83C */ return;
|
|
}
|
|
|
|
// fn_0250F840 @ 0x250f840
|
|
void Gambit_fn_0250F840(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100;
|
|
|
|
L_0250F840: ; // 0x250f840
|
|
/* 0250F840 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0250F840 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250F840 */ cpu->r[1] = _t0;
|
|
/* 0250F844 */ /* nop */
|
|
/* 0250F848 */ cpu->r[0] = cpu->lr;
|
|
/* 0250F84C */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0250F84C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 0250F850 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 0250F850 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0250F854 */ /* nop */
|
|
/* 0250F858 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0250F858 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0250F85C */ /* nop */
|
|
/* 0250F860 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 0250F860 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0250F864 */ /* nop */
|
|
/* 0250F868 */ _t5 = cpu->r[1] + 0x00000048u;
|
|
/* 0250F868 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0250F86C */ _t6 = cpu->r[1] + 0x00000054u;
|
|
/* 0250F86C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0250F870 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250F870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250F874 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0250F874 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0250F878 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F878 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250F878 */ if (_t9) goto L_0250F87C; else goto L_0250F88C;
|
|
L_0250F87C: ; // 0x250f87c
|
|
/* 0250F87C */ cpu->r[3] = 0x000004E8u;
|
|
/* 0250F880 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250F884 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250F884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250F888 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F888 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0250F888 */ if (_t11) goto L_0250FBC4; else goto L_0250F88C;
|
|
L_0250F88C: ; // 0x250f88c
|
|
/* 0250F88C */ cpu->r[3] = cpu->r[31];
|
|
/* 0250F890 */ Gambit_fn_025015D0(cpu);
|
|
/* 0250F894 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0250F898 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 0250F89C */ cpu->r[28] = 0x10110000u;
|
|
/* 0250F8A0 */ cpu->r[0] = cpu->r[0] + 0xFFFFF17Cu;
|
|
/* 0250F8A4 */ cpu->r[29] = 0x00000000u;
|
|
/* 0250F8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F8AC */ cpu->r[28] = cpu->r[28] + 0x0000095Cu;
|
|
/* 0250F8B0 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0250F8B0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0250F8B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F8B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0250F8B4 */ if (_t14) goto L_0250F8B8; else goto L_0250F8C8;
|
|
L_0250F8B8: ; // 0x250f8b8
|
|
/* 0250F8B8 */ cpu->r[3] = 0x00000060u;
|
|
/* 0250F8BC */ Gambit_fn_02801A78(cpu);
|
|
/* 0250F8C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250F8C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F8C4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F8C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0250F8C4 */ if (_t16) goto L_0250F904; else goto L_0250F8C8;
|
|
L_0250F8C8: ; // 0x250f8c8
|
|
/* 0250F8C8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250F8CC */ cpu->r[4] = cpu->r[31];
|
|
/* 0250F8D0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F8D4 */ cpu->r[5] = cpu->r[5] + 0xFFFFF384u;
|
|
/* 0250F8D8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250F8DC */ cpu->r[6] = cpu->r[6] + 0xFFFFF400u;
|
|
/* 0250F8E0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250F8E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250F8E8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250F8EC */ _t17 = cpu->r[30] + 0x00000000u;
|
|
/* 0250F8EC */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0250F8F0 */ cpu->r[8] = 0x0000000Fu;
|
|
/* 0250F8F4 */ _t18 = cpu->r[30] + 0x00000058u;
|
|
/* 0250F8F4 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 0250F8F8 */ cpu->r[9] = 0x0000003Cu;
|
|
/* 0250F8FC */ _t19 = cpu->r[30] + 0x00000054u;
|
|
/* 0250F8FC */ rbrew_write32(cpu->mem, _t19, cpu->r[8]);
|
|
/* 0250F900 */ _t20 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250F900 */ rbrew_write32(cpu->mem, _t20, cpu->r[9]);
|
|
L_0250F904: ; // 0x250f904
|
|
/* 0250F904 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250F908 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250F90C */ _t21 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0250F90C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0250F910 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0250F914 */ _t22 = cpu->r[11] + 0xFFFFF358u;
|
|
/* 0250F914 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0250F918 */ cpu->r[27] = 0x10110000u;
|
|
/* 0250F91C */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 0250F91C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F920 */ _t23 = cpu->r[10] + 0xFFFFF318u;
|
|
/* 0250F920 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0250F924 */ cpu->r[27] = cpu->r[27] + 0x00000A2Cu;
|
|
/* 0250F928 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F928 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0250F928 */ if (_t25) goto L_0250F92C; else goto L_0250F93C;
|
|
L_0250F92C: ; // 0x250f92c
|
|
/* 0250F92C */ cpu->r[3] = 0x00000060u;
|
|
/* 0250F930 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250F934 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250F934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F938 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F938 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0250F938 */ if (_t27) goto L_0250F970; else goto L_0250F93C;
|
|
L_0250F93C: ; // 0x250f93c
|
|
/* 0250F93C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250F940 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250F944 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F948 */ cpu->r[5] = cpu->r[5] + 0xFFFFF398u;
|
|
/* 0250F94C */ cpu->r[8] = 0x00000000u;
|
|
/* 0250F950 */ cpu->r[6] = cpu->r[6] + 0xFFFFF418u;
|
|
/* 0250F954 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250F958 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250F95C */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250F960 */ _t28 = cpu->r[30] + 0x00000058u;
|
|
/* 0250F960 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[29]);
|
|
/* 0250F964 */ _t29 = cpu->r[30] + 0x00000054u;
|
|
/* 0250F964 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[31]);
|
|
/* 0250F968 */ _t30 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250F968 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[30]);
|
|
/* 0250F96C */ _t31 = cpu->r[30] + 0x00000000u;
|
|
/* 0250F96C */ rbrew_write32(cpu->mem, _t31, cpu->r[27]);
|
|
L_0250F970: ; // 0x250f970
|
|
/* 0250F970 */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 0250F970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F974 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F974 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0250F974 */ if (_t33) goto L_0250F978; else goto L_0250F988;
|
|
L_0250F978: ; // 0x250f978
|
|
/* 0250F978 */ cpu->r[3] = 0x00000060u;
|
|
/* 0250F97C */ Gambit_fn_02801A78(cpu);
|
|
/* 0250F980 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250F980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F984 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F984 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0250F984 */ if (_t35) goto L_0250F9C4; else goto L_0250F988;
|
|
L_0250F988: ; // 0x250f988
|
|
/* 0250F988 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250F98C */ cpu->r[4] = cpu->r[31];
|
|
/* 0250F990 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F994 */ cpu->r[5] = cpu->r[5] + 0xFFFFF42Cu;
|
|
/* 0250F998 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250F99C */ cpu->r[6] = cpu->r[6] + 0xFFFFF440u;
|
|
/* 0250F9A0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250F9A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250F9A8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250F9AC */ _t36 = cpu->r[30] + 0x00000000u;
|
|
/* 0250F9AC */ rbrew_write32(cpu->mem, _t36, cpu->r[28]);
|
|
/* 0250F9B0 */ cpu->r[10] = 0x0000003Cu;
|
|
/* 0250F9B4 */ _t37 = cpu->r[30] + 0x00000058u;
|
|
/* 0250F9B4 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 0250F9B8 */ cpu->r[0] = 0x00000078u;
|
|
/* 0250F9BC */ _t38 = cpu->r[30] + 0x00000054u;
|
|
/* 0250F9BC */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 0250F9C0 */ _t39 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250F9C0 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
L_0250F9C4: ; // 0x250f9c4
|
|
/* 0250F9C4 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 0250F9C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F9C8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F9C8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0250F9C8 */ if (_t41) goto L_0250F9CC; else goto L_0250F9DC;
|
|
L_0250F9CC: ; // 0x250f9cc
|
|
/* 0250F9CC */ cpu->r[3] = 0x00000060u;
|
|
/* 0250F9D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250F9D4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250F9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250F9D8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250F9D8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0250F9D8 */ if (_t43) goto L_0250FA18; else goto L_0250F9DC;
|
|
L_0250F9DC: ; // 0x250f9dc
|
|
/* 0250F9DC */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250F9E0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250F9E4 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250F9E8 */ cpu->r[5] = cpu->r[5] + 0xFFFFF454u;
|
|
/* 0250F9EC */ cpu->r[8] = 0x00000000u;
|
|
/* 0250F9F0 */ cpu->r[6] = cpu->r[6] + 0xFFFFF468u;
|
|
/* 0250F9F4 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250F9F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250F9FC */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250FA00 */ _t44 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250FA00 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[30]);
|
|
/* 0250FA04 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0250FA08 */ _t45 = cpu->r[30] + 0x00000058u;
|
|
/* 0250FA08 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[29]);
|
|
/* 0250FA0C */ _t46 = cpu->r[7] + 0xFFFFF35Cu;
|
|
/* 0250FA0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0250FA10 */ _t47 = cpu->r[30] + 0x00000000u;
|
|
/* 0250FA10 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 0250FA14 */ _t48 = cpu->r[30] + 0x00000054u;
|
|
/* 0250FA14 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
L_0250FA18: ; // 0x250fa18
|
|
/* 0250FA18 */ cpu->r[30] = cpu->r[31] + 0x00000308u;
|
|
/* 0250FA18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FA1C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FA1C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0250FA1C */ if (_t50) goto L_0250FA20; else goto L_0250FA30;
|
|
L_0250FA20: ; // 0x250fa20
|
|
/* 0250FA20 */ cpu->r[3] = 0x00000060u;
|
|
/* 0250FA24 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FA28 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FA28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FA2C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FA2C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0250FA2C */ if (_t52) goto L_0250FA6C; else goto L_0250FA30;
|
|
L_0250FA30: ; // 0x250fa30
|
|
/* 0250FA30 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250FA34 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250FA38 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250FA3C */ cpu->r[5] = cpu->r[5] + 0xFFFFF370u;
|
|
/* 0250FA40 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250FA44 */ cpu->r[6] = cpu->r[6] + 0xFFFFF480u;
|
|
/* 0250FA48 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250FA4C */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FA50 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250FA54 */ _t53 = cpu->r[30] + 0x00000058u;
|
|
/* 0250FA54 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[29]);
|
|
/* 0250FA58 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250FA5C */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 0250FA5C */ rbrew_write32(cpu->mem, _t54, cpu->r[27]);
|
|
/* 0250FA60 */ _t55 = cpu->r[12] + 0xFFFFF360u;
|
|
/* 0250FA60 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0250FA64 */ _t56 = cpu->r[30] + 0x00000054u;
|
|
/* 0250FA64 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0250FA68 */ _t57 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250FA68 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
L_0250FA6C: ; // 0x250fa6c
|
|
/* 0250FA6C */ cpu->r[30] = cpu->r[31] + 0x00000368u;
|
|
/* 0250FA6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FA70 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FA70 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0250FA70 */ if (_t59) goto L_0250FA74; else goto L_0250FA84;
|
|
L_0250FA74: ; // 0x250fa74
|
|
/* 0250FA74 */ cpu->r[3] = 0x00000060u;
|
|
/* 0250FA78 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FA7C */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FA80 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FA80 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0250FA80 */ if (_t61) goto L_0250FAC0; else goto L_0250FA84;
|
|
L_0250FA84: ; // 0x250fa84
|
|
/* 0250FA84 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250FA88 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250FA8C */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250FA90 */ cpu->r[5] = cpu->r[5] + 0xFFFFF3A8u;
|
|
/* 0250FA94 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250FA98 */ cpu->r[6] = cpu->r[6] + 0xFFFFF368u;
|
|
/* 0250FA9C */ cpu->r[7] = cpu->r[5];
|
|
/* 0250FAA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FAA4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250FAA8 */ _t62 = cpu->r[30] + 0x00000000u;
|
|
/* 0250FAA8 */ rbrew_write32(cpu->mem, _t62, cpu->r[28]);
|
|
/* 0250FAAC */ cpu->r[0] = 0x00000258u;
|
|
/* 0250FAB0 */ _t63 = cpu->r[30] + 0x00000058u;
|
|
/* 0250FAB0 */ rbrew_write32(cpu->mem, _t63, cpu->r[29]);
|
|
/* 0250FAB4 */ cpu->r[9] = 0x000004B0u;
|
|
/* 0250FAB8 */ _t64 = cpu->r[30] + 0x00000054u;
|
|
/* 0250FAB8 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 0250FABC */ _t65 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250FABC */ rbrew_write32(cpu->mem, _t65, cpu->r[9]);
|
|
L_0250FAC0: ; // 0x250fac0
|
|
/* 0250FAC0 */ cpu->r[30] = cpu->r[31] + 0x000003C8u;
|
|
/* 0250FAC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FAC4 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FAC4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0250FAC4 */ if (_t67) goto L_0250FAC8; else goto L_0250FAD8;
|
|
L_0250FAC8: ; // 0x250fac8
|
|
/* 0250FAC8 */ cpu->r[3] = 0x00000060u;
|
|
/* 0250FACC */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FAD0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FAD4 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FAD4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0250FAD4 */ if (_t69) goto L_0250FB14; else goto L_0250FAD8;
|
|
L_0250FAD8: ; // 0x250fad8
|
|
/* 0250FAD8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250FADC */ cpu->r[4] = cpu->r[31];
|
|
/* 0250FAE0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250FAE4 */ cpu->r[5] = cpu->r[5] + 0xFFFFF3B8u;
|
|
/* 0250FAE8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250FAEC */ cpu->r[6] = cpu->r[6] + 0xFFFFF4A0u;
|
|
/* 0250FAF0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250FAF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FAF8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250FAFC */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0250FAFC */ rbrew_write32(cpu->mem, _t70, cpu->r[28]);
|
|
/* 0250FB00 */ cpu->r[10] = 0x00000258u;
|
|
/* 0250FB04 */ _t71 = cpu->r[30] + 0x00000058u;
|
|
/* 0250FB04 */ rbrew_write32(cpu->mem, _t71, cpu->r[29]);
|
|
/* 0250FB08 */ cpu->r[0] = 0x000004B0u;
|
|
/* 0250FB0C */ _t72 = cpu->r[30] + 0x00000054u;
|
|
/* 0250FB0C */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0250FB10 */ _t73 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250FB10 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
L_0250FB14: ; // 0x250fb14
|
|
/* 0250FB14 */ cpu->r[30] = cpu->r[31] + 0x00000428u;
|
|
/* 0250FB14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FB18 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FB18 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0250FB18 */ if (_t75) goto L_0250FB1C; else goto L_0250FB2C;
|
|
L_0250FB1C: ; // 0x250fb1c
|
|
/* 0250FB1C */ cpu->r[3] = 0x00000060u;
|
|
/* 0250FB20 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FB24 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FB24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FB28 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FB28 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0250FB28 */ if (_t77) goto L_0250FB70; else goto L_0250FB2C;
|
|
L_0250FB2C: ; // 0x250fb2c
|
|
/* 0250FB2C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250FB30 */ cpu->r[4] = cpu->r[31];
|
|
/* 0250FB34 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250FB38 */ cpu->r[5] = cpu->r[5] + 0xFFFFF3D0u;
|
|
/* 0250FB3C */ cpu->r[8] = 0x00000000u;
|
|
/* 0250FB40 */ cpu->r[6] = cpu->r[6] + 0xFFFFF4B8u;
|
|
/* 0250FB44 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250FB48 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FB4C */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250FB50 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0250FB54 */ _t78 = cpu->r[30] + 0x00000000u;
|
|
/* 0250FB54 */ rbrew_write32(cpu->mem, _t78, cpu->r[27]);
|
|
/* 0250FB58 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0250FB5C */ _t79 = cpu->r[8] + 0xFFFFF364u;
|
|
/* 0250FB5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0250FB60 */ _t80 = cpu->r[12] + 0xFFFFF2F8u;
|
|
/* 0250FB60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0250FB64 */ _t81 = cpu->r[30] + 0x00000054u;
|
|
/* 0250FB64 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[11]);
|
|
/* 0250FB68 */ _t82 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250FB68 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 0250FB6C */ _t83 = cpu->r[30] + 0x00000058u;
|
|
/* 0250FB6C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[29]);
|
|
L_0250FB70: ; // 0x250fb70
|
|
/* 0250FB70 */ cpu->r[30] = cpu->r[31] + 0x00000488u;
|
|
/* 0250FB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FB74 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FB74 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0250FB74 */ if (_t85) goto L_0250FB78; else goto L_0250FB88;
|
|
L_0250FB78: ; // 0x250fb78
|
|
/* 0250FB78 */ cpu->r[3] = 0x00000060u;
|
|
/* 0250FB7C */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FB80 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FB80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0250FB84 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FB84 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0250FB84 */ if (_t87) goto L_0250FBC4; else goto L_0250FB88;
|
|
L_0250FB88: ; // 0x250fb88
|
|
/* 0250FB88 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0250FB8C */ cpu->r[4] = cpu->r[31];
|
|
/* 0250FB90 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0250FB94 */ cpu->r[5] = cpu->r[5] + 0xFFFFF3E4u;
|
|
/* 0250FB98 */ cpu->r[8] = 0x00000000u;
|
|
/* 0250FB9C */ cpu->r[6] = cpu->r[6] + 0xFFFFF4CCu;
|
|
/* 0250FBA0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0250FBA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FBA8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0250FBAC */ _t88 = cpu->r[30] + 0x00000000u;
|
|
/* 0250FBAC */ rbrew_write32(cpu->mem, _t88, cpu->r[28]);
|
|
/* 0250FBB0 */ cpu->r[8] = 0x0000000Fu;
|
|
/* 0250FBB4 */ _t89 = cpu->r[30] + 0x00000058u;
|
|
/* 0250FBB4 */ rbrew_write32(cpu->mem, _t89, cpu->r[29]);
|
|
/* 0250FBB8 */ cpu->r[0] = 0x0000003Cu;
|
|
/* 0250FBBC */ _t90 = cpu->r[30] + 0x00000054u;
|
|
/* 0250FBBC */ rbrew_write32(cpu->mem, _t90, cpu->r[8]);
|
|
/* 0250FBC0 */ _t91 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0250FBC0 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
L_0250FBC4: ; // 0x250fbc4
|
|
/* 0250FBC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250FBC8 */ /* nop */
|
|
/* 0250FBCC */ _t92 = cpu->r[1] + 0x00000028u;
|
|
/* 0250FBCC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0250FBD0 */ _t93 = cpu->r[1] + 0x00000038u;
|
|
/* 0250FBD0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0250FBD4 */ _t94 = cpu->r[1] + 0x00000020u;
|
|
/* 0250FBD4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t94);
|
|
/* 0250FBD8 */ _t95 = cpu->r[1] + 0x00000048u;
|
|
/* 0250FBD8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0250FBDC */ _t96 = cpu->r[1] + 0x00000030u;
|
|
/* 0250FBDC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t96);
|
|
/* 0250FBE0 */ _t97 = cpu->r[1] + 0x00000040u;
|
|
/* 0250FBE0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 0250FBE4 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FBE4 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0250FBE4 */ if (_t99) goto L_0250FBE8; // else: addr-0 trap, fall-through
|
|
L_0250FBE8: ; // 0x250fbe8
|
|
/* 0250FBE8 */ _t100 = cpu->r[1] + 0x00000054u;
|
|
/* 0250FBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0250FBEC */ cpu->lr = cpu->r[0];
|
|
/* 0250FBF0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0250FBF4 */ return;
|
|
}
|
|
|
|
// fn_0250FBF8 @ 0x250fbf8
|
|
void Gambit_fn_0250FBF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0250FBF8: ; // 0x250fbf8
|
|
/* 0250FBF8 */ cpu->r[0] = cpu->lr;
|
|
/* 0250FBFC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0250FBFC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0250FC00 */ cpu->r[3] = 0x000004E8u;
|
|
/* 0250FC04 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0250FC04 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0250FC04 */ cpu->r[1] = _t1;
|
|
/* 0250FC08 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FC0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FC10 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FC10 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0250FC10 */ rbrew_dispatch(cpu, (_t3) ? 0x0250fc14u : 0x0250f840u); return;
|
|
/* 0250FC14 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250FC18 */ cpu->lr = cpu->r[0];
|
|
/* 0250FC1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC20 */ return;
|
|
}
|
|
|
|
// fn_0250FC04 @ 0x250fc04
|
|
void Gambit_fn_0250FC04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0250FC04: ; // 0x250fc04
|
|
/* 0250FC04 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0250FC04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FC04 */ cpu->r[1] = _t0;
|
|
/* 0250FC08 */ Gambit_fn_02801A78(cpu);
|
|
/* 0250FC0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FC10 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FC10 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0250FC10 */ rbrew_dispatch(cpu, (_t2) ? 0x0250fc14u : 0x0250f840u); return;
|
|
/* 0250FC14 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FC18 */ cpu->lr = cpu->r[0];
|
|
/* 0250FC1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC20 */ return;
|
|
}
|
|
|
|
// fn_0250FC24 @ 0x250fc24
|
|
void Gambit_fn_0250FC24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0250FC24: ; // 0x250fc24
|
|
/* 0250FC24 */ cpu->r[0] = cpu->lr;
|
|
/* 0250FC28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FC28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FC28 */ cpu->r[1] = _t0;
|
|
/* 0250FC2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FC30 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FC34 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC34 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0250FC38 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 0250FC3C */ cpu->r[30] = cpu->r[4];
|
|
/* 0250FC40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FC40 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250FC44 */ Gambit_fn_0204DB84(cpu);
|
|
/* 0250FC48 */ _t4 = cpu->r[31] + 0x00000274u;
|
|
/* 0250FC48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250FC4C */ _t5 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0250FC4C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 0250FC50 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250FC54 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250FC58 */ cpu->lr = cpu->r[0];
|
|
/* 0250FC5C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250FC60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FC64 */ return;
|
|
}
|
|
|
|
// fn_0250FC28 @ 0x250fc28
|
|
void Gambit_fn_0250FC28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0250FC28: ; // 0x250fc28
|
|
/* 0250FC28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FC28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FC28 */ cpu->r[1] = _t0;
|
|
/* 0250FC2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FC30 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FC34 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC34 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0250FC38 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 0250FC3C */ cpu->r[30] = cpu->r[4];
|
|
/* 0250FC40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FC40 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250FC44 */ Gambit_fn_0204DB84(cpu);
|
|
/* 0250FC48 */ _t4 = cpu->r[31] + 0x00000274u;
|
|
/* 0250FC48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0250FC4C */ _t5 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0250FC4C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 0250FC50 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250FC54 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250FC58 */ cpu->lr = cpu->r[0];
|
|
/* 0250FC5C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250FC60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FC64 */ return;
|
|
}
|
|
|
|
// fn_0250FC68 @ 0x250fc68
|
|
void Gambit_fn_0250FC68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0250FC68: ; // 0x250fc68
|
|
/* 0250FC68 */ cpu->r[0] = cpu->lr;
|
|
/* 0250FC6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FC6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FC6C */ cpu->r[1] = _t0;
|
|
/* 0250FC70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FC74 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC74 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0250FC78 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FC7C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FC7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250FC80 */ _t4 = cpu->r[31] + 0x000001BCu;
|
|
/* 0250FC80 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250FC84 */ /* nop */
|
|
/* 0250FC88 */ cpu->r[30] = cpu->r[4];
|
|
/* 0250FC8C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FC8C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250FC8C */ if (_t6) goto L_0250FCA4; else goto L_0250FC90;
|
|
L_0250FC90: ; // 0x250fc90
|
|
/* 0250FC90 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 0250FC94 */ cpu->r[4] = cpu->r[30];
|
|
/* 0250FC98 */ Gambit_fn_0204DEB0(cpu);
|
|
/* 0250FC9C */ _t7 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0250FC9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0250FCA0 */ _t8 = cpu->r[31] + 0x00000274u;
|
|
/* 0250FCA0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
L_0250FCA4: ; // 0x250fca4
|
|
/* 0250FCA4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FCA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250FCA8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FCA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250FCAC */ cpu->lr = cpu->r[0];
|
|
/* 0250FCB0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FCB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250FCB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FCB8 */ return;
|
|
}
|
|
|
|
// fn_0250FC6C @ 0x250fc6c
|
|
void Gambit_fn_0250FC6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0250FC6C: ; // 0x250fc6c
|
|
/* 0250FC6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FC6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FC6C */ cpu->r[1] = _t0;
|
|
/* 0250FC70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FC70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FC74 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FC74 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0250FC78 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FC7C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FC7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0250FC80 */ _t4 = cpu->r[31] + 0x000001BCu;
|
|
/* 0250FC80 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250FC84 */ /* nop */
|
|
/* 0250FC88 */ cpu->r[30] = cpu->r[4];
|
|
/* 0250FC8C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FC8C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250FC8C */ if (_t6) goto L_0250FCA4; else goto L_0250FC90;
|
|
L_0250FC90: ; // 0x250fc90
|
|
/* 0250FC90 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 0250FC94 */ cpu->r[4] = cpu->r[30];
|
|
/* 0250FC98 */ Gambit_fn_0204DEB0(cpu);
|
|
/* 0250FC9C */ _t7 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0250FC9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0250FCA0 */ _t8 = cpu->r[31] + 0x00000274u;
|
|
/* 0250FCA0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
L_0250FCA4: ; // 0x250fca4
|
|
/* 0250FCA4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FCA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0250FCA8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0250FCA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250FCAC */ cpu->lr = cpu->r[0];
|
|
/* 0250FCB0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FCB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0250FCB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FCB8 */ return;
|
|
}
|
|
|
|
// fn_0250FCBC @ 0x250fcbc
|
|
void Gambit_fn_0250FCBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0250FCBC: ; // 0x250fcbc
|
|
/* 0250FCBC */ cpu->r[0] = cpu->lr;
|
|
/* 0250FCC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FCC0 */ cpu->r[1] = _t0;
|
|
/* 0250FCC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FCC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FCC8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250FCCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FCCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250FCD0 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0250FCD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FCD4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FCD8 */ _t4 = cpu->r[12] + 0x00000268u;
|
|
/* 0250FCD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250FCDC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0250FCE0 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 0250FCE4 */ _t5 = cpu->r[31] + 0x00000280u;
|
|
/* 0250FCE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0250FCE8 */ Gambit_fn_025C77BC(cpu);
|
|
/* 0250FCEC */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0250FCF0 */ cpu->r[4] = 0x00000001u;
|
|
/* 0250FCF4 */ Gambit_fn_021FC9F0(cpu);
|
|
/* 0250FCF8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FCF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250FCFC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FCFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250FD00 */ cpu->lr = cpu->r[0];
|
|
/* 0250FD04 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FD08 */ return;
|
|
}
|
|
|
|
// fn_0250FCC0 @ 0x250fcc0
|
|
void Gambit_fn_0250FCC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0250FCC0: ; // 0x250fcc0
|
|
/* 0250FCC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FCC0 */ cpu->r[1] = _t0;
|
|
/* 0250FCC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FCC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FCC8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250FCCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FCCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250FCD0 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0250FCD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FCD4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FCD8 */ _t4 = cpu->r[12] + 0x00000268u;
|
|
/* 0250FCD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250FCDC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0250FCE0 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 0250FCE4 */ _t5 = cpu->r[31] + 0x00000280u;
|
|
/* 0250FCE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0250FCE8 */ Gambit_fn_025C77BC(cpu);
|
|
/* 0250FCEC */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0250FCF0 */ cpu->r[4] = 0x00000001u;
|
|
/* 0250FCF4 */ Gambit_fn_021FC9F0(cpu);
|
|
/* 0250FCF8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FCF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0250FCFC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FCFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250FD00 */ cpu->lr = cpu->r[0];
|
|
/* 0250FD04 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FD08 */ return;
|
|
}
|
|
|
|
// fn_0250FD0C @ 0x250fd0c
|
|
void Gambit_fn_0250FD0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0250FD0C: ; // 0x250fd0c
|
|
/* 0250FD0C */ cpu->r[0] = cpu->lr;
|
|
/* 0250FD10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FD10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FD10 */ cpu->r[1] = _t0;
|
|
/* 0250FD14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FD14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FD18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FD1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FD1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250FD20 */ _t3 = cpu->r[31] + 0x00000280u;
|
|
/* 0250FD20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FD24 */ _t4 = cpu->r[3] + 0x00000724u;
|
|
/* 0250FD24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250FD28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FD2C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FD2C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250FD2C */ if (_t6) goto L_0250FD3C; else goto L_0250FD30;
|
|
L_0250FD30: ; // 0x250fd30
|
|
/* 0250FD30 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0250FD34 */ cpu->r[4] = cpu->r[4] + 0x00006338u;
|
|
/* 0250FD38 */ Gambit_fn_025C7868(cpu);
|
|
L_0250FD3C: ; // 0x250fd3c
|
|
/* 0250FD3C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0250FD40 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250FD44 */ Gambit_fn_021FC9F0(cpu);
|
|
/* 0250FD48 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FD48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250FD4C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FD4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250FD50 */ cpu->lr = cpu->r[0];
|
|
/* 0250FD54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FD58 */ return;
|
|
}
|
|
|
|
// fn_0250FD10 @ 0x250fd10
|
|
void Gambit_fn_0250FD10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0250FD10: ; // 0x250fd10
|
|
/* 0250FD10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0250FD10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FD10 */ cpu->r[1] = _t0;
|
|
/* 0250FD14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FD14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0250FD18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FD1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FD1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0250FD20 */ _t3 = cpu->r[31] + 0x00000280u;
|
|
/* 0250FD20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FD24 */ _t4 = cpu->r[3] + 0x00000724u;
|
|
/* 0250FD24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0250FD28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FD2C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FD2C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0250FD2C */ if (_t6) goto L_0250FD3C; else goto L_0250FD30;
|
|
L_0250FD30: ; // 0x250fd30
|
|
/* 0250FD30 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0250FD34 */ cpu->r[4] = cpu->r[4] + 0x00006338u;
|
|
/* 0250FD38 */ Gambit_fn_025C7868(cpu);
|
|
L_0250FD3C: ; // 0x250fd3c
|
|
/* 0250FD3C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0250FD40 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250FD44 */ Gambit_fn_021FC9F0(cpu);
|
|
/* 0250FD48 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0250FD48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0250FD4C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0250FD4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0250FD50 */ cpu->lr = cpu->r[0];
|
|
/* 0250FD54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0250FD58 */ return;
|
|
}
|
|
|
|
// fn_0250FD5C @ 0x250fd5c
|
|
void Gambit_fn_0250FD5C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0250FD5C: ; // 0x250fd5c
|
|
/* 0250FD5C */ cpu->r[0] = 0x00000001u;
|
|
/* 0250FD60 */ _t0 = cpu->r[3] + 0x000002C0u;
|
|
/* 0250FD60 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0250FD64 */ return;
|
|
}
|
|
|
|
// fn_0250FD68 @ 0x250fd68
|
|
void Gambit_fn_0250FD68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_0250FD68: ; // 0x250fd68
|
|
/* 0250FD68 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0250FD68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FD68 */ cpu->r[1] = _t0;
|
|
/* 0250FD6C */ /* nop */
|
|
/* 0250FD70 */ cpu->r[0] = cpu->lr;
|
|
/* 0250FD74 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250FD74 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0250FD78 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250FD7C */ cpu->r[11] = 0x101C0000u;
|
|
/* 0250FD80 */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 0250FD80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0250FD84 */ cpu->r[29] = cpu->r[4];
|
|
/* 0250FD88 */ _t3 = cpu->r[11] + 0x00005134u;
|
|
/* 0250FD88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FD8C */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FD90 */ _t4 = cpu->r[12] + 0x00000274u;
|
|
/* 0250FD90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250FD94 */ cpu->r[8] = cpu->r[3] + cpu->r[11];
|
|
/* 0250FD98 */ _t5 = cpu->r[8] + 0x00000104u;
|
|
/* 0250FD98 */ cpu->r[4] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0250FD9C */ cpu->r[27] = cpu->r[5];
|
|
/* 0250FDA0 */ cpu->r[28] = cpu->r[6];
|
|
/* 0250FDA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 0250FDA8 */ cpu->r[31] = cpu->r[7];
|
|
/* 0250FDAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FDAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250FDAC */ if (_t7) goto L_0250FF80; else goto L_0250FDB0;
|
|
L_0250FDB0: ; // 0x250fdb0
|
|
/* 0250FDB0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250FDB4 */ cpu->r[7] = cpu->r[31];
|
|
/* 0250FDB8 */ cpu->r[6] = cpu->r[28];
|
|
/* 0250FDBC */ Gambit_fn_021F000C(cpu);
|
|
/* 0250FDC0 */ cpu->r[26] = cpu->r[3];
|
|
/* 0250FDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0250FDC4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FDC4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250FDC4 */ if (_t9) goto L_0250FF80; else goto L_0250FDC8;
|
|
L_0250FDC8: ; // 0x250fdc8
|
|
/* 0250FDC8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0250FDCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0250FDD0 */ _t10 = cpu->r[9] + 0xFFFF9918u;
|
|
/* 0250FDD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250FDD4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FDD4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0250FDD4 */ if (_t12) goto L_0250FE24; else goto L_0250FDD8;
|
|
L_0250FDD8: ; // 0x250fdd8
|
|
/* 0250FDD8 */ Gambit_fn_02830138(cpu);
|
|
/* 0250FDDC */ cpu->r[9] = cpu->r[3];
|
|
/* 0250FDE0 */ cpu->r[8] = cpu->r[31];
|
|
/* 0250FDE4 */ cpu->r[7] = cpu->r[28];
|
|
/* 0250FDE8 */ cpu->r[6] = cpu->r[27];
|
|
/* 0250FDEC */ cpu->r[5] = cpu->r[27];
|
|
/* 0250FDF0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0250FDF4 */ cpu->r[3] = cpu->r[26];
|
|
/* 0250FDF8 */ Gambit_fn_021FCD24(cpu);
|
|
/* 0250FDFC */ cpu->r[26] = 0x101D0000u;
|
|
/* 0250FE00 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0250FE04 */ _t13 = cpu->r[30] + 0x000002B8u;
|
|
/* 0250FE04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0250FE08 */ cpu->r[26] = cpu->r[26] + 0xFFFFFE84u;
|
|
/* 0250FE0C */ cpu->r[25] = cpu->r[25] + 0x000009ACu;
|
|
/* 0250FE10 */ cpu->r[28] = 0x100C0000u;
|
|
/* 0250FE14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FE18 */ cpu->r[28] = cpu->r[28] + 0xFFFFF0C8u;
|
|
/* 0250FE1C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE1C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250FE1C */ if (_t15) goto L_0250FECC; else goto L_0250FE20;
|
|
L_0250FE20: ; // 0x250fe20
|
|
/* 0250FE20 */ goto L_0250FE6C;
|
|
L_0250FE24: ; // 0x250fe24
|
|
/* 0250FE24 */ Gambit_fn_02830138(cpu);
|
|
/* 0250FE28 */ cpu->r[9] = cpu->r[3];
|
|
/* 0250FE2C */ cpu->r[8] = cpu->r[31];
|
|
/* 0250FE30 */ cpu->r[7] = cpu->r[28];
|
|
/* 0250FE34 */ cpu->r[6] = cpu->r[27];
|
|
/* 0250FE38 */ cpu->r[5] = cpu->r[27];
|
|
/* 0250FE3C */ cpu->r[4] = cpu->r[30];
|
|
/* 0250FE40 */ cpu->r[3] = cpu->r[26];
|
|
/* 0250FE44 */ Gambit_fn_021FCD30(cpu);
|
|
/* 0250FE48 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0250FE4C */ cpu->r[25] = 0x101D0000u;
|
|
/* 0250FE50 */ _t16 = cpu->r[30] + 0x000002B8u;
|
|
/* 0250FE50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0250FE54 */ cpu->r[26] = cpu->r[26] + 0xFFFFFE84u;
|
|
/* 0250FE58 */ cpu->r[25] = cpu->r[25] + 0x000009ACu;
|
|
/* 0250FE5C */ cpu->r[28] = 0x100C0000u;
|
|
/* 0250FE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FE64 */ cpu->r[28] = cpu->r[28] + 0xFFFFF0C8u;
|
|
/* 0250FE68 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE68 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250FE68 */ if (_t18) goto L_0250FECC; else goto L_0250FE6C;
|
|
L_0250FE6C: ; // 0x250fe6c
|
|
/* 0250FE6C */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FE70 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250FE74 */ _t19 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FE74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0250FE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FE7C */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FE80 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE80 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0250FE80 */ if (_t21) goto L_0250FE84; else goto L_0250FE90;
|
|
L_0250FE84: ; // 0x250fe84
|
|
/* 0250FE84 */ _t22 = cpu->r[25] + 0x00000000u;
|
|
/* 0250FE84 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 0250FE88 */ cpu->r[8] = 0x00000001u;
|
|
/* 0250FE8C */ _t23 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FE8C */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
L_0250FE90: ; // 0x250fe90
|
|
/* 0250FE90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250FE94 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE94 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0250FE94 */ if (_t25) goto L_0250FEB8; else goto L_0250FE98;
|
|
L_0250FE98: ; // 0x250fe98
|
|
/* 0250FE98 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 0250FE98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0250FE9C */ _t27 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0250FE9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0250FEA0 */ cpu->ctr = cpu->r[0];
|
|
/* 0250FEA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250FEA8 */ cpu->r[4] = cpu->r[25];
|
|
/* 0250FEAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250FEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FEB4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FEB4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0250FEB4 */ if (_t29) goto L_0250FEB8; else goto L_0250FEBC;
|
|
L_0250FEB8: ; // 0x250feb8
|
|
/* 0250FEB8 */ cpu->r[31] = 0x00000000u;
|
|
L_0250FEBC: ; // 0x250febc
|
|
/* 0250FEBC */ _t30 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0250FEBC */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0250FEC0 */ cpu->r[4] = cpu->r[27];
|
|
/* 0250FEC4 */ _t31 = cpu->r[30] + 0x000002B8u;
|
|
/* 0250FEC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0250FEC8 */ Gambit_fn_0256BFD4(cpu);
|
|
L_0250FECC: ; // 0x250fecc
|
|
/* 0250FECC */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FED0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250FED4 */ _t32 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0250FED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FEDC */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FEE0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FEE0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0250FEE0 */ if (_t34) goto L_0250FEE4; else goto L_0250FEF0;
|
|
L_0250FEE4: ; // 0x250fee4
|
|
/* 0250FEE4 */ _t35 = cpu->r[25] + 0x00000000u;
|
|
/* 0250FEE4 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 0250FEE8 */ cpu->r[7] = 0x00000001u;
|
|
/* 0250FEEC */ _t36 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FEEC */ rbrew_write32(cpu->mem, _t36, cpu->r[7]);
|
|
L_0250FEF0: ; // 0x250fef0
|
|
/* 0250FEF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250FEF4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FEF4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250FEF4 */ if (_t38) goto L_0250FF18; else goto L_0250FEF8;
|
|
L_0250FEF8: ; // 0x250fef8
|
|
/* 0250FEF8 */ _t39 = cpu->r[31] + 0x00000000u;
|
|
/* 0250FEF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250FEFC */ _t40 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0250FEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250FF00 */ cpu->ctr = cpu->r[0];
|
|
/* 0250FF04 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250FF08 */ cpu->r[4] = cpu->r[25];
|
|
/* 0250FF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250FF10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FF14 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF14 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0250FF14 */ if (_t42) goto L_0250FF18; else goto L_0250FF1C;
|
|
L_0250FF18: ; // 0x250ff18
|
|
/* 0250FF18 */ cpu->r[31] = 0x00000000u;
|
|
L_0250FF1C: ; // 0x250ff1c
|
|
/* 0250FF1C */ _t43 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250FF1C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0250FF20 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250FF24 */ _t44 = cpu->r[31] + 0x0000047Cu;
|
|
/* 0250FF24 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0250FF28 */ cpu->f[11] = cpu->f[10] + cpu->f[12];
|
|
/* 0250FF2C */ _t45 = cpu->r[11] + 0xFFFFF2F8u;
|
|
/* 0250FF2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0250FF30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0250FF34 */ cpu->f[13] = cpu->f[11];
|
|
/* 0250FF38 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FF38 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0250FF38 */ if (_t47) goto L_0250FF3C; else goto L_0250FF4C;
|
|
L_0250FF3C: ; // 0x250ff3c
|
|
/* 0250FF3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0250FF40 */ _t48 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250FF40 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0250FF44 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FF44 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0250FF44 */ if (_t50) goto L_0250FF60; else goto L_0250FF48;
|
|
L_0250FF48: ; // 0x250ff48
|
|
/* 0250FF48 */ goto L_0250FF80;
|
|
L_0250FF4C: ; // 0x250ff4c
|
|
/* 0250FF4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0250FF50 */ _t51 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250FF50 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 0250FF54 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF54 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0250FF54 */ if (_t53) goto L_0250FF58; else goto L_0250FF80;
|
|
L_0250FF58: ; // 0x250ff58
|
|
/* 0250FF58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0250FF5C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FF5C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0250FF5C */ if (_t55) goto L_0250FF60; else goto L_0250FF80;
|
|
L_0250FF60: ; // 0x250ff60
|
|
/* 0250FF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0250FF64 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF64 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0250FF64 */ if (_t57) goto L_0250FF80; else goto L_0250FF68;
|
|
L_0250FF68: ; // 0x250ff68
|
|
/* 0250FF68 */ _t58 = cpu->r[30] + 0x000002B4u;
|
|
/* 0250FF68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0250FF6C */ Gambit_fn_02512CAC(cpu);
|
|
/* 0250FF70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FF74 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF74 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0250FF74 */ if (_t60) goto L_0250FF80; else goto L_0250FF78;
|
|
L_0250FF78: ; // 0x250ff78
|
|
/* 0250FF78 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FF7C */ Gambit_fn_0250FD5C(cpu);
|
|
L_0250FF80: ; // 0x250ff80
|
|
/* 0250FF80 */ /* nop */
|
|
/* 0250FF84 */ _t61 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250FF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0250FF88 */ cpu->lr = cpu->r[0];
|
|
/* 0250FF8C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0250FF90 */ return;
|
|
}
|
|
|
|
// fn_0250FF94 @ 0x250ff94
|
|
void Gambit_fn_0250FF94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_0250FD68: ; // 0x250fd68
|
|
/* 0250FD68 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0250FD68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FD68 */ cpu->r[1] = _t0;
|
|
/* 0250FD6C */ /* nop */
|
|
/* 0250FD70 */ cpu->r[0] = cpu->lr;
|
|
/* 0250FD74 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250FD74 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0250FD78 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0250FD7C */ cpu->r[11] = 0x101C0000u;
|
|
/* 0250FD80 */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 0250FD80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0250FD84 */ cpu->r[29] = cpu->r[4];
|
|
/* 0250FD88 */ _t3 = cpu->r[11] + 0x00005134u;
|
|
/* 0250FD88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0250FD8C */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FD90 */ _t4 = cpu->r[12] + 0x00000274u;
|
|
/* 0250FD90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0250FD94 */ cpu->r[8] = cpu->r[3] + cpu->r[11];
|
|
/* 0250FD98 */ _t5 = cpu->r[8] + 0x00000104u;
|
|
/* 0250FD98 */ cpu->r[4] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0250FD9C */ cpu->r[27] = cpu->r[5];
|
|
/* 0250FDA0 */ cpu->r[28] = cpu->r[6];
|
|
/* 0250FDA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 0250FDA8 */ cpu->r[31] = cpu->r[7];
|
|
/* 0250FDAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FDAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0250FDAC */ if (_t7) goto L_0250FF80; else goto L_0250FDB0;
|
|
L_0250FDB0: ; // 0x250fdb0
|
|
/* 0250FDB0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0250FDB4 */ cpu->r[7] = cpu->r[31];
|
|
/* 0250FDB8 */ cpu->r[6] = cpu->r[28];
|
|
/* 0250FDBC */ Gambit_fn_021F000C(cpu);
|
|
/* 0250FDC0 */ cpu->r[26] = cpu->r[3];
|
|
/* 0250FDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0250FDC4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FDC4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0250FDC4 */ if (_t9) goto L_0250FF80; else goto L_0250FDC8;
|
|
L_0250FDC8: ; // 0x250fdc8
|
|
/* 0250FDC8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0250FDCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0250FDD0 */ _t10 = cpu->r[9] + 0xFFFF9918u;
|
|
/* 0250FDD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0250FDD4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FDD4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0250FDD4 */ if (_t12) goto L_0250FE24; else goto L_0250FDD8;
|
|
L_0250FDD8: ; // 0x250fdd8
|
|
/* 0250FDD8 */ Gambit_fn_02830138(cpu);
|
|
/* 0250FDDC */ cpu->r[9] = cpu->r[3];
|
|
/* 0250FDE0 */ cpu->r[8] = cpu->r[31];
|
|
/* 0250FDE4 */ cpu->r[7] = cpu->r[28];
|
|
/* 0250FDE8 */ cpu->r[6] = cpu->r[27];
|
|
/* 0250FDEC */ cpu->r[5] = cpu->r[27];
|
|
/* 0250FDF0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0250FDF4 */ cpu->r[3] = cpu->r[26];
|
|
/* 0250FDF8 */ Gambit_fn_021FCD24(cpu);
|
|
/* 0250FDFC */ cpu->r[26] = 0x101D0000u;
|
|
/* 0250FE00 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0250FE04 */ _t13 = cpu->r[30] + 0x000002B8u;
|
|
/* 0250FE04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0250FE08 */ cpu->r[26] = cpu->r[26] + 0xFFFFFE84u;
|
|
/* 0250FE0C */ cpu->r[25] = cpu->r[25] + 0x000009ACu;
|
|
/* 0250FE10 */ cpu->r[28] = 0x100C0000u;
|
|
/* 0250FE14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FE18 */ cpu->r[28] = cpu->r[28] + 0xFFFFF0C8u;
|
|
/* 0250FE1C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE1C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0250FE1C */ if (_t15) goto L_0250FECC; else goto L_0250FE20;
|
|
L_0250FE20: ; // 0x250fe20
|
|
/* 0250FE20 */ goto L_0250FE6C;
|
|
L_0250FE24: ; // 0x250fe24
|
|
/* 0250FE24 */ Gambit_fn_02830138(cpu);
|
|
/* 0250FE28 */ cpu->r[9] = cpu->r[3];
|
|
/* 0250FE2C */ cpu->r[8] = cpu->r[31];
|
|
/* 0250FE30 */ cpu->r[7] = cpu->r[28];
|
|
/* 0250FE34 */ cpu->r[6] = cpu->r[27];
|
|
/* 0250FE38 */ cpu->r[5] = cpu->r[27];
|
|
/* 0250FE3C */ cpu->r[4] = cpu->r[30];
|
|
/* 0250FE40 */ cpu->r[3] = cpu->r[26];
|
|
/* 0250FE44 */ Gambit_fn_021FCD30(cpu);
|
|
/* 0250FE48 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0250FE4C */ cpu->r[25] = 0x101D0000u;
|
|
/* 0250FE50 */ _t16 = cpu->r[30] + 0x000002B8u;
|
|
/* 0250FE50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0250FE54 */ cpu->r[26] = cpu->r[26] + 0xFFFFFE84u;
|
|
/* 0250FE58 */ cpu->r[25] = cpu->r[25] + 0x000009ACu;
|
|
/* 0250FE5C */ cpu->r[28] = 0x100C0000u;
|
|
/* 0250FE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FE64 */ cpu->r[28] = cpu->r[28] + 0xFFFFF0C8u;
|
|
/* 0250FE68 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE68 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0250FE68 */ if (_t18) goto L_0250FECC; else goto L_0250FE6C;
|
|
L_0250FE6C: ; // 0x250fe6c
|
|
/* 0250FE6C */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FE70 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250FE74 */ _t19 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FE74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0250FE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FE7C */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FE80 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE80 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0250FE80 */ if (_t21) goto L_0250FE84; else goto L_0250FE90;
|
|
L_0250FE84: ; // 0x250fe84
|
|
/* 0250FE84 */ _t22 = cpu->r[25] + 0x00000000u;
|
|
/* 0250FE84 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 0250FE88 */ cpu->r[8] = 0x00000001u;
|
|
/* 0250FE8C */ _t23 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FE8C */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
L_0250FE90: ; // 0x250fe90
|
|
/* 0250FE90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250FE94 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FE94 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0250FE94 */ if (_t25) goto L_0250FEB8; else goto L_0250FE98;
|
|
L_0250FE98: ; // 0x250fe98
|
|
/* 0250FE98 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 0250FE98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0250FE9C */ _t27 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0250FE9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0250FEA0 */ cpu->ctr = cpu->r[0];
|
|
/* 0250FEA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250FEA8 */ cpu->r[4] = cpu->r[25];
|
|
/* 0250FEAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250FEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FEB4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FEB4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0250FEB4 */ if (_t29) goto L_0250FEB8; else goto L_0250FEBC;
|
|
L_0250FEB8: ; // 0x250feb8
|
|
/* 0250FEB8 */ cpu->r[31] = 0x00000000u;
|
|
L_0250FEBC: ; // 0x250febc
|
|
/* 0250FEBC */ _t30 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0250FEBC */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0250FEC0 */ cpu->r[4] = cpu->r[27];
|
|
/* 0250FEC4 */ _t31 = cpu->r[30] + 0x000002B8u;
|
|
/* 0250FEC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0250FEC8 */ Gambit_fn_0256BFD4(cpu);
|
|
L_0250FECC: ; // 0x250fecc
|
|
/* 0250FECC */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FED0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0250FED4 */ _t32 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0250FED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0250FEDC */ cpu->r[31] = cpu->r[3];
|
|
/* 0250FEE0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FEE0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0250FEE0 */ if (_t34) goto L_0250FEE4; else goto L_0250FEF0;
|
|
L_0250FEE4: ; // 0x250fee4
|
|
/* 0250FEE4 */ _t35 = cpu->r[25] + 0x00000000u;
|
|
/* 0250FEE4 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 0250FEE8 */ cpu->r[7] = 0x00000001u;
|
|
/* 0250FEEC */ _t36 = cpu->r[26] + 0x00000000u;
|
|
/* 0250FEEC */ rbrew_write32(cpu->mem, _t36, cpu->r[7]);
|
|
L_0250FEF0: ; // 0x250fef0
|
|
/* 0250FEF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0250FEF4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FEF4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0250FEF4 */ if (_t38) goto L_0250FF18; else goto L_0250FEF8;
|
|
L_0250FEF8: ; // 0x250fef8
|
|
/* 0250FEF8 */ _t39 = cpu->r[31] + 0x00000000u;
|
|
/* 0250FEF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0250FEFC */ _t40 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0250FEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0250FF00 */ cpu->ctr = cpu->r[0];
|
|
/* 0250FF04 */ cpu->r[3] = cpu->r[31];
|
|
/* 0250FF08 */ cpu->r[4] = cpu->r[25];
|
|
/* 0250FF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0250FF10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FF14 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF14 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0250FF14 */ if (_t42) goto L_0250FF18; else goto L_0250FF1C;
|
|
L_0250FF18: ; // 0x250ff18
|
|
/* 0250FF18 */ cpu->r[31] = 0x00000000u;
|
|
L_0250FF1C: ; // 0x250ff1c
|
|
/* 0250FF1C */ _t43 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250FF1C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0250FF20 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0250FF24 */ _t44 = cpu->r[31] + 0x0000047Cu;
|
|
/* 0250FF24 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0250FF28 */ cpu->f[11] = cpu->f[10] + cpu->f[12];
|
|
/* 0250FF2C */ _t45 = cpu->r[11] + 0xFFFFF2F8u;
|
|
/* 0250FF2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0250FF30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0250FF34 */ cpu->f[13] = cpu->f[11];
|
|
/* 0250FF38 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FF38 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0250FF38 */ if (_t47) goto L_0250FF3C; else goto L_0250FF4C;
|
|
L_0250FF3C: ; // 0x250ff3c
|
|
/* 0250FF3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0250FF40 */ _t48 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250FF40 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0250FF44 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FF44 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0250FF44 */ if (_t50) goto L_0250FF60; else goto L_0250FF48;
|
|
L_0250FF48: ; // 0x250ff48
|
|
/* 0250FF48 */ goto L_0250FF80;
|
|
L_0250FF4C: ; // 0x250ff4c
|
|
/* 0250FF4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0250FF50 */ _t51 = cpu->r[30] + 0x000002BCu;
|
|
/* 0250FF50 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 0250FF54 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF54 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0250FF54 */ if (_t53) goto L_0250FF58; else goto L_0250FF80;
|
|
L_0250FF58: ; // 0x250ff58
|
|
/* 0250FF58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0250FF5C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0250FF5C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0250FF5C */ if (_t55) goto L_0250FF60; else goto L_0250FF80;
|
|
L_0250FF60: ; // 0x250ff60
|
|
/* 0250FF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0250FF64 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF64 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0250FF64 */ if (_t57) goto L_0250FF80; else goto L_0250FF68;
|
|
L_0250FF68: ; // 0x250ff68
|
|
/* 0250FF68 */ _t58 = cpu->r[30] + 0x000002B4u;
|
|
/* 0250FF68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0250FF6C */ Gambit_fn_02512CAC(cpu);
|
|
/* 0250FF70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0250FF74 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0250FF74 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0250FF74 */ if (_t60) goto L_0250FF80; else goto L_0250FF78;
|
|
L_0250FF78: ; // 0x250ff78
|
|
/* 0250FF78 */ cpu->r[3] = cpu->r[30];
|
|
/* 0250FF7C */ Gambit_fn_0250FD5C(cpu);
|
|
L_0250FF80: ; // 0x250ff80
|
|
/* 0250FF80 */ /* nop */
|
|
/* 0250FF84 */ _t61 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0250FF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0250FF88 */ cpu->lr = cpu->r[0];
|
|
/* 0250FF8C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0250FF90 */ return;
|
|
L_0250FF94: ; // 0x250ff94
|
|
/* 0250FF94 */ cpu->r[7] = cpu->r[6];
|
|
/* 0250FF98 */ cpu->r[6] = cpu->r[5];
|
|
/* 0250FF9C */ cpu->r[5] = cpu->r[4];
|
|
/* 0250FFA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0250FFA4 */ _t62 = cpu->r[3] + 0x000002C0u;
|
|
/* 0250FFA4 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[4]);
|
|
/* 0250FFA8 */ goto L_0250FD68;
|
|
}
|
|
|
|
// fn_0250FFAC @ 0x250ffac
|
|
void Gambit_fn_0250FFAC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0250FD5C: ; // 0x250fd5c
|
|
/* 0250FD5C */ cpu->r[0] = 0x00000001u;
|
|
/* 0250FD60 */ _t0 = cpu->r[3] + 0x000002C0u;
|
|
/* 0250FD60 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0250FD64 */ return;
|
|
L_0250FFAC: ; // 0x250ffac
|
|
/* 0250FFAC */ goto L_0250FD5C;
|
|
}
|
|
|
|
// fn_0250FFD4 @ 0x250ffd4
|
|
void Gambit_fn_0250FFD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132;
|
|
|
|
L_0250FFD4: ; // 0x250ffd4
|
|
/* 0250FFD4 */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 0250FFD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0250FFD4 */ cpu->r[1] = _t0;
|
|
/* 0250FFD8 */ cpu->r[0] = cpu->lr;
|
|
/* 0250FFDC */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 0250FFDC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0250FFE0 */ _t2 = cpu->r[1] + 0x000000A8u;
|
|
/* 0250FFE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0250FFE4 */ /* nop */
|
|
/* 0250FFE8 */ _t3 = cpu->r[1] + 0x000000ACu;
|
|
/* 0250FFE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0250FFEC */ _t4 = cpu->r[1] + 0x000000B8u;
|
|
/* 0250FFEC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0250FFF0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0250FFF4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0250FFF8 */ _t5 = cpu->r[1] + 0x000000A4u;
|
|
/* 0250FFF8 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0250FFFC */ _t6 = cpu->r[1] + 0x000000C4u;
|
|
/* 0250FFFC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02510000 */ _t7 = cpu->r[30] + 0x00000220u;
|
|
/* 02510000 */ cpu->r[29] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t7);
|
|
/* 02510004 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510008 */ cpu->r[4] = cpu->r[29];
|
|
/* 0251000C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02510010 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02510010 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02510014 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[8]);
|
|
/* 02510018 */ cpu->r[8] = 0x00000000u;
|
|
/* 0251001C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251001C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0251001C */ if (_t10) goto L_02510020; else goto L_0251002C;
|
|
L_02510020: ; // 0x2510020
|
|
/* 02510020 */ _t11 = cpu->r[31] + 0x00000024u;
|
|
/* 02510020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02510024 */ cpu->r[9] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02510028 */ _t12 = cpu->r[9] + cpu->r[0];
|
|
/* 02510028 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
L_0251002C: ; // 0x251002c
|
|
/* 0251002C */ _t13 = cpu->r[8] + 0x00000000u;
|
|
/* 0251002C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02510030 */ _t14 = cpu->r[3] + 0x00000088u;
|
|
/* 02510030 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02510034 */ _t15 = cpu->r[12] + 0x00000064u;
|
|
/* 02510034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02510038 */ cpu->ctr = cpu->r[0];
|
|
/* 0251003C */ _t16 = cpu->r[30] + 0x00000222u;
|
|
/* 0251003C */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t16);
|
|
/* 02510040 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02510044 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02510048 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251004C */ _t17 = cpu->r[30] + 0x0000026Cu;
|
|
/* 0251004C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02510050 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02510054 */ _t18 = cpu->r[6] + 0x0000635Cu;
|
|
/* 02510054 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02510054 */ cpu->r[6] = _t18;
|
|
/* 02510058 */ _t19 = cpu->r[6] + 0x00000008u;
|
|
/* 02510058 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0251005C */ cpu->f[11] = cpu->f[7] * cpu->f[12];
|
|
/* 02510060 */ _t20 = cpu->r[30] + 0x00000264u;
|
|
/* 02510060 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02510064 */ cpu->f[13] = cpu->f[0] * cpu->f[12];
|
|
/* 02510068 */ cpu->f[1] = fma(cpu->f[0], cpu->f[8], -(cpu->f[11]));
|
|
/* 0251006C */ cpu->f[2] = fma(cpu->f[7], cpu->f[8], cpu->f[13]);
|
|
/* 02510070 */ Gambit_fn_02C89074(cpu);
|
|
/* 02510074 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02510078 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0251007C */ _t21 = cpu->r[11] + 0xFFFFEFB0u;
|
|
/* 0251007C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02510080 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510080 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[1]);
|
|
/* 02510084 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02510084 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[31]);
|
|
/* 02510088 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0251008C */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0251008C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 02510090 */ Gambit_fn_021E983C(cpu);
|
|
/* 02510094 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02510098 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0251009C */ cpu->r[5] = cpu->r[4];
|
|
/* 025100A0 */ Gambit_fn_02C69544(cpu);
|
|
/* 025100A4 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 025100A8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 025100AC */ cpu->r[3] = cpu->r[31];
|
|
/* 025100B0 */ cpu->r[4] = cpu->r[30] + 0x00000220u;
|
|
/* 025100B4 */ Gambit_fn_02980840(cpu);
|
|
/* 025100B8 */ _t25 = cpu->r[30] + 0x00000224u;
|
|
/* 025100B8 */ cpu->r[29] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25);
|
|
/* 025100BC */ cpu->r[3] = cpu->r[31];
|
|
/* 025100C0 */ cpu->r[4] = cpu->r[29];
|
|
/* 025100C4 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 025100C8 */ _t26 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025100C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025100CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[9]);
|
|
/* 025100D0 */ cpu->r[11] = 0x00000000u;
|
|
/* 025100D4 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025100D4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 025100D4 */ if (_t28) goto L_025100D8; else goto L_025100E4;
|
|
L_025100D8: ; // 0x25100d8
|
|
/* 025100D8 */ _t29 = cpu->r[31] + 0x00000024u;
|
|
/* 025100D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 025100DC */ cpu->r[10] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 025100E0 */ _t30 = cpu->r[10] + cpu->r[0];
|
|
/* 025100E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
L_025100E4: ; // 0x25100e4
|
|
/* 025100E4 */ _t31 = cpu->r[11] + 0x00000000u;
|
|
/* 025100E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025100E8 */ _t32 = cpu->r[3] + 0x00000088u;
|
|
/* 025100E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 025100EC */ _t33 = cpu->r[12] + 0x00000064u;
|
|
/* 025100EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 025100F0 */ cpu->ctr = cpu->r[0];
|
|
/* 025100F4 */ _t34 = cpu->r[30] + 0x00000226u;
|
|
/* 025100F4 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t34);
|
|
/* 025100F8 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 025100FC */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02510100 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02510104 */ _t35 = cpu->r[1] + 0x00000058u;
|
|
/* 02510104 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02510108 */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 02510108 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0251010C */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 0251010C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 02510110 */ _t38 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02510110 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02510114 */ _t39 = cpu->r[1] + 0x00000060u;
|
|
/* 02510114 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02510118 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02510118 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 0251011C */ _t41 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251011C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02510120 */ _t42 = cpu->r[1] + 0x00000048u;
|
|
/* 02510120 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02510124 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 02510124 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[8]);
|
|
/* 02510128 */ _t44 = cpu->r[1] + 0x00000038u;
|
|
/* 02510128 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0251012C */ _t45 = cpu->r[1] + 0x00000064u;
|
|
/* 0251012C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02510130 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 02510130 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[9]);
|
|
/* 02510134 */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 02510134 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 02510138 */ _t48 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02510138 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0251013C */ _t49 = cpu->r[1] + 0x00000050u;
|
|
/* 0251013C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02510140 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02510140 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[6]);
|
|
/* 02510144 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 02510144 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 02510148 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510148 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[10]);
|
|
/* 0251014C */ _t53 = cpu->r[30] + 0x00000274u;
|
|
/* 0251014C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02510150 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510150 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 02510154 */ _t55 = cpu->r[1] + 0x00000030u;
|
|
/* 02510154 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[10]);
|
|
/* 02510158 */ _t56 = cpu->r[1] + 0x00000054u;
|
|
/* 02510158 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[10]);
|
|
/* 0251015C */ cpu->r[6] = cpu->r[1] + 0x00000074u;
|
|
/* 02510160 */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 02510160 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02510164 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510168 */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 02510168 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[12]);
|
|
/* 0251016C */ cpu->r[4] = cpu->r[30] + 0x00000224u;
|
|
/* 02510170 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 02510174 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 02510174 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[9]);
|
|
/* 02510178 */ Gambit_fn_02980840(cpu);
|
|
/* 0251017C */ _t60 = cpu->r[30] + 0x00000228u;
|
|
/* 0251017C */ cpu->r[29] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t60);
|
|
/* 02510180 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510184 */ cpu->r[4] = cpu->r[29];
|
|
/* 02510188 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0251018C */ _t61 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0251018C */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02510190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[7]);
|
|
/* 02510194 */ cpu->r[6] = 0x00000000u;
|
|
/* 02510198 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02510198 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02510198 */ if (_t63) goto L_0251019C; else goto L_025101A8;
|
|
L_0251019C: ; // 0x251019c
|
|
/* 0251019C */ _t64 = cpu->r[31] + 0x00000024u;
|
|
/* 0251019C */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 025101A0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 025101A4 */ _t65 = cpu->r[8] + cpu->r[9];
|
|
/* 025101A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
L_025101A8: ; // 0x25101a8
|
|
/* 025101A8 */ _t66 = cpu->r[6] + 0x00000000u;
|
|
/* 025101A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 025101AC */ _t67 = cpu->r[3] + 0x00000088u;
|
|
/* 025101AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t67);
|
|
/* 025101B0 */ _t68 = cpu->r[10] + 0x00000064u;
|
|
/* 025101B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 025101B4 */ cpu->ctr = cpu->r[0];
|
|
/* 025101B8 */ _t69 = cpu->r[30] + 0x0000022Au;
|
|
/* 025101B8 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t69);
|
|
/* 025101BC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 025101C0 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 025101C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025101C8 */ _t70 = cpu->r[30] + 0x0000026Cu;
|
|
/* 025101C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t70);
|
|
/* 025101CC */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 025101D0 */ _t71 = cpu->r[30] + 0x00000268u;
|
|
/* 025101D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025101D4 */ _t72 = cpu->r[1] + 0x00000070u;
|
|
/* 025101D4 */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 025101D8 */ _t73 = cpu->r[30] + 0x00000264u;
|
|
/* 025101D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025101DC */ _t74 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025101DC */ rbrew_write32(cpu->mem, _t74, cpu->r[6]);
|
|
/* 025101E0 */ cpu->r[4] = cpu->r[30] + 0x00000264u;
|
|
/* 025101E4 */ _t75 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025101E4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[31]);
|
|
/* 025101E8 */ _t76 = cpu->r[1] + 0x00000068u;
|
|
/* 025101E8 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 025101EC */ cpu->r[5] = cpu->r[30] + 0x0000024Cu;
|
|
/* 025101F0 */ Gambit_fn_0204F0A0(cpu);
|
|
/* 025101F4 */ _t77 = cpu->r[1] + 0x00000020u;
|
|
/* 025101F4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 025101F8 */ _t78 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025101F8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 025101FC */ _t79 = cpu->r[1] + 0x00000054u;
|
|
/* 025101FC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[10]);
|
|
/* 02510200 */ _t80 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02510200 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[8]);
|
|
/* 02510204 */ _t81 = cpu->r[1] + 0x00000014u;
|
|
/* 02510204 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02510208 */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510208 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0251020C */ _t83 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251020C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[12]);
|
|
/* 02510210 */ _t84 = cpu->r[1] + 0x00000048u;
|
|
/* 02510210 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[7]);
|
|
/* 02510214 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510214 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02510218 */ _t86 = cpu->r[1] + 0x00000024u;
|
|
/* 02510218 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0251021C */ _t87 = cpu->r[1] + 0x00000044u;
|
|
/* 0251021C */ rbrew_write_f32(cpu->mem, _t87, cpu->f[6]);
|
|
/* 02510220 */ _t88 = cpu->r[1] + 0x00000060u;
|
|
/* 02510220 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[13]);
|
|
/* 02510224 */ _t89 = cpu->r[1] + 0x00000028u;
|
|
/* 02510224 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02510228 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 02510228 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0251022C */ _t91 = cpu->r[1] + 0x00000018u;
|
|
/* 0251022C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02510230 */ _t92 = cpu->r[1] + 0x00000038u;
|
|
/* 02510230 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
/* 02510234 */ _t93 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02510234 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[9]);
|
|
/* 02510238 */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 02510238 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0251023C */ _t95 = cpu->r[1] + 0x00000040u;
|
|
/* 0251023C */ rbrew_write_f32(cpu->mem, _t95, cpu->f[11]);
|
|
/* 02510240 */ _t96 = cpu->r[1] + 0x00000050u;
|
|
/* 02510240 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[9]);
|
|
/* 02510244 */ _t97 = cpu->r[1] + 0x00000034u;
|
|
/* 02510244 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02510248 */ _t98 = cpu->r[1] + 0x00000030u;
|
|
/* 02510248 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0251024C */ _t99 = cpu->r[1] + 0x00000064u;
|
|
/* 0251024C */ rbrew_write_f32(cpu->mem, _t99, cpu->f[0]);
|
|
/* 02510250 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02510254 */ _t100 = cpu->r[1] + 0x00000058u;
|
|
/* 02510254 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[11]);
|
|
/* 02510258 */ Gambit_fn_0204E3A8(cpu);
|
|
/* 0251025C */ _t101 = cpu->r[1] + 0x00000058u;
|
|
/* 0251025C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02510260 */ _t102 = cpu->r[1] + 0x00000038u;
|
|
/* 02510260 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02510264 */ _t103 = cpu->r[1] + 0x00000048u;
|
|
/* 02510264 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 02510268 */ _t104 = cpu->r[1] + 0x00000008u;
|
|
/* 02510268 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[8]);
|
|
/* 0251026C */ _t105 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251026C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02510270 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 02510270 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02510274 */ _t107 = cpu->r[1] + 0x00000014u;
|
|
/* 02510274 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[8]);
|
|
/* 02510278 */ _t108 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510278 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[0]);
|
|
/* 0251027C */ _t109 = cpu->r[1] + 0x00000040u;
|
|
/* 0251027C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02510280 */ _t110 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02510280 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02510284 */ _t111 = cpu->r[1] + 0x00000060u;
|
|
/* 02510284 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 02510288 */ _t112 = cpu->r[1] + 0x00000064u;
|
|
/* 02510288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0251028C */ _t113 = cpu->r[1] + 0x00000028u;
|
|
/* 0251028C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[10]);
|
|
/* 02510290 */ _t114 = cpu->r[1] + 0x00000034u;
|
|
/* 02510290 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[0]);
|
|
/* 02510294 */ _t115 = cpu->r[1] + 0x00000030u;
|
|
/* 02510294 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[13]);
|
|
/* 02510298 */ _t116 = cpu->r[1] + 0x00000018u;
|
|
/* 02510298 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[9]);
|
|
/* 0251029C */ _t117 = cpu->r[1] + 0x00000024u;
|
|
/* 0251029C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[8]);
|
|
/* 025102A0 */ _t118 = cpu->r[1] + 0x00000050u;
|
|
/* 025102A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 025102A4 */ _t119 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025102A4 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[11]);
|
|
/* 025102A8 */ cpu->r[6] = cpu->r[1] + 0x00000074u;
|
|
/* 025102AC */ _t120 = cpu->r[1] + 0x00000010u;
|
|
/* 025102AC */ rbrew_write_f32(cpu->mem, _t120, cpu->f[7]);
|
|
/* 025102B0 */ _t121 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025102B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 025102B4 */ cpu->r[4] = cpu->r[30] + 0x00000228u;
|
|
/* 025102B8 */ _t122 = cpu->r[1] + 0x00000054u;
|
|
/* 025102B8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 025102BC */ cpu->r[3] = cpu->r[31];
|
|
/* 025102C0 */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025102C0 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[12]);
|
|
/* 025102C4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 025102C8 */ _t124 = cpu->r[1] + 0x00000020u;
|
|
/* 025102C8 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[7]);
|
|
/* 025102CC */ Gambit_fn_02980840(cpu);
|
|
/* 025102D0 */ _t125 = cpu->r[1] + 0x000000A4u;
|
|
/* 025102D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t125);
|
|
/* 025102D4 */ _t126 = cpu->r[1] + 0x000000B8u;
|
|
/* 025102D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 025102D8 */ _t127 = cpu->r[1] + 0x000000A8u;
|
|
/* 025102D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t127);
|
|
/* 025102DC */ _t128 = cpu->r[1] + 0x000000B0u;
|
|
/* 025102DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t128);
|
|
/* 025102E0 */ _t129 = cpu->r[1] + 0x000000ACu;
|
|
/* 025102E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t129);
|
|
/* 025102E4 */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025102E4 */ _t131 = _t130 & 0x00000001u;
|
|
/* 025102E4 */ if (_t131) goto L_025102E8; // else: addr-0 trap, fall-through
|
|
L_025102E8: ; // 0x25102e8
|
|
/* 025102E8 */ _t132 = cpu->r[1] + 0x000000C4u;
|
|
/* 025102E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t132);
|
|
/* 025102EC */ cpu->lr = cpu->r[0];
|
|
/* 025102F0 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 025102F4 */ return;
|
|
}
|
|
|
|
// fn_025102F8 @ 0x25102f8
|
|
void Gambit_fn_025102F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76;
|
|
|
|
L_025102F8: ; // 0x25102f8
|
|
/* 025102F8 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 025102F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025102F8 */ cpu->r[1] = _t0;
|
|
/* 025102FC */ /* nop */
|
|
/* 02510300 */ cpu->r[0] = cpu->lr;
|
|
/* 02510304 */ _t1 = cpu->r[1] + 0x00000094u;
|
|
/* 02510304 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02510308 */ cpu->r[31] = cpu->r[4];
|
|
/* 0251030C */ _t2 = cpu->r[31] + 0x00000050u;
|
|
/* 0251030C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02510310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02510314 */ cpu->r[30] = cpu->r[3];
|
|
/* 02510318 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510318 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02510318 */ if (_t4) goto L_02510508; else goto L_0251031C;
|
|
L_0251031C: ; // 0x251031c
|
|
/* 0251031C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02510320 */ Gambit_fn_02019890(cpu);
|
|
/* 02510324 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02510324 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02510328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000001u);
|
|
/* 0251032C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251032C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251032C */ if (_t7) goto L_02510330; else goto L_02510508;
|
|
L_02510330: ; // 0x2510330
|
|
/* 02510330 */ _t8 = cpu->r[30] + 0x000001BCu;
|
|
/* 02510330 */ cpu->r[8] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02510334 */ /* nop */
|
|
/* 02510338 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510338 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02510338 */ if (_t10) goto L_0251033C; else goto L_02510508;
|
|
L_0251033C: ; // 0x251033c
|
|
/* 0251033C */ cpu->r[7] = 0x101F0000u;
|
|
/* 02510340 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510344 */ _t11 = cpu->r[7] + 0x00003840u;
|
|
/* 02510344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02510344 */ cpu->r[7] = _t11;
|
|
/* 02510348 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 02510348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0251034C */ _t13 = cpu->r[1] + 0x00000060u;
|
|
/* 0251034C */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02510350 */ _t14 = cpu->r[1] + 0x00000058u;
|
|
/* 02510350 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02510354 */ _t15 = cpu->r[7] + 0x00000008u;
|
|
/* 02510354 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02510358 */ _t16 = cpu->r[1] + 0x00000064u;
|
|
/* 02510358 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0251035C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0251035C */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 02510360 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02510364 */ _t18 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02510364 */ rbrew_write32(cpu->mem, _t18, cpu->r[5]);
|
|
/* 02510368 */ cpu->r[10] = 0x10110000u;
|
|
/* 0251036C */ _t19 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 0251036C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02510370 */ cpu->r[10] = cpu->r[10] + 0xFFFFEF7Cu;
|
|
/* 02510374 */ _t20 = cpu->r[1] + 0x00000054u;
|
|
/* 02510374 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 02510378 */ _t21 = cpu->r[1] + 0x00000050u;
|
|
/* 02510378 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 0251037C */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 02510380 */ _t22 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02510380 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02510384 */ Gambit_fn_025C65E8(cpu);
|
|
/* 02510388 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251038C */ Gambit_fn_024F65FC(cpu);
|
|
/* 02510390 */ cpu->r[28] = 0x101D0000u;
|
|
/* 02510394 */ _t23 = cpu->r[28] + 0xFFFFFE84u;
|
|
/* 02510394 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02510394 */ cpu->r[28] = _t23;
|
|
/* 02510398 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251039C */ cpu->r[27] = 0x101D0000u;
|
|
/* 025103A0 */ cpu->r[29] = 0x100C0000u;
|
|
/* 025103A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025103A8 */ cpu->r[29] = cpu->r[29] + 0xFFFFF0C8u;
|
|
/* 025103AC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025103AC */ _t25 = _t24 & 0x00000001u;
|
|
/* 025103AC */ if (_t25) goto L_025103B0; else goto L_025103BC;
|
|
L_025103B0: ; // 0x25103b0
|
|
/* 025103B0 */ _t26 = cpu->r[27] + 0x000009ACu;
|
|
/* 025103B0 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 025103B4 */ cpu->r[8] = 0x00000001u;
|
|
/* 025103B8 */ _t27 = cpu->r[28] + 0x00000000u;
|
|
/* 025103B8 */ rbrew_write32(cpu->mem, _t27, cpu->r[8]);
|
|
L_025103BC: ; // 0x25103bc
|
|
/* 025103BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025103C0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025103C0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 025103C0 */ if (_t29) goto L_025103E4; else goto L_025103C4;
|
|
L_025103C4: ; // 0x25103c4
|
|
/* 025103C4 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 025103C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025103C8 */ _t31 = cpu->r[9] + 0x0000006Cu;
|
|
/* 025103C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025103CC */ cpu->ctr = cpu->r[10];
|
|
/* 025103D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025103D4 */ cpu->r[4] = cpu->r[27] + 0x000009ACu;
|
|
/* 025103D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025103DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025103E0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025103E0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 025103E0 */ if (_t33) goto L_025103E4; else goto L_025103E8;
|
|
L_025103E4: ; // 0x25103e4
|
|
/* 025103E4 */ cpu->r[31] = 0x00000000u;
|
|
L_025103E8: ; // 0x25103e8
|
|
/* 025103E8 */ _t34 = cpu->r[30] + 0x00000078u;
|
|
/* 025103E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025103EC */ cpu->r[11] = 0x10110000u;
|
|
/* 025103F0 */ _t35 = cpu->r[30] + 0x0000007Cu;
|
|
/* 025103F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025103F4 */ cpu->r[11] = cpu->r[11] + 0xFFFFEF4Cu;
|
|
/* 025103F8 */ _t36 = cpu->r[31] + 0x000002FCu;
|
|
/* 025103F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 025103FC */ _t37 = cpu->r[30] + 0x00000080u;
|
|
/* 025103FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02510400 */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02510400 */ rbrew_write32(cpu->mem, _t38, cpu->r[5]);
|
|
/* 02510404 */ cpu->r[5] = 0x00000000u;
|
|
/* 02510408 */ _t39 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02510408 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0251040C */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251040C */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 02510410 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02510414 */ _t41 = cpu->r[1] + 0x00000048u;
|
|
/* 02510414 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 02510418 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 0251041C */ _t42 = cpu->r[1] + 0x00000040u;
|
|
/* 0251041C */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02510420 */ Gambit_fn_027DE3CC(cpu);
|
|
/* 02510424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510428 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510428 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02510428 */ if (_t44) goto L_02510508; else goto L_0251042C;
|
|
L_0251042C: ; // 0x251042c
|
|
/* 0251042C */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02510430 */ cpu->r[4] = cpu->r[30];
|
|
/* 02510434 */ Gambit_fn_024F51B0(cpu);
|
|
/* 02510438 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251043C */ Gambit_fn_024F65FC(cpu);
|
|
/* 02510440 */ _t45 = cpu->r[28] + 0x00000000u;
|
|
/* 02510440 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02510444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02510448 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251044C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251044C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251044C */ if (_t47) goto L_02510450; else goto L_0251045C;
|
|
L_02510450: ; // 0x2510450
|
|
/* 02510450 */ _t48 = cpu->r[27] + 0x000009ACu;
|
|
/* 02510450 */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 02510454 */ cpu->r[8] = 0x00000001u;
|
|
/* 02510458 */ _t49 = cpu->r[28] + 0x00000000u;
|
|
/* 02510458 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
L_0251045C: ; // 0x251045c
|
|
/* 0251045C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510460 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510460 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02510460 */ if (_t51) goto L_02510484; else goto L_02510464;
|
|
L_02510464: ; // 0x2510464
|
|
/* 02510464 */ _t52 = cpu->r[31] + 0x00000000u;
|
|
/* 02510464 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02510468 */ _t53 = cpu->r[9] + 0x0000006Cu;
|
|
/* 02510468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251046C */ cpu->ctr = cpu->r[0];
|
|
/* 02510470 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510474 */ cpu->r[4] = cpu->r[27] + 0x000009ACu;
|
|
/* 02510478 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251047C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510480 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510480 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02510480 */ if (_t55) goto L_02510484; else goto L_02510488;
|
|
L_02510484: ; // 0x2510484
|
|
/* 02510484 */ cpu->r[31] = 0x00000000u;
|
|
L_02510488: ; // 0x2510488
|
|
/* 02510488 */ _t56 = cpu->r[31] + 0x0000035Cu;
|
|
/* 02510488 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0251048C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02510490 */ /* nop */
|
|
/* 02510494 */ _t57 = cpu->r[30] + 0x00000068u;
|
|
/* 02510494 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02510498 */ /* nop */
|
|
/* 0251049C */ _t58 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0251049C */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 025104A0 */ /* nop */
|
|
/* 025104A4 */ cpu->f[12] = cpu->f[13] * cpu->f[11];
|
|
/* 025104A8 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 025104A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 025104AC */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025104AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025104B0 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 025104B0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 025104B4 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 025104B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 025104B8 */ _t63 = cpu->r[1] + 0x00000034u;
|
|
/* 025104B8 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 025104BC */ _t64 = cpu->r[1] + 0x00000030u;
|
|
/* 025104BC */ rbrew_write32(cpu->mem, _t64, cpu->r[6]);
|
|
/* 025104C0 */ /* nop */
|
|
/* 025104C4 */ /* nop */
|
|
/* 025104C8 */ _t65 = cpu->r[1] + 0x00000038u;
|
|
/* 025104C8 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 025104CC */ _t66 = cpu->r[1] + 0x00000038u;
|
|
/* 025104CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025104D0 */ /* nop */
|
|
/* 025104D4 */ _t67 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025104D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 025104D8 */ /* nop */
|
|
/* 025104DC */ _t68 = cpu->r[1] + 0x00000018u;
|
|
/* 025104DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t68);
|
|
/* 025104E0 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 025104E4 */ _t69 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025104E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 025104E8 */ _t70 = cpu->r[1] + 0x00000070u;
|
|
/* 025104E8 */ rbrew_write32(cpu->mem, _t70, cpu->r[7]);
|
|
/* 025104EC */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 025104EC */ rbrew_write_f32(cpu->mem, _t71, cpu->f[12]);
|
|
/* 025104F0 */ _t72 = cpu->r[1] + 0x00000020u;
|
|
/* 025104F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 025104F4 */ _t73 = cpu->r[1] + 0x00000074u;
|
|
/* 025104F4 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 025104F8 */ _t74 = cpu->r[1] + 0x00000078u;
|
|
/* 025104F8 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 025104FC */ _t75 = cpu->r[12] + 0x000002E0u;
|
|
/* 025104FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02510500 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 02510504 */ Gambit_fn_02411350(cpu);
|
|
L_02510508: ; // 0x2510508
|
|
/* 02510508 */ /* nop */
|
|
/* 0251050C */ _t76 = cpu->r[1] + 0x00000094u;
|
|
/* 0251050C */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02510510 */ cpu->lr = cpu->r[0];
|
|
/* 02510514 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02510518 */ return;
|
|
}
|
|
|
|
// fn_0251051C @ 0x251051c
|
|
void Gambit_fn_0251051C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
double _ft19, _ft20;
|
|
|
|
L_0251051C: ; // 0x251051c
|
|
/* 0251051C */ cpu->r[0] = cpu->lr;
|
|
/* 02510520 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02510520 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510520 */ cpu->r[1] = _t0;
|
|
/* 02510524 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510524 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02510528 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02510528 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0251052C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0251052C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02510530 */ cpu->r[30] = cpu->r[3];
|
|
/* 02510534 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510534 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02510538 */ _t5 = cpu->r[30] + 0x000001BCu;
|
|
/* 02510538 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0251053C */ cpu->r[31] = cpu->r[4];
|
|
/* 02510540 */ /* nop */
|
|
/* 02510544 */ cpu->r[29] = 0x00000000u;
|
|
/* 02510548 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510548 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02510548 */ if (_t7) goto L_0251054C; else goto L_025105C8;
|
|
L_0251054C: ; // 0x251054c
|
|
/* 0251054C */ cpu->r[3] = cpu->r[31];
|
|
/* 02510550 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 02510554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510558 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510558 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510558 */ if (_t9) goto L_025105C8; else goto L_0251055C;
|
|
L_0251055C: ; // 0x251055c
|
|
/* 0251055C */ _t10 = cpu->r[30] + 0x00000080u;
|
|
/* 0251055C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02510560 */ _t11 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510560 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02510564 */ _t12 = cpu->r[30] + 0x00000078u;
|
|
/* 02510564 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02510568 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 0251056C */ _t13 = cpu->r[31] + 0x00000244u;
|
|
/* 0251056C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02510570 */ cpu->f[12] = cpu->f[0] - cpu->f[9];
|
|
/* 02510574 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 02510578 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0251057C */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[0]);
|
|
/* 02510580 */ _t14 = cpu->r[10] + 0xFFFFEFB0u;
|
|
/* 02510580 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02510584 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 02510588 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510588 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02510588 */ if (_t16) goto L_0251058C; else goto L_025105B0;
|
|
L_0251058C: ; // 0x251058c
|
|
/* 0251058C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510590 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02510594 */ _t17 = cpu->r[9] + 0xFFFFF2C4u;
|
|
/* 02510594 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02510598 */ _t18 = cpu->r[12] + 0xFFFFF2C0u;
|
|
/* 02510598 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251059C */ _ft19 = sqrt(cpu->f[9]);
|
|
/* 0251059C */ _ft20 = (double)(int32_t)0x00000001u;
|
|
/* 0251059C */ cpu->f[0] = _ft20 / _ft19;
|
|
/* 025105A0 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 025105A4 */ cpu->f[13] = cpu->f[0] * cpu->f[11];
|
|
/* 025105A8 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[12]));
|
|
/* 025105AC */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
L_025105B0: ; // 0x25105b0
|
|
/* 025105B0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025105B4 */ cpu->f[11] = cpu->f[0] * cpu->f[9];
|
|
/* 025105B8 */ _t21 = cpu->r[11] + 0xFFFFF2C8u;
|
|
/* 025105B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025105BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 025105C0 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025105C0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025105C0 */ if (_t23) goto L_025105C8; else goto L_025105C4;
|
|
L_025105C4: ; // 0x25105c4
|
|
/* 025105C4 */ cpu->r[29] = 0x00000001u;
|
|
L_025105C8: ; // 0x25105c8
|
|
/* 025105C8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 025105CC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025105CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025105D0 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025105D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025105D4 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 025105D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025105D8 */ cpu->lr = cpu->r[0];
|
|
/* 025105DC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 025105DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025105E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025105E4 */ return;
|
|
}
|
|
|
|
// fn_02510520 @ 0x2510520
|
|
void Gambit_fn_02510520(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
double _ft19, _ft20;
|
|
|
|
L_02510520: ; // 0x2510520
|
|
/* 02510520 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02510520 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510520 */ cpu->r[1] = _t0;
|
|
/* 02510524 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510524 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02510528 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02510528 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0251052C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0251052C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02510530 */ cpu->r[30] = cpu->r[3];
|
|
/* 02510534 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510534 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02510538 */ _t5 = cpu->r[30] + 0x000001BCu;
|
|
/* 02510538 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0251053C */ cpu->r[31] = cpu->r[4];
|
|
/* 02510540 */ /* nop */
|
|
/* 02510544 */ cpu->r[29] = 0x00000000u;
|
|
/* 02510548 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510548 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02510548 */ if (_t7) goto L_0251054C; else goto L_025105C8;
|
|
L_0251054C: ; // 0x251054c
|
|
/* 0251054C */ cpu->r[3] = cpu->r[31];
|
|
/* 02510550 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 02510554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510558 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510558 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510558 */ if (_t9) goto L_025105C8; else goto L_0251055C;
|
|
L_0251055C: ; // 0x251055c
|
|
/* 0251055C */ _t10 = cpu->r[30] + 0x00000080u;
|
|
/* 0251055C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02510560 */ _t11 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510560 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02510564 */ _t12 = cpu->r[30] + 0x00000078u;
|
|
/* 02510564 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02510568 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 0251056C */ _t13 = cpu->r[31] + 0x00000244u;
|
|
/* 0251056C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02510570 */ cpu->f[12] = cpu->f[0] - cpu->f[9];
|
|
/* 02510574 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 02510578 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0251057C */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[0]);
|
|
/* 02510580 */ _t14 = cpu->r[10] + 0xFFFFEFB0u;
|
|
/* 02510580 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02510584 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 02510588 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510588 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02510588 */ if (_t16) goto L_0251058C; else goto L_025105B0;
|
|
L_0251058C: ; // 0x251058c
|
|
/* 0251058C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510590 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02510594 */ _t17 = cpu->r[9] + 0xFFFFF2C4u;
|
|
/* 02510594 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02510598 */ _t18 = cpu->r[12] + 0xFFFFF2C0u;
|
|
/* 02510598 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251059C */ _ft19 = sqrt(cpu->f[9]);
|
|
/* 0251059C */ _ft20 = (double)(int32_t)0x00000001u;
|
|
/* 0251059C */ cpu->f[0] = _ft20 / _ft19;
|
|
/* 025105A0 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 025105A4 */ cpu->f[13] = cpu->f[0] * cpu->f[11];
|
|
/* 025105A8 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[12]));
|
|
/* 025105AC */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
L_025105B0: ; // 0x25105b0
|
|
/* 025105B0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025105B4 */ cpu->f[11] = cpu->f[0] * cpu->f[9];
|
|
/* 025105B8 */ _t21 = cpu->r[11] + 0xFFFFF2C8u;
|
|
/* 025105B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025105BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 025105C0 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025105C0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025105C0 */ if (_t23) goto L_025105C8; else goto L_025105C4;
|
|
L_025105C4: ; // 0x25105c4
|
|
/* 025105C4 */ cpu->r[29] = 0x00000001u;
|
|
L_025105C8: ; // 0x25105c8
|
|
/* 025105C8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 025105CC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025105CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025105D0 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025105D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025105D4 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 025105D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025105D8 */ cpu->lr = cpu->r[0];
|
|
/* 025105DC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 025105DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025105E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025105E4 */ return;
|
|
}
|
|
|
|
// fn_025105E8 @ 0x25105e8
|
|
void Gambit_fn_025105E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
double _ft20, _ft21;
|
|
|
|
L_025105E8: ; // 0x25105e8
|
|
/* 025105E8 */ cpu->r[0] = cpu->lr;
|
|
/* 025105EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025105EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025105EC */ cpu->r[1] = _t0;
|
|
/* 025105F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025105F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025105F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025105F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025105F8 */ cpu->r[31] = cpu->r[4];
|
|
/* 025105FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025105FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510600 */ _t4 = cpu->r[31] + 0x00000050u;
|
|
/* 02510600 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02510604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 02510608 */ cpu->r[30] = cpu->r[3];
|
|
/* 0251060C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251060C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0251060C */ if (_t6) goto L_025106A8; else goto L_02510610;
|
|
L_02510610: ; // 0x2510610
|
|
/* 02510610 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510614 */ cpu->r[4] = cpu->r[31];
|
|
/* 02510618 */ Gambit_fn_0251051C(cpu);
|
|
/* 0251061C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510620 */ _t7 = cpu->r[30] + 0x00000080u;
|
|
/* 02510620 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02510624 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510624 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510624 */ if (_t9) goto L_02510634; else goto L_02510628;
|
|
L_02510628: ; // 0x2510628
|
|
/* 02510628 */ _t10 = cpu->r[30] + 0x00000280u;
|
|
/* 02510628 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 0251062C */ cpu->r[0] = 0x00000001u;
|
|
/* 02510630 */ _t11 = cpu->r[30] + 0x00000284u;
|
|
/* 02510630 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
L_02510634: ; // 0x2510634
|
|
/* 02510634 */ _t12 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510634 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02510638 */ _t13 = cpu->r[31] + 0x00000244u;
|
|
/* 02510638 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0251063C */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 02510640 */ _t14 = cpu->r[30] + 0x00000078u;
|
|
/* 02510640 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02510644 */ cpu->f[11] = cpu->f[12] - cpu->f[0];
|
|
/* 02510648 */ cpu->f[12] = cpu->f[13] * cpu->f[13];
|
|
/* 0251064C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02510650 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[12]);
|
|
/* 02510654 */ _t15 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 02510654 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02510658 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0251065C */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251065C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0251065C */ if (_t17) goto L_02510660; else goto L_02510684;
|
|
L_02510660: ; // 0x2510660
|
|
/* 02510660 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02510664 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510668 */ _t18 = cpu->r[10] + 0xFFFFF2C4u;
|
|
/* 02510668 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251066C */ _t19 = cpu->r[9] + 0xFFFFF2C0u;
|
|
/* 0251066C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02510670 */ _ft20 = sqrt(cpu->f[11]);
|
|
/* 02510670 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 02510670 */ cpu->f[0] = _ft21 / _ft20;
|
|
/* 02510674 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 02510678 */ cpu->f[10] = cpu->f[0] * cpu->f[12];
|
|
/* 0251067C */ cpu->f[9] = -fma(cpu->f[9], cpu->f[11], -(cpu->f[13]));
|
|
/* 02510680 */ cpu->f[0] = cpu->f[9] * cpu->f[10];
|
|
L_02510684: ; // 0x2510684
|
|
/* 02510684 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02510688 */ cpu->f[0] = cpu->f[0] * cpu->f[11];
|
|
/* 0251068C */ _t22 = cpu->r[8] + 0xFFFFF2C8u;
|
|
/* 0251068C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02510690 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 02510694 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510694 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02510694 */ if (_t24) goto L_025106A8; else goto L_02510698;
|
|
L_02510698: ; // 0x2510698
|
|
/* 02510698 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251069C */ _t25 = cpu->r[12] + 0xFFFFF2F8u;
|
|
/* 0251069C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 025106A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025106A4 */ Gambit_fn_025C81EC(cpu);
|
|
L_025106A8: ; // 0x25106a8
|
|
/* 025106A8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 025106A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025106AC */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 025106AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025106B0 */ cpu->lr = cpu->r[0];
|
|
/* 025106B4 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025106B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 025106B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025106BC */ return;
|
|
}
|
|
|
|
// fn_025105EC @ 0x25105ec
|
|
void Gambit_fn_025105EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
double _ft20, _ft21;
|
|
|
|
L_025105EC: ; // 0x25105ec
|
|
/* 025105EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025105EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025105EC */ cpu->r[1] = _t0;
|
|
/* 025105F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025105F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025105F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025105F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025105F8 */ cpu->r[31] = cpu->r[4];
|
|
/* 025105FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025105FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510600 */ _t4 = cpu->r[31] + 0x00000050u;
|
|
/* 02510600 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02510604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 02510608 */ cpu->r[30] = cpu->r[3];
|
|
/* 0251060C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251060C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0251060C */ if (_t6) goto L_025106A8; else goto L_02510610;
|
|
L_02510610: ; // 0x2510610
|
|
/* 02510610 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510614 */ cpu->r[4] = cpu->r[31];
|
|
/* 02510618 */ Gambit_fn_0251051C(cpu);
|
|
/* 0251061C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510620 */ _t7 = cpu->r[30] + 0x00000080u;
|
|
/* 02510620 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02510624 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510624 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510624 */ if (_t9) goto L_02510634; else goto L_02510628;
|
|
L_02510628: ; // 0x2510628
|
|
/* 02510628 */ _t10 = cpu->r[30] + 0x00000280u;
|
|
/* 02510628 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 0251062C */ cpu->r[0] = 0x00000001u;
|
|
/* 02510630 */ _t11 = cpu->r[30] + 0x00000284u;
|
|
/* 02510630 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
L_02510634: ; // 0x2510634
|
|
/* 02510634 */ _t12 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510634 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02510638 */ _t13 = cpu->r[31] + 0x00000244u;
|
|
/* 02510638 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0251063C */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 02510640 */ _t14 = cpu->r[30] + 0x00000078u;
|
|
/* 02510640 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02510644 */ cpu->f[11] = cpu->f[12] - cpu->f[0];
|
|
/* 02510648 */ cpu->f[12] = cpu->f[13] * cpu->f[13];
|
|
/* 0251064C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02510650 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[12]);
|
|
/* 02510654 */ _t15 = cpu->r[12] + 0xFFFFEFB0u;
|
|
/* 02510654 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02510658 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0251065C */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251065C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0251065C */ if (_t17) goto L_02510660; else goto L_02510684;
|
|
L_02510660: ; // 0x2510660
|
|
/* 02510660 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02510664 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510668 */ _t18 = cpu->r[10] + 0xFFFFF2C4u;
|
|
/* 02510668 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251066C */ _t19 = cpu->r[9] + 0xFFFFF2C0u;
|
|
/* 0251066C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02510670 */ _ft20 = sqrt(cpu->f[11]);
|
|
/* 02510670 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 02510670 */ cpu->f[0] = _ft21 / _ft20;
|
|
/* 02510674 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 02510678 */ cpu->f[10] = cpu->f[0] * cpu->f[12];
|
|
/* 0251067C */ cpu->f[9] = -fma(cpu->f[9], cpu->f[11], -(cpu->f[13]));
|
|
/* 02510680 */ cpu->f[0] = cpu->f[9] * cpu->f[10];
|
|
L_02510684: ; // 0x2510684
|
|
/* 02510684 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02510688 */ cpu->f[0] = cpu->f[0] * cpu->f[11];
|
|
/* 0251068C */ _t22 = cpu->r[8] + 0xFFFFF2C8u;
|
|
/* 0251068C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02510690 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 02510694 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510694 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02510694 */ if (_t24) goto L_025106A8; else goto L_02510698;
|
|
L_02510698: ; // 0x2510698
|
|
/* 02510698 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251069C */ _t25 = cpu->r[12] + 0xFFFFF2F8u;
|
|
/* 0251069C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 025106A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025106A4 */ Gambit_fn_025C81EC(cpu);
|
|
L_025106A8: ; // 0x25106a8
|
|
/* 025106A8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 025106A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025106AC */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 025106AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025106B0 */ cpu->lr = cpu->r[0];
|
|
/* 025106B4 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025106B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 025106B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025106BC */ return;
|
|
}
|
|
|
|
// fn_025106C4 @ 0x25106c4
|
|
void Gambit_fn_025106C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_025106C4: ; // 0x25106c4
|
|
/* 025106C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025106C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025106C4 */ cpu->r[1] = _t0;
|
|
/* 025106C8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 025106C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 025106CC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025106CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 025106D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 025106D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025106D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025106D8 */ _t4 = cpu->r[30] + 0x00000294u;
|
|
/* 025106D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025106DC */ cpu->r[12] = 0x00000000u;
|
|
/* 025106E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025106E4 */ _t5 = cpu->r[30] + 0x00000270u;
|
|
/* 025106E4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 025106E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025106E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025106E8 */ if (_t7) goto L_02510730; else goto L_025106EC;
|
|
L_025106EC: ; // 0x25106ec
|
|
/* 025106EC */ _t8 = cpu->r[30] + 0x00000298u;
|
|
/* 025106EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025106F0 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 025106F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025106F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 025106F8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025106F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 025106F8 */ if (_t11) goto L_025106FC; else goto L_02510730;
|
|
L_025106FC: ; // 0x25106fc
|
|
/* 025106FC */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 025106FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02510700 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02510704 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510704 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02510704 */ if (_t14) goto L_02510708; else goto L_02510730;
|
|
L_02510708: ; // 0x2510708
|
|
/* 02510708 */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 02510708 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0251070C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510710 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510710 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02510710 */ if (_t17) goto L_02510728; else goto L_02510714;
|
|
L_02510714: ; // 0x2510714
|
|
/* 02510714 */ _t18 = cpu->r[3] + 0x00000050u;
|
|
/* 02510714 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02510718 */ _t19 = cpu->r[10] + 0x00000024u;
|
|
/* 02510718 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251071C */ cpu->ctr = cpu->r[11];
|
|
/* 02510720 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02510724 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02510728: ; // 0x2510728
|
|
/* 02510728 */ cpu->r[12] = 0x00000001u;
|
|
/* 0251072C */ _t20 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0251072C */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[12]);
|
|
L_02510730: ; // 0x2510730
|
|
/* 02510730 */ _t21 = cpu->r[30] + 0x000002A0u;
|
|
/* 02510730 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02510734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510738 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510738 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02510738 */ if (_t23) goto L_02510780; else goto L_0251073C;
|
|
L_0251073C: ; // 0x251073c
|
|
/* 0251073C */ _t24 = cpu->r[30] + 0x000002A4u;
|
|
/* 0251073C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02510740 */ _t25 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02510740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02510744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02510748 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510748 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02510748 */ if (_t27) goto L_0251074C; else goto L_02510780;
|
|
L_0251074C: ; // 0x251074c
|
|
/* 0251074C */ _t28 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251074C */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02510750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[9]);
|
|
/* 02510754 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510754 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02510754 */ if (_t30) goto L_02510758; else goto L_02510780;
|
|
L_02510758: ; // 0x2510758
|
|
/* 02510758 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 02510758 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0251075C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510760 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510760 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02510760 */ if (_t33) goto L_02510778; else goto L_02510764;
|
|
L_02510764: ; // 0x2510764
|
|
/* 02510764 */ _t34 = cpu->r[3] + 0x00000050u;
|
|
/* 02510764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02510768 */ _t35 = cpu->r[11] + 0x00000024u;
|
|
/* 02510768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251076C */ cpu->ctr = cpu->r[0];
|
|
/* 02510770 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02510774 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02510778: ; // 0x2510778
|
|
/* 02510778 */ cpu->r[0] = 0x00000001u;
|
|
/* 0251077C */ _t36 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0251077C */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
L_02510780: ; // 0x2510780
|
|
/* 02510780 */ _t37 = cpu->r[30] + 0x000002B8u;
|
|
/* 02510780 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02510784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510788 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510788 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02510788 */ if (_t39) goto L_025107A0; else goto L_0251078C;
|
|
L_0251078C: ; // 0x251078c
|
|
/* 0251078C */ _t40 = cpu->r[30] + 0x00000280u;
|
|
/* 0251078C */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02510790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02510794 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510794 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02510794 */ if (_t42) goto L_025107A0; else goto L_02510798;
|
|
L_02510798: ; // 0x2510798
|
|
/* 02510798 */ _t43 = cpu->r[11] + 0x00000098u;
|
|
/* 02510798 */ cpu->r[4] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0251079C */ Gambit_fn_0256E1C4(cpu);
|
|
L_025107A0: ; // 0x25107a0
|
|
/* 025107A0 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 025107A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 025107A4 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 025107A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 025107A8 */ cpu->lr = cpu->r[0];
|
|
/* 025107AC */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025107AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025107B0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025107B4 */ return;
|
|
}
|
|
|
|
// fn_025107BC @ 0x25107bc
|
|
void Gambit_fn_025107BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_025107BC: ; // 0x25107bc
|
|
/* 025107BC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 025107BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025107BC */ cpu->r[1] = _t0;
|
|
/* 025107C0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025107C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025107C4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025107C8 */ _t2 = cpu->r[10] + 0xFFFFF2BCu;
|
|
/* 025107C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 025107CC */ cpu->r[31] = cpu->r[3];
|
|
/* 025107D0 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 025107D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025107D4 */ _t4 = cpu->r[31] + 0x00000274u;
|
|
/* 025107D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 025107D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 025107DC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025107DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025107DC */ if (_t6) goto L_02510850; else goto L_025107E0;
|
|
L_025107E0: ; // 0x25107e0
|
|
/* 025107E0 */ cpu->r[9] = 0x00000003u;
|
|
/* 025107E4 */ cpu->r[10] = cpu->r[31] + 0x00000248u;
|
|
/* 025107E8 */ cpu->ctr = cpu->r[9];
|
|
/* 025107EC */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
L_025107F0: ; // 0x25107f0
|
|
/* 025107F0 */ _t7 = cpu->r[10] + 0x00000004u;
|
|
/* 025107F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025107F4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 025107F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 025107F8 */ _t9 = cpu->r[10] + 0x00000008u;
|
|
/* 025107F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025107FC */ _t10 = cpu->r[11] + 0x00000008u;
|
|
/* 025107FC */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02510800 */ _t11 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02510800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02510800 */ cpu->r[10] = _t11;
|
|
/* 02510804 */ _t12 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02510804 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02510804 */ cpu->r[11] = _t12;
|
|
/* 02510808 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02510808 */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02510808 */ _t14 = _t13 >> (0x00000002u & 31u);
|
|
/* 02510808 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02510808 */ if (_t15) goto L_025107F0; else goto L_0251080C;
|
|
L_0251080C: ; // 0x251080c
|
|
/* 0251080C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02510810 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02510814 */ _t16 = cpu->r[9] + 0x00006350u;
|
|
/* 02510814 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02510814 */ cpu->r[9] = _t16;
|
|
/* 02510818 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 02510818 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0251081C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0251081C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02510820 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02510824 */ _t19 = cpu->r[9] + 0x00000008u;
|
|
/* 02510824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02510828 */ cpu->r[4] = cpu->r[4] + 0xFFFFF4F0u;
|
|
/* 0251082C */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0251082C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 02510830 */ cpu->r[5] = 0x000002B9u;
|
|
/* 02510834 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510834 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 02510838 */ Gambit_fn_0204D470(cpu);
|
|
/* 0251083C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510840 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510844 */ _t22 = cpu->r[9] + 0xFFFFF4ECu;
|
|
/* 02510844 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02510848 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0251084C */ Gambit_fn_0204B794(cpu);
|
|
L_02510850: ; // 0x2510850
|
|
/* 02510850 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510854 */ Gambit_fn_0250DE38(cpu);
|
|
/* 02510858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251085C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251085C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0251085C */ if (_t24) goto L_025108A4; else goto L_02510860;
|
|
L_02510860: ; // 0x2510860
|
|
/* 02510860 */ _t25 = cpu->r[31] + 0x0000028Du;
|
|
/* 02510860 */ cpu->r[10] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02510864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02510868 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510868 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02510868 */ if (_t27) goto L_025108A4; else goto L_0251086C;
|
|
L_0251086C: ; // 0x251086c
|
|
/* 0251086C */ _t28 = cpu->r[31] + 0x00000280u;
|
|
/* 0251086C */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02510870 */ _t29 = cpu->r[31] + 0x000002B4u;
|
|
/* 02510870 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02510874 */ _t30 = cpu->r[12] + 0x00000098u;
|
|
/* 02510874 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02510878 */ Gambit_fn_02512654(cpu);
|
|
/* 0251087C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510880 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510880 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02510880 */ if (_t32) goto L_025108A4; else goto L_02510884;
|
|
L_02510884: ; // 0x2510884
|
|
/* 02510884 */ _t33 = cpu->r[31] + 0x00000280u;
|
|
/* 02510884 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02510888 */ cpu->r[11] = 0x00000000u;
|
|
/* 0251088C */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 02510890 */ _t34 = cpu->r[31] + 0x0000028Du;
|
|
/* 02510890 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[11]);
|
|
/* 02510894 */ Gambit_fn_025C77BC(cpu);
|
|
/* 02510898 */ cpu->r[4] = 0x00000001u;
|
|
/* 0251089C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 025108A0 */ Gambit_fn_021FC9F0(cpu);
|
|
L_025108A4: ; // 0x25108a4
|
|
/* 025108A4 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 025108A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025108A8 */ _t36 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025108A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025108AC */ cpu->lr = cpu->r[0];
|
|
/* 025108B0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 025108B4 */ return;
|
|
}
|
|
|
|
// fn_025108D4 @ 0x25108d4
|
|
void Gambit_fn_025108D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167;
|
|
|
|
L_025108D4: ; // 0x25108d4
|
|
/* 025108D4 */ _t0 = cpu->r[1] + 0xFFFFFEE0u;
|
|
/* 025108D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025108D4 */ cpu->r[1] = _t0;
|
|
/* 025108D8 */ _t1 = cpu->r[1] + 0x000000DCu;
|
|
/* 025108D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025108DC */ cpu->r[0] = cpu->lr;
|
|
/* 025108E0 */ _t2 = cpu->r[1] + 0x00000110u;
|
|
/* 025108E0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 025108E4 */ /* nop */
|
|
/* 025108E8 */ _t3 = cpu->r[1] + 0x000000F0u;
|
|
/* 025108E8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 025108EC */ /* nop */
|
|
/* 025108F0 */ _t4 = cpu->r[1] + 0x000000E0u;
|
|
/* 025108F0 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 025108F4 */ _t5 = cpu->r[1] + 0x00000118u;
|
|
/* 025108F4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 025108F8 */ /* nop */
|
|
/* 025108FC */ _t6 = cpu->r[1] + 0x000000F8u;
|
|
/* 025108FC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 02510900 */ _t7 = cpu->r[1] + 0x00000100u;
|
|
/* 02510900 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[30]);
|
|
/* 02510904 */ _t8 = cpu->r[1] + 0x00000124u;
|
|
/* 02510904 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02510908 */ /* nop */
|
|
/* 0251090C */ _t9 = cpu->r[1] + 0x000000E8u;
|
|
/* 0251090C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 02510910 */ _t10 = cpu->r[1] + 0x00000108u;
|
|
/* 02510910 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[30]);
|
|
/* 02510914 */ cpu->r[31] = cpu->r[3];
|
|
/* 02510918 */ _t11 = cpu->r[1] + 0x000000D8u;
|
|
/* 02510918 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 0251091C */ _t12 = cpu->r[31] + 0x00000280u;
|
|
/* 0251091C */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02510920 */ _t13 = cpu->r[6] + 0x00000724u;
|
|
/* 02510920 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02510924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510928 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510928 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02510928 */ if (_t15) goto L_02510CC0; else goto L_0251092C;
|
|
L_0251092C: ; // 0x251092c
|
|
/* 0251092C */ cpu->r[3] = cpu->r[31];
|
|
/* 02510930 */ Gambit_fn_0250DE38(cpu);
|
|
/* 02510934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510938 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510938 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02510938 */ if (_t17) goto L_02510B88; else goto L_0251093C;
|
|
L_0251093C: ; // 0x251093c
|
|
/* 0251093C */ _t18 = cpu->r[31] + 0x00000280u;
|
|
/* 0251093C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02510940 */ cpu->r[6] = cpu->r[1] + 0x00000098u;
|
|
/* 02510944 */ cpu->r[5] = cpu->r[31] + 0x0000028Fu;
|
|
/* 02510948 */ cpu->r[4] = cpu->r[31] + 0x0000028Eu;
|
|
/* 0251094C */ Gambit_fn_025C78E4(cpu);
|
|
/* 02510950 */ _t19 = cpu->r[31] + 0x00000280u;
|
|
/* 02510950 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02510954 */ _t20 = cpu->r[10] + 0x000006F4u;
|
|
/* 02510954 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02510958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 0251095C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251095C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0251095C */ if (_t22) goto L_02510CC0; else goto L_02510960;
|
|
L_02510960: ; // 0x2510960
|
|
/* 02510960 */ _t23 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02510960 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02510964 */ _t24 = cpu->r[1] + 0x000000A0u;
|
|
/* 02510964 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02510968 */ cpu->f[0] = -cpu->f[7];
|
|
/* 0251096C */ _t25 = cpu->r[1] + 0x000000A8u;
|
|
/* 0251096C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02510970 */ _t26 = cpu->r[1] + 0x000000B0u;
|
|
/* 02510970 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02510974 */ cpu->f[5] = -cpu->f[8];
|
|
/* 02510978 */ _t27 = cpu->r[1] + 0x000000B4u;
|
|
/* 02510978 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0251097C */ _t28 = cpu->r[1] + 0x00000048u;
|
|
/* 0251097C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02510980 */ cpu->f[8] = -cpu->f[9];
|
|
/* 02510984 */ _t29 = cpu->r[1] + 0x00000048u;
|
|
/* 02510984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02510988 */ _t30 = cpu->r[1] + 0x00000098u;
|
|
/* 02510988 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0251098C */ _t31 = cpu->r[1] + 0x00000050u;
|
|
/* 0251098C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[8]);
|
|
/* 02510990 */ cpu->f[12] = -cpu->f[13];
|
|
/* 02510994 */ _t32 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02510994 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[5]);
|
|
/* 02510998 */ _t33 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02510998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0251099C */ _t34 = cpu->r[1] + 0x000000B8u;
|
|
/* 0251099C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 025109A0 */ _t35 = cpu->r[1] + 0x00000044u;
|
|
/* 025109A0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[12]);
|
|
/* 025109A4 */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 025109A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025109A8 */ _t37 = cpu->r[1] + 0x00000050u;
|
|
/* 025109A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 025109AC */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 025109AC */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 025109B0 */ _t39 = cpu->r[1] + 0x00000038u;
|
|
/* 025109B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 025109B4 */ cpu->f[10] = -cpu->f[7];
|
|
/* 025109B8 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025109B8 */ rbrew_write32(cpu->mem, _t40, cpu->r[12]);
|
|
/* 025109BC */ _t41 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025109BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 025109C0 */ _t42 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025109C0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 025109C4 */ _t43 = cpu->r[1] + 0x00000054u;
|
|
/* 025109C4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[10]);
|
|
/* 025109C8 */ _t44 = cpu->r[1] + 0x00000054u;
|
|
/* 025109C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 025109CC */ cpu->f[9] = -cpu->f[11];
|
|
/* 025109D0 */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 025109D0 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 025109D4 */ _t46 = cpu->r[1] + 0x00000040u;
|
|
/* 025109D4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 025109D8 */ _t47 = cpu->r[1] + 0x000000A4u;
|
|
/* 025109D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 025109DC */ _t48 = cpu->r[1] + 0x00000058u;
|
|
/* 025109DC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[9]);
|
|
/* 025109E0 */ _t49 = cpu->r[1] + 0x00000058u;
|
|
/* 025109E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 025109E4 */ _t50 = cpu->r[1] + 0x00000060u;
|
|
/* 025109E4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 025109E8 */ /* nop */
|
|
/* 025109EC */ _t51 = cpu->r[1] + 0x00000068u;
|
|
/* 025109EC */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 025109F0 */ /* nop */
|
|
/* 025109F4 */ _t52 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025109F4 */ rbrew_write32(cpu->mem, _t52, cpu->r[7]);
|
|
/* 025109F8 */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025109F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 025109FC */ /* nop */
|
|
/* 02510A00 */ _t54 = cpu->r[1] + 0x00000040u;
|
|
/* 02510A00 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02510A04 */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 02510A04 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02510A08 */ /* nop */
|
|
/* 02510A0C */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 02510A0C */ rbrew_write32(cpu->mem, _t56, cpu->r[6]);
|
|
/* 02510A10 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 02510A10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02510A14 */ /* nop */
|
|
/* 02510A18 */ /* nop */
|
|
/* 02510A1C */ /* nop */
|
|
/* 02510A20 */ _t58 = cpu->r[1] + 0x00000074u;
|
|
/* 02510A20 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[12]);
|
|
/* 02510A24 */ /* nop */
|
|
/* 02510A28 */ _t59 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02510A28 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[6]);
|
|
/* 02510A2C */ /* nop */
|
|
/* 02510A30 */ /* nop */
|
|
/* 02510A34 */ /* nop */
|
|
/* 02510A38 */ /* nop */
|
|
/* 02510A3C */ /* nop */
|
|
/* 02510A40 */ _t60 = cpu->r[1] + 0x000000ACu;
|
|
/* 02510A40 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02510A44 */ cpu->f[7] = cpu->f[8];
|
|
/* 02510A48 */ _t61 = cpu->r[31] + 0x000000BCu;
|
|
/* 02510A48 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02510A4C */ cpu->f[8] = cpu->f[11];
|
|
/* 02510A50 */ cpu->f[11] = fma(cpu->f[28], cpu->f[5], cpu->f[9]);
|
|
/* 02510A54 */ _t62 = cpu->r[1] + 0x00000078u;
|
|
/* 02510A54 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 02510A58 */ /* nop */
|
|
/* 02510A5C */ /* nop */
|
|
/* 02510A60 */ _t63 = cpu->r[31] + 0x000000C8u;
|
|
/* 02510A60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02510A64 */ /* nop */
|
|
/* 02510A68 */ cpu->f[10] = cpu->f[13];
|
|
/* 02510A6C */ _t64 = cpu->r[31] + 0x000000D4u;
|
|
/* 02510A6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02510A70 */ cpu->f[9] = fma(cpu->f[30], cpu->f[5], cpu->f[8]);
|
|
/* 02510A74 */ /* nop */
|
|
/* 02510A78 */ cpu->f[8] = fma(cpu->f[28], cpu->f[13], cpu->f[7]);
|
|
/* 02510A7C */ cpu->f[12] = fma(cpu->f[28], cpu->f[6], cpu->f[0]);
|
|
/* 02510A80 */ /* nop */
|
|
/* 02510A84 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 02510A84 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[11]);
|
|
/* 02510A88 */ /* nop */
|
|
/* 02510A8C */ /* nop */
|
|
/* 02510A90 */ /* nop */
|
|
/* 02510A94 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 02510A94 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[12]);
|
|
/* 02510A98 */ cpu->f[12] = cpu->f[7];
|
|
/* 02510A9C */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510A9C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[8]);
|
|
/* 02510AA0 */ cpu->f[8] = cpu->f[11];
|
|
/* 02510AA4 */ cpu->f[11] = fma(cpu->f[30], cpu->f[6], cpu->f[10]);
|
|
/* 02510AA8 */ _t68 = cpu->r[1] + 0x00000070u;
|
|
/* 02510AA8 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[30]);
|
|
/* 02510AAC */ /* nop */
|
|
/* 02510AB0 */ _t69 = cpu->r[31] + 0x00000270u;
|
|
/* 02510AB0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t69);
|
|
/* 02510AB4 */ cpu->f[12] = fma(cpu->f[30], cpu->f[13], cpu->f[12]);
|
|
/* 02510AB8 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 02510AB8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[9]);
|
|
/* 02510ABC */ /* nop */
|
|
/* 02510AC0 */ _t71 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02510AC0 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[31]);
|
|
/* 02510AC4 */ cpu->f[7] = fma(cpu->f[31], cpu->f[5], cpu->f[7]);
|
|
/* 02510AC8 */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 02510AC8 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[11]);
|
|
/* 02510ACC */ cpu->f[11] = fma(cpu->f[31], cpu->f[6], cpu->f[8]);
|
|
/* 02510AD0 */ _t73 = cpu->r[1] + 0x00000028u;
|
|
/* 02510AD0 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
/* 02510AD4 */ /* nop */
|
|
/* 02510AD8 */ _t74 = cpu->r[1] + 0x00000064u;
|
|
/* 02510AD8 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[28]);
|
|
/* 02510ADC */ cpu->f[0] = fma(cpu->f[31], cpu->f[13], cpu->f[12]);
|
|
/* 02510AE0 */ _t75 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02510AE0 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[7]);
|
|
/* 02510AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02510AE8 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 02510AE8 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[11]);
|
|
/* 02510AEC */ _t77 = cpu->r[1] + 0x00000034u;
|
|
/* 02510AEC */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 02510AF0 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510AF0 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02510AF0 */ if (_t79) goto L_02510B50; else goto L_02510AF4;
|
|
L_02510AF4: ; // 0x2510af4
|
|
/* 02510AF4 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02510AF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02510AF8 */ _t81 = cpu->r[31] + 0x000002B8u;
|
|
/* 02510AF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02510AFC */ _t82 = cpu->r[31] + 0x00000254u;
|
|
/* 02510AFC */ rbrew_write_f32(cpu->mem, _t82, cpu->f[13]);
|
|
/* 02510B00 */ _t83 = cpu->r[1] + 0x00000018u;
|
|
/* 02510B00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02510B04 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 02510B04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02510B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510B0C */ _t85 = cpu->r[31] + 0x00000250u;
|
|
/* 02510B0C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[12]);
|
|
/* 02510B10 */ _t86 = cpu->r[31] + 0x00000258u;
|
|
/* 02510B10 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[0]);
|
|
/* 02510B14 */ _t87 = cpu->r[1] + 0x00000028u;
|
|
/* 02510B14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02510B18 */ _t88 = cpu->r[1] + 0x00000030u;
|
|
/* 02510B18 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02510B1C */ _t89 = cpu->r[31] + 0x00000260u;
|
|
/* 02510B1C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[8]);
|
|
/* 02510B20 */ _t90 = cpu->r[31] + 0x00000268u;
|
|
/* 02510B20 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[10]);
|
|
/* 02510B24 */ _t91 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02510B24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02510B28 */ _t92 = cpu->r[1] + 0x00000024u;
|
|
/* 02510B28 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 02510B2C */ _t93 = cpu->r[31] + 0x00000264u;
|
|
/* 02510B2C */ rbrew_write_f32(cpu->mem, _t93, cpu->f[9]);
|
|
/* 02510B30 */ _t94 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02510B30 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[7]);
|
|
/* 02510B34 */ _t95 = cpu->r[1] + 0x00000014u;
|
|
/* 02510B34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02510B38 */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 02510B38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02510B3C */ _t97 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510B3C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[7]);
|
|
/* 02510B40 */ cpu->r[5] = 0x00000003u;
|
|
/* 02510B44 */ _t98 = cpu->r[31] + 0x0000026Cu;
|
|
/* 02510B44 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[11]);
|
|
/* 02510B48 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510B48 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02510B48 */ if (_t100) goto L_02510C00; else goto L_02510B4C;
|
|
L_02510B4C: ; // 0x2510b4c
|
|
/* 02510B4C */ goto L_02510B98;
|
|
L_02510B50: ; // 0x2510b50
|
|
/* 02510B50 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510B54 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 02510B58 */ _t101 = cpu->r[9] + 0xFFFFF340u;
|
|
/* 02510B58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02510B5C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02510B60 */ Gambit_fn_0204B794(cpu);
|
|
/* 02510B64 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02510B68 */ cpu->r[3] = cpu->r[31] + 0x00000264u;
|
|
/* 02510B6C */ Gambit_fn_0204E7A8(cpu);
|
|
/* 02510B70 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02510B74 */ _t102 = cpu->r[6] + 0xFFFFF50Cu;
|
|
/* 02510B74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02510B78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02510B7C */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510B7C */ _t104 = _t103 & 0x00000001u;
|
|
/* 02510B7C */ if (_t104) goto L_02510B88; else goto L_02510B80;
|
|
L_02510B80: ; // 0x2510b80
|
|
/* 02510B80 */ cpu->r[8] = 0x00000001u;
|
|
/* 02510B84 */ _t105 = cpu->r[31] + 0x00000270u;
|
|
/* 02510B84 */ rbrew_write8(cpu->mem, _t105, (uint8_t)cpu->r[8]);
|
|
L_02510B88: ; // 0x2510b88
|
|
/* 02510B88 */ _t106 = cpu->r[31] + 0x000002B8u;
|
|
/* 02510B88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02510B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510B90 */ cpu->r[5] = 0x00000003u;
|
|
/* 02510B94 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510B94 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02510B94 */ if (_t108) goto L_02510C00; else goto L_02510B98;
|
|
L_02510B98: ; // 0x2510b98
|
|
/* 02510B98 */ _t109 = cpu->r[31] + 0x00000238u;
|
|
/* 02510B98 */ cpu->r[4] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02510B9C */ cpu->r[3] = cpu->r[1] + 0x000000BCu;
|
|
/* 02510BA0 */ Gambit_fn_0200FE00(cpu);
|
|
/* 02510BA4 */ _t110 = cpu->r[1] + 0x000000BCu;
|
|
/* 02510BA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02510BA8 */ _t111 = cpu->r[1] + 0x000000C0u;
|
|
/* 02510BA8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02510BAC */ _t112 = cpu->r[1] + 0x00000080u;
|
|
/* 02510BAC */ rbrew_write32(cpu->mem, _t112, cpu->r[7]);
|
|
/* 02510BB0 */ _t113 = cpu->r[1] + 0x00000080u;
|
|
/* 02510BB0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02510BB4 */ _t114 = cpu->r[1] + 0x000000C4u;
|
|
/* 02510BB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02510BB8 */ _t115 = cpu->r[1] + 0x00000084u;
|
|
/* 02510BB8 */ rbrew_write32(cpu->mem, _t115, cpu->r[9]);
|
|
/* 02510BBC */ _t116 = cpu->r[1] + 0x00000084u;
|
|
/* 02510BBC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02510BC0 */ cpu->r[30] = 0x101F0000u;
|
|
/* 02510BC4 */ _t117 = cpu->r[1] + 0x00000088u;
|
|
/* 02510BC4 */ rbrew_write32(cpu->mem, _t117, cpu->r[10]);
|
|
/* 02510BC8 */ _t118 = cpu->r[1] + 0x00000088u;
|
|
/* 02510BC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02510BCC */ cpu->r[30] = cpu->r[30] + 0x00006338u;
|
|
/* 02510BD0 */ _t119 = cpu->r[31] + 0x00000280u;
|
|
/* 02510BD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02510BD4 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510BD4 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[10]);
|
|
/* 02510BD8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02510BDC */ _t121 = cpu->r[1] + 0x00000008u;
|
|
/* 02510BDC */ rbrew_write_f32(cpu->mem, _t121, cpu->f[9]);
|
|
/* 02510BE0 */ cpu->r[5] = cpu->r[30];
|
|
/* 02510BE4 */ _t122 = cpu->r[1] + 0x00000010u;
|
|
/* 02510BE4 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[11]);
|
|
/* 02510BE8 */ Gambit_fn_025C7728(cpu);
|
|
/* 02510BEC */ cpu->r[3] = cpu->r[31];
|
|
/* 02510BF0 */ Gambit_fn_0250DE38(cpu);
|
|
/* 02510BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510BF8 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510BF8 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02510BF8 */ if (_t124) goto L_02510CC0; else goto L_02510BFC;
|
|
L_02510BFC: ; // 0x2510bfc
|
|
/* 02510BFC */ goto L_02510CA8;
|
|
L_02510C00: ; // 0x2510c00
|
|
/* 02510C00 */ _t125 = cpu->r[31] + 0x00000280u;
|
|
/* 02510C00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02510C04 */ _t126 = cpu->r[7] + 0x00000244u;
|
|
/* 02510C04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 02510C08 */ _t127 = cpu->r[1] + 0x00000008u;
|
|
/* 02510C08 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[13]);
|
|
/* 02510C0C */ _t128 = cpu->r[7] + 0x00000248u;
|
|
/* 02510C0C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02510C10 */ _t129 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510C10 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[11]);
|
|
/* 02510C14 */ _t130 = cpu->r[7] + 0x0000024Cu;
|
|
/* 02510C14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 02510C18 */ _t131 = cpu->r[31] + 0x00000238u;
|
|
/* 02510C18 */ cpu->r[4] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02510C1C */ cpu->r[3] = cpu->r[1] + 0x000000C8u;
|
|
/* 02510C20 */ _t132 = cpu->r[1] + 0x00000010u;
|
|
/* 02510C20 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[12]);
|
|
/* 02510C24 */ Gambit_fn_0200FE00(cpu);
|
|
/* 02510C28 */ _t133 = cpu->r[1] + 0x000000C8u;
|
|
/* 02510C28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02510C2C */ _t134 = cpu->r[1] + 0x000000CCu;
|
|
/* 02510C2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02510C30 */ _t135 = cpu->r[1] + 0x000000D0u;
|
|
/* 02510C30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02510C34 */ _t136 = cpu->r[1] + 0x00000090u;
|
|
/* 02510C34 */ rbrew_write32(cpu->mem, _t136, cpu->r[11]);
|
|
/* 02510C38 */ _t137 = cpu->r[1] + 0x00000090u;
|
|
/* 02510C38 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02510C3C */ _t138 = cpu->r[1] + 0x00000094u;
|
|
/* 02510C3C */ rbrew_write32(cpu->mem, _t138, cpu->r[0]);
|
|
/* 02510C40 */ _t139 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02510C40 */ rbrew_write32(cpu->mem, _t139, cpu->r[9]);
|
|
/* 02510C44 */ _t140 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02510C44 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 02510C48 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02510C4C */ _t141 = cpu->r[1] + 0x00000008u;
|
|
/* 02510C4C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 02510C50 */ cpu->f[11] = cpu->f[7] - cpu->f[7];
|
|
/* 02510C54 */ _t142 = cpu->r[12] + 0xFFFFF510u;
|
|
/* 02510C54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 02510C58 */ cpu->f[0] = cpu->f[9] - cpu->f[10];
|
|
/* 02510C5C */ _t143 = cpu->r[1] + 0x00000010u;
|
|
/* 02510C5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02510C60 */ cpu->f[11] = fma(cpu->f[11], cpu->f[13], cpu->f[7]);
|
|
/* 02510C64 */ _t144 = cpu->r[1] + 0x00000094u;
|
|
/* 02510C64 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 02510C68 */ cpu->f[10] = fma(cpu->f[0], cpu->f[13], cpu->f[10]);
|
|
/* 02510C6C */ cpu->f[0] = cpu->f[8] - cpu->f[12];
|
|
/* 02510C70 */ _t145 = cpu->r[31] + 0x00000280u;
|
|
/* 02510C70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02510C74 */ cpu->r[30] = 0x101F0000u;
|
|
/* 02510C78 */ _t146 = cpu->r[1] + 0x00000008u;
|
|
/* 02510C78 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[10]);
|
|
/* 02510C7C */ cpu->r[30] = cpu->r[30] + 0x00006338u;
|
|
/* 02510C80 */ cpu->f[10] = fma(cpu->f[0], cpu->f[13], cpu->f[12]);
|
|
/* 02510C84 */ _t147 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510C84 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[11]);
|
|
/* 02510C88 */ cpu->r[5] = cpu->r[30];
|
|
/* 02510C8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02510C90 */ _t148 = cpu->r[1] + 0x00000010u;
|
|
/* 02510C90 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[10]);
|
|
/* 02510C94 */ Gambit_fn_025C7728(cpu);
|
|
/* 02510C98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510C9C */ Gambit_fn_0250DE38(cpu);
|
|
/* 02510CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510CA4 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510CA4 */ _t150 = _t149 & 0x00000001u;
|
|
/* 02510CA4 */ if (_t150) goto L_02510CC0; else goto L_02510CA8;
|
|
L_02510CA8: ; // 0x2510ca8
|
|
/* 02510CA8 */ _t151 = cpu->r[31] + 0x0000028Fu;
|
|
/* 02510CA8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t151);
|
|
/* 02510CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510CB0 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510CB0 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02510CB0 */ if (_t153) goto L_02510CB4; else goto L_02510CC0;
|
|
L_02510CB4: ; // 0x2510cb4
|
|
/* 02510CB4 */ _t154 = cpu->r[31] + 0x00000280u;
|
|
/* 02510CB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02510CB8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02510CBC */ Gambit_fn_025C7868(cpu);
|
|
L_02510CC0: ; // 0x2510cc0
|
|
/* 02510CC0 */ _t155 = cpu->r[1] + 0x000000DCu;
|
|
/* 02510CC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02510CC4 */ _t156 = cpu->r[1] + 0x00000108u;
|
|
/* 02510CC4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 02510CC8 */ _t157 = cpu->r[1] + 0x00000118u;
|
|
/* 02510CC8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 02510CCC */ _t158 = cpu->r[1] + 0x00000100u;
|
|
/* 02510CCC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t158);
|
|
/* 02510CD0 */ _t159 = cpu->r[1] + 0x00000110u;
|
|
/* 02510CD0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t159);
|
|
/* 02510CD4 */ _t160 = cpu->r[1] + 0x000000F8u;
|
|
/* 02510CD4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 02510CD8 */ _t161 = cpu->r[1] + 0x000000E8u;
|
|
/* 02510CD8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 02510CDC */ _t162 = cpu->r[1] + 0x000000F0u;
|
|
/* 02510CDC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t162);
|
|
/* 02510CE0 */ _t163 = cpu->r[1] + 0x000000E0u;
|
|
/* 02510CE0 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t163);
|
|
/* 02510CE4 */ _t164 = cpu->r[1] + 0x000000D8u;
|
|
/* 02510CE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02510CE8 */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02510CE8 */ _t166 = _t165 & 0x00000001u;
|
|
/* 02510CE8 */ if (_t166) goto L_02510CEC; // else: addr-0 trap, fall-through
|
|
L_02510CEC: ; // 0x2510cec
|
|
/* 02510CEC */ _t167 = cpu->r[1] + 0x00000124u;
|
|
/* 02510CEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 02510CF0 */ cpu->lr = cpu->r[0];
|
|
/* 02510CF4 */ cpu->r[1] = cpu->r[1] + 0x00000120u;
|
|
/* 02510CF8 */ return;
|
|
}
|
|
|
|
// fn_02510CFC @ 0x2510cfc
|
|
void Gambit_fn_02510CFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
|
|
L_02510CFC: ; // 0x2510cfc
|
|
/* 02510CFC */ cpu->r[0] = cpu->lr;
|
|
/* 02510D00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02510D00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510D00 */ cpu->r[1] = _t0;
|
|
/* 02510D04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02510D04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02510D08 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510D08 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02510D0C */ cpu->r[30] = cpu->r[3];
|
|
/* 02510D10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02510D10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510D14 */ _t4 = cpu->r[30] + 0x00000290u;
|
|
/* 02510D14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02510D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000001Eu);
|
|
/* 02510D1C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02510D1C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02510D1C */ if (_t6) goto L_02510DA4; else goto L_02510D20;
|
|
L_02510D20: ; // 0x2510d20
|
|
/* 02510D20 */ _t7 = cpu->r[30] + 0x00000294u;
|
|
/* 02510D20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02510D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02510D28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510D28 */ if (_t9) goto L_02510D3C; else goto L_02510D2C;
|
|
L_02510D2C: ; // 0x2510d2c
|
|
/* 02510D2C */ _t10 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02510D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02510D30 */ _t11 = cpu->r[30] + 0x00000298u;
|
|
/* 02510D30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02510D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02510D38 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D38 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02510D38 */ if (_t13) goto L_02510D54; else goto L_02510D3C;
|
|
L_02510D3C: ; // 0x2510d3c
|
|
/* 02510D3C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02510D40 */ _t14 = cpu->r[30] + 0x00000030u;
|
|
/* 02510D40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02510D44 */ cpu->r[4] = cpu->r[30] + 0x00000294u;
|
|
/* 02510D48 */ cpu->r[5] = cpu->r[5] + 0xFFFFF514u;
|
|
/* 02510D4C */ cpu->r[6] = 0x00000000u;
|
|
/* 02510D50 */ Gambit_fn_027B72F0(cpu);
|
|
L_02510D54: ; // 0x2510d54
|
|
/* 02510D54 */ _t15 = cpu->r[30] + 0x000002A0u;
|
|
/* 02510D54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02510D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510D5C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D5C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02510D5C */ if (_t17) goto L_02510DA4; else goto L_02510D60;
|
|
L_02510D60: ; // 0x2510d60
|
|
/* 02510D60 */ _t18 = cpu->r[30] + 0x000002A4u;
|
|
/* 02510D60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02510D64 */ _t19 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02510D64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02510D68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02510D6C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D6C */ _t21 = _t20 & 0x00000001u;
|
|
/* 02510D6C */ if (_t21) goto L_02510D70; else goto L_02510DA4;
|
|
L_02510D70: ; // 0x2510d70
|
|
/* 02510D70 */ _t22 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02510D70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02510D74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 02510D78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02510D78 */ if (_t24) goto L_02510D7C; else goto L_02510DA4;
|
|
L_02510D7C: ; // 0x2510d7c
|
|
/* 02510D7C */ _t25 = cpu->r[31] + 0x00000028u;
|
|
/* 02510D7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02510D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510D84 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D84 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02510D84 */ if (_t27) goto L_02510D9C; else goto L_02510D88;
|
|
L_02510D88: ; // 0x2510d88
|
|
/* 02510D88 */ _t28 = cpu->r[3] + 0x00000050u;
|
|
/* 02510D88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02510D8C */ _t29 = cpu->r[12] + 0x00000024u;
|
|
/* 02510D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02510D90 */ cpu->ctr = cpu->r[0];
|
|
/* 02510D94 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02510D98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02510D9C: ; // 0x2510d9c
|
|
/* 02510D9C */ cpu->r[0] = 0x00000001u;
|
|
/* 02510DA0 */ _t30 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02510DA0 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
L_02510DA4: ; // 0x2510da4
|
|
/* 02510DA4 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02510DA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02510DA8 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02510DA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02510DAC */ cpu->lr = cpu->r[0];
|
|
/* 02510DB0 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510DB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02510DB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02510DB8 */ return;
|
|
}
|
|
|
|
// fn_02510D00 @ 0x2510d00
|
|
void Gambit_fn_02510D00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
|
|
L_02510D00: ; // 0x2510d00
|
|
/* 02510D00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02510D00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510D00 */ cpu->r[1] = _t0;
|
|
/* 02510D04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02510D04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02510D08 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510D08 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02510D0C */ cpu->r[30] = cpu->r[3];
|
|
/* 02510D10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02510D10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510D14 */ _t4 = cpu->r[30] + 0x00000290u;
|
|
/* 02510D14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02510D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000001Eu);
|
|
/* 02510D1C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02510D1C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02510D1C */ if (_t6) goto L_02510DA4; else goto L_02510D20;
|
|
L_02510D20: ; // 0x2510d20
|
|
/* 02510D20 */ _t7 = cpu->r[30] + 0x00000294u;
|
|
/* 02510D20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02510D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02510D28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510D28 */ if (_t9) goto L_02510D3C; else goto L_02510D2C;
|
|
L_02510D2C: ; // 0x2510d2c
|
|
/* 02510D2C */ _t10 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02510D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02510D30 */ _t11 = cpu->r[30] + 0x00000298u;
|
|
/* 02510D30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02510D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02510D38 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D38 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02510D38 */ if (_t13) goto L_02510D54; else goto L_02510D3C;
|
|
L_02510D3C: ; // 0x2510d3c
|
|
/* 02510D3C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02510D40 */ _t14 = cpu->r[30] + 0x00000030u;
|
|
/* 02510D40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02510D44 */ cpu->r[4] = cpu->r[30] + 0x00000294u;
|
|
/* 02510D48 */ cpu->r[5] = cpu->r[5] + 0xFFFFF514u;
|
|
/* 02510D4C */ cpu->r[6] = 0x00000000u;
|
|
/* 02510D50 */ Gambit_fn_027B72F0(cpu);
|
|
L_02510D54: ; // 0x2510d54
|
|
/* 02510D54 */ _t15 = cpu->r[30] + 0x000002A0u;
|
|
/* 02510D54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02510D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510D5C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D5C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02510D5C */ if (_t17) goto L_02510DA4; else goto L_02510D60;
|
|
L_02510D60: ; // 0x2510d60
|
|
/* 02510D60 */ _t18 = cpu->r[30] + 0x000002A4u;
|
|
/* 02510D60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02510D64 */ _t19 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02510D64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02510D68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02510D6C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D6C */ _t21 = _t20 & 0x00000001u;
|
|
/* 02510D6C */ if (_t21) goto L_02510D70; else goto L_02510DA4;
|
|
L_02510D70: ; // 0x2510d70
|
|
/* 02510D70 */ _t22 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02510D70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02510D74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 02510D78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02510D78 */ if (_t24) goto L_02510D7C; else goto L_02510DA4;
|
|
L_02510D7C: ; // 0x2510d7c
|
|
/* 02510D7C */ _t25 = cpu->r[31] + 0x00000028u;
|
|
/* 02510D7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02510D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510D84 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510D84 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02510D84 */ if (_t27) goto L_02510D9C; else goto L_02510D88;
|
|
L_02510D88: ; // 0x2510d88
|
|
/* 02510D88 */ _t28 = cpu->r[3] + 0x00000050u;
|
|
/* 02510D88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02510D8C */ _t29 = cpu->r[12] + 0x00000024u;
|
|
/* 02510D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02510D90 */ cpu->ctr = cpu->r[0];
|
|
/* 02510D94 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02510D98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02510D9C: ; // 0x2510d9c
|
|
/* 02510D9C */ cpu->r[0] = 0x00000001u;
|
|
/* 02510DA0 */ _t30 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02510DA0 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
L_02510DA4: ; // 0x2510da4
|
|
/* 02510DA4 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02510DA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02510DA8 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02510DA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02510DAC */ cpu->lr = cpu->r[0];
|
|
/* 02510DB0 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510DB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02510DB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02510DB8 */ return;
|
|
}
|
|
|
|
// fn_02510DBC @ 0x2510dbc
|
|
void Gambit_fn_02510DBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_02510DBC: ; // 0x2510dbc
|
|
/* 02510DBC */ cpu->r[0] = cpu->lr;
|
|
/* 02510DC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02510DC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510DC0 */ cpu->r[1] = _t0;
|
|
/* 02510DC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02510DC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02510DC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510DC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02510DCC */ cpu->r[30] = cpu->r[3];
|
|
/* 02510DD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02510DD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510DD4 */ _t4 = cpu->r[30] + 0x000001BCu;
|
|
/* 02510DD4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02510DD8 */ /* nop */
|
|
/* 02510DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 02510DE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510DE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02510DE0 */ if (_t6) goto L_02510DE4; else goto L_02510E8C;
|
|
L_02510DE4: ; // 0x2510de4
|
|
/* 02510DE4 */ _t7 = cpu->r[30] + 0x0000028Eu;
|
|
/* 02510DE4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02510DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02510DEC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510DEC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510DEC */ if (_t9) goto L_02510E8C; else goto L_02510DF0;
|
|
L_02510DF0: ; // 0x2510df0
|
|
/* 02510DF0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02510DF4 */ _t10 = cpu->r[30] + 0x00000274u;
|
|
/* 02510DF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02510DF8 */ _t11 = cpu->r[10] + 0xFFFFF2BCu;
|
|
/* 02510DF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02510DFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02510E00 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E00 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02510E00 */ if (_t13) goto L_02510E04; else goto L_02510E8C;
|
|
L_02510E04: ; // 0x2510e04
|
|
/* 02510E04 */ _t14 = cpu->r[30] + 0x000001BDu;
|
|
/* 02510E04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02510E08 */ /* nop */
|
|
/* 02510E0C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E0C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02510E0C */ if (_t16) goto L_02510E10; else goto L_02510E80;
|
|
L_02510E10: ; // 0x2510e10
|
|
/* 02510E10 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510E14 */ Gambit_fn_024F65FC(cpu);
|
|
/* 02510E18 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02510E1C */ _t17 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 02510E1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02510E1C */ cpu->r[12] = _t17;
|
|
/* 02510E20 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02510E24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02510E28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510E2C */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 02510E30 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E30 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02510E30 */ if (_t19) goto L_02510E34; else goto L_02510E48;
|
|
L_02510E34: ; // 0x2510e34
|
|
/* 02510E34 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510E38 */ cpu->r[8] = 0x00000001u;
|
|
/* 02510E3C */ cpu->r[9] = cpu->r[9] + 0xFFFFF0C8u;
|
|
/* 02510E40 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 02510E40 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 02510E44 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 02510E44 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
L_02510E48: ; // 0x2510e48
|
|
/* 02510E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510E4C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E4C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02510E4C */ if (_t23) goto L_02510E6C; else goto L_02510E50;
|
|
L_02510E50: ; // 0x2510e50
|
|
/* 02510E50 */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 02510E50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02510E54 */ _t25 = cpu->r[11] + 0x0000006Cu;
|
|
/* 02510E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02510E58 */ cpu->ctr = cpu->r[0];
|
|
/* 02510E5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02510E60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02510E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510E68 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E68 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02510E68 */ if (_t27) goto L_02510E6C; else goto L_02510E70;
|
|
L_02510E6C: ; // 0x2510e6c
|
|
/* 02510E6C */ cpu->r[31] = 0x00000000u;
|
|
L_02510E70: ; // 0x2510e70
|
|
/* 02510E70 */ _t28 = cpu->r[30] + 0x000001B8u;
|
|
/* 02510E70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02510E74 */ _t29 = cpu->r[31] + 0x000001DCu;
|
|
/* 02510E74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02510E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02510E7C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510E7C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02510E7C */ if (_t31) goto L_02510E80; else goto L_02510E8C;
|
|
L_02510E80: ; // 0x2510e80
|
|
/* 02510E80 */ _t32 = cpu->r[30] + 0x000002C0u;
|
|
/* 02510E80 */ cpu->r[12] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02510E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02510E88 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E88 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02510E88 */ if (_t34) goto L_02510EA8; else goto L_02510E8C;
|
|
L_02510E8C: ; // 0x2510e8c
|
|
/* 02510E8C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02510E8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02510E90 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 02510E90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02510E94 */ cpu->lr = cpu->r[0];
|
|
/* 02510E98 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510E98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02510E9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02510EA0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02510EA4 */ return;
|
|
L_02510EA8: ; // 0x2510ea8
|
|
/* 02510EA8 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02510EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02510EAC */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02510EAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02510EB0 */ cpu->lr = cpu->r[0];
|
|
/* 02510EB4 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510EB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02510EB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02510EBC */ cpu->r[3] = 0x00000001u;
|
|
/* 02510EC0 */ return;
|
|
}
|
|
|
|
// fn_02510DC0 @ 0x2510dc0
|
|
void Gambit_fn_02510DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_02510DC0: ; // 0x2510dc0
|
|
/* 02510DC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02510DC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510DC0 */ cpu->r[1] = _t0;
|
|
/* 02510DC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02510DC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02510DC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510DC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02510DCC */ cpu->r[30] = cpu->r[3];
|
|
/* 02510DD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02510DD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510DD4 */ _t4 = cpu->r[30] + 0x000001BCu;
|
|
/* 02510DD4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02510DD8 */ /* nop */
|
|
/* 02510DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 02510DE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510DE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02510DE0 */ if (_t6) goto L_02510DE4; else goto L_02510E8C;
|
|
L_02510DE4: ; // 0x2510de4
|
|
/* 02510DE4 */ _t7 = cpu->r[30] + 0x0000028Eu;
|
|
/* 02510DE4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02510DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02510DEC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510DEC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510DEC */ if (_t9) goto L_02510E8C; else goto L_02510DF0;
|
|
L_02510DF0: ; // 0x2510df0
|
|
/* 02510DF0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02510DF4 */ _t10 = cpu->r[30] + 0x00000274u;
|
|
/* 02510DF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02510DF8 */ _t11 = cpu->r[10] + 0xFFFFF2BCu;
|
|
/* 02510DF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02510DFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02510E00 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E00 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02510E00 */ if (_t13) goto L_02510E04; else goto L_02510E8C;
|
|
L_02510E04: ; // 0x2510e04
|
|
/* 02510E04 */ _t14 = cpu->r[30] + 0x000001BDu;
|
|
/* 02510E04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02510E08 */ /* nop */
|
|
/* 02510E0C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E0C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02510E0C */ if (_t16) goto L_02510E10; else goto L_02510E80;
|
|
L_02510E10: ; // 0x2510e10
|
|
/* 02510E10 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510E14 */ Gambit_fn_024F65FC(cpu);
|
|
/* 02510E18 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02510E1C */ _t17 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 02510E1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02510E1C */ cpu->r[12] = _t17;
|
|
/* 02510E20 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02510E24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02510E28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510E2C */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 02510E30 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E30 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02510E30 */ if (_t19) goto L_02510E34; else goto L_02510E48;
|
|
L_02510E34: ; // 0x2510e34
|
|
/* 02510E34 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02510E38 */ cpu->r[8] = 0x00000001u;
|
|
/* 02510E3C */ cpu->r[9] = cpu->r[9] + 0xFFFFF0C8u;
|
|
/* 02510E40 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 02510E40 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 02510E44 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 02510E44 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
L_02510E48: ; // 0x2510e48
|
|
/* 02510E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510E4C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E4C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02510E4C */ if (_t23) goto L_02510E6C; else goto L_02510E50;
|
|
L_02510E50: ; // 0x2510e50
|
|
/* 02510E50 */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 02510E50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02510E54 */ _t25 = cpu->r[11] + 0x0000006Cu;
|
|
/* 02510E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02510E58 */ cpu->ctr = cpu->r[0];
|
|
/* 02510E5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02510E60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02510E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510E68 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E68 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02510E68 */ if (_t27) goto L_02510E6C; else goto L_02510E70;
|
|
L_02510E6C: ; // 0x2510e6c
|
|
/* 02510E6C */ cpu->r[31] = 0x00000000u;
|
|
L_02510E70: ; // 0x2510e70
|
|
/* 02510E70 */ _t28 = cpu->r[30] + 0x000001B8u;
|
|
/* 02510E70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02510E74 */ _t29 = cpu->r[31] + 0x000001DCu;
|
|
/* 02510E74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02510E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02510E7C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02510E7C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02510E7C */ if (_t31) goto L_02510E80; else goto L_02510E8C;
|
|
L_02510E80: ; // 0x2510e80
|
|
/* 02510E80 */ _t32 = cpu->r[30] + 0x000002C0u;
|
|
/* 02510E80 */ cpu->r[12] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02510E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02510E88 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510E88 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02510E88 */ if (_t34) goto L_02510EA8; else goto L_02510E8C;
|
|
L_02510E8C: ; // 0x2510e8c
|
|
/* 02510E8C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02510E8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02510E90 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 02510E90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02510E94 */ cpu->lr = cpu->r[0];
|
|
/* 02510E98 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510E98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02510E9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02510EA0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02510EA4 */ return;
|
|
L_02510EA8: ; // 0x2510ea8
|
|
/* 02510EA8 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02510EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02510EAC */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02510EAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02510EB0 */ cpu->lr = cpu->r[0];
|
|
/* 02510EB4 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510EB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02510EB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02510EBC */ cpu->r[3] = 0x00000001u;
|
|
/* 02510EC0 */ return;
|
|
}
|
|
|
|
// fn_02510EC8 @ 0x2510ec8
|
|
void Gambit_fn_02510EC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_02510EC8: ; // 0x2510ec8
|
|
/* 02510EC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02510EC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02510EC8 */ cpu->r[1] = _t0;
|
|
/* 02510ECC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02510ECC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02510ED0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510ED0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02510ED4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02510ED8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02510ED8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02510EDC */ _t4 = cpu->r[30] + 0x000001BDu;
|
|
/* 02510EDC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02510EE0 */ /* nop */
|
|
/* 02510EE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510EE4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02510EE4 */ if (_t6) goto L_02510EE8; else goto L_02510F74;
|
|
L_02510EE8: ; // 0x2510ee8
|
|
/* 02510EE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510EEC */ Gambit_fn_024F65FC(cpu);
|
|
/* 02510EF0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02510EF4 */ _t7 = cpu->r[9] + 0xFFFFFE84u;
|
|
/* 02510EF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02510EF4 */ cpu->r[9] = _t7;
|
|
/* 02510EF8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02510EFC */ cpu->r[31] = cpu->r[3];
|
|
/* 02510F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02510F04 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 02510F08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510F08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02510F08 */ if (_t9) goto L_02510F0C; else goto L_02510F20;
|
|
L_02510F0C: ; // 0x2510f0c
|
|
/* 02510F0C */ cpu->r[8] = 0x100C0000u;
|
|
/* 02510F10 */ cpu->r[12] = 0x00000001u;
|
|
/* 02510F14 */ cpu->r[8] = cpu->r[8] + 0xFFFFF0C8u;
|
|
/* 02510F18 */ _t10 = cpu->r[9] + 0x00000000u;
|
|
/* 02510F18 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02510F1C */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 02510F1C */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
L_02510F20: ; // 0x2510f20
|
|
/* 02510F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02510F24 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510F24 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02510F24 */ if (_t13) goto L_02510F44; else goto L_02510F28;
|
|
L_02510F28: ; // 0x2510f28
|
|
/* 02510F28 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 02510F28 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02510F2C */ _t15 = cpu->r[10] + 0x0000006Cu;
|
|
/* 02510F2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02510F30 */ cpu->ctr = cpu->r[0];
|
|
/* 02510F34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02510F38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02510F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510F40 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510F40 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02510F40 */ if (_t17) goto L_02510F44; else goto L_02510F48;
|
|
L_02510F44: ; // 0x2510f44
|
|
/* 02510F44 */ cpu->r[31] = 0x00000000u;
|
|
L_02510F48: ; // 0x2510f48
|
|
/* 02510F48 */ _t18 = cpu->r[30] + 0x000001B8u;
|
|
/* 02510F48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02510F4C */ _t19 = cpu->r[31] + 0x000004DCu;
|
|
/* 02510F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02510F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 02510F54 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510F54 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02510F54 */ if (_t21) goto L_02510F58; else goto L_02510F74;
|
|
L_02510F58: ; // 0x2510f58
|
|
/* 02510F58 */ _t22 = cpu->r[30] + 0x00000030u;
|
|
/* 02510F58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02510F5C */ _t23 = cpu->r[3] + 0x000000E0u;
|
|
/* 02510F5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02510F60 */ _t24 = cpu->r[11] + 0x00000034u;
|
|
/* 02510F60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02510F64 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02510F68 */ cpu->ctr = cpu->r[0];
|
|
/* 02510F6C */ cpu->r[4] = cpu->r[4] + 0xFFFFF51Cu;
|
|
/* 02510F70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02510F74: ; // 0x2510f74
|
|
/* 02510F74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510F78 */ Gambit_fn_025108D4(cpu);
|
|
/* 02510F7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02510F80 */ Gambit_fn_0250DE38(cpu);
|
|
/* 02510F84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510F88 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510F88 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02510F88 */ if (_t26) goto L_02510FF0; else goto L_02510F8C;
|
|
L_02510F8C: ; // 0x2510f8c
|
|
/* 02510F8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02510F90 */ Gambit_fn_02510CFC(cpu);
|
|
/* 02510F94 */ _t27 = cpu->r[30] + 0x00000280u;
|
|
/* 02510F94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02510F98 */ _t28 = cpu->r[12] + 0x00000724u;
|
|
/* 02510F98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02510F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02510FA0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510FA0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02510FA0 */ if (_t30) goto L_02510FB0; else goto L_02510FA4;
|
|
L_02510FA4: ; // 0x2510fa4
|
|
/* 02510FA4 */ _t31 = cpu->r[30] + 0x0000028Fu;
|
|
/* 02510FA4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02510FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02510FAC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510FAC */ _t33 = _t32 & 0x00000001u;
|
|
/* 02510FAC */ if (_t33) goto L_02510FB0; else goto L_02510FD4;
|
|
L_02510FB0: ; // 0x2510fb0
|
|
/* 02510FB0 */ _t34 = cpu->r[30] + 0x000002B4u;
|
|
/* 02510FB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02510FB4 */ _t35 = cpu->r[12] + 0x00000098u;
|
|
/* 02510FB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02510FB8 */ Gambit_fn_0251285C(cpu);
|
|
/* 02510FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510FC0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510FC0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02510FC0 */ if (_t37) goto L_02510FD4; else goto L_02510FC4;
|
|
L_02510FC4: ; // 0x2510fc4
|
|
/* 02510FC4 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 02510FC8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02510FCC */ Gambit_fn_021FC9F0(cpu);
|
|
/* 02510FD0 */ goto L_02510FF0;
|
|
L_02510FD4: ; // 0x2510fd4
|
|
/* 02510FD4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02510FD8 */ Gambit_fn_02510DBC(cpu);
|
|
/* 02510FDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02510FE0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02510FE0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02510FE0 */ if (_t39) goto L_02510FF0; else goto L_02510FE4;
|
|
L_02510FE4: ; // 0x2510fe4
|
|
/* 02510FE4 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 02510FE8 */ cpu->r[4] = 0x00000002u;
|
|
/* 02510FEC */ Gambit_fn_021FC9F0(cpu);
|
|
L_02510FF0: ; // 0x2510ff0
|
|
/* 02510FF0 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 02510FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02510FF4 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 02510FF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02510FF8 */ cpu->lr = cpu->r[0];
|
|
/* 02510FFC */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02510FFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02511000 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02511004 */ return;
|
|
}
|
|
|
|
// fn_02511008 @ 0x2511008
|
|
void Gambit_fn_02511008(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_02511008: ; // 0x2511008
|
|
/* 02511008 */ cpu->r[0] = cpu->lr;
|
|
/* 0251100C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0251100C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251100C */ cpu->r[1] = _t0;
|
|
/* 02511010 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02511010 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02511014 */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 02511014 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02511018 */ /* nop */
|
|
/* 0251101C */ _t3 = cpu->r[1] + 0x00000088u;
|
|
/* 0251101C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02511020 */ cpu->r[30] = cpu->r[3];
|
|
/* 02511024 */ _t4 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02511024 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02511028 */ cpu->r[5] = 0x00000003u;
|
|
/* 0251102C */ _t5 = cpu->r[1] + 0x00000094u;
|
|
/* 0251102C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02511030 */ _t6 = cpu->r[30] + 0x00000234u;
|
|
/* 02511030 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02511034 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02511038 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0251103C */ _t7 = cpu->r[1] + 0x00000054u;
|
|
/* 0251103C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02511040 */ _t8 = cpu->r[1] + 0x00000058u;
|
|
/* 02511040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02511044 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02511044 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02511048 */ _t10 = cpu->r[1] + 0x00000050u;
|
|
/* 02511048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251104C */ /* nop */
|
|
/* 02511050 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02511050 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02511054 */ /* nop */
|
|
/* 02511058 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02511058 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0251105C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251105C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02511060 */ /* nop */
|
|
/* 02511064 */ _t14 = cpu->r[30] + 0x00000248u;
|
|
/* 02511064 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02511068 */ /* nop */
|
|
/* 0251106C */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 0251106C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02511070 */ cpu->f[13] = cpu->f[0] - cpu->f[9];
|
|
/* 02511074 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 02511074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02511078 */ _t17 = cpu->r[1] + 0x00000038u;
|
|
/* 02511078 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0251107C */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 0251107C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02511080 */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 02511080 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02511084 */ _t20 = cpu->r[30] + 0x00000234u;
|
|
/* 02511084 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02511088 */ _t21 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02511088 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0251108C */ cpu->r[5] = 0x00000003u;
|
|
/* 02511090 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02511094 */ _t22 = cpu->r[1] + 0x00000040u;
|
|
/* 02511094 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 02511098 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0251109C */ _t23 = cpu->r[1] + 0x00000040u;
|
|
/* 0251109C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 025110A0 */ _t24 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025110A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025110A4 */ _t25 = cpu->r[1] + 0x00000064u;
|
|
/* 025110A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025110A8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 025110A8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 025110AC */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 025110AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025110B0 */ /* nop */
|
|
/* 025110B4 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 025110B4 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 025110B8 */ /* nop */
|
|
/* 025110BC */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025110BC */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 025110C0 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025110C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 025110C4 */ /* nop */
|
|
/* 025110C8 */ _t31 = cpu->r[30] + 0x00000234u;
|
|
/* 025110C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025110CC */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 025110D0 */ /* nop */
|
|
/* 025110D4 */ _t32 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025110D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 025110D8 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 025110D8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 025110DC */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 025110DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025110E0 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 025110E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025110E4 */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 025110E4 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 025110E8 */ cpu->r[5] = 0x00000002u;
|
|
/* 025110EC */ _t37 = cpu->r[1] + 0x00000048u;
|
|
/* 025110EC */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 025110F0 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 025110F4 */ _t38 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025110F4 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
/* 025110F8 */ Gambit_fn_0200FE00(cpu);
|
|
/* 025110FC */ _t39 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025110FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02511100 */ _t40 = cpu->r[1] + 0x00000068u;
|
|
/* 02511100 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02511104 */ _t41 = cpu->r[1] + 0x00000070u;
|
|
/* 02511104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02511108 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 02511108 */ rbrew_write32(cpu->mem, _t42, cpu->r[11]);
|
|
/* 0251110C */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 0251110C */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02511110 */ cpu->r[3] = cpu->r[30];
|
|
/* 02511114 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511114 */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 02511118 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0251111C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02511120 */ _t45 = cpu->r[8] + 0xFFFFFE84u;
|
|
/* 02511120 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02511120 */ cpu->r[8] = _t45;
|
|
/* 02511124 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02511128 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251112C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02511130 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 02511134 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511134 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02511134 */ if (_t47) goto L_02511138; else goto L_0251114C;
|
|
L_02511138: ; // 0x2511138
|
|
/* 02511138 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251113C */ cpu->r[10] = 0x00000001u;
|
|
/* 02511140 */ cpu->r[11] = cpu->r[11] + 0xFFFFF0C8u;
|
|
/* 02511144 */ _t48 = cpu->r[8] + 0x00000000u;
|
|
/* 02511144 */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02511148 */ _t49 = cpu->r[4] + 0x00000000u;
|
|
/* 02511148 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
L_0251114C: ; // 0x251114c
|
|
/* 0251114C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02511150 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511150 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02511150 */ if (_t51) goto L_02511170; else goto L_02511154;
|
|
L_02511154: ; // 0x2511154
|
|
/* 02511154 */ _t52 = cpu->r[31] + 0x00000000u;
|
|
/* 02511154 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02511158 */ _t53 = cpu->r[12] + 0x0000006Cu;
|
|
/* 02511158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251115C */ cpu->ctr = cpu->r[0];
|
|
/* 02511160 */ cpu->r[3] = cpu->r[31];
|
|
/* 02511164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251116C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251116C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0251116C */ if (_t55) goto L_02511170; else goto L_02511174;
|
|
L_02511170: ; // 0x2511170
|
|
/* 02511170 */ cpu->r[31] = 0x00000000u;
|
|
L_02511174: ; // 0x2511174
|
|
/* 02511174 */ /* nop */
|
|
/* 02511178 */ _t56 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02511178 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0251117C */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 0251117C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02511180 */ /* nop */
|
|
/* 02511184 */ _t58 = cpu->r[1] + 0x00000040u;
|
|
/* 02511184 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02511188 */ /* nop */
|
|
/* 0251118C */ _t59 = cpu->r[30] + 0x00000280u;
|
|
/* 0251118C */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02511190 */ cpu->f[0] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02511194 */ /* nop */
|
|
/* 02511198 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 02511198 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 0251119C */ _t61 = cpu->r[10] + 0x00000098u;
|
|
/* 0251119C */ cpu->r[4] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025111A0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 025111A4 */ _t62 = cpu->r[30] + 0x000002B4u;
|
|
/* 025111A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 025111A8 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 025111AC */ Gambit_fn_02512A54(cpu);
|
|
/* 025111B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025111B4 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025111B4 */ _t64 = _t63 & 0x00000001u;
|
|
/* 025111B4 */ if (_t64) goto L_025111D4; else goto L_025111B8;
|
|
L_025111B8: ; // 0x25111b8
|
|
/* 025111B8 */ _t65 = cpu->r[30] + 0x00000280u;
|
|
/* 025111B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025111BC */ cpu->r[3] = cpu->r[30];
|
|
/* 025111C0 */ cpu->r[4] = 0x00000001u;
|
|
/* 025111C4 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 025111C8 */ _t66 = cpu->r[8] + 0x00000098u;
|
|
/* 025111C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t66);
|
|
/* 025111CC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 025111D0 */ Gambit_fn_0250FD68(cpu);
|
|
L_025111D4: ; // 0x25111d4
|
|
/* 025111D4 */ _t67 = cpu->r[1] + 0x00000088u;
|
|
/* 025111D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 025111D8 */ _t68 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025111D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 025111DC */ _t69 = cpu->r[1] + 0x00000080u;
|
|
/* 025111DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 025111E0 */ _t70 = cpu->r[1] + 0x00000078u;
|
|
/* 025111E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 025111E4 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025111E4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 025111E4 */ if (_t72) goto L_025111E8; // else: addr-0 trap, fall-through
|
|
L_025111E8: ; // 0x25111e8
|
|
/* 025111E8 */ _t73 = cpu->r[1] + 0x00000094u;
|
|
/* 025111E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025111EC */ cpu->lr = cpu->r[0];
|
|
/* 025111F0 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 025111F4 */ return;
|
|
}
|
|
|
|
// fn_0251100C @ 0x251100c
|
|
void Gambit_fn_0251100C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_0251100C: ; // 0x251100c
|
|
/* 0251100C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0251100C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251100C */ cpu->r[1] = _t0;
|
|
/* 02511010 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02511010 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02511014 */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 02511014 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02511018 */ /* nop */
|
|
/* 0251101C */ _t3 = cpu->r[1] + 0x00000088u;
|
|
/* 0251101C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02511020 */ cpu->r[30] = cpu->r[3];
|
|
/* 02511024 */ _t4 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02511024 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02511028 */ cpu->r[5] = 0x00000003u;
|
|
/* 0251102C */ _t5 = cpu->r[1] + 0x00000094u;
|
|
/* 0251102C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02511030 */ _t6 = cpu->r[30] + 0x00000234u;
|
|
/* 02511030 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02511034 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02511038 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0251103C */ _t7 = cpu->r[1] + 0x00000054u;
|
|
/* 0251103C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02511040 */ _t8 = cpu->r[1] + 0x00000058u;
|
|
/* 02511040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02511044 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02511044 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02511048 */ _t10 = cpu->r[1] + 0x00000050u;
|
|
/* 02511048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251104C */ /* nop */
|
|
/* 02511050 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02511050 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02511054 */ /* nop */
|
|
/* 02511058 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02511058 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0251105C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251105C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02511060 */ /* nop */
|
|
/* 02511064 */ _t14 = cpu->r[30] + 0x00000248u;
|
|
/* 02511064 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02511068 */ /* nop */
|
|
/* 0251106C */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 0251106C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02511070 */ cpu->f[13] = cpu->f[0] - cpu->f[9];
|
|
/* 02511074 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 02511074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02511078 */ _t17 = cpu->r[1] + 0x00000038u;
|
|
/* 02511078 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0251107C */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 0251107C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02511080 */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 02511080 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02511084 */ _t20 = cpu->r[30] + 0x00000234u;
|
|
/* 02511084 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02511088 */ _t21 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02511088 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0251108C */ cpu->r[5] = 0x00000003u;
|
|
/* 02511090 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02511094 */ _t22 = cpu->r[1] + 0x00000040u;
|
|
/* 02511094 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 02511098 */ Gambit_fn_0200FE00(cpu);
|
|
/* 0251109C */ _t23 = cpu->r[1] + 0x00000040u;
|
|
/* 0251109C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 025110A0 */ _t24 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025110A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025110A4 */ _t25 = cpu->r[1] + 0x00000064u;
|
|
/* 025110A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025110A8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 025110A8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 025110AC */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 025110AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025110B0 */ /* nop */
|
|
/* 025110B4 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 025110B4 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 025110B8 */ /* nop */
|
|
/* 025110BC */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025110BC */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 025110C0 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025110C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 025110C4 */ /* nop */
|
|
/* 025110C8 */ _t31 = cpu->r[30] + 0x00000234u;
|
|
/* 025110C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025110CC */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 025110D0 */ /* nop */
|
|
/* 025110D4 */ _t32 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025110D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 025110D8 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 025110D8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 025110DC */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 025110DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025110E0 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 025110E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025110E4 */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 025110E4 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 025110E8 */ cpu->r[5] = 0x00000002u;
|
|
/* 025110EC */ _t37 = cpu->r[1] + 0x00000048u;
|
|
/* 025110EC */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 025110F0 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 025110F4 */ _t38 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025110F4 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
/* 025110F8 */ Gambit_fn_0200FE00(cpu);
|
|
/* 025110FC */ _t39 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025110FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02511100 */ _t40 = cpu->r[1] + 0x00000068u;
|
|
/* 02511100 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02511104 */ _t41 = cpu->r[1] + 0x00000070u;
|
|
/* 02511104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02511108 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 02511108 */ rbrew_write32(cpu->mem, _t42, cpu->r[11]);
|
|
/* 0251110C */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 0251110C */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02511110 */ cpu->r[3] = cpu->r[30];
|
|
/* 02511114 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511114 */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 02511118 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0251111C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02511120 */ _t45 = cpu->r[8] + 0xFFFFFE84u;
|
|
/* 02511120 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02511120 */ cpu->r[8] = _t45;
|
|
/* 02511124 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02511128 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251112C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02511130 */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 02511134 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511134 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02511134 */ if (_t47) goto L_02511138; else goto L_0251114C;
|
|
L_02511138: ; // 0x2511138
|
|
/* 02511138 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251113C */ cpu->r[10] = 0x00000001u;
|
|
/* 02511140 */ cpu->r[11] = cpu->r[11] + 0xFFFFF0C8u;
|
|
/* 02511144 */ _t48 = cpu->r[8] + 0x00000000u;
|
|
/* 02511144 */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02511148 */ _t49 = cpu->r[4] + 0x00000000u;
|
|
/* 02511148 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
L_0251114C: ; // 0x251114c
|
|
/* 0251114C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02511150 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511150 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02511150 */ if (_t51) goto L_02511170; else goto L_02511154;
|
|
L_02511154: ; // 0x2511154
|
|
/* 02511154 */ _t52 = cpu->r[31] + 0x00000000u;
|
|
/* 02511154 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02511158 */ _t53 = cpu->r[12] + 0x0000006Cu;
|
|
/* 02511158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251115C */ cpu->ctr = cpu->r[0];
|
|
/* 02511160 */ cpu->r[3] = cpu->r[31];
|
|
/* 02511164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251116C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251116C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0251116C */ if (_t55) goto L_02511170; else goto L_02511174;
|
|
L_02511170: ; // 0x2511170
|
|
/* 02511170 */ cpu->r[31] = 0x00000000u;
|
|
L_02511174: ; // 0x2511174
|
|
/* 02511174 */ /* nop */
|
|
/* 02511178 */ _t56 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02511178 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0251117C */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 0251117C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02511180 */ /* nop */
|
|
/* 02511184 */ _t58 = cpu->r[1] + 0x00000040u;
|
|
/* 02511184 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02511188 */ /* nop */
|
|
/* 0251118C */ _t59 = cpu->r[30] + 0x00000280u;
|
|
/* 0251118C */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02511190 */ cpu->f[0] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02511194 */ /* nop */
|
|
/* 02511198 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 02511198 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 0251119C */ _t61 = cpu->r[10] + 0x00000098u;
|
|
/* 0251119C */ cpu->r[4] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025111A0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 025111A4 */ _t62 = cpu->r[30] + 0x000002B4u;
|
|
/* 025111A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 025111A8 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 025111AC */ Gambit_fn_02512A54(cpu);
|
|
/* 025111B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025111B4 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025111B4 */ _t64 = _t63 & 0x00000001u;
|
|
/* 025111B4 */ if (_t64) goto L_025111D4; else goto L_025111B8;
|
|
L_025111B8: ; // 0x25111b8
|
|
/* 025111B8 */ _t65 = cpu->r[30] + 0x00000280u;
|
|
/* 025111B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025111BC */ cpu->r[3] = cpu->r[30];
|
|
/* 025111C0 */ cpu->r[4] = 0x00000001u;
|
|
/* 025111C4 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 025111C8 */ _t66 = cpu->r[8] + 0x00000098u;
|
|
/* 025111C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t66);
|
|
/* 025111CC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 025111D0 */ Gambit_fn_0250FD68(cpu);
|
|
L_025111D4: ; // 0x25111d4
|
|
/* 025111D4 */ _t67 = cpu->r[1] + 0x00000088u;
|
|
/* 025111D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 025111D8 */ _t68 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025111D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 025111DC */ _t69 = cpu->r[1] + 0x00000080u;
|
|
/* 025111DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 025111E0 */ _t70 = cpu->r[1] + 0x00000078u;
|
|
/* 025111E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 025111E4 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025111E4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 025111E4 */ if (_t72) goto L_025111E8; // else: addr-0 trap, fall-through
|
|
L_025111E8: ; // 0x25111e8
|
|
/* 025111E8 */ _t73 = cpu->r[1] + 0x00000094u;
|
|
/* 025111E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025111EC */ cpu->lr = cpu->r[0];
|
|
/* 025111F0 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 025111F4 */ return;
|
|
}
|
|
|
|
// fn_025111FC @ 0x25111fc
|
|
void Gambit_fn_025111FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_025111FC: ; // 0x25111fc
|
|
/* 025111FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025111FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025111FC */ cpu->r[1] = _t0;
|
|
/* 02511200 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511200 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02511204 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02511208 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251120C */ cpu->r[5] = 0x00000001u;
|
|
/* 02511210 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02511210 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02511214 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 02511214 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02511218 */ cpu->r[4] = cpu->r[4] + 0xFFFFF524u;
|
|
/* 0251121C */ Gambit_fn_02398850(cpu);
|
|
/* 02511220 */ cpu->r[3] = cpu->r[31];
|
|
/* 02511224 */ Gambit_fn_0250DE38(cpu);
|
|
/* 02511228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251122C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251122C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0251122C */ if (_t5) goto L_02511238; else goto L_02511230;
|
|
L_02511230: ; // 0x2511230
|
|
/* 02511230 */ cpu->r[3] = cpu->r[31];
|
|
/* 02511234 */ Gambit_fn_02511008(cpu);
|
|
L_02511238: ; // 0x2511238
|
|
/* 02511238 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02511238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0251123C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251123C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02511240 */ cpu->lr = cpu->r[0];
|
|
/* 02511244 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02511248 */ return;
|
|
}
|
|
|
|
// fn_02511250 @ 0x2511250
|
|
void Gambit_fn_02511250(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_02511250: ; // 0x2511250
|
|
/* 02511250 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02511250 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511250 */ cpu->r[1] = _t0;
|
|
/* 02511254 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02511254 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02511258 */ cpu->r[30] = cpu->r[3];
|
|
/* 0251125C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251125C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02511260 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02511260 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02511264 */ Gambit_fn_025108D4(cpu);
|
|
/* 02511268 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251126C */ Gambit_fn_0250DE38(cpu);
|
|
/* 02511270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511274 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511274 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02511274 */ if (_t5) goto L_025112C0; else goto L_02511278;
|
|
L_02511278: ; // 0x2511278
|
|
/* 02511278 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251127C */ Gambit_fn_02510CFC(cpu);
|
|
/* 02511280 */ _t6 = cpu->r[30] + 0x00000280u;
|
|
/* 02511280 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02511284 */ _t7 = cpu->r[11] + 0x00000724u;
|
|
/* 02511284 */ cpu->r[8] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02511288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0251128C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251128C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0251128C */ if (_t9) goto L_0251129C; else goto L_02511290;
|
|
L_02511290: ; // 0x2511290
|
|
/* 02511290 */ _t10 = cpu->r[30] + 0x0000028Fu;
|
|
/* 02511290 */ cpu->r[9] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02511294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02511298 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511298 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02511298 */ if (_t12) goto L_0251129C; else goto L_025112C0;
|
|
L_0251129C: ; // 0x251129c
|
|
/* 0251129C */ _t13 = cpu->r[30] + 0x000002B4u;
|
|
/* 0251129C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025112A0 */ _t14 = cpu->r[11] + 0x00000098u;
|
|
/* 025112A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025112A4 */ Gambit_fn_0251285C(cpu);
|
|
/* 025112A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025112AC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025112AC */ _t16 = _t15 & 0x00000001u;
|
|
/* 025112AC */ if (_t16) goto L_025112C0; else goto L_025112B0;
|
|
L_025112B0: ; // 0x25112b0
|
|
/* 025112B0 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 025112B4 */ cpu->r[4] = 0x00000000u;
|
|
/* 025112B8 */ Gambit_fn_021FC9F0(cpu);
|
|
/* 025112BC */ goto L_0251133C;
|
|
L_025112C0: ; // 0x25112c0
|
|
/* 025112C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 025112C4 */ Gambit_fn_024F65FC(cpu);
|
|
/* 025112C8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 025112CC */ _t17 = cpu->r[10] + 0xFFFFFE84u;
|
|
/* 025112CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025112CC */ cpu->r[10] = _t17;
|
|
/* 025112D0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 025112D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025112D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025112DC */ cpu->r[4] = cpu->r[4] + 0x000009ACu;
|
|
/* 025112E0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025112E0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 025112E0 */ if (_t19) goto L_025112E4; else goto L_025112F8;
|
|
L_025112E4: ; // 0x25112e4
|
|
/* 025112E4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025112E8 */ cpu->r[12] = 0x00000001u;
|
|
/* 025112EC */ cpu->r[0] = cpu->r[0] + 0xFFFFF0C8u;
|
|
/* 025112F0 */ _t20 = cpu->r[10] + 0x00000000u;
|
|
/* 025112F0 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 025112F4 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 025112F4 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_025112F8: ; // 0x25112f8
|
|
/* 025112F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025112FC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025112FC */ _t23 = _t22 & 0x00000001u;
|
|
/* 025112FC */ if (_t23) goto L_0251131C; else goto L_02511300;
|
|
L_02511300: ; // 0x2511300
|
|
/* 02511300 */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 02511300 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02511304 */ _t25 = cpu->r[9] + 0x0000006Cu;
|
|
/* 02511304 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02511308 */ cpu->ctr = cpu->r[11];
|
|
/* 0251130C */ cpu->r[3] = cpu->r[31];
|
|
/* 02511310 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511318 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511318 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02511318 */ if (_t27) goto L_0251131C; else goto L_02511320;
|
|
L_0251131C: ; // 0x251131c
|
|
/* 0251131C */ cpu->r[31] = 0x00000000u;
|
|
L_02511320: ; // 0x2511320
|
|
/* 02511320 */ _t28 = cpu->r[30] + 0x000001B8u;
|
|
/* 02511320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02511324 */ _t29 = cpu->r[31] + 0x0000029Cu;
|
|
/* 02511324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02511328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0251132C */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251132C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0251132C */ if (_t31) goto L_0251133C; else goto L_02511330;
|
|
L_02511330: ; // 0x2511330
|
|
/* 02511330 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 02511334 */ cpu->r[4] = 0x00000001u;
|
|
/* 02511338 */ Gambit_fn_021FC9F0(cpu);
|
|
L_0251133C: ; // 0x251133c
|
|
/* 0251133C */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0251133C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02511340 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02511340 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02511344 */ cpu->lr = cpu->r[0];
|
|
/* 02511348 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0251134C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02511350 */ return;
|
|
}
|
|
|
|
// fn_02511354 @ 0x2511354
|
|
void Gambit_fn_02511354(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158;
|
|
|
|
L_02511354: ; // 0x2511354
|
|
/* 02511354 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 02511354 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511354 */ cpu->r[1] = _t0;
|
|
/* 02511358 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 02511358 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0251135C */ /* nop */
|
|
/* 02511360 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02511360 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02511364 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02511364 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02511368 */ cpu->r[0] = cpu->lr;
|
|
/* 0251136C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0251136C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 02511370 */ /* nop */
|
|
/* 02511374 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02511374 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02511378 */ /* nop */
|
|
/* 0251137C */ _t6 = cpu->r[1] + 0x00000048u;
|
|
/* 0251137C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 02511380 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02511384 */ _t7 = cpu->r[1] + 0x00000028u;
|
|
/* 02511384 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[28]);
|
|
/* 02511388 */ _t8 = cpu->r[1] + 0x00000038u;
|
|
/* 02511388 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 0251138C */ _t9 = cpu->r[1] + 0x00000050u;
|
|
/* 0251138C */ rbrew_write_f64(cpu->mem, _t9, cpu->f[31]);
|
|
/* 02511390 */ _t10 = cpu->r[1] + 0x00000064u;
|
|
/* 02511390 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02511394 */ /* nop */
|
|
/* 02511398 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02511398 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 0251139C */ cpu->r[9] = 0x101F0000u;
|
|
/* 025113A0 */ _t12 = cpu->r[1] + 0x00000058u;
|
|
/* 025113A0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 025113A4 */ cpu->r[8] = 0x101F0000u;
|
|
/* 025113A8 */ cpu->r[12] = 0xFFFFFFFEu;
|
|
/* 025113AC */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 025113AC */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 025113B0 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 025113B4 */ _t14 = cpu->r[8] + 0xFFFF95A4u;
|
|
/* 025113B4 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 025113B4 */ cpu->r[8] = _t14;
|
|
/* 025113B8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 025113BC */ _t15 = cpu->r[8] + 0x00000004u;
|
|
/* 025113BC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 025113C0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 025113C4 */ cpu->r[0] = 0x00000002u;
|
|
/* 025113C8 */ _t16 = cpu->r[12] + 0xFFFF95ACu;
|
|
/* 025113C8 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 025113C8 */ cpu->r[12] = _t16;
|
|
/* 025113CC */ cpu->r[8] = cpu->r[8] + 0x00005BFCu;
|
|
/* 025113D0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 025113D0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 025113D4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 025113D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025113D8 */ cpu->r[31] = 0x101F0000u;
|
|
/* 025113DC */ _t19 = cpu->r[8] + 0x00000000u;
|
|
/* 025113DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025113E0 */ _t20 = cpu->r[9] + 0xFFFF959Cu;
|
|
/* 025113E0 */ rbrew_write32(cpu->mem, _t20, cpu->r[5]);
|
|
/* 025113E0 */ cpu->r[9] = _t20;
|
|
/* 025113E4 */ _t21 = cpu->r[8] + 0x00000008u;
|
|
/* 025113E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025113E8 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 025113E8 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 025113EC */ cpu->r[12] = 0x101F0000u;
|
|
/* 025113F0 */ _t23 = cpu->r[8] + 0x0000000Cu;
|
|
/* 025113F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025113F4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 025113F8 */ _t24 = cpu->r[31] + 0xFFFF95DCu;
|
|
/* 025113F8 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 025113F8 */ cpu->r[31] = _t24;
|
|
/* 025113FC */ _t25 = cpu->r[9] + 0x00000004u;
|
|
/* 025113FC */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 02511400 */ cpu->r[11] = cpu->r[11] + 0xFFFF95B4u;
|
|
/* 02511404 */ _t26 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 02511404 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02511404 */ cpu->r[12] = _t26;
|
|
/* 02511408 */ _t27 = cpu->r[11] + 0x00000004u;
|
|
/* 02511408 */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 0251140C */ _t28 = cpu->r[8] + 0x00000004u;
|
|
/* 0251140C */ cpu->r[29] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02511410 */ _t29 = cpu->r[31] + 0x00000010u;
|
|
/* 02511410 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 02511414 */ _t30 = cpu->r[31] + 0x00000018u;
|
|
/* 02511414 */ rbrew_write32(cpu->mem, _t30, cpu->r[4]);
|
|
/* 02511418 */ _t31 = cpu->r[31] + 0x00000030u;
|
|
/* 02511418 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 0251141C */ _t32 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0251141C */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 02511420 */ _t33 = cpu->r[31] + 0x00000008u;
|
|
/* 02511420 */ rbrew_write32(cpu->mem, _t33, cpu->r[4]);
|
|
/* 02511424 */ _t34 = cpu->r[31] + 0x00000024u;
|
|
/* 02511424 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 02511428 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0251142C */ cpu->r[0] = 0x00000004u;
|
|
/* 02511430 */ _t35 = cpu->r[31] + 0x00000028u;
|
|
/* 02511430 */ rbrew_write32(cpu->mem, _t35, cpu->r[4]);
|
|
/* 02511434 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02511438 */ _t36 = cpu->r[9] + 0xFFFF95C4u;
|
|
/* 02511438 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 0251143C */ _t37 = cpu->r[7] + 0x00005C1Cu;
|
|
/* 0251143C */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0251143C */ cpu->r[7] = _t37;
|
|
/* 02511440 */ _t38 = cpu->r[31] + 0x00000004u;
|
|
/* 02511440 */ rbrew_write32(cpu->mem, _t38, cpu->r[29]);
|
|
/* 02511444 */ _t39 = cpu->r[31] + 0x00000020u;
|
|
/* 02511444 */ rbrew_write32(cpu->mem, _t39, cpu->r[30]);
|
|
/* 02511448 */ _t40 = cpu->r[31] + 0x00000014u;
|
|
/* 02511448 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 0251144C */ _t41 = cpu->r[31] + 0x00000040u;
|
|
/* 0251144C */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 02511450 */ cpu->r[28] = 0x101F0000u;
|
|
/* 02511454 */ _t42 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02511454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02511458 */ _t43 = cpu->r[12] + 0x00000008u;
|
|
/* 02511458 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0251145C */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0251145C */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 02511460 */ _t45 = cpu->r[28] + 0xFFFF95BCu;
|
|
/* 02511460 */ rbrew_write32(cpu->mem, _t45, cpu->r[5]);
|
|
/* 02511460 */ cpu->r[28] = _t45;
|
|
/* 02511464 */ _t46 = cpu->r[7] + 0x00000004u;
|
|
/* 02511464 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02511468 */ _t47 = cpu->r[7] + 0x00000008u;
|
|
/* 02511468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0251146C */ _t48 = cpu->r[31] + 0x00000044u;
|
|
/* 0251146C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02511470 */ _t49 = cpu->r[31] + 0x00000048u;
|
|
/* 02511470 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02511474 */ _t50 = cpu->r[12] + 0x00000004u;
|
|
/* 02511474 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02511478 */ _t51 = cpu->r[11] + 0x00000000u;
|
|
/* 02511478 */ rbrew_write32(cpu->mem, _t51, cpu->r[5]);
|
|
/* 0251147C */ _t52 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0251147C */ cpu->r[7] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02511480 */ _t53 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02511480 */ rbrew_write32(cpu->mem, _t53, cpu->r[3]);
|
|
/* 02511484 */ _t54 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02511484 */ rbrew_write32(cpu->mem, _t54, cpu->r[7]);
|
|
/* 02511488 */ _t55 = cpu->r[31] + 0x00000034u;
|
|
/* 02511488 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0251148C */ _t56 = cpu->r[28] + 0x00000004u;
|
|
/* 0251148C */ rbrew_write32(cpu->mem, _t56, cpu->r[10]);
|
|
/* 02511490 */ _t57 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02511490 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 02511494 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02511498 */ _t58 = cpu->r[31] + 0x00000038u;
|
|
/* 02511498 */ rbrew_write32(cpu->mem, _t58, cpu->r[6]);
|
|
/* 0251149C */ cpu->r[6] = 0x101F0000u;
|
|
/* 025114A0 */ _t59 = cpu->r[10] + 0x00005BDCu;
|
|
/* 025114A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 025114A0 */ cpu->r[10] = _t59;
|
|
/* 025114A4 */ _t60 = cpu->r[10] + 0x00000008u;
|
|
/* 025114A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025114A8 */ cpu->r[6] = cpu->r[6] + 0x00005C4Cu;
|
|
/* 025114AC */ _t61 = cpu->r[10] + 0x0000000Cu;
|
|
/* 025114AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025114B0 */ _t62 = cpu->r[6] + 0x00000004u;
|
|
/* 025114B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 025114B4 */ _t63 = cpu->r[31] + 0x00000088u;
|
|
/* 025114B4 */ rbrew_write32(cpu->mem, _t63, cpu->r[11]);
|
|
/* 025114B8 */ _t64 = cpu->r[31] + 0x00000080u;
|
|
/* 025114B8 */ rbrew_write32(cpu->mem, _t64, cpu->r[7]);
|
|
/* 025114BC */ _t65 = cpu->r[31] + 0x00000058u;
|
|
/* 025114BC */ rbrew_write32(cpu->mem, _t65, cpu->r[11]);
|
|
/* 025114C0 */ cpu->r[28] = 0x101F0000u;
|
|
/* 025114C4 */ _t66 = cpu->r[31] + 0x00000064u;
|
|
/* 025114C4 */ rbrew_write32(cpu->mem, _t66, cpu->r[8]);
|
|
/* 025114C8 */ _t67 = cpu->r[28] + 0x00005C3Cu;
|
|
/* 025114C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 025114C8 */ cpu->r[28] = _t67;
|
|
/* 025114CC */ _t68 = cpu->r[6] + 0x0000000Cu;
|
|
/* 025114CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 025114D0 */ _t69 = cpu->r[28] + 0x00000004u;
|
|
/* 025114D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t69);
|
|
/* 025114D4 */ _t70 = cpu->r[31] + 0x00000090u;
|
|
/* 025114D4 */ rbrew_write32(cpu->mem, _t70, cpu->r[7]);
|
|
/* 025114D8 */ _t71 = cpu->r[31] + 0x00000070u;
|
|
/* 025114D8 */ rbrew_write32(cpu->mem, _t71, cpu->r[5]);
|
|
/* 025114DC */ _t72 = cpu->r[10] + 0x00000004u;
|
|
/* 025114DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 025114E0 */ _t73 = cpu->r[28] + 0x0000000Cu;
|
|
/* 025114E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025114E4 */ _t74 = cpu->r[31] + 0x00000074u;
|
|
/* 025114E4 */ rbrew_write32(cpu->mem, _t74, cpu->r[8]);
|
|
/* 025114E8 */ _t75 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025114E8 */ rbrew_write32(cpu->mem, _t75, cpu->r[10]);
|
|
/* 025114EC */ _t76 = cpu->r[31] + 0x0000005Cu;
|
|
/* 025114EC */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 025114F0 */ _t77 = cpu->r[31] + 0x0000006Cu;
|
|
/* 025114F0 */ rbrew_write32(cpu->mem, _t77, cpu->r[12]);
|
|
/* 025114F4 */ _t78 = cpu->r[31] + 0x00000094u;
|
|
/* 025114F4 */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 025114F8 */ _t79 = cpu->r[31] + 0x00000054u;
|
|
/* 025114F8 */ rbrew_write32(cpu->mem, _t79, cpu->r[9]);
|
|
/* 025114FC */ _t80 = cpu->r[31] + 0x00000084u;
|
|
/* 025114FC */ rbrew_write32(cpu->mem, _t80, cpu->r[9]);
|
|
/* 02511500 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02511504 */ _t81 = cpu->r[31] + 0x00000050u;
|
|
/* 02511504 */ rbrew_write32(cpu->mem, _t81, cpu->r[7]);
|
|
/* 02511508 */ _t82 = cpu->r[8] + 0x00005C0Cu;
|
|
/* 02511508 */ cpu->r[10] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02511508 */ cpu->r[8] = _t82;
|
|
/* 0251150C */ _t83 = cpu->r[8] + 0x00000004u;
|
|
/* 0251150C */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02511510 */ _t84 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02511510 */ rbrew_write32(cpu->mem, _t84, cpu->r[0]);
|
|
/* 02511514 */ _t85 = cpu->r[31] + 0x000000BCu;
|
|
/* 02511514 */ rbrew_write32(cpu->mem, _t85, cpu->r[3]);
|
|
/* 02511518 */ _t86 = cpu->r[31] + 0x000000A0u;
|
|
/* 02511518 */ rbrew_write32(cpu->mem, _t86, cpu->r[10]);
|
|
/* 0251151C */ _t87 = cpu->r[28] + 0x00000008u;
|
|
/* 0251151C */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02511520 */ _t88 = cpu->r[31] + 0x000000A4u;
|
|
/* 02511520 */ rbrew_write32(cpu->mem, _t88, cpu->r[12]);
|
|
/* 02511524 */ _t89 = cpu->r[31] + 0x00000078u;
|
|
/* 02511524 */ rbrew_write32(cpu->mem, _t89, cpu->r[28]);
|
|
/* 02511528 */ _t90 = cpu->r[6] + 0x00000000u;
|
|
/* 02511528 */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0251152C */ _t91 = cpu->r[8] + 0x00000008u;
|
|
/* 0251152C */ cpu->r[7] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02511530 */ _t92 = cpu->r[31] + 0x00000060u;
|
|
/* 02511530 */ rbrew_write32(cpu->mem, _t92, cpu->r[5]);
|
|
/* 02511534 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02511538 */ _t93 = cpu->r[31] + 0x000000A8u;
|
|
/* 02511538 */ rbrew_write32(cpu->mem, _t93, cpu->r[7]);
|
|
/* 0251153C */ _t94 = cpu->r[31] + 0x00000098u;
|
|
/* 0251153C */ rbrew_write32(cpu->mem, _t94, cpu->r[11]);
|
|
/* 02511540 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02511544 */ _t95 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02511544 */ rbrew_write32(cpu->mem, _t95, cpu->r[0]);
|
|
/* 02511548 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251154C */ _t96 = cpu->r[11] + 0xFFFFF338u;
|
|
/* 0251154C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02511550 */ _t97 = cpu->r[31] + 0x000000B8u;
|
|
/* 02511550 */ rbrew_write32(cpu->mem, _t97, cpu->r[4]);
|
|
/* 02511554 */ _t98 = cpu->r[31] + 0x000000B0u;
|
|
/* 02511554 */ rbrew_write32(cpu->mem, _t98, cpu->r[30]);
|
|
/* 02511558 */ _t99 = cpu->r[31] + 0x000000B4u;
|
|
/* 02511558 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
/* 0251155C */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 02511560 */ _t100 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02511560 */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02511564 */ _t101 = cpu->r[5] + 0xFFFFF308u;
|
|
/* 02511564 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02511568 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 02511568 */ rbrew_write32(cpu->mem, _t102, cpu->r[8]);
|
|
/* 0251156C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02511570 */ _t103 = cpu->r[9] + 0xFFFFF2F8u;
|
|
/* 02511570 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 02511574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 02511578 */ _t104 = cpu->r[6] + 0x00000008u;
|
|
/* 02511578 */ cpu->r[10] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0251157C */ _t105 = cpu->r[7] + 0xFFFFF510u;
|
|
/* 0251157C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02511580 */ _t106 = cpu->r[31] + 0x00000068u;
|
|
/* 02511580 */ rbrew_write32(cpu->mem, _t106, cpu->r[10]);
|
|
/* 02511584 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511584 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02511584 */ if (_t108) goto L_02511588; else goto L_02511598;
|
|
L_02511588: ; // 0x2511588
|
|
/* 02511588 */ cpu->r[3] = 0x00000010u;
|
|
/* 0251158C */ Gambit_fn_02801A78(cpu);
|
|
/* 02511590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511594 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511594 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02511594 */ if (_t110) goto L_025115A8; else goto L_02511598;
|
|
L_02511598: ; // 0x2511598
|
|
/* 02511598 */ _t111 = cpu->r[3] + 0x00000004u;
|
|
/* 02511598 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[29]);
|
|
/* 0251159C */ _t112 = cpu->r[3] + 0x00000008u;
|
|
/* 0251159C */ rbrew_write_f32(cpu->mem, _t112, cpu->f[28]);
|
|
/* 025115A0 */ _t113 = cpu->r[3] + 0x00000000u;
|
|
/* 025115A0 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[30]);
|
|
/* 025115A4 */ _t114 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025115A4 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[31]);
|
|
L_025115A8: ; // 0x25115a8
|
|
/* 025115A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 025115AC */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 025115B0 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025115B0 */ _t116 = _t115 & 0x00000001u;
|
|
/* 025115B0 */ if (_t116) goto L_025115B4; else goto L_025115C4;
|
|
L_025115B4: ; // 0x25115b4
|
|
/* 025115B4 */ cpu->r[3] = 0x00000010u;
|
|
/* 025115B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025115BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025115C0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025115C0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 025115C0 */ if (_t118) goto L_025115D4; else goto L_025115C4;
|
|
L_025115C4: ; // 0x25115c4
|
|
/* 025115C4 */ _t119 = cpu->r[3] + 0x00000004u;
|
|
/* 025115C4 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[29]);
|
|
/* 025115C8 */ _t120 = cpu->r[3] + 0x00000008u;
|
|
/* 025115C8 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[30]);
|
|
/* 025115CC */ _t121 = cpu->r[3] + 0x00000000u;
|
|
/* 025115CC */ rbrew_write_f32(cpu->mem, _t121, cpu->f[28]);
|
|
/* 025115D0 */ _t122 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025115D0 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
L_025115D4: ; // 0x25115d4
|
|
/* 025115D4 */ cpu->r[3] = 0x101F0000u;
|
|
/* 025115D8 */ cpu->r[0] = 0x02510000u;
|
|
/* 025115DC */ cpu->r[8] = 0x101F0000u;
|
|
/* 025115E0 */ cpu->r[3] = cpu->r[3] + 0xFFFF95C8u;
|
|
/* 025115E4 */ cpu->r[0] = cpu->r[0] + 0x000020E8u;
|
|
/* 025115E8 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 025115EC */ _t123 = cpu->r[3] + 0x00000010u;
|
|
/* 025115EC */ rbrew_write32(cpu->mem, _t123, cpu->r[0]);
|
|
/* 025115F0 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 025115F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t124);
|
|
/* 025115F4 */ _t125 = cpu->r[8] + 0x00000004u;
|
|
/* 025115F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t125);
|
|
/* 025115F8 */ cpu->r[7] = 0x100C0000u;
|
|
/* 025115FC */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 025115FC */ rbrew_write32(cpu->mem, _t126, cpu->r[12]);
|
|
/* 02511600 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02511604 */ _t127 = cpu->r[31] + 0x000000E4u;
|
|
/* 02511604 */ rbrew_write32(cpu->mem, _t127, cpu->r[5]);
|
|
/* 02511608 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251160C */ _t128 = cpu->r[6] + 0xFFFFF360u;
|
|
/* 0251160C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02511610 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02511614 */ _t129 = cpu->r[7] + 0xFFFFF534u;
|
|
/* 02511614 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 02511618 */ _t130 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02511618 */ cpu->r[6] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0251161C */ cpu->r[5] = cpu->r[5] + 0xFFFFF120u;
|
|
/* 02511620 */ _t131 = cpu->r[10] + 0xFFFF9594u;
|
|
/* 02511620 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[13]);
|
|
/* 02511620 */ cpu->r[10] = _t131;
|
|
/* 02511624 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02511628 */ _t132 = cpu->r[10] + 0x00000004u;
|
|
/* 02511628 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[12]);
|
|
/* 0251162C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02511630 */ _t133 = cpu->r[31] + 0x000000ECu;
|
|
/* 02511630 */ rbrew_write32(cpu->mem, _t133, cpu->r[6]);
|
|
/* 02511634 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02511638 */ _t134 = cpu->r[3] + 0x00000008u;
|
|
/* 02511638 */ rbrew_write32(cpu->mem, _t134, cpu->r[5]);
|
|
/* 0251163C */ cpu->r[6] = cpu->r[6] + 0xFFFFEFC8u;
|
|
/* 02511640 */ _t135 = cpu->r[8] + 0x00000000u;
|
|
/* 02511640 */ cpu->r[11] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02511644 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02511648 */ _t136 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511648 */ rbrew_write32(cpu->mem, _t136, cpu->r[6]);
|
|
/* 0251164C */ _t137 = cpu->r[9] + 0xFFFFF52Cu;
|
|
/* 0251164C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02511650 */ _t138 = cpu->r[31] + 0x000000E0u;
|
|
/* 02511650 */ rbrew_write32(cpu->mem, _t138, cpu->r[11]);
|
|
/* 02511654 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02511658 */ _t139 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 02511658 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[0]);
|
|
/* 02511658 */ cpu->r[12] = _t139;
|
|
/* 0251165C */ cpu->r[10] = cpu->r[10] + 0xFFFFF538u;
|
|
/* 02511660 */ _t140 = cpu->r[3] + 0x00000004u;
|
|
/* 02511660 */ rbrew_write32(cpu->mem, _t140, cpu->r[6]);
|
|
/* 02511664 */ _t141 = cpu->r[11] + 0xFFFFF530u;
|
|
/* 02511664 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 02511668 */ _t142 = cpu->r[3] + 0x00000000u;
|
|
/* 02511668 */ rbrew_write32(cpu->mem, _t142, cpu->r[10]);
|
|
/* 0251166C */ _t143 = cpu->r[12] + 0x00000004u;
|
|
/* 0251166C */ rbrew_write_f32(cpu->mem, _t143, cpu->f[0]);
|
|
/* 02511670 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02511674 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02511678 */ cpu->r[3] = cpu->r[3] + 0x0000677Cu;
|
|
/* 0251167C */ Gambit_fn_02C83090(cpu);
|
|
/* 02511680 */ _t144 = cpu->r[1] + 0x00000010u;
|
|
/* 02511680 */ cpu->r[28] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02511684 */ _t145 = cpu->r[1] + 0x00000014u;
|
|
/* 02511684 */ cpu->r[29] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02511688 */ _t146 = cpu->r[1] + 0x00000058u;
|
|
/* 02511688 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 0251168C */ _t147 = cpu->r[1] + 0x00000048u;
|
|
/* 0251168C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 02511690 */ _t148 = cpu->r[1] + 0x00000050u;
|
|
/* 02511690 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t148);
|
|
/* 02511694 */ _t149 = cpu->r[1] + 0x00000040u;
|
|
/* 02511694 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t149);
|
|
/* 02511698 */ _t150 = cpu->r[1] + 0x00000038u;
|
|
/* 02511698 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 0251169C */ _t151 = cpu->r[1] + 0x00000028u;
|
|
/* 0251169C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 025116A0 */ _t152 = cpu->r[1] + 0x00000030u;
|
|
/* 025116A0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t152);
|
|
/* 025116A4 */ _t153 = cpu->r[1] + 0x00000020u;
|
|
/* 025116A4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t153);
|
|
/* 025116A8 */ _t154 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025116A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t154);
|
|
/* 025116AC */ _t155 = cpu->r[1] + 0x00000018u;
|
|
/* 025116AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t155);
|
|
/* 025116B0 */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025116B0 */ _t157 = _t156 & 0x00000001u;
|
|
/* 025116B0 */ if (_t157) goto L_025116B4; // else: addr-0 trap, fall-through
|
|
L_025116B4: ; // 0x25116b4
|
|
/* 025116B4 */ _t158 = cpu->r[1] + 0x00000064u;
|
|
/* 025116B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 025116B8 */ cpu->lr = cpu->r[0];
|
|
/* 025116BC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 025116C0 */ return;
|
|
}
|
|
|
|
// fn_025116C4 @ 0x25116c4
|
|
void Gambit_fn_025116C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_025116C4: ; // 0x25116c4
|
|
/* 025116C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025116C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025116C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 025116C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025116C8 */ goto L_025116CC;
|
|
L_025116CC: ; // 0x25116cc
|
|
/* 025116CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025116CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025116D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025116D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025116D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025116D0 */ goto L_025116D4;
|
|
L_025116D4: ; // 0x25116d4
|
|
/* 025116D4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_025116D8 @ 0x25116d8
|
|
void Gambit_fn_025116D8(CPUState* cpu) {
|
|
L_025116D8: ; // 0x25116d8
|
|
/* 025116D8 */ return;
|
|
}
|
|
|
|
// fn_025116DC @ 0x25116dc
|
|
void Gambit_fn_025116DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_025116DC: ; // 0x25116dc
|
|
/* 025116DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025116E0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025116E0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 025116E0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025116E0 */ goto L_025116E4;
|
|
L_025116E4: ; // 0x25116e4
|
|
/* 025116E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025116E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025116E8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025116E8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025116E8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025116E8 */ goto L_025116EC;
|
|
L_025116EC: ; // 0x25116ec
|
|
/* 025116EC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_025116F0 @ 0x25116f0
|
|
void Gambit_fn_025116F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_025116F0: ; // 0x25116f0
|
|
/* 025116F0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 025116F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025116F4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 025116F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025116F8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 025116FC */ cpu->r[11] = 0x10110000u;
|
|
/* 02511700 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02511700 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02511704 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02511704 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02511708 */ return;
|
|
}
|
|
|
|
// fn_0251170C @ 0x251170c
|
|
void Gambit_fn_0251170C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_0251170C: ; // 0x251170c
|
|
/* 0251170C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511710 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511710 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02511710 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511710 */ goto L_02511714;
|
|
L_02511714: ; // 0x2511714
|
|
/* 02511714 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511718 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511718 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02511718 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511718 */ goto L_0251171C;
|
|
L_0251171C: ; // 0x251171c
|
|
/* 0251171C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02511720 @ 0x2511720
|
|
void Gambit_fn_02511720(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02511720: ; // 0x2511720
|
|
/* 02511720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511724 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511724 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02511724 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511724 */ goto L_02511728;
|
|
L_02511728: ; // 0x2511728
|
|
/* 02511728 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0251172C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251172C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0251172C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0251172C */ goto L_02511730;
|
|
L_02511730: ; // 0x2511730
|
|
/* 02511730 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02511734 @ 0x2511734
|
|
void Gambit_fn_02511734(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02511734: ; // 0x2511734
|
|
/* 02511734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511738 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511738 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02511738 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511738 */ goto L_0251173C;
|
|
L_0251173C: ; // 0x251173c
|
|
/* 0251173C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0251173C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511740 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511740 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02511740 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511740 */ goto L_02511744;
|
|
L_02511744: ; // 0x2511744
|
|
/* 02511744 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02511748 @ 0x2511748
|
|
void Gambit_fn_02511748(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02511748: ; // 0x2511748
|
|
/* 02511748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251174C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251174C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0251174C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0251174C */ goto L_02511750;
|
|
L_02511750: ; // 0x2511750
|
|
/* 02511750 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511754 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511754 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02511754 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511754 */ goto L_02511758;
|
|
L_02511758: ; // 0x2511758
|
|
/* 02511758 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_0251175C @ 0x251175c
|
|
void Gambit_fn_0251175C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_0251175C: ; // 0x251175c
|
|
/* 0251175C */ cpu->r[0] = cpu->lr;
|
|
/* 02511760 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02511760 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511760 */ cpu->r[1] = _t0;
|
|
/* 02511764 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02511764 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02511768 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02511768 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251176C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251176C */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02511770 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02511770 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02511774 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02511774 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02511778 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02511778 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0251177C */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0251177C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02511780 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02511780 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02511784 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02511784 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02511788 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02511788 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0251178C */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251178C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02511790 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02511790 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02511794 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02511794 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02511798 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02511798 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02511798 */ if (_t15) goto L_0251179C; else goto L_025117BC;
|
|
L_0251179C: ; // 0x251179c
|
|
/* 0251179C */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0251179C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 025117A0 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 025117A0 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 025117A4 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 025117A4 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 025117A8 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 025117A8 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 025117AC */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 025117AC */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 025117B0 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 025117B0 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 025117B4 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 025117B4 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 025117B8 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 025117B8 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_025117BC: ; // 0x25117bc
|
|
/* 025117BC */ cpu->r[31] = cpu->r[3];
|
|
/* 025117BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025117C0 */ cpu->r[30] = cpu->r[4];
|
|
/* 025117C4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117C4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025117C4 */ if (_t25) goto L_025117C8; else goto L_025117D8;
|
|
L_025117C8: ; // 0x25117c8
|
|
/* 025117C8 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 025117CC */ Gambit_fn_02801A78(cpu);
|
|
/* 025117D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025117D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025117D4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117D4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 025117D4 */ if (_t27) goto L_0251189C; else goto L_025117D8;
|
|
L_025117D8: ; // 0x25117d8
|
|
/* 025117D8 */ cpu->r[29] = cpu->r[31];
|
|
/* 025117D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 025117DC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117DC */ _t29 = _t28 & 0x00000001u;
|
|
/* 025117DC */ if (_t29) goto L_025117E0; else goto L_025117F0;
|
|
L_025117E0: ; // 0x25117e0
|
|
/* 025117E0 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 025117E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 025117E8 */ cpu->r[29] = cpu->r[3];
|
|
/* 025117E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 025117EC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117EC */ _t31 = _t30 & 0x00000001u;
|
|
/* 025117EC */ if (_t31) goto L_02511860; else goto L_025117F0;
|
|
L_025117F0: ; // 0x25117f0
|
|
/* 025117F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 025117F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025117F4 */ cpu->r[28] = 0x10110000u;
|
|
/* 025117F8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117F8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 025117F8 */ if (_t33) goto L_025117FC; else goto L_02511828;
|
|
L_025117FC: ; // 0x25117fc
|
|
/* 025117FC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02511800 */ Gambit_fn_02801A78(cpu);
|
|
/* 02511804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511808 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511808 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02511808 */ if (_t35) goto L_0251180C; else goto L_02511828;
|
|
L_0251180C: ; // 0x251180c
|
|
/* 0251180C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02511810 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02511810 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02511814 */ cpu->r[7] = cpu->r[7] + 0xFFFFEFF8u;
|
|
/* 02511818 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02511818 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0251181C */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0251181C */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02511820 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02511820 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02511824 */ goto L_02511860;
|
|
L_02511828: ; // 0x2511828
|
|
/* 02511828 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251182C */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02511830 */ cpu->r[5] = cpu->r[5] + 0xFFFFEFE0u;
|
|
/* 02511834 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02511834 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02511838 */ cpu->r[6] = 0x00000080u;
|
|
/* 0251183C */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0251183C */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02511840 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 02511840 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02511844 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 02511844 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02511848 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0251184C */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0251184C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02511850 */ cpu->r[7] = cpu->r[7] + 0xFFFFEFF8u;
|
|
/* 02511854 */ _t45 = cpu->r[29] + 0x0000008Bu;
|
|
/* 02511854 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 02511858 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 02511858 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0251185C */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0251185C */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_02511860: ; // 0x2511860
|
|
/* 02511860 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02511864 */ cpu->r[12] = 0x00000002u;
|
|
/* 02511868 */ cpu->r[9] = cpu->r[9] + 0xFFFFF108u;
|
|
/* 0251186C */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02511870 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02511870 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02511874 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02511878 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511878 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0251187C */ cpu->r[0] = 0x00000000u;
|
|
/* 02511880 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02511880 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02511884 */ cpu->r[3] = cpu->r[31];
|
|
/* 02511888 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0251188C */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0251188C */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02511890 */ cpu->r[4] = cpu->r[30];
|
|
/* 02511894 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02511894 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02511898 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0251189C: ; // 0x251189c
|
|
/* 0251189C */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0251189C */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025118A0 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025118A0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 025118A4 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 025118A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 025118A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025118AC */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 025118AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 025118B0 */ cpu->lr = cpu->r[0];
|
|
/* 025118B4 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 025118B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 025118B8 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 025118BC */ return;
|
|
}
|
|
|
|
// fn_02511760 @ 0x2511760
|
|
void Gambit_fn_02511760(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_02511760: ; // 0x2511760
|
|
/* 02511760 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02511760 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511760 */ cpu->r[1] = _t0;
|
|
/* 02511764 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02511764 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02511768 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02511768 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251176C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251176C */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02511770 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02511770 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02511774 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02511774 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02511778 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02511778 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0251177C */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0251177C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02511780 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02511780 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02511784 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02511784 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02511788 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02511788 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0251178C */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251178C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02511790 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02511790 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02511794 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02511794 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02511798 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02511798 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02511798 */ if (_t15) goto L_0251179C; else goto L_025117BC;
|
|
L_0251179C: ; // 0x251179c
|
|
/* 0251179C */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0251179C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 025117A0 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 025117A0 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 025117A4 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 025117A4 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 025117A8 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 025117A8 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 025117AC */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 025117AC */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 025117B0 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 025117B0 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 025117B4 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 025117B4 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 025117B8 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 025117B8 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_025117BC: ; // 0x25117bc
|
|
/* 025117BC */ cpu->r[31] = cpu->r[3];
|
|
/* 025117BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025117C0 */ cpu->r[30] = cpu->r[4];
|
|
/* 025117C4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117C4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025117C4 */ if (_t25) goto L_025117C8; else goto L_025117D8;
|
|
L_025117C8: ; // 0x25117c8
|
|
/* 025117C8 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 025117CC */ Gambit_fn_02801A78(cpu);
|
|
/* 025117D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025117D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025117D4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117D4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 025117D4 */ if (_t27) goto L_0251189C; else goto L_025117D8;
|
|
L_025117D8: ; // 0x25117d8
|
|
/* 025117D8 */ cpu->r[29] = cpu->r[31];
|
|
/* 025117D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 025117DC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117DC */ _t29 = _t28 & 0x00000001u;
|
|
/* 025117DC */ if (_t29) goto L_025117E0; else goto L_025117F0;
|
|
L_025117E0: ; // 0x25117e0
|
|
/* 025117E0 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 025117E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 025117E8 */ cpu->r[29] = cpu->r[3];
|
|
/* 025117E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 025117EC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117EC */ _t31 = _t30 & 0x00000001u;
|
|
/* 025117EC */ if (_t31) goto L_02511860; else goto L_025117F0;
|
|
L_025117F0: ; // 0x25117f0
|
|
/* 025117F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 025117F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025117F4 */ cpu->r[28] = 0x10110000u;
|
|
/* 025117F8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025117F8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 025117F8 */ if (_t33) goto L_025117FC; else goto L_02511828;
|
|
L_025117FC: ; // 0x25117fc
|
|
/* 025117FC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02511800 */ Gambit_fn_02801A78(cpu);
|
|
/* 02511804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511808 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511808 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02511808 */ if (_t35) goto L_0251180C; else goto L_02511828;
|
|
L_0251180C: ; // 0x251180c
|
|
/* 0251180C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02511810 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02511810 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02511814 */ cpu->r[7] = cpu->r[7] + 0xFFFFEFF8u;
|
|
/* 02511818 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02511818 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0251181C */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0251181C */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02511820 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02511820 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02511824 */ goto L_02511860;
|
|
L_02511828: ; // 0x2511828
|
|
/* 02511828 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251182C */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02511830 */ cpu->r[5] = cpu->r[5] + 0xFFFFEFE0u;
|
|
/* 02511834 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02511834 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02511838 */ cpu->r[6] = 0x00000080u;
|
|
/* 0251183C */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0251183C */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02511840 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 02511840 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02511844 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 02511844 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02511848 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0251184C */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0251184C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02511850 */ cpu->r[7] = cpu->r[7] + 0xFFFFEFF8u;
|
|
/* 02511854 */ _t45 = cpu->r[29] + 0x0000008Bu;
|
|
/* 02511854 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 02511858 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 02511858 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0251185C */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0251185C */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_02511860: ; // 0x2511860
|
|
/* 02511860 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02511864 */ cpu->r[12] = 0x00000002u;
|
|
/* 02511868 */ cpu->r[9] = cpu->r[9] + 0xFFFFF108u;
|
|
/* 0251186C */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02511870 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02511870 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02511874 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02511878 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511878 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0251187C */ cpu->r[0] = 0x00000000u;
|
|
/* 02511880 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02511880 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02511884 */ cpu->r[3] = cpu->r[31];
|
|
/* 02511888 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0251188C */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0251188C */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02511890 */ cpu->r[4] = cpu->r[30];
|
|
/* 02511894 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02511894 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02511898 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0251189C: ; // 0x251189c
|
|
/* 0251189C */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0251189C */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025118A0 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025118A0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 025118A4 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 025118A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 025118A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025118AC */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 025118AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 025118B0 */ cpu->lr = cpu->r[0];
|
|
/* 025118B4 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 025118B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 025118B8 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 025118BC */ return;
|
|
}
|
|
|
|
// fn_025118C0 @ 0x25118c0
|
|
void Gambit_fn_025118C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_025118C0: ; // 0x25118c0
|
|
/* 025118C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025118C4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025118C4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 025118C4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025118C4 */ goto L_025118C8;
|
|
L_025118C8: ; // 0x25118c8
|
|
/* 025118C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025118C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025118CC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025118CC */ _t3 = _t2 & 0x00000001u;
|
|
/* 025118CC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025118CC */ goto L_025118D0;
|
|
L_025118D0: ; // 0x25118d0
|
|
/* 025118D0 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_025118D4 @ 0x25118d4
|
|
void Gambit_fn_025118D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_025118D4: ; // 0x25118d4
|
|
/* 025118D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025118D8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025118D8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 025118D8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025118D8 */ goto L_025118DC;
|
|
L_025118DC: ; // 0x25118dc
|
|
/* 025118DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025118DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025118E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025118E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025118E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025118E0 */ goto L_025118E4;
|
|
L_025118E4: ; // 0x25118e4
|
|
/* 025118E4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_025118E8 @ 0x25118e8
|
|
void Gambit_fn_025118E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_025118E8: ; // 0x25118e8
|
|
/* 025118E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025118EC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025118EC */ _t1 = _t0 & 0x00000001u;
|
|
/* 025118EC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025118EC */ goto L_025118F0;
|
|
L_025118F0: ; // 0x25118f0
|
|
/* 025118F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025118F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025118F4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025118F4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025118F4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025118F4 */ goto L_025118F8;
|
|
L_025118F8: ; // 0x25118f8
|
|
/* 025118F8 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_025118FC @ 0x25118fc
|
|
void Gambit_fn_025118FC(CPUState* cpu) {
|
|
L_025118FC: ; // 0x25118fc
|
|
/* 025118FC */ return;
|
|
}
|
|
|
|
// fn_02511900 @ 0x2511900
|
|
void Gambit_fn_02511900(CPUState* cpu) {
|
|
L_02511900: ; // 0x2511900
|
|
/* 02511900 */ return;
|
|
}
|
|
|
|
// fn_02511904 @ 0x2511904
|
|
void Gambit_fn_02511904(CPUState* cpu) {
|
|
L_02511904: ; // 0x2511904
|
|
/* 02511904 */ return;
|
|
}
|
|
|
|
// fn_02511908 @ 0x2511908
|
|
void Gambit_fn_02511908(CPUState* cpu) {
|
|
L_02511908: ; // 0x2511908
|
|
/* 02511908 */ return;
|
|
}
|
|
|
|
// fn_0251190C @ 0x251190c
|
|
void Gambit_fn_0251190C(CPUState* cpu) {
|
|
L_0251190C: ; // 0x251190c
|
|
/* 0251190C */ return;
|
|
}
|
|
|
|
// fn_02511910 @ 0x2511910
|
|
void Gambit_fn_02511910(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02511910: ; // 0x2511910
|
|
/* 02511910 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02511910 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02511918 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511918 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02511918 */ if (_t2) goto L_02511924; else goto L_0251191C;
|
|
L_0251191C: ; // 0x251191c
|
|
/* 0251191C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02511920 */ return;
|
|
L_02511924: ; // 0x2511924
|
|
/* 02511924 */ cpu->r[3] = 0x00000000u;
|
|
/* 02511928 */ return;
|
|
}
|
|
|
|
// fn_0251192C @ 0x251192c
|
|
void Gambit_fn_0251192C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0251192C: ; // 0x251192c
|
|
/* 0251192C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0251192C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02511934 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511934 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02511934 */ if (_t2) goto L_02511940; else goto L_02511938;
|
|
L_02511938: ; // 0x2511938
|
|
/* 02511938 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0251193C */ return;
|
|
L_02511940: ; // 0x2511940
|
|
/* 02511940 */ cpu->r[3] = 0x00000000u;
|
|
/* 02511944 */ return;
|
|
}
|
|
|
|
// fn_02511948 @ 0x2511948
|
|
void Gambit_fn_02511948(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511948: ; // 0x2511948
|
|
/* 02511948 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251194C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0251194C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02511950 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511950 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02511950 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02511950 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511950 */ goto L_02511954;
|
|
L_02511954: ; // 0x2511954
|
|
/* 02511954 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02511954 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511958 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02511958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251195C */ cpu->ctr = cpu->r[0];
|
|
/* 02511960 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02511964 @ 0x2511964
|
|
void Gambit_fn_02511964(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511964: ; // 0x2511964
|
|
/* 02511964 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511968 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251196C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251196C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0251196C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0251196C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0251196C */ goto L_02511970;
|
|
L_02511970: ; // 0x2511970
|
|
/* 02511970 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02511970 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511974 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02511974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02511978 */ cpu->ctr = cpu->r[0];
|
|
/* 0251197C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02511980 @ 0x2511980
|
|
void Gambit_fn_02511980(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511980: ; // 0x2511980
|
|
/* 02511980 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511984 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02511988 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511988 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02511988 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02511988 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511988 */ goto L_0251198C;
|
|
L_0251198C: ; // 0x251198c
|
|
/* 0251198C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0251198C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511990 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02511990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02511994 */ cpu->ctr = cpu->r[0];
|
|
/* 02511998 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0251199C @ 0x251199c
|
|
void Gambit_fn_0251199C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0251199C: ; // 0x251199c
|
|
/* 0251199C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0251199C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025119A0 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 025119A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025119A4 */ cpu->ctr = cpu->r[0];
|
|
/* 025119A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025119AC @ 0x25119ac
|
|
void Gambit_fn_025119AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_025119AC: ; // 0x25119ac
|
|
/* 025119AC */ cpu->r[0] = cpu->lr;
|
|
/* 025119B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025119B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025119B0 */ cpu->r[1] = _t0;
|
|
/* 025119B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025119B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025119B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025119BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025119BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025119C0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025119C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025119C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 025119C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025119C8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025119C8 */ if (_t5) goto L_025119CC; else goto L_025119E8;
|
|
L_025119CC: ; // 0x25119cc
|
|
/* 025119CC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 025119CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025119D0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 025119D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025119D4 */ cpu->ctr = cpu->r[0];
|
|
/* 025119D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025119DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025119E0 */ cpu->r[0] = 0x00000002u;
|
|
/* 025119E4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025119E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_025119E8: ; // 0x25119e8
|
|
/* 025119E8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 025119E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025119EC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025119EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025119F0 */ cpu->lr = cpu->r[0];
|
|
/* 025119F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025119F8 */ return;
|
|
}
|
|
|
|
// fn_025119B0 @ 0x25119b0
|
|
void Gambit_fn_025119B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_025119B0: ; // 0x25119b0
|
|
/* 025119B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025119B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025119B0 */ cpu->r[1] = _t0;
|
|
/* 025119B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025119B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025119B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025119BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025119BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025119C0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025119C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025119C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 025119C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025119C8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025119C8 */ if (_t5) goto L_025119CC; else goto L_025119E8;
|
|
L_025119CC: ; // 0x25119cc
|
|
/* 025119CC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 025119CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025119D0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 025119D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025119D4 */ cpu->ctr = cpu->r[0];
|
|
/* 025119D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025119DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025119E0 */ cpu->r[0] = 0x00000002u;
|
|
/* 025119E4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025119E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_025119E8: ; // 0x25119e8
|
|
/* 025119E8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 025119E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025119EC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025119EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025119F0 */ cpu->lr = cpu->r[0];
|
|
/* 025119F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025119F8 */ return;
|
|
}
|
|
|
|
// fn_025119FC @ 0x25119fc
|
|
void Gambit_fn_025119FC(CPUState* cpu) {
|
|
L_025119FC: ; // 0x25119fc
|
|
/* 025119FC */ return;
|
|
}
|
|
|
|
// fn_02511A00 @ 0x2511a00
|
|
void Gambit_fn_02511A00(CPUState* cpu) {
|
|
L_02511A00: ; // 0x2511a00
|
|
/* 02511A00 */ return;
|
|
}
|
|
|
|
// fn_02511A04 @ 0x2511a04
|
|
void Gambit_fn_02511A04(CPUState* cpu) {
|
|
L_02511A04: ; // 0x2511a04
|
|
/* 02511A04 */ cpu->r[3] = 0x00000001u;
|
|
/* 02511A08 */ return;
|
|
}
|
|
|
|
// fn_02511A0C @ 0x2511a0c
|
|
void Gambit_fn_02511A0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02511A0C: ; // 0x2511a0c
|
|
/* 02511A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511A10 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511A10 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02511A10 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511A10 */ goto L_02511A14;
|
|
L_02511A14: ; // 0x2511a14
|
|
/* 02511A14 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511A14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511A18 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511A18 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02511A18 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511A18 */ goto L_02511A1C;
|
|
L_02511A1C: ; // 0x2511a1c
|
|
/* 02511A1C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02511A20 @ 0x2511a20
|
|
void Gambit_fn_02511A20(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02511A20: ; // 0x2511a20
|
|
/* 02511A20 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02511A20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511A24 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02511A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02511A28 */ cpu->ctr = cpu->r[0];
|
|
/* 02511A2C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02511A30 @ 0x2511a30
|
|
void Gambit_fn_02511A30(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02511A30: ; // 0x2511a30
|
|
/* 02511A30 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02511A30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511A34 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02511A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02511A38 */ cpu->ctr = cpu->r[0];
|
|
/* 02511A3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02511A40 @ 0x2511a40
|
|
void Gambit_fn_02511A40(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02511A40: ; // 0x2511a40
|
|
/* 02511A40 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02511A40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511A44 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02511A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02511A48 */ cpu->ctr = cpu->r[0];
|
|
/* 02511A4C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02511A50 @ 0x2511a50
|
|
void Gambit_fn_02511A50(CPUState* cpu) {
|
|
L_02511A50: ; // 0x2511a50
|
|
/* 02511A50 */ cpu->r[3] = 0x00000001u;
|
|
/* 02511A54 */ return;
|
|
}
|
|
|
|
// fn_02511A58 @ 0x2511a58
|
|
void Gambit_fn_02511A58(CPUState* cpu) {
|
|
L_02511A58: ; // 0x2511a58
|
|
/* 02511A58 */ return;
|
|
}
|
|
|
|
// fn_02511A5C @ 0x2511a5c
|
|
void Gambit_fn_02511A5C(CPUState* cpu) {
|
|
L_02511A5C: ; // 0x2511a5c
|
|
/* 02511A5C */ return;
|
|
}
|
|
|
|
// fn_02511A60 @ 0x2511a60
|
|
void Gambit_fn_02511A60(CPUState* cpu) {
|
|
L_02511A60: ; // 0x2511a60
|
|
/* 02511A60 */ cpu->r[3] = 0x00000001u;
|
|
/* 02511A64 */ return;
|
|
}
|
|
|
|
// fn_02511A68 @ 0x2511a68
|
|
void Gambit_fn_02511A68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511A68: ; // 0x2511a68
|
|
/* 02511A68 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02511A6C */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 02511A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511A6C */ cpu->r[10] = _t0;
|
|
/* 02511A70 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02511A70 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02511A74 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02511A74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02511A78 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02511A78 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02511A7C */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 02511A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511A80 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02511A80 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02511A84 */ return;
|
|
}
|
|
|
|
// fn_02511A88 @ 0x2511a88
|
|
void Gambit_fn_02511A88(CPUState* cpu) {
|
|
L_02511A88: ; // 0x2511a88
|
|
/* 02511A88 */ return;
|
|
}
|
|
|
|
// fn_02511A8C @ 0x2511a8c
|
|
void Gambit_fn_02511A8C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02511A8C: ; // 0x2511a8c
|
|
/* 02511A8C */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 02511A8C */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02511A90 */ return;
|
|
}
|
|
|
|
// fn_02511A94 @ 0x2511a94
|
|
void Gambit_fn_02511A94(CPUState* cpu) {
|
|
L_02511A94: ; // 0x2511a94
|
|
/* 02511A94 */ cpu->r[3] = 0x00000001u;
|
|
/* 02511A98 */ return;
|
|
}
|
|
|
|
// fn_02511A9C @ 0x2511a9c
|
|
void Gambit_fn_02511A9C(CPUState* cpu) {
|
|
L_02511A9C: ; // 0x2511a9c
|
|
/* 02511A9C */ return;
|
|
}
|
|
|
|
// fn_02511AA0 @ 0x2511aa0
|
|
void Gambit_fn_02511AA0(CPUState* cpu) {
|
|
L_02511AA0: ; // 0x2511aa0
|
|
/* 02511AA0 */ return;
|
|
}
|
|
|
|
// fn_02511AA4 @ 0x2511aa4
|
|
void Gambit_fn_02511AA4(CPUState* cpu) {
|
|
L_02511AA4: ; // 0x2511aa4
|
|
/* 02511AA4 */ return;
|
|
}
|
|
|
|
// fn_02511AA8 @ 0x2511aa8
|
|
void Gambit_fn_02511AA8(CPUState* cpu) {
|
|
L_02511AA8: ; // 0x2511aa8
|
|
/* 02511AA8 */ return;
|
|
}
|
|
|
|
// fn_02511AAC @ 0x2511aac
|
|
void Gambit_fn_02511AAC(CPUState* cpu) {
|
|
L_02511AAC: ; // 0x2511aac
|
|
/* 02511AAC */ return;
|
|
}
|
|
|
|
// fn_02511AB0 @ 0x2511ab0
|
|
void Gambit_fn_02511AB0(CPUState* cpu) {
|
|
L_02511AB0: ; // 0x2511ab0
|
|
/* 02511AB0 */ return;
|
|
}
|
|
|
|
// fn_02511AB4 @ 0x2511ab4
|
|
void Gambit_fn_02511AB4(CPUState* cpu) {
|
|
L_02511AB4: ; // 0x2511ab4
|
|
/* 02511AB4 */ return;
|
|
}
|
|
|
|
// fn_02511AB8 @ 0x2511ab8
|
|
void Gambit_fn_02511AB8(CPUState* cpu) {
|
|
L_02511AB8: ; // 0x2511ab8
|
|
/* 02511AB8 */ return;
|
|
}
|
|
|
|
// fn_02511ABC @ 0x2511abc
|
|
void Gambit_fn_02511ABC(CPUState* cpu) {
|
|
L_02511ABC: ; // 0x2511abc
|
|
/* 02511ABC */ cpu->r[3] = 0x00000000u;
|
|
/* 02511AC0 */ return;
|
|
}
|
|
|
|
// fn_02511AC4 @ 0x2511ac4
|
|
void Gambit_fn_02511AC4(CPUState* cpu) {
|
|
L_02511AC4: ; // 0x2511ac4
|
|
/* 02511AC4 */ return;
|
|
}
|
|
|
|
// fn_02511AC8 @ 0x2511ac8
|
|
void Gambit_fn_02511AC8(CPUState* cpu) {
|
|
L_02511AC8: ; // 0x2511ac8
|
|
/* 02511AC8 */ return;
|
|
}
|
|
|
|
// fn_02511ACC @ 0x2511acc
|
|
void Gambit_fn_02511ACC(CPUState* cpu) {
|
|
L_02511ACC: ; // 0x2511acc
|
|
/* 02511ACC */ cpu->r[3] = 0x00000001u;
|
|
/* 02511AD0 */ return;
|
|
}
|
|
|
|
// fn_02511AD4 @ 0x2511ad4
|
|
void Gambit_fn_02511AD4(CPUState* cpu) {
|
|
L_02511AD4: ; // 0x2511ad4
|
|
/* 02511AD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02511AD8 */ return;
|
|
}
|
|
|
|
// fn_02511ADC @ 0x2511adc
|
|
void Gambit_fn_02511ADC(CPUState* cpu) {
|
|
L_02511ADC: ; // 0x2511adc
|
|
/* 02511ADC */ cpu->r[3] = 0x00000000u;
|
|
/* 02511AE0 */ return;
|
|
}
|
|
|
|
// fn_02511AE4 @ 0x2511ae4
|
|
void Gambit_fn_02511AE4(CPUState* cpu) {
|
|
L_02511AE4: ; // 0x2511ae4
|
|
/* 02511AE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02511AE8 */ return;
|
|
}
|
|
|
|
// fn_02511AEC @ 0x2511aec
|
|
void Gambit_fn_02511AEC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02511AEC: ; // 0x2511aec
|
|
/* 02511AEC */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02511AEC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02511AF0 */ return;
|
|
}
|
|
|
|
// fn_02511AF4 @ 0x2511af4
|
|
void Gambit_fn_02511AF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511AF4: ; // 0x2511af4
|
|
/* 02511AF4 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 02511AF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511AF8 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02511AF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02511AFC */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02511AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02511B00 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02511B00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02511B04 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 02511B04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511B08 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02511B08 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02511B0C */ return;
|
|
}
|
|
|
|
// fn_02511B10 @ 0x2511b10
|
|
void Gambit_fn_02511B10(CPUState* cpu) {
|
|
L_02511B10: ; // 0x2511b10
|
|
/* 02511B10 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02511B14 */ cpu->r[3] = cpu->r[3] + 0xFFFFF134u;
|
|
/* 02511B18 */ return;
|
|
}
|
|
|
|
// fn_02511B1C @ 0x2511b1c
|
|
void Gambit_fn_02511B1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_02511B1C: ; // 0x2511b1c
|
|
/* 02511B1C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02511B20 */ _t0 = cpu->r[10] + 0xFFFFFE78u;
|
|
/* 02511B20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02511B28 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02511B2C */ cpu->r[10] = cpu->r[10] + 0x000009A4u;
|
|
/* 02511B30 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511B30 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02511B30 */ if (_t2) goto L_02511B34; else goto L_02511B4C;
|
|
L_02511B34: ; // 0x2511b34
|
|
/* 02511B34 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02511B38 */ cpu->r[9] = 0x00000001u;
|
|
/* 02511B3C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02511B40 */ cpu->r[0] = cpu->r[0] + 0xFFFFF0F8u;
|
|
/* 02511B44 */ _t3 = cpu->r[11] + 0xFFFFFE78u;
|
|
/* 02511B44 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02511B48 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 02511B48 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02511B4C: ; // 0x2511b4c
|
|
/* 02511B4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02511B50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511B50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02511B50 */ if (_t6) goto L_02511B54; else goto L_02511B5C;
|
|
L_02511B54: ; // 0x2511b54
|
|
/* 02511B54 */ cpu->r[3] = 0x00000001u;
|
|
/* 02511B58 */ return;
|
|
L_02511B5C: ; // 0x2511b5c
|
|
/* 02511B5C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02511B60 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 02511B60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02511B64 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02511B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02511B6C */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 02511B70 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511B70 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02511B70 */ if (_t9) goto L_02511B74; else goto L_02511B8C;
|
|
L_02511B74: ; // 0x2511b74
|
|
/* 02511B74 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02511B78 */ cpu->r[0] = 0x00000001u;
|
|
/* 02511B7C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02511B80 */ cpu->r[9] = cpu->r[9] + 0xFFFFF0A8u;
|
|
/* 02511B84 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 02511B84 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02511B88 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02511B88 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_02511B8C: ; // 0x2511b8c
|
|
/* 02511B8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02511B90 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511B90 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02511B90 */ if (_t13) goto L_02511B94; else goto L_02511B9C;
|
|
L_02511B94: ; // 0x2511b94
|
|
/* 02511B94 */ cpu->r[0] = 0x00000001u;
|
|
/* 02511B98 */ goto L_02511C54;
|
|
L_02511B9C: ; // 0x2511b9c
|
|
/* 02511B9C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02511BA0 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 02511BA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02511BA4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02511BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02511BAC */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 02511BB0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511BB0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02511BB0 */ if (_t16) goto L_02511BB4; else goto L_02511BCC;
|
|
L_02511BB4: ; // 0x2511bb4
|
|
/* 02511BB4 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02511BB8 */ cpu->r[10] = 0x00000001u;
|
|
/* 02511BBC */ cpu->r[12] = 0x101D0000u;
|
|
/* 02511BC0 */ cpu->r[11] = cpu->r[11] + 0xFFFFF098u;
|
|
/* 02511BC4 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 02511BC4 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02511BC8 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02511BC8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02511BCC: ; // 0x2511bcc
|
|
/* 02511BCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02511BD0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511BD0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02511BD0 */ if (_t20) goto L_02511BD4; else goto L_02511BDC;
|
|
L_02511BD4: ; // 0x2511bd4
|
|
/* 02511BD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02511BD8 */ goto L_02511C50;
|
|
L_02511BDC: ; // 0x2511bdc
|
|
/* 02511BDC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02511BE0 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02511BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02511BE0 */ cpu->r[9] = _t21;
|
|
/* 02511BE4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02511BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511BEC */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02511BF0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511BF0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02511BF0 */ if (_t23) goto L_02511BF4; else goto L_02511C08;
|
|
L_02511BF4: ; // 0x2511bf4
|
|
/* 02511BF4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02511BF8 */ cpu->r[11] = 0x00000001u;
|
|
/* 02511BFC */ cpu->r[0] = cpu->r[0] + 0xFFFFF088u;
|
|
/* 02511C00 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02511C00 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02511C04 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02511C04 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02511C08: ; // 0x2511c08
|
|
/* 02511C08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02511C0C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511C0C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02511C0C */ if (_t27) goto L_02511C10; else goto L_02511C18;
|
|
L_02511C10: ; // 0x2511c10
|
|
/* 02511C10 */ cpu->r[0] = 0x00000001u;
|
|
/* 02511C14 */ goto L_02511C50;
|
|
L_02511C18: ; // 0x2511c18
|
|
/* 02511C18 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02511C1C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02511C1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02511C1C */ cpu->r[10] = _t28;
|
|
/* 02511C20 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02511C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02511C28 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02511C2C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511C2C */ _t30 = _t29 & 0x00000001u;
|
|
/* 02511C2C */ if (_t30) goto L_02511C30; else goto L_02511C44;
|
|
L_02511C30: ; // 0x2511c30
|
|
/* 02511C30 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02511C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02511C38 */ cpu->r[9] = cpu->r[9] + 0xFFFFEFB8u;
|
|
/* 02511C3C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02511C3C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02511C40 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02511C40 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02511C44: ; // 0x2511c44
|
|
/* 02511C44 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02511C48 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02511C4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02511C50: ; // 0x2511c50
|
|
/* 02511C50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02511C54: ; // 0x2511c54
|
|
/* 02511C54 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02511C58 */ return;
|
|
}
|
|
|
|
// fn_02511C5C @ 0x2511c5c
|
|
void Gambit_fn_02511C5C(CPUState* cpu) {
|
|
L_02511C5C: ; // 0x2511c5c
|
|
/* 02511C5C */ return;
|
|
}
|
|
|
|
// fn_02511C60 @ 0x2511c60
|
|
void Gambit_fn_02511C60(CPUState* cpu) {
|
|
L_02511C60: ; // 0x2511c60
|
|
/* 02511C60 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02511C64 */ cpu->r[3] = cpu->r[3] + 0xFFFFF148u;
|
|
/* 02511C68 */ return;
|
|
}
|
|
|
|
// fn_02511C6C @ 0x2511c6c
|
|
void Gambit_fn_02511C6C(CPUState* cpu) {
|
|
L_02511C6C: ; // 0x2511c6c
|
|
/* 02511C6C */ cpu->r[3] = 0x100C0000u;
|
|
/* 02511C70 */ cpu->r[3] = cpu->r[3] + 0xFFFFF164u;
|
|
/* 02511C74 */ return;
|
|
}
|
|
|
|
// fn_02511C78 @ 0x2511c78
|
|
void Gambit_fn_02511C78(CPUState* cpu) {
|
|
L_02511C78: ; // 0x2511c78
|
|
/* 02511C78 */ return;
|
|
}
|
|
|
|
// fn_02511C7C @ 0x2511c7c
|
|
void Gambit_fn_02511C7C(CPUState* cpu) {
|
|
L_02511C7C: ; // 0x2511c7c
|
|
/* 02511C7C */ cpu->r[3] = 0x00000001u;
|
|
/* 02511C80 */ return;
|
|
}
|
|
|
|
// fn_02511C84 @ 0x2511c84
|
|
void Gambit_fn_02511C84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_021FC8F8: ; // 0x21fc8f8
|
|
/* 021FC8F8 */ cpu->r[0] = cpu->lr;
|
|
/* 021FC8FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 021FC8FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 021FC8FC */ cpu->r[1] = _t0;
|
|
/* 021FC900 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 021FC900 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 021FC904 */ cpu->r[31] = cpu->r[3];
|
|
/* 021FC908 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 021FC908 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 021FC90C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 021FC90C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 021FC910 */ cpu->r[12] = 0x00000000u;
|
|
/* 021FC914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 021FC918 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 021FC918 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 021FC91C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021FC91C */ _t6 = _t5 & 0x00000001u;
|
|
/* 021FC91C */ if (_t6) goto L_021FC944; else goto L_021FC920;
|
|
L_021FC920: ; // 0x21fc920
|
|
/* 021FC920 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 021FC920 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 021FC924 */ /* nop */
|
|
/* 021FC928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 021FC92C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021FC92C */ _t9 = _t8 & 0x00000001u;
|
|
/* 021FC92C */ if (_t9) goto L_021FC930; else goto L_021FC944;
|
|
L_021FC930: ; // 0x21fc930
|
|
/* 021FC930 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 021FC930 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 021FC934 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 021FC934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 021FC938 */ cpu->ctr = cpu->r[0];
|
|
/* 021FC93C */ cpu->r[3] = cpu->r[31];
|
|
/* 021FC940 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_021FC944: ; // 0x21fc944
|
|
/* 021FC944 */ cpu->r[3] = cpu->r[31];
|
|
/* 021FC948 */ Gambit_fn_021FC870(cpu);
|
|
/* 021FC94C */ cpu->r[3] = cpu->r[31];
|
|
/* 021FC950 */ Gambit_fn_027FC37C(cpu);
|
|
/* 021FC954 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 021FC954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 021FC958 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 021FC958 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 021FC95C */ cpu->lr = cpu->r[0];
|
|
/* 021FC960 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 021FC964 */ return;
|
|
L_02511C84: ; // 0x2511c84
|
|
/* 02511C84 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 02511C88 */ goto L_021FC8F8;
|
|
}
|
|
|
|
// fn_02511C8C @ 0x2511c8c
|
|
void Gambit_fn_02511C8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511C8C: ; // 0x2511c8c
|
|
/* 02511C8C */ cpu->r[0] = cpu->lr;
|
|
/* 02511C90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02511C90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511C90 */ cpu->r[1] = _t0;
|
|
/* 02511C94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511C94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02511C98 */ cpu->r[31] = cpu->r[3];
|
|
/* 02511C9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02511C9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02511CA0 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 02511CA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02511CA4 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02511CA8 */ /* nop */
|
|
/* 02511CAC */ Gambit_fn_027FC35C(cpu);
|
|
/* 02511CB0 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02511CB4 */ Gambit_fn_021FC7E8(cpu);
|
|
/* 02511CB8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02511CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511CBC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511CBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02511CC0 */ cpu->lr = cpu->r[0];
|
|
/* 02511CC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02511CC8 */ return;
|
|
}
|
|
|
|
// fn_02511C90 @ 0x2511c90
|
|
void Gambit_fn_02511C90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02511C90: ; // 0x2511c90
|
|
/* 02511C90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02511C90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511C90 */ cpu->r[1] = _t0;
|
|
/* 02511C94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511C94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02511C98 */ cpu->r[31] = cpu->r[3];
|
|
/* 02511C9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02511C9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02511CA0 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 02511CA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02511CA4 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02511CA8 */ /* nop */
|
|
/* 02511CAC */ Gambit_fn_027FC35C(cpu);
|
|
/* 02511CB0 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02511CB4 */ Gambit_fn_021FC7E8(cpu);
|
|
/* 02511CB8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02511CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02511CBC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02511CBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02511CC0 */ cpu->lr = cpu->r[0];
|
|
/* 02511CC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02511CC8 */ return;
|
|
}
|
|
|
|
// fn_02511CCC @ 0x2511ccc
|
|
void Gambit_fn_02511CCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02511CCC: ; // 0x2511ccc
|
|
/* 02511CCC */ cpu->r[12] = 0x101D0000u;
|
|
/* 02511CD0 */ _t0 = cpu->r[12] + 0xFFFFFE84u;
|
|
/* 02511CD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02511CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02511CD8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02511CDC */ cpu->r[12] = cpu->r[12] + 0x000009ACu;
|
|
/* 02511CE0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511CE0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02511CE0 */ if (_t2) goto L_02511CE4; else goto L_02511CFC;
|
|
L_02511CE4: ; // 0x2511ce4
|
|
/* 02511CE4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02511CE8 */ cpu->r[9] = 0x00000001u;
|
|
/* 02511CEC */ cpu->r[8] = 0x101D0000u;
|
|
/* 02511CF0 */ cpu->r[0] = cpu->r[0] + 0xFFFFF0C8u;
|
|
/* 02511CF4 */ _t3 = cpu->r[8] + 0xFFFFFE84u;
|
|
/* 02511CF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02511CF8 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02511CF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02511CFC: ; // 0x2511cfc
|
|
/* 02511CFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02511D00 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511D00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02511D00 */ if (_t6) goto L_02511D04; else goto L_02511D0C;
|
|
L_02511D04: ; // 0x2511d04
|
|
/* 02511D04 */ cpu->r[3] = 0x00000001u;
|
|
/* 02511D08 */ return;
|
|
L_02511D0C: ; // 0x2511d0c
|
|
/* 02511D0C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02511D10 */ _t7 = cpu->r[11] + 0xFFFFE6D4u;
|
|
/* 02511D10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02511D10 */ cpu->r[11] = _t7;
|
|
/* 02511D14 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02511D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02511D1C */ cpu->r[10] = cpu->r[10] + 0x000006A4u;
|
|
/* 02511D20 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511D20 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02511D20 */ if (_t9) goto L_02511D24; else goto L_02511D38;
|
|
L_02511D24: ; // 0x2511d24
|
|
/* 02511D24 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02511D28 */ cpu->r[9] = 0x00000001u;
|
|
/* 02511D2C */ cpu->r[12] = cpu->r[12] + 0xFFFFF0B8u;
|
|
/* 02511D30 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 02511D30 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02511D34 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02511D34 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02511D38: ; // 0x2511d38
|
|
/* 02511D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02511D3C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511D3C */ _t13 = _t12 & 0x00000001u;
|
|
/* 02511D3C */ if (_t13) goto L_02511D40; else goto L_02511D48;
|
|
L_02511D40: ; // 0x2511d40
|
|
/* 02511D40 */ cpu->r[0] = 0x00000001u;
|
|
/* 02511D44 */ goto L_02511D80;
|
|
L_02511D48: ; // 0x2511d48
|
|
/* 02511D48 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02511D4C */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 02511D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02511D4C */ cpu->r[8] = _t14;
|
|
/* 02511D50 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02511D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511D58 */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 02511D5C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511D5C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02511D5C */ if (_t16) goto L_02511D60; else goto L_02511D74;
|
|
L_02511D60: ; // 0x2511d60
|
|
/* 02511D60 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02511D64 */ cpu->r[9] = 0x00000001u;
|
|
/* 02511D68 */ cpu->r[10] = cpu->r[10] + 0xFFFFEFB8u;
|
|
/* 02511D6C */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 02511D6C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02511D70 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02511D70 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_02511D74: ; // 0x2511d74
|
|
/* 02511D74 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02511D78 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02511D7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02511D80: ; // 0x2511d80
|
|
/* 02511D80 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02511D84 */ return;
|
|
}
|
|
|
|
// fn_02511D88 @ 0x2511d88
|
|
void Gambit_fn_02511D88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02511D88: ; // 0x2511d88
|
|
/* 02511D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511D8C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511D8C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02511D8C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511D8C */ goto L_02511D90;
|
|
L_02511D90: ; // 0x2511d90
|
|
/* 02511D90 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511D94 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511D94 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02511D94 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511D94 */ goto L_02511D98;
|
|
L_02511D98: ; // 0x2511d98
|
|
/* 02511D98 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02511D9C @ 0x2511d9c
|
|
void Gambit_fn_02511D9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02511D9C: ; // 0x2511d9c
|
|
/* 02511D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511DA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511DA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02511DA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511DA0 */ goto L_02511DA4;
|
|
L_02511DA4: ; // 0x2511da4
|
|
/* 02511DA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02511DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02511DA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511DA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02511DA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02511DA8 */ goto L_02511DAC;
|
|
L_02511DAC: ; // 0x2511dac
|
|
/* 02511DAC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02511DB0 @ 0x2511db0
|
|
void Gambit_fn_02511DB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_02511DB0: ; // 0x2511db0
|
|
/* 02511DB0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02511DB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02511DB0 */ cpu->r[1] = _t0;
|
|
/* 02511DB4 */ /* nop */
|
|
/* 02511DB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02511DBC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02511DBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02511DC0 */ cpu->r[29] = cpu->r[6];
|
|
/* 02511DC4 */ cpu->r[28] = cpu->r[3];
|
|
/* 02511DC8 */ cpu->r[30] = cpu->r[5];
|
|
/* 02511DCC */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02511DCC */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02511DD0 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02511DD4 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02511DD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02511DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511DDC */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02511DDC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02511DE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511DE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02511DE0 */ if (_t6) goto L_02511E24; else goto L_02511DE4;
|
|
L_02511DE4: ; // 0x2511de4
|
|
/* 02511DE4 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02511DE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02511DE8 */ Gambit_fn_02826F20(cpu);
|
|
/* 02511DEC */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511DEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02511DF0 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 02511DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02511DF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02511DF8 */ cpu->r[5] = 0x00000004u;
|
|
/* 02511DFC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02511E00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511E08 */ cpu->r[0] = cpu->r[27];
|
|
/* 02511E0C */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511E0C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02511E0C */ if (_t11) goto L_02511E14; else goto L_02511E10;
|
|
L_02511E10: ; // 0x2511e10
|
|
/* 02511E10 */ cpu->r[0] = 0x00000001u;
|
|
L_02511E14: ; // 0x2511e14
|
|
/* 02511E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511E18 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511E18 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02511E18 */ if (_t13) goto L_02511E24; else goto L_02511E1C;
|
|
L_02511E1C: ; // 0x2511e1c
|
|
/* 02511E1C */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02511E1C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02511E20 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 02511E20 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02511E24: ; // 0x2511e24
|
|
/* 02511E24 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02511E24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02511E28 */ cpu->r[0] = 0x00000000u;
|
|
/* 02511E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02511E30 */ cpu->r[12] = cpu->r[0];
|
|
/* 02511E34 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511E34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02511E34 */ if (_t18) goto L_02511E38; else goto L_02511E5C;
|
|
L_02511E38: ; // 0x2511e38
|
|
/* 02511E38 */ cpu->ctr = cpu->r[7];
|
|
/* 02511E3C */ cpu->r[10] = 0x00000000u;
|
|
L_02511E40: ; // 0x2511e40
|
|
/* 02511E40 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 02511E40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02511E44 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02511E44 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02511E48 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02511E4C */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02511E4C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02511E50 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02511E54 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02511E54 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02511E58 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02511E58 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02511E58 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02511E58 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02511E58 */ if (_t25) goto L_02511E40; else goto L_02511E5C;
|
|
L_02511E5C: ; // 0x2511e5c
|
|
/* 02511E5C */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02511E5C */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02511E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511E64 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511E64 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02511E64 */ if (_t28) goto L_02511EA8; else goto L_02511E68;
|
|
L_02511E68: ; // 0x2511e68
|
|
/* 02511E68 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02511E68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02511E6C */ Gambit_fn_02826F20(cpu);
|
|
/* 02511E70 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511E70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02511E74 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 02511E74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02511E78 */ cpu->ctr = cpu->r[0];
|
|
/* 02511E7C */ cpu->r[5] = 0x00000004u;
|
|
/* 02511E80 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02511E84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511E8C */ cpu->r[11] = cpu->r[27];
|
|
/* 02511E90 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511E90 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02511E90 */ if (_t33) goto L_02511E98; else goto L_02511E94;
|
|
L_02511E94: ; // 0x2511e94
|
|
/* 02511E94 */ cpu->r[11] = 0x00000001u;
|
|
L_02511E98: ; // 0x2511e98
|
|
/* 02511E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511E9C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511E9C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02511E9C */ if (_t35) goto L_02511EA8; else goto L_02511EA0;
|
|
L_02511EA0: ; // 0x2511ea0
|
|
/* 02511EA0 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02511EA0 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02511EA4 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02511EA4 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_02511EA8: ; // 0x2511ea8
|
|
/* 02511EA8 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 02511EA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02511EAC */ cpu->r[0] = 0x00000000u;
|
|
/* 02511EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02511EB4 */ cpu->r[12] = cpu->r[0];
|
|
/* 02511EB8 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511EB8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02511EB8 */ if (_t40) goto L_02511EBC; else goto L_02511EE0;
|
|
L_02511EBC: ; // 0x2511ebc
|
|
/* 02511EBC */ cpu->ctr = cpu->r[6];
|
|
/* 02511EC0 */ cpu->r[9] = 0x00000000u;
|
|
L_02511EC4: ; // 0x2511ec4
|
|
/* 02511EC4 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02511EC4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02511EC8 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02511EC8 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02511ECC */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02511ED0 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02511ED0 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02511ED4 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02511ED8 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02511ED8 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02511EDC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02511EDC */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02511EDC */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02511EDC */ _t47 = _t46 & 0x00000001u;
|
|
/* 02511EDC */ if (_t47) goto L_02511EC4; else goto L_02511EE0;
|
|
L_02511EE0: ; // 0x2511ee0
|
|
/* 02511EE0 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02511EE0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02511EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511EE8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511EE8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02511EE8 */ if (_t50) goto L_02511F2C; else goto L_02511EEC;
|
|
L_02511EEC: ; // 0x2511eec
|
|
/* 02511EEC */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02511EEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02511EF0 */ Gambit_fn_02826F20(cpu);
|
|
/* 02511EF4 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511EF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02511EF8 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 02511EF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02511EFC */ cpu->ctr = cpu->r[0];
|
|
/* 02511F00 */ cpu->r[5] = 0x00000004u;
|
|
/* 02511F04 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02511F08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511F10 */ cpu->r[10] = cpu->r[27];
|
|
/* 02511F14 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511F14 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02511F14 */ if (_t55) goto L_02511F1C; else goto L_02511F18;
|
|
L_02511F18: ; // 0x2511f18
|
|
/* 02511F18 */ cpu->r[10] = 0x00000001u;
|
|
L_02511F1C: ; // 0x2511f1c
|
|
/* 02511F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02511F20 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511F20 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02511F20 */ if (_t57) goto L_02511F2C; else goto L_02511F24;
|
|
L_02511F24: ; // 0x2511f24
|
|
/* 02511F24 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02511F24 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02511F28 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 02511F28 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_02511F2C: ; // 0x2511f2c
|
|
/* 02511F2C */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 02511F2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02511F30 */ cpu->r[0] = 0x00000000u;
|
|
/* 02511F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02511F38 */ cpu->r[5] = cpu->r[0];
|
|
/* 02511F3C */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511F3C */ _t62 = _t61 & 0x00000001u;
|
|
/* 02511F3C */ if (_t62) goto L_02511F40; else goto L_02511F64;
|
|
L_02511F40: ; // 0x2511f40
|
|
/* 02511F40 */ cpu->ctr = cpu->r[12];
|
|
/* 02511F44 */ cpu->r[8] = 0x00000000u;
|
|
L_02511F48: ; // 0x2511f48
|
|
/* 02511F48 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02511F48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02511F4C */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02511F4C */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02511F50 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02511F54 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02511F54 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02511F58 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02511F5C */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02511F5C */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02511F60 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02511F60 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02511F60 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02511F60 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02511F60 */ if (_t69) goto L_02511F48; else goto L_02511F64;
|
|
L_02511F64: ; // 0x2511f64
|
|
/* 02511F64 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02511F64 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02511F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02511F6C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511F6C */ _t72 = _t71 & 0x00000001u;
|
|
/* 02511F6C */ if (_t72) goto L_02512048; else goto L_02511F70;
|
|
L_02511F70: ; // 0x2511f70
|
|
/* 02511F70 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02511F70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02511F74 */ Gambit_fn_02826F20(cpu);
|
|
/* 02511F78 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02511F78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02511F7C */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02511F7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02511F80 */ cpu->ctr = cpu->r[12];
|
|
/* 02511F84 */ cpu->r[5] = 0x00000004u;
|
|
/* 02511F88 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02511F8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02511F90 */ cpu->r[24] = cpu->r[3];
|
|
/* 02511F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02511F98 */ cpu->r[30] = cpu->r[25];
|
|
/* 02511F9C */ cpu->r[7] = 0x00000000u;
|
|
/* 02511FA0 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02511FA0 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02511FA0 */ if (_t77) goto L_02511FA8; else goto L_02511FA4;
|
|
L_02511FA4: ; // 0x2511fa4
|
|
/* 02511FA4 */ cpu->r[30] = 0x00000001u;
|
|
L_02511FA8: ; // 0x2511fa8
|
|
/* 02511FA8 */ cpu->r[31] = 0x10110000u;
|
|
/* 02511FAC */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 02511FB0 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 02511FB0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02511FB4 */ cpu->r[23] = 0x00000018u;
|
|
L_02511FB8: ; // 0x2511fb8
|
|
/* 02511FB8 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 02511FB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02511FBC */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511FBC */ _t80 = _t79 & 0x00000001u;
|
|
/* 02511FBC */ if (_t80) goto L_0251202C; else goto L_02511FC0;
|
|
L_02511FC0: ; // 0x2511fc0
|
|
/* 02511FC0 */ cpu->r[26] = cpu->r[27];
|
|
/* 02511FC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02511FC4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511FC4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02511FC4 */ if (_t82) goto L_02511FC8; else goto L_02511FD8;
|
|
L_02511FC8: ; // 0x2511fc8
|
|
/* 02511FC8 */ cpu->r[3] = 0x00000024u;
|
|
/* 02511FCC */ Gambit_fn_02801A78(cpu);
|
|
/* 02511FD0 */ cpu->r[26] = cpu->r[3];
|
|
/* 02511FD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02511FD4 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511FD4 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02511FD4 */ if (_t84) goto L_02512020; else goto L_02511FD8;
|
|
L_02511FD8: ; // 0x2511fd8
|
|
/* 02511FD8 */ cpu->r[11] = cpu->r[26];
|
|
/* 02511FD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02511FDC */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511FDC */ _t86 = _t85 & 0x00000001u;
|
|
/* 02511FDC */ if (_t86) goto L_02511FE0; else goto L_02511FF0;
|
|
L_02511FE0: ; // 0x2511fe0
|
|
/* 02511FE0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02511FE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02511FE8 */ cpu->r[11] = cpu->r[3];
|
|
/* 02511FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02511FEC */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02511FEC */ _t88 = _t87 & 0x00000001u;
|
|
/* 02511FEC */ if (_t88) goto L_0251200C; else goto L_02511FF0;
|
|
L_02511FF0: ; // 0x2511ff0
|
|
/* 02511FF0 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02511FF4 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 02511FF4 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 02511FF8 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 02511FFC */ cpu->r[5] = cpu->r[5] + 0xFFFFEFE0u;
|
|
/* 02512000 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 02512000 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02512004 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 02512004 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 02512008 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 02512008 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0251200C: ; // 0x251200c
|
|
/* 0251200C */ cpu->r[6] = 0x100C0000u;
|
|
/* 02512010 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 02512010 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02512014 */ cpu->r[6] = cpu->r[6] + 0xFFFFF058u;
|
|
/* 02512018 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 02512018 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0251201C */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0251201C */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_02512020: ; // 0x2512020
|
|
/* 02512020 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02512024 */ cpu->r[0] = cpu->r[0] + 0xFFFFF070u;
|
|
/* 02512028 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 02512028 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0251202C: ; // 0x251202c
|
|
/* 0251202C */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0251202C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02512030 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02512034 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512034 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02512034 */ if (_t98) goto L_02512038; else goto L_02511FB8;
|
|
L_02512038: ; // 0x2512038
|
|
/* 02512038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0251203C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251203C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0251203C */ if (_t100) goto L_02512048; else goto L_02512040;
|
|
L_02512040: ; // 0x2512040
|
|
/* 02512040 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 02512040 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02512044 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02512044 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02512048: ; // 0x2512048
|
|
/* 02512048 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02512048 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0251204C */ /* nop */
|
|
/* 02512050 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02512050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02512054 */ cpu->lr = cpu->r[0];
|
|
/* 02512058 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0251205C */ return;
|
|
}
|
|
|
|
// fn_02512060 @ 0x2512060
|
|
void Gambit_fn_02512060(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02512060: ; // 0x2512060
|
|
/* 02512060 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02512060 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02512064 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02512064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02512068 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02512068 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0251206C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02512070 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02512070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02512074 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512074 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02512074 */ if (_t5) goto L_02512078; else goto L_02512080;
|
|
L_02512078: ; // 0x2512078
|
|
/* 02512078 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0251207C */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02512080: ; // 0x2512080
|
|
/* 02512080 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02512080 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02512084 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02512084 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02512088 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 02512088 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0251208C */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0251208C */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02512090 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02512090 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512094 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02512098 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02512098 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0251209C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251209C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251209C */ if (_t13) goto L_025120A0; else goto L_025120A8;
|
|
L_025120A0: ; // 0x25120a0
|
|
/* 025120A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025120A4 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_025120A8: ; // 0x25120a8
|
|
/* 025120A8 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 025120A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025120AC */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 025120AC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 025120B0 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 025120B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025120B4 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 025120B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 025120B8 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 025120B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025120BC */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 025120BC */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 025120C0 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 025120C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 025120C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 025120C8 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 025120C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025120CC */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025120CC */ _t23 = _t22 & 0x00000001u;
|
|
/* 025120CC */ if (_t23) goto L_025120D0; else goto L_025120D8;
|
|
L_025120D0: ; // 0x25120d0
|
|
/* 025120D0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025120D4 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_025120D8: ; // 0x25120d8
|
|
/* 025120D8 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 025120D8 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 025120DC */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 025120DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025120E0 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 025120E0 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 025120E4 */ return;
|
|
}
|
|
|
|
// fn_025120E8 @ 0x25120e8
|
|
void Gambit_fn_025120E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_025120E8: ; // 0x25120e8
|
|
/* 025120E8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025120E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025120E8 */ cpu->r[1] = _t0;
|
|
/* 025120EC */ cpu->r[0] = cpu->lr;
|
|
/* 025120F0 */ /* nop */
|
|
/* 025120F4 */ cpu->r[30] = cpu->r[5];
|
|
/* 025120F8 */ cpu->r[26] = cpu->r[3];
|
|
/* 025120FC */ cpu->r[27] = cpu->r[7];
|
|
/* 02512100 */ cpu->r[3] = cpu->r[30];
|
|
/* 02512104 */ cpu->r[31] = cpu->r[6];
|
|
/* 02512108 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512108 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0251210C */ cpu->r[29] = cpu->r[4];
|
|
/* 02512110 */ cpu->r[4] = cpu->r[27];
|
|
/* 02512114 */ Gambit_fn_027DB318(cpu);
|
|
/* 02512118 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 02512118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0251211C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251211C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0251211C */ if (_t3) goto L_025121B0; else goto L_02512120;
|
|
L_02512120: ; // 0x2512120
|
|
/* 02512120 */ cpu->r[5] = cpu->r[28];
|
|
/* 02512124 */ cpu->r[4] = cpu->r[29];
|
|
/* 02512128 */ cpu->r[3] = cpu->r[26];
|
|
/* 0251212C */ Gambit_fn_024FF2A4(cpu);
|
|
/* 02512130 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02512130 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02512134 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 02512134 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02512138 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 0251213C */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02512140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02512144 */ cpu->r[25] = 0x00000000u;
|
|
/* 02512148 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512148 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02512148 */ if (_t7) goto L_025121B0; else goto L_0251214C;
|
|
L_0251214C: ; // 0x251214c
|
|
/* 0251214C */ cpu->r[24] = 0x101C0000u;
|
|
L_02512150: ; // 0x2512150
|
|
/* 02512150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02512154 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512154 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02512154 */ if (_t9) goto L_0251216C; else goto L_02512158;
|
|
L_02512158: ; // 0x2512158
|
|
/* 02512158 */ cpu->ctr = cpu->r[27];
|
|
/* 0251215C */ cpu->r[3] = cpu->r[31];
|
|
/* 02512160 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02512164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512168 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512168 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02512168 */ if (_t11) goto L_0251219C; else goto L_0251216C;
|
|
L_0251216C: ; // 0x251216c
|
|
/* 0251216C */ _t12 = cpu->r[24] + 0x00006788u;
|
|
/* 0251216C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02512170 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02512174 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02512174 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02512178 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 02512178 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251217C */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02512180 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02512180 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02512184 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02512188 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02512188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251218C */ cpu->r[4] = cpu->r[31];
|
|
/* 02512190 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02512190 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02512194 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02512198 */ Gambit_fn_0250D78C(cpu);
|
|
L_0251219C: ; // 0x251219c
|
|
/* 0251219C */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 025121A0 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 025121A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025121A4 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 025121A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 025121AC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025121AC */ _t20 = _t19 & 0x00000001u;
|
|
/* 025121AC */ if (_t20) goto L_025121B0; else goto L_02512150;
|
|
L_025121B0: ; // 0x25121b0
|
|
/* 025121B0 */ cpu->r[3] = cpu->r[28];
|
|
/* 025121B4 */ /* nop */
|
|
/* 025121B8 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025121B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025121BC */ cpu->lr = cpu->r[0];
|
|
/* 025121C0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025121C4 */ return;
|
|
}
|
|
|
|
// fn_025121C8 @ 0x25121c8
|
|
void Gambit_fn_025121C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_025121C8: ; // 0x25121c8
|
|
/* 025121C8 */ cpu->r[0] = cpu->lr;
|
|
/* 025121CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025121CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025121CC */ cpu->r[1] = _t0;
|
|
/* 025121D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025121D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 025121D4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025121D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 025121D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025121D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 025121DC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 025121DC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 025121E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025121E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025121E4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025121E4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025121E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025121E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025121E8 */ if (_t7) goto L_025121EC; else goto L_025121FC;
|
|
L_025121EC: ; // 0x25121ec
|
|
/* 025121EC */ cpu->r[3] = 0x00000820u;
|
|
/* 025121F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025121F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025121F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025121F8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025121F8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025121F8 */ if (_t9) goto L_025122A0; else goto L_025121FC;
|
|
L_025121FC: ; // 0x25121fc
|
|
/* 025121FC */ cpu->r[29] = 0x00000000u;
|
|
/* 02512200 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 02512200 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02512204 */ cpu->r[3] = cpu->r[31] + 0x00000008u;
|
|
/* 02512204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512208 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02512208 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0251220C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251220C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251220C */ if (_t13) goto L_02512210; else goto L_02512220;
|
|
L_02512210: ; // 0x2512210
|
|
/* 02512210 */ cpu->r[3] = 0x00000818u;
|
|
/* 02512214 */ Gambit_fn_02801A78(cpu);
|
|
/* 02512218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251221C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251221C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251221C */ if (_t15) goto L_025122A0; else goto L_02512220;
|
|
L_02512220: ; // 0x2512220
|
|
/* 02512220 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02512220 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02512224 */ cpu->r[28] = cpu->r[3] + 0x00000008u;
|
|
/* 02512224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02512228 */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 02512228 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 0251222C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251222C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251222C */ if (_t19) goto L_02512230; else goto L_02512240;
|
|
L_02512230: ; // 0x2512230
|
|
/* 02512230 */ cpu->r[3] = 0x00000810u;
|
|
/* 02512234 */ Gambit_fn_02801A78(cpu);
|
|
/* 02512238 */ cpu->r[28] = cpu->r[3];
|
|
/* 02512238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0251223C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251223C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251223C */ if (_t21) goto L_025122A0; else goto L_02512240;
|
|
L_02512240: ; // 0x2512240
|
|
/* 02512240 */ cpu->r[3] = cpu->r[28];
|
|
/* 02512240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512244 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512244 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02512244 */ if (_t23) goto L_02512248; else goto L_02512258;
|
|
L_02512248: ; // 0x2512248
|
|
/* 02512248 */ cpu->r[3] = 0x00000010u;
|
|
/* 0251224C */ Gambit_fn_02801A78(cpu);
|
|
/* 02512250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512254 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512254 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02512254 */ if (_t25) goto L_02512268; else goto L_02512258;
|
|
L_02512258: ; // 0x2512258
|
|
/* 02512258 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02512258 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0251225C */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 0251225C */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02512260 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02512260 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02512264 */ _t29 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02512264 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02512268: ; // 0x2512268
|
|
/* 02512268 */ cpu->r[6] = 0x02510000u;
|
|
/* 0251226C */ cpu->r[30] = cpu->r[28] + 0x00000010u;
|
|
/* 02512270 */ cpu->r[4] = 0x00000040u;
|
|
/* 02512274 */ cpu->r[6] = cpu->r[6] + 0x00003440u;
|
|
/* 02512278 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251227C */ cpu->r[5] = 0x00000020u;
|
|
/* 02512280 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02512284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02512288 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512288 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02512288 */ if (_t31) goto L_025122A0; else goto L_0251228C;
|
|
L_0251228C: ; // 0x251228c
|
|
/* 0251228C */ _t32 = cpu->r[28] + 0x00000000u;
|
|
/* 0251228C */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 02512290 */ cpu->r[0] = 0x00000040u;
|
|
/* 02512294 */ _t33 = cpu->r[28] + 0x00000008u;
|
|
/* 02512294 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 02512298 */ _t34 = cpu->r[28] + 0x00000004u;
|
|
/* 02512298 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0251229C */ _t35 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0251229C */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
L_025122A0: ; // 0x25122a0
|
|
/* 025122A0 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 025122A0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025122A4 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025122A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 025122A8 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025122A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025122AC */ cpu->r[3] = cpu->r[31];
|
|
/* 025122B0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 025122B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025122B4 */ cpu->lr = cpu->r[0];
|
|
/* 025122B8 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 025122B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025122BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025122C0 */ return;
|
|
}
|
|
|
|
// fn_025121CC @ 0x25121cc
|
|
void Gambit_fn_025121CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_025121CC: ; // 0x25121cc
|
|
/* 025121CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025121CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025121CC */ cpu->r[1] = _t0;
|
|
/* 025121D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025121D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 025121D4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025121D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 025121D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025121D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 025121DC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 025121DC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 025121E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025121E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025121E4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025121E4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025121E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025121E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025121E8 */ if (_t7) goto L_025121EC; else goto L_025121FC;
|
|
L_025121EC: ; // 0x25121ec
|
|
/* 025121EC */ cpu->r[3] = 0x00000820u;
|
|
/* 025121F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025121F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025121F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025121F8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025121F8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025121F8 */ if (_t9) goto L_025122A0; else goto L_025121FC;
|
|
L_025121FC: ; // 0x25121fc
|
|
/* 025121FC */ cpu->r[29] = 0x00000000u;
|
|
/* 02512200 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 02512200 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02512204 */ cpu->r[3] = cpu->r[31] + 0x00000008u;
|
|
/* 02512204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512208 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02512208 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0251220C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251220C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251220C */ if (_t13) goto L_02512210; else goto L_02512220;
|
|
L_02512210: ; // 0x2512210
|
|
/* 02512210 */ cpu->r[3] = 0x00000818u;
|
|
/* 02512214 */ Gambit_fn_02801A78(cpu);
|
|
/* 02512218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251221C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251221C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251221C */ if (_t15) goto L_025122A0; else goto L_02512220;
|
|
L_02512220: ; // 0x2512220
|
|
/* 02512220 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02512220 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02512224 */ cpu->r[28] = cpu->r[3] + 0x00000008u;
|
|
/* 02512224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02512228 */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 02512228 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 0251222C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251222C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251222C */ if (_t19) goto L_02512230; else goto L_02512240;
|
|
L_02512230: ; // 0x2512230
|
|
/* 02512230 */ cpu->r[3] = 0x00000810u;
|
|
/* 02512234 */ Gambit_fn_02801A78(cpu);
|
|
/* 02512238 */ cpu->r[28] = cpu->r[3];
|
|
/* 02512238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0251223C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251223C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251223C */ if (_t21) goto L_025122A0; else goto L_02512240;
|
|
L_02512240: ; // 0x2512240
|
|
/* 02512240 */ cpu->r[3] = cpu->r[28];
|
|
/* 02512240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512244 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512244 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02512244 */ if (_t23) goto L_02512248; else goto L_02512258;
|
|
L_02512248: ; // 0x2512248
|
|
/* 02512248 */ cpu->r[3] = 0x00000010u;
|
|
/* 0251224C */ Gambit_fn_02801A78(cpu);
|
|
/* 02512250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512254 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512254 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02512254 */ if (_t25) goto L_02512268; else goto L_02512258;
|
|
L_02512258: ; // 0x2512258
|
|
/* 02512258 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02512258 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0251225C */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 0251225C */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02512260 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02512260 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02512264 */ _t29 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02512264 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02512268: ; // 0x2512268
|
|
/* 02512268 */ cpu->r[6] = 0x02510000u;
|
|
/* 0251226C */ cpu->r[30] = cpu->r[28] + 0x00000010u;
|
|
/* 02512270 */ cpu->r[4] = 0x00000040u;
|
|
/* 02512274 */ cpu->r[6] = cpu->r[6] + 0x00003440u;
|
|
/* 02512278 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251227C */ cpu->r[5] = 0x00000020u;
|
|
/* 02512280 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02512284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02512288 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512288 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02512288 */ if (_t31) goto L_025122A0; else goto L_0251228C;
|
|
L_0251228C: ; // 0x251228c
|
|
/* 0251228C */ _t32 = cpu->r[28] + 0x00000000u;
|
|
/* 0251228C */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 02512290 */ cpu->r[0] = 0x00000040u;
|
|
/* 02512294 */ _t33 = cpu->r[28] + 0x00000008u;
|
|
/* 02512294 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 02512298 */ _t34 = cpu->r[28] + 0x00000004u;
|
|
/* 02512298 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0251229C */ _t35 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0251229C */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
L_025122A0: ; // 0x25122a0
|
|
/* 025122A0 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 025122A0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025122A4 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025122A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 025122A8 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025122A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025122AC */ cpu->r[3] = cpu->r[31];
|
|
/* 025122B0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 025122B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025122B4 */ cpu->lr = cpu->r[0];
|
|
/* 025122B8 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 025122B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025122BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025122C0 */ return;
|
|
}
|
|
|
|
// fn_025122C4 @ 0x25122c4
|
|
void Gambit_fn_025122C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_025122C4: ; // 0x25122c4
|
|
/* 025122C4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 025122C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025122C4 */ cpu->r[1] = _t0;
|
|
/* 025122C8 */ /* nop */
|
|
/* 025122CC */ cpu->r[0] = cpu->lr;
|
|
/* 025122D0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 025122D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025122D4 */ cpu->r[29] = cpu->r[4];
|
|
/* 025122D8 */ _t2 = cpu->r[29] + 0x00000044u;
|
|
/* 025122D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 025122DC */ cpu->r[28] = cpu->r[3];
|
|
/* 025122E0 */ cpu->r[30] = cpu->r[5];
|
|
/* 025122E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025122E8 */ cpu->r[31] = cpu->r[6];
|
|
/* 025122EC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025122EC */ _t4 = _t3 & 0x00000001u;
|
|
/* 025122EC */ if (_t4) goto L_025122F0; else goto L_0251236C;
|
|
L_025122F0: ; // 0x25122f0
|
|
/* 025122F0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 025122F4 */ _t5 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 025122F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025122F8 */ cpu->r[27] = cpu->r[12] + 0x0000005Cu;
|
|
/* 025122FC */ cpu->r[3] = cpu->r[27];
|
|
/* 02512300 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02512304 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02512308 */ cpu->r[5] = 0x00000002u;
|
|
/* 0251230C */ cpu->r[7] = cpu->r[31];
|
|
/* 02512310 */ cpu->r[6] = cpu->r[6] + 0xFFFFF9D8u;
|
|
/* 02512314 */ cpu->r[4] = cpu->r[30];
|
|
/* 02512318 */ cpu->r[3] = cpu->r[29];
|
|
/* 0251231C */ Gambit_fn_023BB9D4(cpu);
|
|
/* 02512320 */ _t6 = cpu->r[28] + 0x00000000u;
|
|
/* 02512320 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02512324 */ cpu->r[5] = cpu->r[31];
|
|
/* 02512328 */ cpu->r[4] = 0x00000000u;
|
|
/* 0251232C */ Gambit_fn_02513778(cpu);
|
|
/* 02512330 */ _t7 = cpu->r[28] + 0x00000004u;
|
|
/* 02512330 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02512334 */ cpu->r[5] = cpu->r[31];
|
|
/* 02512338 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 02512338 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0251233C */ cpu->r[4] = 0x00000001u;
|
|
/* 02512340 */ Gambit_fn_02513878(cpu);
|
|
/* 02512344 */ _t9 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02512344 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02512348 */ _t10 = cpu->r[28] + 0x00000008u;
|
|
/* 02512348 */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
/* 0251234C */ _t11 = cpu->r[28] + 0x00000000u;
|
|
/* 0251234C */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512350 */ Gambit_fn_026EE308(cpu);
|
|
/* 02512354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512358 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512358 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02512358 */ if (_t13) goto L_02512364; else goto L_0251235C;
|
|
L_0251235C: ; // 0x251235c
|
|
/* 0251235C */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 0251235C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02512360 */ Gambit_fn_026EE1F4(cpu);
|
|
L_02512364: ; // 0x2512364
|
|
/* 02512364 */ cpu->r[3] = cpu->r[27];
|
|
/* 02512368 */ Gambit_fn_02837030(cpu);
|
|
L_0251236C: ; // 0x251236c
|
|
/* 0251236C */ /* nop */
|
|
/* 02512370 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 02512370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02512374 */ cpu->lr = cpu->r[0];
|
|
/* 02512378 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0251237C */ return;
|
|
}
|
|
|
|
// fn_02512380 @ 0x2512380
|
|
void Gambit_fn_02512380(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59;
|
|
|
|
L_02512380: ; // 0x2512380
|
|
/* 02512380 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02512380 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512380 */ cpu->r[1] = _t0;
|
|
/* 02512384 */ /* nop */
|
|
/* 02512388 */ cpu->r[0] = cpu->lr;
|
|
/* 0251238C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0251238C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02512390 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02512394 */ _t2 = cpu->r[12] + 0x00005BA0u;
|
|
/* 02512394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02512398 */ _t3 = cpu->r[12] + 0x00000044u;
|
|
/* 02512398 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0251239C */ cpu->r[30] = cpu->r[3];
|
|
/* 025123A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025123A4 */ cpu->r[31] = cpu->r[4];
|
|
/* 025123A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025123A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025123A8 */ if (_t5) goto L_025123AC; else goto L_02512504;
|
|
L_025123AC: ; // 0x25123ac
|
|
/* 025123AC */ cpu->r[11] = 0x101D0000u;
|
|
/* 025123B0 */ _t6 = cpu->r[11] + 0xFFFFAEA8u;
|
|
/* 025123B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025123B4 */ cpu->r[29] = cpu->r[11] + 0x0000005Cu;
|
|
/* 025123B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 025123BC */ Gambit_fn_02836FFC(cpu);
|
|
/* 025123C0 */ _t7 = cpu->r[30] + 0x00000000u;
|
|
/* 025123C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025123C4 */ _t8 = cpu->r[3] + 0x00000038u;
|
|
/* 025123C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025123C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025123CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025123CC */ _t10 = _t9 & 0x00000001u;
|
|
/* 025123CC */ if (_t10) goto L_025123D0; else goto L_025124FC;
|
|
L_025123D0: ; // 0x25123d0
|
|
/* 025123D0 */ Gambit_fn_026EE550(cpu);
|
|
/* 025123D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025123D8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025123D8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025123D8 */ if (_t12) goto L_025124FC; else goto L_025123DC;
|
|
L_025123DC: ; // 0x25123dc
|
|
/* 025123DC */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 025123DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025123E0 */ Gambit_fn_02C0F664(cpu);
|
|
/* 025123E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025123E8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025123E8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 025123E8 */ if (_t15) goto L_02512404; else goto L_025123EC;
|
|
L_025123EC: ; // 0x25123ec
|
|
/* 025123EC */ cpu->r[3] = cpu->r[31];
|
|
/* 025123F0 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025123F4 */ Gambit_fn_0250FC24(cpu);
|
|
/* 025123F8 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 025123F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025123FC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02512400 */ Gambit_fn_025134C0(cpu);
|
|
L_02512404: ; // 0x2512404
|
|
/* 02512404 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 02512404 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02512408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251240C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251240C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251240C */ if (_t19) goto L_025124FC; else goto L_02512410;
|
|
L_02512410: ; // 0x2512410
|
|
/* 02512410 */ cpu->r[31] = 0xFD230000u;
|
|
/* 02512414 */ cpu->r[31] = cpu->r[31] + 0xFFFF8C2Cu;
|
|
L_02512418: ; // 0x2512418
|
|
/* 02512418 */ _t20 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0251241C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512420 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512420 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02512420 */ if (_t22) goto L_025124FC; else goto L_02512424;
|
|
L_02512424: ; // 0x2512424
|
|
/* 02512424 */ cpu->r[27] = cpu->r[1] + 0x00000008u;
|
|
/* 02512428 */ cpu->r[28] = 0x00000000u;
|
|
L_0251242C: ; // 0x251242c
|
|
/* 0251242C */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 0251242C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02512430 */ Gambit_fn_02C0F664(cpu);
|
|
/* 02512434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512438 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512438 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02512438 */ if (_t25) goto L_025124FC; else goto L_0251243C;
|
|
L_0251243C: ; // 0x251243c
|
|
/* 0251243C */ _t26 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0251243C */ cpu->r[7] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02512440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02512444 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02512444 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02512444 */ if (_t28) goto L_02512448; else goto L_025124A8;
|
|
L_02512448: ; // 0x2512448
|
|
/* 02512448 */ _t29 = cpu->r[30] + 0x00000018u;
|
|
/* 02512448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0251244C */ _t30 = cpu->r[30] + 0x00000014u;
|
|
/* 0251244C */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02512450 */ cpu->r[11] = cpu->r[0];
|
|
/* 02512454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[12]);
|
|
/* 02512458 */ _t31 = cpu->r[30] + 0x00000010u;
|
|
/* 02512458 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0251245C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251245C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0251245C */ if (_t33) goto L_02512464; else goto L_02512460;
|
|
L_02512460: ; // 0x2512460
|
|
/* 02512460 */ cpu->r[11] = cpu->r[11] - cpu->r[12];
|
|
L_02512464: ; // 0x2512464
|
|
/* 02512464 */ cpu->r[8] = rbrew_rlwinm(cpu->r[11], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 02512468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[12]);
|
|
/* 0251246C */ cpu->r[4] = cpu->r[7] + cpu->r[8];
|
|
/* 02512470 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512470 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02512470 */ if (_t35) goto L_02512478; else goto L_02512474;
|
|
L_02512474: ; // 0x2512474
|
|
/* 02512474 */ cpu->r[0] = cpu->r[0] - cpu->r[12];
|
|
L_02512478: ; // 0x2512478
|
|
/* 02512478 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 0251247C */ _t36 = cpu->r[30] + 0x00000008u;
|
|
/* 0251247C */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02512480 */ cpu->r[12] = cpu->r[7] + cpu->r[9];
|
|
/* 02512484 */ _t37 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02512484 */ cpu->r[5] = rbrew_read8(cpu->mem, _t37);
|
|
/* 02512488 */ Gambit_fn_02513634(cpu);
|
|
/* 0251248C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 0251248C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512490 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512490 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02512490 */ if (_t39) goto L_025124C0; else goto L_02512494;
|
|
L_02512494: ; // 0x2512494
|
|
/* 02512494 */ cpu->r[3] = cpu->r[27];
|
|
/* 02512498 */ cpu->r[4] = 0x00000004u;
|
|
/* 0251249C */ Gambit_fn_02C89380(cpu);
|
|
/* 025124A0 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 025124A0 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 025124A4 */ goto L_025124FC;
|
|
L_025124A8: ; // 0x25124a8
|
|
/* 025124A8 */ _t41 = cpu->r[30] + 0x00000010u;
|
|
/* 025124A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025124AC */ _t42 = cpu->r[30] + 0x00000008u;
|
|
/* 025124AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 025124B0 */ _t43 = cpu->r[4] + 0x0000001Cu;
|
|
/* 025124B0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t43);
|
|
/* 025124B4 */ Gambit_fn_02513634(cpu);
|
|
/* 025124B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 025124B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025124BC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025124BC */ _t45 = _t44 & 0x00000001u;
|
|
/* 025124BC */ if (_t45) goto L_025124C0; else goto L_02512494;
|
|
L_025124C0: ; // 0x25124c0
|
|
/* 025124C0 */ _t46 = cpu->r[30] + 0x0000001Cu;
|
|
/* 025124C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025124C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025124C8 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025124C8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 025124C8 */ if (_t48) goto L_0251242C; else goto L_025124CC;
|
|
L_025124CC: ; // 0x25124cc
|
|
/* 025124CC */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025124CC */ _t50 = _t49 & 0x00000001u;
|
|
/* 025124CC */ if (_t50) goto L_025124D0; else goto L_025124FC;
|
|
L_025124D0: ; // 0x25124d0
|
|
/* 025124D0 */ _t51 = cpu->r[30] + 0x00000018u;
|
|
/* 025124D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t51);
|
|
/* 025124D4 */ _t52 = cpu->r[30] + 0x00000014u;
|
|
/* 025124D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025124D8 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 025124DC */ _t53 = cpu->r[30] + 0x00000018u;
|
|
/* 025124DC */ rbrew_write32(cpu->mem, _t53, cpu->r[5]);
|
|
/* 025124E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 025124E4 */ _t54 = cpu->r[30] + 0x0000001Cu;
|
|
/* 025124E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t54);
|
|
/* 025124E8 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025124E8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 025124E8 */ if (_t56) goto L_025124F0; else goto L_025124EC;
|
|
L_025124EC: ; // 0x25124ec
|
|
/* 025124EC */ _t57 = cpu->r[30] + 0x00000018u;
|
|
/* 025124EC */ rbrew_write32(cpu->mem, _t57, cpu->r[28]);
|
|
L_025124F0: ; // 0x25124f0
|
|
/* 025124F0 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 025124F4 */ _t58 = cpu->r[30] + 0x0000001Cu;
|
|
/* 025124F4 */ rbrew_write32(cpu->mem, _t58, cpu->r[8]);
|
|
/* 025124F8 */ goto L_02512418;
|
|
L_025124FC: ; // 0x25124fc
|
|
/* 025124FC */ cpu->r[3] = cpu->r[29];
|
|
/* 02512500 */ Gambit_fn_02837030(cpu);
|
|
L_02512504: ; // 0x2512504
|
|
/* 02512504 */ /* nop */
|
|
/* 02512508 */ _t59 = cpu->r[1] + 0x00000034u;
|
|
/* 02512508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0251250C */ cpu->lr = cpu->r[0];
|
|
/* 02512510 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02512514 */ return;
|
|
}
|
|
|
|
// fn_02512518 @ 0x2512518
|
|
void Gambit_fn_02512518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_02512518: ; // 0x2512518
|
|
/* 02512518 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02512518 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512518 */ cpu->r[1] = _t0;
|
|
/* 0251251C */ /* nop */
|
|
/* 02512520 */ cpu->r[0] = cpu->lr;
|
|
/* 02512524 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02512524 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02512528 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0251252C */ _t2 = cpu->r[11] + 0x00005BA0u;
|
|
/* 0251252C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02512530 */ cpu->r[27] = cpu->r[5];
|
|
/* 02512534 */ _t3 = cpu->r[11] + 0x00000044u;
|
|
/* 02512534 */ cpu->r[5] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02512538 */ cpu->r[30] = cpu->r[3];
|
|
/* 0251253C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02512540 */ cpu->r[31] = cpu->r[4];
|
|
/* 02512544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02512544 */ if (_t5) goto L_02512548; else goto L_02512640;
|
|
L_02512548: ; // 0x2512548
|
|
/* 02512548 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0251254C */ _t6 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 0251254C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02512550 */ cpu->r[28] = cpu->r[12] + 0x0000005Cu;
|
|
/* 02512554 */ cpu->r[3] = cpu->r[28];
|
|
/* 02512558 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0251255C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02512560 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512560 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02512560 */ if (_t8) goto L_02512580; else goto L_02512564;
|
|
L_02512564: ; // 0x2512564
|
|
/* 02512564 */ _t9 = cpu->r[30] + 0x00000004u;
|
|
/* 02512564 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02512568 */ _t10 = cpu->r[10] + 0x00000024u;
|
|
/* 02512568 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0251256C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512570 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512570 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02512570 */ if (_t12) goto L_02512580; else goto L_02512574;
|
|
L_02512574: ; // 0x2512574
|
|
/* 02512574 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512578 */ cpu->r[4] = cpu->r[10] + 0x0000003Cu;
|
|
/* 0251257C */ Gambit_fn_0250FC68(cpu);
|
|
L_02512580: ; // 0x2512580
|
|
/* 02512580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02512584 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512584 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02512584 */ if (_t14) goto L_025125C8; else goto L_02512588;
|
|
L_02512588: ; // 0x2512588
|
|
/* 02512588 */ _t15 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02512588 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0251258C */ cpu->r[3] = cpu->r[29];
|
|
/* 02512590 */ Gambit_fn_02C17DC4(cpu);
|
|
/* 02512594 */ _t16 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02512594 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02512598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0251259C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251259C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0251259C */ if (_t18) goto L_02512638; else goto L_025125A0;
|
|
L_025125A0: ; // 0x25125a0
|
|
/* 025125A0 */ cpu->r[7] = cpu->r[9] + 0x00000100u;
|
|
/* 025125A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025125A4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025125A4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 025125A4 */ if (_t20) goto L_02512638; else goto L_025125A8;
|
|
L_025125A8: ; // 0x25125a8
|
|
/* 025125A8 */ _t21 = cpu->r[7] + 0x00000000u;
|
|
/* 025125A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t21);
|
|
/* 025125AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 025125B0 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025125B0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025125B0 */ if (_t23) goto L_025125F4; else goto L_025125B4;
|
|
L_025125B4: ; // 0x25125b4
|
|
/* 025125B4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025125B4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025125B4 */ if (_t25) goto L_02512604; else goto L_025125B8;
|
|
L_025125B8: ; // 0x25125b8
|
|
/* 025125B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 025125BC */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025125BC */ _t27 = _t26 & 0x00000001u;
|
|
/* 025125BC */ if (_t27) goto L_02512614; else goto L_025125C0;
|
|
L_025125C0: ; // 0x25125c0
|
|
/* 025125C0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025125C0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 025125C0 */ if (_t29) goto L_0251262C; else goto L_025125C4;
|
|
L_025125C4: ; // 0x25125c4
|
|
/* 025125C4 */ goto L_02512588;
|
|
L_025125C8: ; // 0x25125c8
|
|
/* 025125C8 */ _t30 = cpu->r[30] + 0x0000000Cu;
|
|
/* 025125C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025125CC */ cpu->r[3] = cpu->r[29];
|
|
/* 025125D0 */ Gambit_fn_02C17DC4(cpu);
|
|
/* 025125D4 */ _t31 = cpu->r[29] + 0x0000002Cu;
|
|
/* 025125D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025125D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025125DC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025125DC */ _t33 = _t32 & 0x00000001u;
|
|
/* 025125DC */ if (_t33) goto L_02512638; else goto L_025125E0;
|
|
L_025125E0: ; // 0x25125e0
|
|
/* 025125E0 */ cpu->r[7] = cpu->r[9] + 0x00000100u;
|
|
/* 025125E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025125E4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025125E4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 025125E4 */ if (_t35) goto L_025125E8; else goto L_025125C8;
|
|
L_025125E8: ; // 0x25125e8
|
|
/* 025125E8 */ cpu->r[3] = cpu->r[28];
|
|
/* 025125EC */ Gambit_fn_02837030(cpu);
|
|
/* 025125F0 */ goto L_02512640;
|
|
L_025125F4: ; // 0x25125f4
|
|
/* 025125F4 */ _t36 = cpu->r[7] + 0x00000001u;
|
|
/* 025125F4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t36);
|
|
/* 025125F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025125FC */ Gambit_fn_0250FCBC(cpu);
|
|
/* 02512600 */ goto L_02512588;
|
|
L_02512604: ; // 0x2512604
|
|
/* 02512604 */ _t37 = cpu->r[7] + 0x00000001u;
|
|
/* 02512604 */ cpu->r[4] = rbrew_read8(cpu->mem, _t37);
|
|
/* 02512608 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251260C */ Gambit_fn_0250FD0C(cpu);
|
|
/* 02512610 */ goto L_02512580;
|
|
L_02512614: ; // 0x2512614
|
|
/* 02512614 */ _t38 = cpu->r[7] + 0x00000001u;
|
|
/* 02512614 */ cpu->r[4] = rbrew_read8(cpu->mem, _t38);
|
|
/* 02512618 */ cpu->r[6] = cpu->r[7] + 0x00000010u;
|
|
/* 0251261C */ cpu->r[5] = cpu->r[7] + 0x00000004u;
|
|
/* 02512620 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512624 */ Gambit_fn_0250FF94(cpu);
|
|
/* 02512628 */ goto L_02512580;
|
|
L_0251262C: ; // 0x251262c
|
|
/* 0251262C */ cpu->r[3] = cpu->r[31];
|
|
/* 02512630 */ Gambit_fn_0250FFAC(cpu);
|
|
/* 02512634 */ goto L_02512580;
|
|
L_02512638: ; // 0x2512638
|
|
/* 02512638 */ cpu->r[3] = cpu->r[28];
|
|
/* 0251263C */ Gambit_fn_02837030(cpu);
|
|
L_02512640: ; // 0x2512640
|
|
/* 02512640 */ /* nop */
|
|
/* 02512644 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 02512644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02512648 */ cpu->lr = cpu->r[0];
|
|
/* 0251264C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02512650 */ return;
|
|
}
|
|
|
|
// fn_02512654 @ 0x2512654
|
|
void Gambit_fn_02512654(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
|
|
L_02512654: ; // 0x2512654
|
|
/* 02512654 */ cpu->r[0] = cpu->lr;
|
|
/* 02512658 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02512658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512658 */ cpu->r[1] = _t0;
|
|
/* 0251265C */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251265C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02512660 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 02512660 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02512664 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 02512664 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02512668 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0251266C */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251266C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02512670 */ _t5 = cpu->r[11] + 0x00005BA0u;
|
|
/* 02512670 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02512674 */ cpu->r[29] = cpu->r[3];
|
|
/* 02512678 */ _t6 = cpu->r[11] + 0x00000044u;
|
|
/* 02512678 */ cpu->r[7] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0251267C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02512680 */ cpu->r[31] = cpu->r[4];
|
|
/* 02512684 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512684 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02512684 */ if (_t8) goto L_025126A8; else goto L_02512688;
|
|
L_02512688: ; // 0x2512688
|
|
/* 02512688 */ _t9 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512688 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251268C */ _t10 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251268C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512690 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 02512690 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512694 */ cpu->lr = cpu->r[0];
|
|
/* 02512698 */ _t12 = cpu->r[1] + 0x00000054u;
|
|
/* 02512698 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0251269C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 025126A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025126A4 */ return;
|
|
L_025126A8: ; // 0x25126a8
|
|
/* 025126A8 */ _t13 = cpu->r[29] + 0x00000000u;
|
|
/* 025126A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025126AC */ _t14 = cpu->r[3] + 0x00000038u;
|
|
/* 025126AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025126B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025126B4 */ cpu->r[30] = 0x00000000u;
|
|
/* 025126B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 025126B8 */ if (_t16) goto L_025126BC; else goto L_0251283C;
|
|
L_025126BC: ; // 0x25126bc
|
|
/* 025126BC */ Gambit_fn_026EE550(cpu);
|
|
/* 025126C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025126C4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 025126C4 */ if (_t18) goto L_0251283C; else goto L_025126C8;
|
|
L_025126C8: ; // 0x25126c8
|
|
/* 025126C8 */ _t19 = cpu->r[29] + 0x00000008u;
|
|
/* 025126C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025126CC */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025126CC */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[30]);
|
|
/* 025126D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025126D4 */ _t21 = cpu->r[1] + 0x0000002Du;
|
|
/* 025126D4 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]);
|
|
/* 025126D8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126D8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025126D8 */ if (_t23) goto L_0251281C; else goto L_025126DC;
|
|
L_025126DC: ; // 0x25126dc
|
|
/* 025126DC */ cpu->r[12] = 0x101D0000u;
|
|
/* 025126E0 */ _t24 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 025126E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025126E4 */ cpu->r[31] = cpu->r[12] + 0x0000005Cu;
|
|
/* 025126E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025126EC */ Gambit_fn_02836FFC(cpu);
|
|
/* 025126F0 */ _t25 = cpu->r[29] + 0x00000008u;
|
|
/* 025126F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025126F4 */ Gambit_fn_02C0F664(cpu);
|
|
/* 025126F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025126FC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126FC */ _t27 = _t26 & 0x00000001u;
|
|
/* 025126FC */ if (_t27) goto L_02512730; else goto L_02512700;
|
|
L_02512700: ; // 0x2512700
|
|
/* 02512700 */ _t28 = cpu->r[29] + 0x00000008u;
|
|
/* 02512700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02512704 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512708 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251270C */ Gambit_fn_02513634(cpu);
|
|
/* 02512710 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02512714 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512714 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02512714 */ if (_t30) goto L_025127E8; else goto L_02512718;
|
|
L_02512718: ; // 0x2512718
|
|
/* 02512718 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251271C */ cpu->r[4] = 0x00000004u;
|
|
/* 02512720 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512724 */ cpu->r[0] = 0xFD220000u;
|
|
/* 02512728 */ cpu->r[0] = cpu->r[0] | 0x00008C2Cu;
|
|
/* 0251272C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0251272C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
L_02512730: ; // 0x2512730
|
|
/* 02512730 */ _t32 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02512730 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02512734 */ _t33 = cpu->r[29] + 0x00000014u;
|
|
/* 02512734 */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02512738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[6]);
|
|
/* 0251273C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251273C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0251273C */ if (_t35) goto L_02512740; else goto L_02512810;
|
|
L_02512740: ; // 0x2512740
|
|
/* 02512740 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 02512740 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02512744 */ _t37 = cpu->r[1] + 0x00000040u;
|
|
/* 02512744 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02512748 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02512748 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[9]);
|
|
/* 0251274C */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0251274C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 02512750 */ _t40 = cpu->r[1] + 0x00000038u;
|
|
/* 02512750 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02512754 */ _t41 = cpu->r[1] + 0x00000044u;
|
|
/* 02512754 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02512758 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02512758 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 0251275C */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0251275C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 02512760 */ _t44 = cpu->r[1] + 0x0000002Du;
|
|
/* 02512760 */ cpu->r[7] = rbrew_read8(cpu->mem, _t44);
|
|
/* 02512764 */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512764 */ cpu->r[11] = rbrew_read8(cpu->mem, _t45);
|
|
/* 02512768 */ _t46 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512768 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0251276C */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 0251276C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02512770 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512770 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 02512774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[6]);
|
|
/* 02512778 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02512778 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[10]);
|
|
/* 0251277C */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251277C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0251277C */ if (_t51) goto L_02512780; else goto L_025127E8;
|
|
L_02512780: ; // 0x2512780
|
|
/* 02512780 */ _t52 = cpu->r[29] + 0x00000018u;
|
|
/* 02512780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02512784 */ cpu->r[0] = cpu->r[9] + 0x00000001u;
|
|
/* 02512788 */ _t53 = cpu->r[29] + 0x00000014u;
|
|
/* 02512788 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251278C */ cpu->r[8] = cpu->r[8] + cpu->r[9];
|
|
/* 02512790 */ _t54 = cpu->r[29] + 0x00000010u;
|
|
/* 02512790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02512794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 02512798 */ _t55 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02512798 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0251279C */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251279C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0251279C */ if (_t57) goto L_025127A4; else goto L_025127A0;
|
|
L_025127A0: ; // 0x25127a0
|
|
/* 025127A0 */ cpu->r[8] = cpu->r[8] - cpu->r[6];
|
|
L_025127A4: ; // 0x25127a4
|
|
/* 025127A4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 025127A8 */ _t58 = cpu->r[10] + cpu->r[9];
|
|
/* 025127A8 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[11]);
|
|
/* 025127AC */ cpu->r[6] = cpu->r[10] + cpu->r[9];
|
|
/* 025127B0 */ _t59 = cpu->r[6] + 0x00000001u;
|
|
/* 025127B0 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[7]);
|
|
/* 025127B4 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 025127B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 025127B8 */ _t61 = cpu->r[6] + 0x00000004u;
|
|
/* 025127B8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[0]);
|
|
/* 025127BC */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 025127BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 025127C0 */ _t63 = cpu->r[6] + 0x00000008u;
|
|
/* 025127C0 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[11]);
|
|
/* 025127C4 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 025127C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 025127C8 */ _t65 = cpu->r[6] + 0x0000000Cu;
|
|
/* 025127C8 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[13]);
|
|
/* 025127CC */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025127CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025127D0 */ _t67 = cpu->r[6] + 0x00000010u;
|
|
/* 025127D0 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[0]);
|
|
/* 025127D4 */ _t68 = cpu->r[1] + 0x00000020u;
|
|
/* 025127D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025127D8 */ _t69 = cpu->r[6] + 0x00000014u;
|
|
/* 025127D8 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 025127DC */ _t70 = cpu->r[1] + 0x00000024u;
|
|
/* 025127DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 025127E0 */ _t71 = cpu->r[6] + 0x0000001Cu;
|
|
/* 025127E0 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[30]);
|
|
/* 025127E4 */ _t72 = cpu->r[6] + 0x00000018u;
|
|
/* 025127E4 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[12]);
|
|
L_025127E8: ; // 0x25127e8
|
|
/* 025127E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025127EC */ Gambit_fn_02837030(cpu);
|
|
/* 025127F0 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025127F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025127F4 */ _t74 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025127F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 025127F8 */ _t75 = cpu->r[1] + 0x00000050u;
|
|
/* 025127F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t75);
|
|
/* 025127FC */ cpu->lr = cpu->r[0];
|
|
/* 02512800 */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 02512800 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02512804 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512808 */ cpu->r[3] = 0x00000001u;
|
|
/* 0251280C */ return;
|
|
L_02512810: ; // 0x2512810
|
|
/* 02512810 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512814 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512818 */ Gambit_fn_02837030(cpu);
|
|
L_0251281C: ; // 0x251281c
|
|
/* 0251281C */ _t77 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251281C */ cpu->r[29] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02512820 */ _t78 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02512824 */ _t79 = cpu->r[1] + 0x00000050u;
|
|
/* 02512824 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02512828 */ cpu->lr = cpu->r[0];
|
|
/* 0251282C */ _t80 = cpu->r[1] + 0x00000054u;
|
|
/* 0251282C */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02512830 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512834 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512838 */ return;
|
|
L_0251283C: ; // 0x251283c
|
|
/* 0251283C */ _t81 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251283C */ cpu->r[29] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02512840 */ _t82 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02512844 */ _t83 = cpu->r[1] + 0x00000050u;
|
|
/* 02512844 */ cpu->r[30] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02512848 */ cpu->lr = cpu->r[0];
|
|
/* 0251284C */ _t84 = cpu->r[1] + 0x00000054u;
|
|
/* 0251284C */ cpu->r[31] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02512850 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512854 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512858 */ return;
|
|
}
|
|
|
|
// fn_02512658 @ 0x2512658
|
|
void Gambit_fn_02512658(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
|
|
L_02512658: ; // 0x2512658
|
|
/* 02512658 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02512658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512658 */ cpu->r[1] = _t0;
|
|
/* 0251265C */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251265C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02512660 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 02512660 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02512664 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 02512664 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02512668 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0251266C */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251266C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02512670 */ _t5 = cpu->r[11] + 0x00005BA0u;
|
|
/* 02512670 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02512674 */ cpu->r[29] = cpu->r[3];
|
|
/* 02512678 */ _t6 = cpu->r[11] + 0x00000044u;
|
|
/* 02512678 */ cpu->r[7] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0251267C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02512680 */ cpu->r[31] = cpu->r[4];
|
|
/* 02512684 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512684 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02512684 */ if (_t8) goto L_025126A8; else goto L_02512688;
|
|
L_02512688: ; // 0x2512688
|
|
/* 02512688 */ _t9 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512688 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251268C */ _t10 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251268C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512690 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 02512690 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512694 */ cpu->lr = cpu->r[0];
|
|
/* 02512698 */ _t12 = cpu->r[1] + 0x00000054u;
|
|
/* 02512698 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0251269C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 025126A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025126A4 */ return;
|
|
L_025126A8: ; // 0x25126a8
|
|
/* 025126A8 */ _t13 = cpu->r[29] + 0x00000000u;
|
|
/* 025126A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025126AC */ _t14 = cpu->r[3] + 0x00000038u;
|
|
/* 025126AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025126B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025126B4 */ cpu->r[30] = 0x00000000u;
|
|
/* 025126B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 025126B8 */ if (_t16) goto L_025126BC; else goto L_0251283C;
|
|
L_025126BC: ; // 0x25126bc
|
|
/* 025126BC */ Gambit_fn_026EE550(cpu);
|
|
/* 025126C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025126C4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 025126C4 */ if (_t18) goto L_0251283C; else goto L_025126C8;
|
|
L_025126C8: ; // 0x25126c8
|
|
/* 025126C8 */ _t19 = cpu->r[29] + 0x00000008u;
|
|
/* 025126C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025126CC */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025126CC */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[30]);
|
|
/* 025126D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025126D4 */ _t21 = cpu->r[1] + 0x0000002Du;
|
|
/* 025126D4 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]);
|
|
/* 025126D8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126D8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025126D8 */ if (_t23) goto L_0251281C; else goto L_025126DC;
|
|
L_025126DC: ; // 0x25126dc
|
|
/* 025126DC */ cpu->r[12] = 0x101D0000u;
|
|
/* 025126E0 */ _t24 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 025126E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025126E4 */ cpu->r[31] = cpu->r[12] + 0x0000005Cu;
|
|
/* 025126E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025126EC */ Gambit_fn_02836FFC(cpu);
|
|
/* 025126F0 */ _t25 = cpu->r[29] + 0x00000008u;
|
|
/* 025126F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025126F4 */ Gambit_fn_02C0F664(cpu);
|
|
/* 025126F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025126FC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025126FC */ _t27 = _t26 & 0x00000001u;
|
|
/* 025126FC */ if (_t27) goto L_02512730; else goto L_02512700;
|
|
L_02512700: ; // 0x2512700
|
|
/* 02512700 */ _t28 = cpu->r[29] + 0x00000008u;
|
|
/* 02512700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02512704 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512708 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251270C */ Gambit_fn_02513634(cpu);
|
|
/* 02512710 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02512714 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512714 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02512714 */ if (_t30) goto L_025127E8; else goto L_02512718;
|
|
L_02512718: ; // 0x2512718
|
|
/* 02512718 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251271C */ cpu->r[4] = 0x00000004u;
|
|
/* 02512720 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512724 */ cpu->r[0] = 0xFD220000u;
|
|
/* 02512728 */ cpu->r[0] = cpu->r[0] | 0x00008C2Cu;
|
|
/* 0251272C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0251272C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
L_02512730: ; // 0x2512730
|
|
/* 02512730 */ _t32 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02512730 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02512734 */ _t33 = cpu->r[29] + 0x00000014u;
|
|
/* 02512734 */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02512738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[6]);
|
|
/* 0251273C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251273C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0251273C */ if (_t35) goto L_02512740; else goto L_02512810;
|
|
L_02512740: ; // 0x2512740
|
|
/* 02512740 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 02512740 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02512744 */ _t37 = cpu->r[1] + 0x00000040u;
|
|
/* 02512744 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02512748 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02512748 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[9]);
|
|
/* 0251274C */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0251274C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 02512750 */ _t40 = cpu->r[1] + 0x00000038u;
|
|
/* 02512750 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02512754 */ _t41 = cpu->r[1] + 0x00000044u;
|
|
/* 02512754 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02512758 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02512758 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 0251275C */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0251275C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 02512760 */ _t44 = cpu->r[1] + 0x0000002Du;
|
|
/* 02512760 */ cpu->r[7] = rbrew_read8(cpu->mem, _t44);
|
|
/* 02512764 */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512764 */ cpu->r[11] = rbrew_read8(cpu->mem, _t45);
|
|
/* 02512768 */ _t46 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512768 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0251276C */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 0251276C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02512770 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512770 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 02512774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[6]);
|
|
/* 02512778 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02512778 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[10]);
|
|
/* 0251277C */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251277C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0251277C */ if (_t51) goto L_02512780; else goto L_025127E8;
|
|
L_02512780: ; // 0x2512780
|
|
/* 02512780 */ _t52 = cpu->r[29] + 0x00000018u;
|
|
/* 02512780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02512784 */ cpu->r[0] = cpu->r[9] + 0x00000001u;
|
|
/* 02512788 */ _t53 = cpu->r[29] + 0x00000014u;
|
|
/* 02512788 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251278C */ cpu->r[8] = cpu->r[8] + cpu->r[9];
|
|
/* 02512790 */ _t54 = cpu->r[29] + 0x00000010u;
|
|
/* 02512790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02512794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 02512798 */ _t55 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02512798 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0251279C */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251279C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0251279C */ if (_t57) goto L_025127A4; else goto L_025127A0;
|
|
L_025127A0: ; // 0x25127a0
|
|
/* 025127A0 */ cpu->r[8] = cpu->r[8] - cpu->r[6];
|
|
L_025127A4: ; // 0x25127a4
|
|
/* 025127A4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 025127A8 */ _t58 = cpu->r[10] + cpu->r[9];
|
|
/* 025127A8 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[11]);
|
|
/* 025127AC */ cpu->r[6] = cpu->r[10] + cpu->r[9];
|
|
/* 025127B0 */ _t59 = cpu->r[6] + 0x00000001u;
|
|
/* 025127B0 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[7]);
|
|
/* 025127B4 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 025127B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 025127B8 */ _t61 = cpu->r[6] + 0x00000004u;
|
|
/* 025127B8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[0]);
|
|
/* 025127BC */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 025127BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 025127C0 */ _t63 = cpu->r[6] + 0x00000008u;
|
|
/* 025127C0 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[11]);
|
|
/* 025127C4 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 025127C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 025127C8 */ _t65 = cpu->r[6] + 0x0000000Cu;
|
|
/* 025127C8 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[13]);
|
|
/* 025127CC */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025127CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025127D0 */ _t67 = cpu->r[6] + 0x00000010u;
|
|
/* 025127D0 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[0]);
|
|
/* 025127D4 */ _t68 = cpu->r[1] + 0x00000020u;
|
|
/* 025127D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025127D8 */ _t69 = cpu->r[6] + 0x00000014u;
|
|
/* 025127D8 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 025127DC */ _t70 = cpu->r[1] + 0x00000024u;
|
|
/* 025127DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 025127E0 */ _t71 = cpu->r[6] + 0x0000001Cu;
|
|
/* 025127E0 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[30]);
|
|
/* 025127E4 */ _t72 = cpu->r[6] + 0x00000018u;
|
|
/* 025127E4 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[12]);
|
|
L_025127E8: ; // 0x25127e8
|
|
/* 025127E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025127EC */ Gambit_fn_02837030(cpu);
|
|
/* 025127F0 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025127F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025127F4 */ _t74 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025127F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 025127F8 */ _t75 = cpu->r[1] + 0x00000050u;
|
|
/* 025127F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t75);
|
|
/* 025127FC */ cpu->lr = cpu->r[0];
|
|
/* 02512800 */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 02512800 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02512804 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512808 */ cpu->r[3] = 0x00000001u;
|
|
/* 0251280C */ return;
|
|
L_02512810: ; // 0x2512810
|
|
/* 02512810 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512814 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512818 */ Gambit_fn_02837030(cpu);
|
|
L_0251281C: ; // 0x251281c
|
|
/* 0251281C */ _t77 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251281C */ cpu->r[29] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02512820 */ _t78 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02512824 */ _t79 = cpu->r[1] + 0x00000050u;
|
|
/* 02512824 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02512828 */ cpu->lr = cpu->r[0];
|
|
/* 0251282C */ _t80 = cpu->r[1] + 0x00000054u;
|
|
/* 0251282C */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02512830 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512834 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512838 */ return;
|
|
L_0251283C: ; // 0x251283c
|
|
/* 0251283C */ _t81 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251283C */ cpu->r[29] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02512840 */ _t82 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02512844 */ _t83 = cpu->r[1] + 0x00000050u;
|
|
/* 02512844 */ cpu->r[30] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02512848 */ cpu->lr = cpu->r[0];
|
|
/* 0251284C */ _t84 = cpu->r[1] + 0x00000054u;
|
|
/* 0251284C */ cpu->r[31] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02512850 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512854 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512858 */ return;
|
|
}
|
|
|
|
// fn_0251285C @ 0x251285c
|
|
void Gambit_fn_0251285C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79;
|
|
|
|
L_0251285C: ; // 0x251285c
|
|
/* 0251285C */ cpu->r[0] = cpu->lr;
|
|
/* 02512860 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02512860 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512860 */ cpu->r[1] = _t0;
|
|
/* 02512864 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02512864 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02512868 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512868 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251286C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02512870 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 02512870 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02512874 */ _t4 = cpu->r[12] + 0x00005BA0u;
|
|
/* 02512874 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02512878 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 02512878 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0251287C */ cpu->r[31] = cpu->r[4];
|
|
/* 02512880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512884 */ cpu->r[30] = cpu->r[3];
|
|
/* 02512888 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512888 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02512888 */ if (_t7) goto L_025128A8; else goto L_0251288C;
|
|
L_0251288C: ; // 0x251288c
|
|
/* 0251288C */ _t8 = cpu->r[1] + 0x00000054u;
|
|
/* 0251288C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02512890 */ _t9 = cpu->r[1] + 0x00000048u;
|
|
/* 02512890 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02512894 */ cpu->lr = cpu->r[0];
|
|
/* 02512898 */ _t10 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512898 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251289C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 025128A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025128A4 */ return;
|
|
L_025128A8: ; // 0x25128a8
|
|
/* 025128A8 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 025128A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025128AC */ _t12 = cpu->r[3] + 0x00000038u;
|
|
/* 025128AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025128B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025128B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 025128B4 */ if (_t14) goto L_025128B8; else goto L_02512A38;
|
|
L_025128B8: ; // 0x25128b8
|
|
/* 025128B8 */ Gambit_fn_026EE550(cpu);
|
|
/* 025128BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025128C0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128C0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 025128C0 */ if (_t16) goto L_02512A38; else goto L_025128C4;
|
|
L_025128C4: ; // 0x25128c4
|
|
/* 025128C4 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 025128C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025128C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 025128CC */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025128CC */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 025128D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 025128D4 */ _t19 = cpu->r[1] + 0x0000002Du;
|
|
/* 025128D4 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]);
|
|
/* 025128D8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128D8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 025128D8 */ if (_t21) goto L_02512A1C; else goto L_025128DC;
|
|
L_025128DC: ; // 0x25128dc
|
|
/* 025128DC */ cpu->r[10] = 0x101D0000u;
|
|
/* 025128E0 */ _t22 = cpu->r[10] + 0xFFFFAEA8u;
|
|
/* 025128E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025128E4 */ cpu->r[31] = cpu->r[10] + 0x0000005Cu;
|
|
/* 025128E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025128EC */ Gambit_fn_02836FFC(cpu);
|
|
/* 025128F0 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 025128F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025128F4 */ Gambit_fn_02C0F664(cpu);
|
|
/* 025128F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025128FC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128FC */ _t25 = _t24 & 0x00000001u;
|
|
/* 025128FC */ if (_t25) goto L_02512930; else goto L_02512900;
|
|
L_02512900: ; // 0x2512900
|
|
/* 02512900 */ _t26 = cpu->r[30] + 0x00000008u;
|
|
/* 02512900 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02512904 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512908 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251290C */ Gambit_fn_02513634(cpu);
|
|
/* 02512910 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02512914 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512914 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02512914 */ if (_t28) goto L_025129EC; else goto L_02512918;
|
|
L_02512918: ; // 0x2512918
|
|
/* 02512918 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251291C */ cpu->r[4] = 0x00000004u;
|
|
/* 02512920 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512924 */ cpu->r[0] = 0xFD220000u;
|
|
/* 02512928 */ cpu->r[0] = cpu->r[0] | 0x00008C2Cu;
|
|
/* 0251292C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0251292C */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_02512930: ; // 0x2512930
|
|
/* 02512930 */ _t30 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512930 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02512934 */ _t31 = cpu->r[30] + 0x00000014u;
|
|
/* 02512934 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02512938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[6]);
|
|
/* 0251293C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251293C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0251293C */ if (_t33) goto L_02512940; else goto L_02512A10;
|
|
L_02512940: ; // 0x2512940
|
|
/* 02512940 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02512940 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02512944 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 02512944 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02512948 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 02512948 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[9]);
|
|
/* 0251294C */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 0251294C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[13]);
|
|
/* 02512950 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 02512950 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02512954 */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 02512954 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02512958 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 02512958 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 0251295C */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0251295C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02512960 */ _t42 = cpu->r[1] + 0x0000002Du;
|
|
/* 02512960 */ cpu->r[10] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02512964 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512964 */ cpu->r[7] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02512968 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512968 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0251296C */ _t45 = cpu->r[1] + 0x00000034u;
|
|
/* 0251296C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02512970 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512970 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[11]);
|
|
/* 02512974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[6]);
|
|
/* 02512978 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02512978 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 0251297C */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251297C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0251297C */ if (_t49) goto L_02512980; else goto L_025129EC;
|
|
L_02512980: ; // 0x2512980
|
|
/* 02512980 */ _t50 = cpu->r[30] + 0x00000018u;
|
|
/* 02512980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02512984 */ _t51 = cpu->r[30] + 0x00000014u;
|
|
/* 02512984 */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02512988 */ cpu->r[0] = cpu->r[12] + cpu->r[11];
|
|
/* 0251298C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02512990 */ _t52 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512990 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 02512994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 02512998 */ _t53 = cpu->r[30] + 0x00000010u;
|
|
/* 02512998 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251299C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251299C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0251299C */ if (_t55) goto L_025129A4; else goto L_025129A0;
|
|
L_025129A0: ; // 0x25129a0
|
|
/* 025129A0 */ cpu->r[0] = cpu->r[0] - cpu->r[6];
|
|
L_025129A4: ; // 0x25129a4
|
|
/* 025129A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 025129A8 */ _t56 = cpu->r[8] + cpu->r[0];
|
|
/* 025129A8 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[7]);
|
|
/* 025129AC */ cpu->r[11] = cpu->r[8] + cpu->r[0];
|
|
/* 025129B0 */ _t57 = cpu->r[11] + 0x00000001u;
|
|
/* 025129B0 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[10]);
|
|
/* 025129B4 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 025129B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 025129B8 */ _t59 = cpu->r[11] + 0x00000004u;
|
|
/* 025129B8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 025129BC */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 025129BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 025129C0 */ _t61 = cpu->r[11] + 0x00000008u;
|
|
/* 025129C0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 025129C4 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 025129C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 025129C8 */ _t63 = cpu->r[11] + 0x0000000Cu;
|
|
/* 025129C8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 025129CC */ _t64 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025129CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 025129D0 */ _t65 = cpu->r[11] + 0x00000010u;
|
|
/* 025129D0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 025129D4 */ _t66 = cpu->r[1] + 0x00000020u;
|
|
/* 025129D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025129D8 */ cpu->r[7] = 0x00000000u;
|
|
/* 025129DC */ _t67 = cpu->r[11] + 0x00000014u;
|
|
/* 025129DC */ rbrew_write_f32(cpu->mem, _t67, cpu->f[10]);
|
|
/* 025129E0 */ _t68 = cpu->r[1] + 0x00000024u;
|
|
/* 025129E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025129E4 */ _t69 = cpu->r[11] + 0x0000001Cu;
|
|
/* 025129E4 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[7]);
|
|
/* 025129E8 */ _t70 = cpu->r[11] + 0x00000018u;
|
|
/* 025129E8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[12]);
|
|
L_025129EC: ; // 0x25129ec
|
|
/* 025129EC */ cpu->r[3] = cpu->r[31];
|
|
/* 025129F0 */ Gambit_fn_02837030(cpu);
|
|
/* 025129F4 */ _t71 = cpu->r[1] + 0x00000054u;
|
|
/* 025129F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025129F8 */ _t72 = cpu->r[1] + 0x00000048u;
|
|
/* 025129F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 025129FC */ cpu->lr = cpu->r[0];
|
|
/* 02512A00 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02512A04 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512A08 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512A0C */ return;
|
|
L_02512A10: ; // 0x2512a10
|
|
/* 02512A10 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512A14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512A18 */ Gambit_fn_02837030(cpu);
|
|
L_02512A1C: ; // 0x2512a1c
|
|
/* 02512A1C */ _t74 = cpu->r[1] + 0x00000054u;
|
|
/* 02512A1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02512A20 */ _t75 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02512A24 */ cpu->lr = cpu->r[0];
|
|
/* 02512A28 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02512A2C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512A30 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512A34 */ return;
|
|
L_02512A38: ; // 0x2512a38
|
|
/* 02512A38 */ _t77 = cpu->r[1] + 0x00000054u;
|
|
/* 02512A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02512A3C */ _t78 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02512A40 */ cpu->lr = cpu->r[0];
|
|
/* 02512A44 */ _t79 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02512A48 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512A4C */ cpu->r[3] = 0x00000000u;
|
|
/* 02512A50 */ return;
|
|
}
|
|
|
|
// fn_02512860 @ 0x2512860
|
|
void Gambit_fn_02512860(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79;
|
|
|
|
L_02512860: ; // 0x2512860
|
|
/* 02512860 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02512860 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512860 */ cpu->r[1] = _t0;
|
|
/* 02512864 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02512864 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02512868 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512868 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251286C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02512870 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 02512870 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02512874 */ _t4 = cpu->r[12] + 0x00005BA0u;
|
|
/* 02512874 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02512878 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 02512878 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0251287C */ cpu->r[31] = cpu->r[4];
|
|
/* 02512880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512884 */ cpu->r[30] = cpu->r[3];
|
|
/* 02512888 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512888 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02512888 */ if (_t7) goto L_025128A8; else goto L_0251288C;
|
|
L_0251288C: ; // 0x251288c
|
|
/* 0251288C */ _t8 = cpu->r[1] + 0x00000054u;
|
|
/* 0251288C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02512890 */ _t9 = cpu->r[1] + 0x00000048u;
|
|
/* 02512890 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02512894 */ cpu->lr = cpu->r[0];
|
|
/* 02512898 */ _t10 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512898 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251289C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 025128A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025128A4 */ return;
|
|
L_025128A8: ; // 0x25128a8
|
|
/* 025128A8 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 025128A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025128AC */ _t12 = cpu->r[3] + 0x00000038u;
|
|
/* 025128AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025128B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025128B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 025128B4 */ if (_t14) goto L_025128B8; else goto L_02512A38;
|
|
L_025128B8: ; // 0x25128b8
|
|
/* 025128B8 */ Gambit_fn_026EE550(cpu);
|
|
/* 025128BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025128C0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128C0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 025128C0 */ if (_t16) goto L_02512A38; else goto L_025128C4;
|
|
L_025128C4: ; // 0x25128c4
|
|
/* 025128C4 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 025128C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025128C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 025128CC */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025128CC */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 025128D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 025128D4 */ _t19 = cpu->r[1] + 0x0000002Du;
|
|
/* 025128D4 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]);
|
|
/* 025128D8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128D8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 025128D8 */ if (_t21) goto L_02512A1C; else goto L_025128DC;
|
|
L_025128DC: ; // 0x25128dc
|
|
/* 025128DC */ cpu->r[10] = 0x101D0000u;
|
|
/* 025128E0 */ _t22 = cpu->r[10] + 0xFFFFAEA8u;
|
|
/* 025128E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025128E4 */ cpu->r[31] = cpu->r[10] + 0x0000005Cu;
|
|
/* 025128E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025128EC */ Gambit_fn_02836FFC(cpu);
|
|
/* 025128F0 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 025128F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025128F4 */ Gambit_fn_02C0F664(cpu);
|
|
/* 025128F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025128FC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025128FC */ _t25 = _t24 & 0x00000001u;
|
|
/* 025128FC */ if (_t25) goto L_02512930; else goto L_02512900;
|
|
L_02512900: ; // 0x2512900
|
|
/* 02512900 */ _t26 = cpu->r[30] + 0x00000008u;
|
|
/* 02512900 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02512904 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512908 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251290C */ Gambit_fn_02513634(cpu);
|
|
/* 02512910 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02512914 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512914 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02512914 */ if (_t28) goto L_025129EC; else goto L_02512918;
|
|
L_02512918: ; // 0x2512918
|
|
/* 02512918 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251291C */ cpu->r[4] = 0x00000004u;
|
|
/* 02512920 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512924 */ cpu->r[0] = 0xFD220000u;
|
|
/* 02512928 */ cpu->r[0] = cpu->r[0] | 0x00008C2Cu;
|
|
/* 0251292C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0251292C */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_02512930: ; // 0x2512930
|
|
/* 02512930 */ _t30 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512930 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02512934 */ _t31 = cpu->r[30] + 0x00000014u;
|
|
/* 02512934 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02512938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[6]);
|
|
/* 0251293C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251293C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0251293C */ if (_t33) goto L_02512940; else goto L_02512A10;
|
|
L_02512940: ; // 0x2512940
|
|
/* 02512940 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02512940 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02512944 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 02512944 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02512948 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 02512948 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[9]);
|
|
/* 0251294C */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 0251294C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[13]);
|
|
/* 02512950 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 02512950 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02512954 */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 02512954 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02512958 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 02512958 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 0251295C */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0251295C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02512960 */ _t42 = cpu->r[1] + 0x0000002Du;
|
|
/* 02512960 */ cpu->r[10] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02512964 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512964 */ cpu->r[7] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02512968 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512968 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0251296C */ _t45 = cpu->r[1] + 0x00000034u;
|
|
/* 0251296C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02512970 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512970 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[11]);
|
|
/* 02512974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[6]);
|
|
/* 02512978 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02512978 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 0251297C */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251297C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0251297C */ if (_t49) goto L_02512980; else goto L_025129EC;
|
|
L_02512980: ; // 0x2512980
|
|
/* 02512980 */ _t50 = cpu->r[30] + 0x00000018u;
|
|
/* 02512980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02512984 */ _t51 = cpu->r[30] + 0x00000014u;
|
|
/* 02512984 */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02512988 */ cpu->r[0] = cpu->r[12] + cpu->r[11];
|
|
/* 0251298C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02512990 */ _t52 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512990 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 02512994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 02512998 */ _t53 = cpu->r[30] + 0x00000010u;
|
|
/* 02512998 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251299C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251299C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0251299C */ if (_t55) goto L_025129A4; else goto L_025129A0;
|
|
L_025129A0: ; // 0x25129a0
|
|
/* 025129A0 */ cpu->r[0] = cpu->r[0] - cpu->r[6];
|
|
L_025129A4: ; // 0x25129a4
|
|
/* 025129A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 025129A8 */ _t56 = cpu->r[8] + cpu->r[0];
|
|
/* 025129A8 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[7]);
|
|
/* 025129AC */ cpu->r[11] = cpu->r[8] + cpu->r[0];
|
|
/* 025129B0 */ _t57 = cpu->r[11] + 0x00000001u;
|
|
/* 025129B0 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[10]);
|
|
/* 025129B4 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 025129B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 025129B8 */ _t59 = cpu->r[11] + 0x00000004u;
|
|
/* 025129B8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 025129BC */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 025129BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 025129C0 */ _t61 = cpu->r[11] + 0x00000008u;
|
|
/* 025129C0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 025129C4 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 025129C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 025129C8 */ _t63 = cpu->r[11] + 0x0000000Cu;
|
|
/* 025129C8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 025129CC */ _t64 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025129CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 025129D0 */ _t65 = cpu->r[11] + 0x00000010u;
|
|
/* 025129D0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 025129D4 */ _t66 = cpu->r[1] + 0x00000020u;
|
|
/* 025129D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025129D8 */ cpu->r[7] = 0x00000000u;
|
|
/* 025129DC */ _t67 = cpu->r[11] + 0x00000014u;
|
|
/* 025129DC */ rbrew_write_f32(cpu->mem, _t67, cpu->f[10]);
|
|
/* 025129E0 */ _t68 = cpu->r[1] + 0x00000024u;
|
|
/* 025129E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025129E4 */ _t69 = cpu->r[11] + 0x0000001Cu;
|
|
/* 025129E4 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[7]);
|
|
/* 025129E8 */ _t70 = cpu->r[11] + 0x00000018u;
|
|
/* 025129E8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[12]);
|
|
L_025129EC: ; // 0x25129ec
|
|
/* 025129EC */ cpu->r[3] = cpu->r[31];
|
|
/* 025129F0 */ Gambit_fn_02837030(cpu);
|
|
/* 025129F4 */ _t71 = cpu->r[1] + 0x00000054u;
|
|
/* 025129F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025129F8 */ _t72 = cpu->r[1] + 0x00000048u;
|
|
/* 025129F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 025129FC */ cpu->lr = cpu->r[0];
|
|
/* 02512A00 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02512A04 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512A08 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512A0C */ return;
|
|
L_02512A10: ; // 0x2512a10
|
|
/* 02512A10 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512A14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512A18 */ Gambit_fn_02837030(cpu);
|
|
L_02512A1C: ; // 0x2512a1c
|
|
/* 02512A1C */ _t74 = cpu->r[1] + 0x00000054u;
|
|
/* 02512A1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02512A20 */ _t75 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02512A24 */ cpu->lr = cpu->r[0];
|
|
/* 02512A28 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02512A2C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512A30 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512A34 */ return;
|
|
L_02512A38: ; // 0x2512a38
|
|
/* 02512A38 */ _t77 = cpu->r[1] + 0x00000054u;
|
|
/* 02512A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02512A3C */ _t78 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02512A40 */ cpu->lr = cpu->r[0];
|
|
/* 02512A44 */ _t79 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02512A48 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512A4C */ cpu->r[3] = 0x00000000u;
|
|
/* 02512A50 */ return;
|
|
}
|
|
|
|
// fn_02512A54 @ 0x2512a54
|
|
void Gambit_fn_02512A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101;
|
|
|
|
L_02512A54: ; // 0x2512a54
|
|
/* 02512A54 */ cpu->r[0] = cpu->lr;
|
|
/* 02512A58 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02512A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512A58 */ cpu->r[1] = _t0;
|
|
/* 02512A5C */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02512A5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02512A60 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A60 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02512A64 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A64 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02512A68 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 02512A68 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02512A6C */ cpu->r[10] = 0x101C0000u;
|
|
/* 02512A70 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512A70 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02512A74 */ _t6 = cpu->r[10] + 0x00005BA0u;
|
|
/* 02512A74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02512A78 */ cpu->r[29] = cpu->r[6];
|
|
/* 02512A7C */ _t7 = cpu->r[10] + 0x00000044u;
|
|
/* 02512A7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02512A80 */ cpu->r[28] = cpu->r[5];
|
|
/* 02512A84 */ cpu->r[31] = cpu->r[4];
|
|
/* 02512A88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512A8C */ cpu->r[30] = cpu->r[3];
|
|
/* 02512A90 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512A90 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02512A90 */ if (_t9) goto L_02512AB8; else goto L_02512A94;
|
|
L_02512A94: ; // 0x2512a94
|
|
/* 02512A94 */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A94 */ cpu->r[28] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512A98 */ _t11 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A98 */ cpu->r[29] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512A9C */ _t12 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512A9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02512AA0 */ _t13 = cpu->r[1] + 0x00000050u;
|
|
/* 02512AA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02512AA4 */ cpu->lr = cpu->r[0];
|
|
/* 02512AA8 */ _t14 = cpu->r[1] + 0x00000054u;
|
|
/* 02512AA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02512AAC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512AB0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512AB4 */ return;
|
|
L_02512AB8: ; // 0x2512ab8
|
|
/* 02512AB8 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 02512AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02512ABC */ _t16 = cpu->r[3] + 0x00000038u;
|
|
/* 02512ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02512AC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512AC4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512AC4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02512AC4 */ if (_t18) goto L_02512AC8; else goto L_02512C88;
|
|
L_02512AC8: ; // 0x2512ac8
|
|
/* 02512AC8 */ Gambit_fn_026EE550(cpu);
|
|
/* 02512ACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512AD0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512AD0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02512AD0 */ if (_t20) goto L_02512C88; else goto L_02512AD4;
|
|
L_02512AD4: ; // 0x2512ad4
|
|
/* 02512AD4 */ _t21 = cpu->r[28] + 0x00000008u;
|
|
/* 02512AD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02512AD8 */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 02512AD8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02512ADC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02512ADC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 02512AE0 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512AE0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
/* 02512AE4 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 02512AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02512AE8 */ _t26 = cpu->r[28] + 0x00000004u;
|
|
/* 02512AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02512AEC */ _t27 = cpu->r[28] + 0x00000000u;
|
|
/* 02512AEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02512AF0 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 02512AF0 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02512AF4 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02512AF4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 02512AF8 */ cpu->r[0] = 0x00000002u;
|
|
/* 02512AFC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02512AFC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 02512B00 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02512B00 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 02512B04 */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 02512B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02512B08 */ _t33 = cpu->r[29] + 0x00000008u;
|
|
/* 02512B08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02512B0C */ _t34 = cpu->r[1] + 0x00000009u;
|
|
/* 02512B0C */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[31]);
|
|
/* 02512B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512B14 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02512B14 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 02512B18 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512B18 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02512B18 */ if (_t37) goto L_02512C64; else goto L_02512B1C;
|
|
L_02512B1C: ; // 0x2512b1c
|
|
/* 02512B1C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02512B20 */ _t38 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 02512B20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02512B24 */ cpu->r[31] = cpu->r[12] + 0x0000005Cu;
|
|
/* 02512B28 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512B2C */ Gambit_fn_02836FFC(cpu);
|
|
/* 02512B30 */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 02512B30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02512B34 */ Gambit_fn_02C0F664(cpu);
|
|
/* 02512B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512B3C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512B3C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02512B3C */ if (_t41) goto L_02512B70; else goto L_02512B40;
|
|
L_02512B40: ; // 0x2512b40
|
|
/* 02512B40 */ _t42 = cpu->r[30] + 0x00000008u;
|
|
/* 02512B40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02512B44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02512B48 */ cpu->r[5] = 0x00000000u;
|
|
/* 02512B4C */ Gambit_fn_02513634(cpu);
|
|
/* 02512B50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02512B54 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512B54 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02512B54 */ if (_t44) goto L_02512C2C; else goto L_02512B58;
|
|
L_02512B58: ; // 0x2512b58
|
|
/* 02512B58 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02512B5C */ cpu->r[4] = 0x00000004u;
|
|
/* 02512B60 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512B64 */ cpu->r[0] = 0xFD220000u;
|
|
/* 02512B68 */ cpu->r[0] = cpu->r[0] | 0x00008C2Cu;
|
|
/* 02512B6C */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 02512B6C */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
L_02512B70: ; // 0x2512b70
|
|
/* 02512B70 */ _t46 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512B70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02512B74 */ _t47 = cpu->r[30] + 0x00000014u;
|
|
/* 02512B74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02512B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 02512B7C */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512B7C */ _t49 = _t48 & 0x00000001u;
|
|
/* 02512B7C */ if (_t49) goto L_02512B80; else goto L_02512C58;
|
|
L_02512B80: ; // 0x2512b80
|
|
/* 02512B80 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02512B80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02512B84 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512B84 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02512B88 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512B88 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[9]);
|
|
/* 02512B8C */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512B8C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
/* 02512B90 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02512B90 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02512B94 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 02512B94 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02512B98 */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 02512B98 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 02512B9C */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 02512B9C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 02512BA0 */ _t58 = cpu->r[1] + 0x00000009u;
|
|
/* 02512BA0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t58);
|
|
/* 02512BA4 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02512BA4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t59);
|
|
/* 02512BA8 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 02512BA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02512BAC */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02512BAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02512BB0 */ _t62 = cpu->r[1] + 0x00000038u;
|
|
/* 02512BB0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[11]);
|
|
/* 02512BB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 02512BB8 */ _t63 = cpu->r[1] + 0x00000030u;
|
|
/* 02512BB8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 02512BBC */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512BBC */ _t65 = _t64 & 0x00000001u;
|
|
/* 02512BBC */ if (_t65) goto L_02512BC0; else goto L_02512C2C;
|
|
L_02512BC0: ; // 0x2512bc0
|
|
/* 02512BC0 */ _t66 = cpu->r[30] + 0x00000018u;
|
|
/* 02512BC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02512BC4 */ cpu->r[0] = cpu->r[5] + 0x00000001u;
|
|
/* 02512BC8 */ _t67 = cpu->r[30] + 0x00000014u;
|
|
/* 02512BC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02512BCC */ cpu->r[8] = cpu->r[11] + cpu->r[5];
|
|
/* 02512BD0 */ _t68 = cpu->r[30] + 0x00000010u;
|
|
/* 02512BD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02512BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 02512BD8 */ _t69 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512BD8 */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 02512BDC */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512BDC */ _t71 = _t70 & 0x00000001u;
|
|
/* 02512BDC */ if (_t71) goto L_02512BE4; else goto L_02512BE0;
|
|
L_02512BE0: ; // 0x2512be0
|
|
/* 02512BE0 */ cpu->r[8] = cpu->r[8] - cpu->r[6];
|
|
L_02512BE4: ; // 0x2512be4
|
|
/* 02512BE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 02512BE8 */ _t72 = cpu->r[9] + cpu->r[0];
|
|
/* 02512BE8 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[7]);
|
|
/* 02512BEC */ cpu->r[12] = cpu->r[9] + cpu->r[0];
|
|
/* 02512BF0 */ _t73 = cpu->r[12] + 0x00000001u;
|
|
/* 02512BF0 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[10]);
|
|
/* 02512BF4 */ _t74 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512BF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02512BF8 */ _t75 = cpu->r[12] + 0x00000004u;
|
|
/* 02512BF8 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 02512BFC */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 02512BFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02512C00 */ _t77 = cpu->r[12] + 0x00000008u;
|
|
/* 02512C00 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 02512C04 */ _t78 = cpu->r[1] + 0x00000034u;
|
|
/* 02512C04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02512C08 */ _t79 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02512C08 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 02512C0C */ _t80 = cpu->r[1] + 0x00000038u;
|
|
/* 02512C0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02512C10 */ _t81 = cpu->r[12] + 0x00000010u;
|
|
/* 02512C10 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 02512C14 */ _t82 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512C14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02512C18 */ cpu->r[8] = 0x00000000u;
|
|
/* 02512C1C */ _t83 = cpu->r[12] + 0x00000014u;
|
|
/* 02512C1C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 02512C20 */ _t84 = cpu->r[1] + 0x00000040u;
|
|
/* 02512C20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02512C24 */ _t85 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02512C24 */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[8]);
|
|
/* 02512C28 */ _t86 = cpu->r[12] + 0x00000018u;
|
|
/* 02512C28 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
L_02512C2C: ; // 0x2512c2c
|
|
/* 02512C2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02512C30 */ Gambit_fn_02837030(cpu);
|
|
/* 02512C34 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 02512C34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02512C38 */ _t88 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512C38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02512C3C */ _t89 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02512C40 */ _t90 = cpu->r[1] + 0x00000050u;
|
|
/* 02512C40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02512C44 */ cpu->lr = cpu->r[0];
|
|
/* 02512C48 */ _t91 = cpu->r[1] + 0x00000054u;
|
|
/* 02512C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02512C4C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512C50 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512C54 */ return;
|
|
L_02512C58: ; // 0x2512c58
|
|
/* 02512C58 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02512C60 */ Gambit_fn_02837030(cpu);
|
|
L_02512C64: ; // 0x2512c64
|
|
/* 02512C64 */ _t92 = cpu->r[1] + 0x00000048u;
|
|
/* 02512C64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02512C68 */ _t93 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512C68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02512C6C */ _t94 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02512C70 */ _t95 = cpu->r[1] + 0x00000050u;
|
|
/* 02512C70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02512C74 */ cpu->lr = cpu->r[0];
|
|
/* 02512C78 */ _t96 = cpu->r[1] + 0x00000054u;
|
|
/* 02512C78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02512C7C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512C80 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512C84 */ return;
|
|
L_02512C88: ; // 0x2512c88
|
|
/* 02512C88 */ _t97 = cpu->r[1] + 0x00000048u;
|
|
/* 02512C88 */ cpu->r[28] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02512C8C */ _t98 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512C8C */ cpu->r[29] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02512C90 */ _t99 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02512C94 */ _t100 = cpu->r[1] + 0x00000050u;
|
|
/* 02512C94 */ cpu->r[30] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02512C98 */ cpu->lr = cpu->r[0];
|
|
/* 02512C9C */ _t101 = cpu->r[1] + 0x00000054u;
|
|
/* 02512C9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02512CA0 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512CA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512CA8 */ return;
|
|
}
|
|
|
|
// fn_02512A58 @ 0x2512a58
|
|
void Gambit_fn_02512A58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101;
|
|
|
|
L_02512A58: ; // 0x2512a58
|
|
/* 02512A58 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02512A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512A58 */ cpu->r[1] = _t0;
|
|
/* 02512A5C */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02512A5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02512A60 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A60 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02512A64 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A64 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02512A68 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 02512A68 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02512A6C */ cpu->r[10] = 0x101C0000u;
|
|
/* 02512A70 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512A70 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02512A74 */ _t6 = cpu->r[10] + 0x00005BA0u;
|
|
/* 02512A74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02512A78 */ cpu->r[29] = cpu->r[6];
|
|
/* 02512A7C */ _t7 = cpu->r[10] + 0x00000044u;
|
|
/* 02512A7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02512A80 */ cpu->r[28] = cpu->r[5];
|
|
/* 02512A84 */ cpu->r[31] = cpu->r[4];
|
|
/* 02512A88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512A8C */ cpu->r[30] = cpu->r[3];
|
|
/* 02512A90 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512A90 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02512A90 */ if (_t9) goto L_02512AB8; else goto L_02512A94;
|
|
L_02512A94: ; // 0x2512a94
|
|
/* 02512A94 */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 02512A94 */ cpu->r[28] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512A98 */ _t11 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512A98 */ cpu->r[29] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512A9C */ _t12 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512A9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02512AA0 */ _t13 = cpu->r[1] + 0x00000050u;
|
|
/* 02512AA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02512AA4 */ cpu->lr = cpu->r[0];
|
|
/* 02512AA8 */ _t14 = cpu->r[1] + 0x00000054u;
|
|
/* 02512AA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02512AAC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512AB0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512AB4 */ return;
|
|
L_02512AB8: ; // 0x2512ab8
|
|
/* 02512AB8 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 02512AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02512ABC */ _t16 = cpu->r[3] + 0x00000038u;
|
|
/* 02512ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02512AC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512AC4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512AC4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02512AC4 */ if (_t18) goto L_02512AC8; else goto L_02512C88;
|
|
L_02512AC8: ; // 0x2512ac8
|
|
/* 02512AC8 */ Gambit_fn_026EE550(cpu);
|
|
/* 02512ACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512AD0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512AD0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02512AD0 */ if (_t20) goto L_02512C88; else goto L_02512AD4;
|
|
L_02512AD4: ; // 0x2512ad4
|
|
/* 02512AD4 */ _t21 = cpu->r[28] + 0x00000008u;
|
|
/* 02512AD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02512AD8 */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 02512AD8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02512ADC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02512ADC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 02512AE0 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512AE0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
/* 02512AE4 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 02512AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02512AE8 */ _t26 = cpu->r[28] + 0x00000004u;
|
|
/* 02512AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02512AEC */ _t27 = cpu->r[28] + 0x00000000u;
|
|
/* 02512AEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02512AF0 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 02512AF0 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02512AF4 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02512AF4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 02512AF8 */ cpu->r[0] = 0x00000002u;
|
|
/* 02512AFC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02512AFC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 02512B00 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02512B00 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 02512B04 */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 02512B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02512B08 */ _t33 = cpu->r[29] + 0x00000008u;
|
|
/* 02512B08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02512B0C */ _t34 = cpu->r[1] + 0x00000009u;
|
|
/* 02512B0C */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[31]);
|
|
/* 02512B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512B14 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02512B14 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 02512B18 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512B18 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02512B18 */ if (_t37) goto L_02512C64; else goto L_02512B1C;
|
|
L_02512B1C: ; // 0x2512b1c
|
|
/* 02512B1C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02512B20 */ _t38 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 02512B20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02512B24 */ cpu->r[31] = cpu->r[12] + 0x0000005Cu;
|
|
/* 02512B28 */ cpu->r[3] = cpu->r[31];
|
|
/* 02512B2C */ Gambit_fn_02836FFC(cpu);
|
|
/* 02512B30 */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 02512B30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02512B34 */ Gambit_fn_02C0F664(cpu);
|
|
/* 02512B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512B3C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512B3C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02512B3C */ if (_t41) goto L_02512B70; else goto L_02512B40;
|
|
L_02512B40: ; // 0x2512b40
|
|
/* 02512B40 */ _t42 = cpu->r[30] + 0x00000008u;
|
|
/* 02512B40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02512B44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02512B48 */ cpu->r[5] = 0x00000000u;
|
|
/* 02512B4C */ Gambit_fn_02513634(cpu);
|
|
/* 02512B50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02512B54 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512B54 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02512B54 */ if (_t44) goto L_02512C2C; else goto L_02512B58;
|
|
L_02512B58: ; // 0x2512b58
|
|
/* 02512B58 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02512B5C */ cpu->r[4] = 0x00000004u;
|
|
/* 02512B60 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512B64 */ cpu->r[0] = 0xFD220000u;
|
|
/* 02512B68 */ cpu->r[0] = cpu->r[0] | 0x00008C2Cu;
|
|
/* 02512B6C */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 02512B6C */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
L_02512B70: ; // 0x2512b70
|
|
/* 02512B70 */ _t46 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512B70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02512B74 */ _t47 = cpu->r[30] + 0x00000014u;
|
|
/* 02512B74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02512B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 02512B7C */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512B7C */ _t49 = _t48 & 0x00000001u;
|
|
/* 02512B7C */ if (_t49) goto L_02512B80; else goto L_02512C58;
|
|
L_02512B80: ; // 0x2512b80
|
|
/* 02512B80 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02512B80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02512B84 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512B84 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02512B88 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512B88 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[9]);
|
|
/* 02512B8C */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512B8C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
/* 02512B90 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02512B90 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02512B94 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 02512B94 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02512B98 */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 02512B98 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 02512B9C */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 02512B9C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 02512BA0 */ _t58 = cpu->r[1] + 0x00000009u;
|
|
/* 02512BA0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t58);
|
|
/* 02512BA4 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02512BA4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t59);
|
|
/* 02512BA8 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 02512BA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02512BAC */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02512BAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02512BB0 */ _t62 = cpu->r[1] + 0x00000038u;
|
|
/* 02512BB0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[11]);
|
|
/* 02512BB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 02512BB8 */ _t63 = cpu->r[1] + 0x00000030u;
|
|
/* 02512BB8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 02512BBC */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512BBC */ _t65 = _t64 & 0x00000001u;
|
|
/* 02512BBC */ if (_t65) goto L_02512BC0; else goto L_02512C2C;
|
|
L_02512BC0: ; // 0x2512bc0
|
|
/* 02512BC0 */ _t66 = cpu->r[30] + 0x00000018u;
|
|
/* 02512BC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02512BC4 */ cpu->r[0] = cpu->r[5] + 0x00000001u;
|
|
/* 02512BC8 */ _t67 = cpu->r[30] + 0x00000014u;
|
|
/* 02512BC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02512BCC */ cpu->r[8] = cpu->r[11] + cpu->r[5];
|
|
/* 02512BD0 */ _t68 = cpu->r[30] + 0x00000010u;
|
|
/* 02512BD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02512BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 02512BD8 */ _t69 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02512BD8 */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 02512BDC */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512BDC */ _t71 = _t70 & 0x00000001u;
|
|
/* 02512BDC */ if (_t71) goto L_02512BE4; else goto L_02512BE0;
|
|
L_02512BE0: ; // 0x2512be0
|
|
/* 02512BE0 */ cpu->r[8] = cpu->r[8] - cpu->r[6];
|
|
L_02512BE4: ; // 0x2512be4
|
|
/* 02512BE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 02512BE8 */ _t72 = cpu->r[9] + cpu->r[0];
|
|
/* 02512BE8 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[7]);
|
|
/* 02512BEC */ cpu->r[12] = cpu->r[9] + cpu->r[0];
|
|
/* 02512BF0 */ _t73 = cpu->r[12] + 0x00000001u;
|
|
/* 02512BF0 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[10]);
|
|
/* 02512BF4 */ _t74 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512BF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02512BF8 */ _t75 = cpu->r[12] + 0x00000004u;
|
|
/* 02512BF8 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 02512BFC */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 02512BFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02512C00 */ _t77 = cpu->r[12] + 0x00000008u;
|
|
/* 02512C00 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 02512C04 */ _t78 = cpu->r[1] + 0x00000034u;
|
|
/* 02512C04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02512C08 */ _t79 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02512C08 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 02512C0C */ _t80 = cpu->r[1] + 0x00000038u;
|
|
/* 02512C0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02512C10 */ _t81 = cpu->r[12] + 0x00000010u;
|
|
/* 02512C10 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 02512C14 */ _t82 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512C14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02512C18 */ cpu->r[8] = 0x00000000u;
|
|
/* 02512C1C */ _t83 = cpu->r[12] + 0x00000014u;
|
|
/* 02512C1C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 02512C20 */ _t84 = cpu->r[1] + 0x00000040u;
|
|
/* 02512C20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02512C24 */ _t85 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02512C24 */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[8]);
|
|
/* 02512C28 */ _t86 = cpu->r[12] + 0x00000018u;
|
|
/* 02512C28 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
L_02512C2C: ; // 0x2512c2c
|
|
/* 02512C2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02512C30 */ Gambit_fn_02837030(cpu);
|
|
/* 02512C34 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 02512C34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02512C38 */ _t88 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512C38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02512C3C */ _t89 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02512C40 */ _t90 = cpu->r[1] + 0x00000050u;
|
|
/* 02512C40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02512C44 */ cpu->lr = cpu->r[0];
|
|
/* 02512C48 */ _t91 = cpu->r[1] + 0x00000054u;
|
|
/* 02512C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02512C4C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512C50 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512C54 */ return;
|
|
L_02512C58: ; // 0x2512c58
|
|
/* 02512C58 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02512C60 */ Gambit_fn_02837030(cpu);
|
|
L_02512C64: ; // 0x2512c64
|
|
/* 02512C64 */ _t92 = cpu->r[1] + 0x00000048u;
|
|
/* 02512C64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02512C68 */ _t93 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512C68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02512C6C */ _t94 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02512C70 */ _t95 = cpu->r[1] + 0x00000050u;
|
|
/* 02512C70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02512C74 */ cpu->lr = cpu->r[0];
|
|
/* 02512C78 */ _t96 = cpu->r[1] + 0x00000054u;
|
|
/* 02512C78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02512C7C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512C80 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512C84 */ return;
|
|
L_02512C88: ; // 0x2512c88
|
|
/* 02512C88 */ _t97 = cpu->r[1] + 0x00000048u;
|
|
/* 02512C88 */ cpu->r[28] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02512C8C */ _t98 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512C8C */ cpu->r[29] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02512C90 */ _t99 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02512C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02512C94 */ _t100 = cpu->r[1] + 0x00000050u;
|
|
/* 02512C94 */ cpu->r[30] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02512C98 */ cpu->lr = cpu->r[0];
|
|
/* 02512C9C */ _t101 = cpu->r[1] + 0x00000054u;
|
|
/* 02512C9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02512CA0 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02512CA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512CA8 */ return;
|
|
}
|
|
|
|
// fn_02512CAC @ 0x2512cac
|
|
void Gambit_fn_02512CAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_02512CAC: ; // 0x2512cac
|
|
/* 02512CAC */ cpu->r[0] = cpu->lr;
|
|
/* 02512CB0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02512CB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512CB0 */ cpu->r[1] = _t0;
|
|
/* 02512CB4 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02512CB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02512CB8 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02512CBC */ cpu->r[11] = 0x101C0000u;
|
|
/* 02512CC0 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 02512CC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02512CC4 */ _t4 = cpu->r[11] + 0x00005BA0u;
|
|
/* 02512CC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02512CC8 */ _t5 = cpu->r[11] + 0x00000044u;
|
|
/* 02512CC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02512CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512CD0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02512CD4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512CD4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02512CD4 */ if (_t7) goto L_02512CF4; else goto L_02512CD8;
|
|
L_02512CD8: ; // 0x2512cd8
|
|
/* 02512CD8 */ _t8 = cpu->r[1] + 0x00000054u;
|
|
/* 02512CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02512CDC */ _t9 = cpu->r[1] + 0x00000048u;
|
|
/* 02512CDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02512CE0 */ cpu->lr = cpu->r[0];
|
|
/* 02512CE4 */ _t10 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512CE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512CE8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512CEC */ cpu->r[3] = 0x00000001u;
|
|
/* 02512CF0 */ return;
|
|
L_02512CF4: ; // 0x2512cf4
|
|
/* 02512CF4 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02512CF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512CF8 */ _t12 = cpu->r[3] + 0x00000038u;
|
|
/* 02512CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02512CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512D00 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D00 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02512D00 */ if (_t14) goto L_02512D04; else goto L_02512E80;
|
|
L_02512D04: ; // 0x2512d04
|
|
/* 02512D04 */ Gambit_fn_026EE550(cpu);
|
|
/* 02512D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512D0C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D0C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02512D0C */ if (_t16) goto L_02512E80; else goto L_02512D10;
|
|
L_02512D10: ; // 0x2512d10
|
|
/* 02512D10 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 02512D10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02512D14 */ cpu->r[0] = 0x00000003u;
|
|
/* 02512D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02512D1C */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512D1C */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 02512D20 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D20 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02512D20 */ if (_t20) goto L_02512E64; else goto L_02512D24;
|
|
L_02512D24: ; // 0x2512d24
|
|
/* 02512D24 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02512D28 */ _t21 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 02512D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02512D2C */ cpu->r[30] = cpu->r[12] + 0x0000005Cu;
|
|
/* 02512D30 */ cpu->r[3] = cpu->r[30];
|
|
/* 02512D34 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02512D38 */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 02512D38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02512D3C */ Gambit_fn_02C0F664(cpu);
|
|
/* 02512D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512D44 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D44 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02512D44 */ if (_t24) goto L_02512D78; else goto L_02512D48;
|
|
L_02512D48: ; // 0x2512d48
|
|
/* 02512D48 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 02512D48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02512D4C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512D50 */ cpu->r[5] = 0x00000000u;
|
|
/* 02512D54 */ Gambit_fn_02513634(cpu);
|
|
/* 02512D58 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02512D5C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D5C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02512D5C */ if (_t27) goto L_02512E34; else goto L_02512D60;
|
|
L_02512D60: ; // 0x2512d60
|
|
/* 02512D60 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02512D64 */ cpu->r[4] = 0x00000004u;
|
|
/* 02512D68 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512D6C */ cpu->r[8] = 0xFD230000u;
|
|
/* 02512D70 */ cpu->r[8] = cpu->r[8] + 0xFFFF8C2Cu;
|
|
/* 02512D74 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02512D74 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
L_02512D78: ; // 0x2512d78
|
|
/* 02512D78 */ _t29 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02512D78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02512D7C */ _t30 = cpu->r[31] + 0x00000014u;
|
|
/* 02512D7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02512D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[9]);
|
|
/* 02512D84 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512D84 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02512D84 */ if (_t32) goto L_02512D88; else goto L_02512E58;
|
|
L_02512D88: ; // 0x2512d88
|
|
/* 02512D88 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 02512D88 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02512D8C */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 02512D8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02512D90 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02512D90 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 02512D94 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 02512D94 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 02512D98 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 02512D98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02512D9C */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02512D9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02512DA0 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 02512DA0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 02512DA4 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02512DA4 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 02512DA8 */ _t41 = cpu->r[1] + 0x0000002Du;
|
|
/* 02512DA8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t41);
|
|
/* 02512DAC */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512DAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02512DB0 */ _t43 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512DB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02512DB4 */ _t44 = cpu->r[1] + 0x00000034u;
|
|
/* 02512DB4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02512DB8 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512DB8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[11]);
|
|
/* 02512DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[9]);
|
|
/* 02512DC0 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 02512DC0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[10]);
|
|
/* 02512DC4 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512DC4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02512DC4 */ if (_t48) goto L_02512DC8; else goto L_02512E34;
|
|
L_02512DC8: ; // 0x2512dc8
|
|
/* 02512DC8 */ _t49 = cpu->r[31] + 0x00000018u;
|
|
/* 02512DC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02512DCC */ cpu->r[10] = cpu->r[7] + 0x00000001u;
|
|
/* 02512DD0 */ _t50 = cpu->r[31] + 0x00000014u;
|
|
/* 02512DD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02512DD4 */ cpu->r[12] = cpu->r[11] + cpu->r[7];
|
|
/* 02512DD8 */ _t51 = cpu->r[31] + 0x00000010u;
|
|
/* 02512DD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02512DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 02512DE0 */ _t52 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02512DE0 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 02512DE4 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512DE4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02512DE4 */ if (_t54) goto L_02512DEC; else goto L_02512DE8;
|
|
L_02512DE8: ; // 0x2512de8
|
|
/* 02512DE8 */ cpu->r[12] = cpu->r[12] - cpu->r[9];
|
|
L_02512DEC: ; // 0x2512dec
|
|
/* 02512DEC */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 02512DF0 */ _t55 = cpu->r[7] + cpu->r[12];
|
|
/* 02512DF0 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[0]);
|
|
/* 02512DF4 */ cpu->r[11] = cpu->r[7] + cpu->r[12];
|
|
/* 02512DF8 */ _t56 = cpu->r[11] + 0x00000001u;
|
|
/* 02512DF8 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[6]);
|
|
/* 02512DFC */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 02512DFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02512E00 */ _t58 = cpu->r[11] + 0x00000004u;
|
|
/* 02512E00 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 02512E04 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 02512E04 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02512E08 */ _t60 = cpu->r[11] + 0x00000008u;
|
|
/* 02512E08 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 02512E0C */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 02512E0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02512E10 */ _t62 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02512E10 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 02512E14 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512E14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02512E18 */ _t64 = cpu->r[11] + 0x00000010u;
|
|
/* 02512E18 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 02512E1C */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 02512E1C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02512E20 */ cpu->r[0] = 0x00000000u;
|
|
/* 02512E24 */ _t66 = cpu->r[11] + 0x00000014u;
|
|
/* 02512E24 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[10]);
|
|
/* 02512E28 */ _t67 = cpu->r[1] + 0x00000024u;
|
|
/* 02512E28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02512E2C */ _t68 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02512E2C */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[0]);
|
|
/* 02512E30 */ _t69 = cpu->r[11] + 0x00000018u;
|
|
/* 02512E30 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[12]);
|
|
L_02512E34: ; // 0x2512e34
|
|
/* 02512E34 */ cpu->r[3] = cpu->r[30];
|
|
/* 02512E38 */ Gambit_fn_02837030(cpu);
|
|
/* 02512E3C */ _t70 = cpu->r[1] + 0x00000054u;
|
|
/* 02512E3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02512E40 */ _t71 = cpu->r[1] + 0x00000048u;
|
|
/* 02512E40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02512E44 */ cpu->lr = cpu->r[0];
|
|
/* 02512E48 */ _t72 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512E48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02512E4C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512E50 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512E54 */ return;
|
|
L_02512E58: ; // 0x2512e58
|
|
/* 02512E58 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512E5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02512E60 */ Gambit_fn_02837030(cpu);
|
|
L_02512E64: ; // 0x2512e64
|
|
/* 02512E64 */ _t73 = cpu->r[1] + 0x00000054u;
|
|
/* 02512E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02512E68 */ _t74 = cpu->r[1] + 0x00000048u;
|
|
/* 02512E68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02512E6C */ cpu->lr = cpu->r[0];
|
|
/* 02512E70 */ _t75 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512E70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02512E74 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512E78 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512E7C */ return;
|
|
L_02512E80: ; // 0x2512e80
|
|
/* 02512E80 */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 02512E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02512E84 */ _t77 = cpu->r[1] + 0x00000048u;
|
|
/* 02512E84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02512E88 */ cpu->lr = cpu->r[0];
|
|
/* 02512E8C */ _t78 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512E8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02512E90 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512E94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512E98 */ return;
|
|
}
|
|
|
|
// fn_02512CB0 @ 0x2512cb0
|
|
void Gambit_fn_02512CB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_02512CB0: ; // 0x2512cb0
|
|
/* 02512CB0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02512CB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512CB0 */ cpu->r[1] = _t0;
|
|
/* 02512CB4 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02512CB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02512CB8 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02512CBC */ cpu->r[11] = 0x101C0000u;
|
|
/* 02512CC0 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 02512CC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02512CC4 */ _t4 = cpu->r[11] + 0x00005BA0u;
|
|
/* 02512CC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02512CC8 */ _t5 = cpu->r[11] + 0x00000044u;
|
|
/* 02512CC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02512CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512CD0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02512CD4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512CD4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02512CD4 */ if (_t7) goto L_02512CF4; else goto L_02512CD8;
|
|
L_02512CD8: ; // 0x2512cd8
|
|
/* 02512CD8 */ _t8 = cpu->r[1] + 0x00000054u;
|
|
/* 02512CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02512CDC */ _t9 = cpu->r[1] + 0x00000048u;
|
|
/* 02512CDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02512CE0 */ cpu->lr = cpu->r[0];
|
|
/* 02512CE4 */ _t10 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512CE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02512CE8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512CEC */ cpu->r[3] = 0x00000001u;
|
|
/* 02512CF0 */ return;
|
|
L_02512CF4: ; // 0x2512cf4
|
|
/* 02512CF4 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02512CF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02512CF8 */ _t12 = cpu->r[3] + 0x00000038u;
|
|
/* 02512CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02512CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02512D00 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D00 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02512D00 */ if (_t14) goto L_02512D04; else goto L_02512E80;
|
|
L_02512D04: ; // 0x2512d04
|
|
/* 02512D04 */ Gambit_fn_026EE550(cpu);
|
|
/* 02512D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512D0C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D0C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02512D0C */ if (_t16) goto L_02512E80; else goto L_02512D10;
|
|
L_02512D10: ; // 0x2512d10
|
|
/* 02512D10 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 02512D10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02512D14 */ cpu->r[0] = 0x00000003u;
|
|
/* 02512D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02512D1C */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512D1C */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 02512D20 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D20 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02512D20 */ if (_t20) goto L_02512E64; else goto L_02512D24;
|
|
L_02512D24: ; // 0x2512d24
|
|
/* 02512D24 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02512D28 */ _t21 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 02512D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02512D2C */ cpu->r[30] = cpu->r[12] + 0x0000005Cu;
|
|
/* 02512D30 */ cpu->r[3] = cpu->r[30];
|
|
/* 02512D34 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02512D38 */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 02512D38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02512D3C */ Gambit_fn_02C0F664(cpu);
|
|
/* 02512D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02512D44 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D44 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02512D44 */ if (_t24) goto L_02512D78; else goto L_02512D48;
|
|
L_02512D48: ; // 0x2512d48
|
|
/* 02512D48 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 02512D48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02512D4C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512D50 */ cpu->r[5] = 0x00000000u;
|
|
/* 02512D54 */ Gambit_fn_02513634(cpu);
|
|
/* 02512D58 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02512D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02512D5C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02512D5C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02512D5C */ if (_t27) goto L_02512E34; else goto L_02512D60;
|
|
L_02512D60: ; // 0x2512d60
|
|
/* 02512D60 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02512D64 */ cpu->r[4] = 0x00000004u;
|
|
/* 02512D68 */ Gambit_fn_02C89380(cpu);
|
|
/* 02512D6C */ cpu->r[8] = 0xFD230000u;
|
|
/* 02512D70 */ cpu->r[8] = cpu->r[8] + 0xFFFF8C2Cu;
|
|
/* 02512D74 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02512D74 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
L_02512D78: ; // 0x2512d78
|
|
/* 02512D78 */ _t29 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02512D78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02512D7C */ _t30 = cpu->r[31] + 0x00000014u;
|
|
/* 02512D7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02512D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[9]);
|
|
/* 02512D84 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512D84 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02512D84 */ if (_t32) goto L_02512D88; else goto L_02512E58;
|
|
L_02512D88: ; // 0x2512d88
|
|
/* 02512D88 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 02512D88 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02512D8C */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 02512D8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02512D90 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02512D90 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 02512D94 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 02512D94 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 02512D98 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 02512D98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02512D9C */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02512D9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02512DA0 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 02512DA0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 02512DA4 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02512DA4 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 02512DA8 */ _t41 = cpu->r[1] + 0x0000002Du;
|
|
/* 02512DA8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t41);
|
|
/* 02512DAC */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02512DAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02512DB0 */ _t43 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02512DB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02512DB4 */ _t44 = cpu->r[1] + 0x00000034u;
|
|
/* 02512DB4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02512DB8 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512DB8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[11]);
|
|
/* 02512DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[9]);
|
|
/* 02512DC0 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 02512DC0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[10]);
|
|
/* 02512DC4 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512DC4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02512DC4 */ if (_t48) goto L_02512DC8; else goto L_02512E34;
|
|
L_02512DC8: ; // 0x2512dc8
|
|
/* 02512DC8 */ _t49 = cpu->r[31] + 0x00000018u;
|
|
/* 02512DC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02512DCC */ cpu->r[10] = cpu->r[7] + 0x00000001u;
|
|
/* 02512DD0 */ _t50 = cpu->r[31] + 0x00000014u;
|
|
/* 02512DD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02512DD4 */ cpu->r[12] = cpu->r[11] + cpu->r[7];
|
|
/* 02512DD8 */ _t51 = cpu->r[31] + 0x00000010u;
|
|
/* 02512DD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02512DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 02512DE0 */ _t52 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02512DE0 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 02512DE4 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02512DE4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02512DE4 */ if (_t54) goto L_02512DEC; else goto L_02512DE8;
|
|
L_02512DE8: ; // 0x2512de8
|
|
/* 02512DE8 */ cpu->r[12] = cpu->r[12] - cpu->r[9];
|
|
L_02512DEC: ; // 0x2512dec
|
|
/* 02512DEC */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000005u, 0x00000000u, 0x0000001Au);
|
|
/* 02512DF0 */ _t55 = cpu->r[7] + cpu->r[12];
|
|
/* 02512DF0 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[0]);
|
|
/* 02512DF4 */ cpu->r[11] = cpu->r[7] + cpu->r[12];
|
|
/* 02512DF8 */ _t56 = cpu->r[11] + 0x00000001u;
|
|
/* 02512DF8 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[6]);
|
|
/* 02512DFC */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 02512DFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02512E00 */ _t58 = cpu->r[11] + 0x00000004u;
|
|
/* 02512E00 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 02512E04 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 02512E04 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02512E08 */ _t60 = cpu->r[11] + 0x00000008u;
|
|
/* 02512E08 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 02512E0C */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 02512E0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02512E10 */ _t62 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02512E10 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 02512E14 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02512E14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02512E18 */ _t64 = cpu->r[11] + 0x00000010u;
|
|
/* 02512E18 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 02512E1C */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 02512E1C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02512E20 */ cpu->r[0] = 0x00000000u;
|
|
/* 02512E24 */ _t66 = cpu->r[11] + 0x00000014u;
|
|
/* 02512E24 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[10]);
|
|
/* 02512E28 */ _t67 = cpu->r[1] + 0x00000024u;
|
|
/* 02512E28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02512E2C */ _t68 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02512E2C */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[0]);
|
|
/* 02512E30 */ _t69 = cpu->r[11] + 0x00000018u;
|
|
/* 02512E30 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[12]);
|
|
L_02512E34: ; // 0x2512e34
|
|
/* 02512E34 */ cpu->r[3] = cpu->r[30];
|
|
/* 02512E38 */ Gambit_fn_02837030(cpu);
|
|
/* 02512E3C */ _t70 = cpu->r[1] + 0x00000054u;
|
|
/* 02512E3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02512E40 */ _t71 = cpu->r[1] + 0x00000048u;
|
|
/* 02512E40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02512E44 */ cpu->lr = cpu->r[0];
|
|
/* 02512E48 */ _t72 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512E48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02512E4C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512E50 */ cpu->r[3] = 0x00000001u;
|
|
/* 02512E54 */ return;
|
|
L_02512E58: ; // 0x2512e58
|
|
/* 02512E58 */ Gambit_fn_027F6344(cpu);
|
|
/* 02512E5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02512E60 */ Gambit_fn_02837030(cpu);
|
|
L_02512E64: ; // 0x2512e64
|
|
/* 02512E64 */ _t73 = cpu->r[1] + 0x00000054u;
|
|
/* 02512E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02512E68 */ _t74 = cpu->r[1] + 0x00000048u;
|
|
/* 02512E68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02512E6C */ cpu->lr = cpu->r[0];
|
|
/* 02512E70 */ _t75 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512E70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02512E74 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512E78 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512E7C */ return;
|
|
L_02512E80: ; // 0x2512e80
|
|
/* 02512E80 */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 02512E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02512E84 */ _t77 = cpu->r[1] + 0x00000048u;
|
|
/* 02512E84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02512E88 */ cpu->lr = cpu->r[0];
|
|
/* 02512E8C */ _t78 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02512E8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02512E90 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02512E94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02512E98 */ return;
|
|
}
|
|
|
|
// fn_02512E9C @ 0x2512e9c
|
|
void Gambit_fn_02512E9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02512E9C: ; // 0x2512e9c
|
|
/* 02512E9C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02512E9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02512EA0 */ goto L_026EE48C;
|
|
L_026EE48C: ; // 0x26ee48c
|
|
/* 026EE48C */ cpu->r[0] = cpu->lr;
|
|
/* 026EE490 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026EE490 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026EE490 */ cpu->r[1] = _t1;
|
|
/* 026EE494 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 026EE494 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 026EE498 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE498 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 026EE49C */ cpu->r[12] = 0x101D0000u;
|
|
/* 026EE4A0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE4A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 026EE4A4 */ _t5 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 026EE4A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026EE4A8 */ cpu->r[30] = cpu->r[12] + 0x0000005Cu;
|
|
/* 026EE4AC */ cpu->r[31] = cpu->r[3];
|
|
/* 026EE4B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 026EE4B4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 026EE4B8 */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 026EE4B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026EE4BC */ Gambit_fn_02C0C928(cpu);
|
|
/* 026EE4C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 026EE4C4 */ Gambit_fn_02837030(cpu);
|
|
/* 026EE4C8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE4C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026EE4CC */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 026EE4CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026EE4D0 */ cpu->lr = cpu->r[0];
|
|
/* 026EE4D4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE4D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026EE4D8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE4DC */ return;
|
|
}
|
|
|
|
// fn_02512EA4 @ 0x2512ea4
|
|
void Gambit_fn_02512EA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02512EA4: ; // 0x2512ea4
|
|
/* 02512EA4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02512EA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02512EA8 */ goto L_026EDF40;
|
|
L_026EDF40: ; // 0x26edf40
|
|
/* 026EDF40 */ cpu->r[0] = cpu->lr;
|
|
/* 026EDF44 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026EDF44 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026EDF44 */ cpu->r[1] = _t1;
|
|
/* 026EDF48 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 026EDF48 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 026EDF4C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EDF4C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 026EDF50 */ cpu->r[12] = 0x101D0000u;
|
|
/* 026EDF54 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 026EDF54 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 026EDF58 */ _t5 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 026EDF58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026EDF5C */ cpu->r[30] = cpu->r[12] + 0x0000005Cu;
|
|
/* 026EDF60 */ cpu->r[31] = cpu->r[3];
|
|
/* 026EDF64 */ cpu->r[3] = cpu->r[30];
|
|
/* 026EDF68 */ Gambit_fn_02836FFC(cpu);
|
|
/* 026EDF6C */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 026EDF6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026EDF70 */ Gambit_fn_02C0C9F8(cpu);
|
|
/* 026EDF74 */ cpu->r[3] = cpu->r[30];
|
|
/* 026EDF78 */ Gambit_fn_02837030(cpu);
|
|
/* 026EDF7C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 026EDF7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026EDF80 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 026EDF80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026EDF84 */ cpu->lr = cpu->r[0];
|
|
/* 026EDF88 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EDF88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026EDF8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EDF90 */ return;
|
|
}
|
|
|
|
// fn_02512EAC @ 0x2512eac
|
|
void Gambit_fn_02512EAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02512EAC: ; // 0x2512eac
|
|
/* 02512EAC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02512EAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02512EB0 */ goto L_026EE4E0;
|
|
L_026EE4E0: ; // 0x26ee4e0
|
|
/* 026EE4E0 */ cpu->r[0] = cpu->lr;
|
|
/* 026EE4E4 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026EE4E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026EE4E4 */ cpu->r[1] = _t1;
|
|
/* 026EE4E8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE4E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026EE4EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE4EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026EE4F0 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 026EE4F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026EE4F4 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 026EE4F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026EE4F8 */ cpu->ctr = cpu->r[12];
|
|
/* 026EE4FC */ cpu->r[31] = cpu->r[3];
|
|
/* 026EE500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026EE504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026EE508 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026EE508 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026EE508 */ if (_t7) goto L_026EE50C; else goto L_026EE524;
|
|
L_026EE50C: ; // 0x26ee50c
|
|
/* 026EE50C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026EE510 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE510 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026EE514 */ cpu->lr = cpu->r[0];
|
|
/* 026EE518 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE51C */ cpu->r[3] = 0x00000000u;
|
|
/* 026EE520 */ return;
|
|
L_026EE524: ; // 0x26ee524
|
|
/* 026EE524 */ _t10 = cpu->r[31] + 0x00000034u;
|
|
/* 026EE524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026EE528 */ _t11 = cpu->r[12] + 0x000000F0u;
|
|
/* 026EE528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026EE52C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 026EE530 */ cpu->r[0] = cpu->r[0] ^ 0x00000010u;
|
|
/* 026EE534 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 026EE538 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 026EE53C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026EE540 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE540 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026EE544 */ cpu->lr = cpu->r[0];
|
|
/* 026EE548 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE54C */ return;
|
|
}
|
|
|
|
// fn_02512EB4 @ 0x2512eb4
|
|
void Gambit_fn_02512EB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02512EB4: ; // 0x2512eb4
|
|
/* 02512EB4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02512EB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02512EB8 */ goto L_026EE550;
|
|
L_026EE550: ; // 0x26ee550
|
|
/* 026EE550 */ cpu->r[0] = cpu->lr;
|
|
/* 026EE554 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026EE554 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026EE554 */ cpu->r[1] = _t1;
|
|
/* 026EE558 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE558 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026EE55C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE55C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026EE560 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 026EE560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026EE564 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 026EE564 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026EE568 */ cpu->ctr = cpu->r[12];
|
|
/* 026EE56C */ cpu->r[31] = cpu->r[3];
|
|
/* 026EE570 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026EE574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026EE578 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026EE578 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026EE578 */ if (_t7) goto L_026EE57C; else goto L_026EE594;
|
|
L_026EE57C: ; // 0x26ee57c
|
|
/* 026EE57C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE57C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026EE580 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE580 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026EE584 */ cpu->lr = cpu->r[0];
|
|
/* 026EE588 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE58C */ cpu->r[3] = 0x00000000u;
|
|
/* 026EE590 */ return;
|
|
L_026EE594: ; // 0x26ee594
|
|
/* 026EE594 */ _t10 = cpu->r[31] + 0x00000034u;
|
|
/* 026EE594 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026EE598 */ _t11 = cpu->r[12] + 0x000000F0u;
|
|
/* 026EE598 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026EE59C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 026EE5A0 */ cpu->r[0] = cpu->r[0] ^ 0x00000030u;
|
|
/* 026EE5A4 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 026EE5A8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 026EE5AC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026EE5B0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE5B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026EE5B4 */ cpu->lr = cpu->r[0];
|
|
/* 026EE5B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE5BC */ return;
|
|
}
|
|
|
|
// fn_02512EBC @ 0x2512ebc
|
|
void Gambit_fn_02512EBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02512EBC: ; // 0x2512ebc
|
|
/* 02512EBC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02512EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02512EC0 */ goto L_026EE5C0;
|
|
L_026EE5C0: ; // 0x26ee5c0
|
|
/* 026EE5C0 */ cpu->r[0] = cpu->lr;
|
|
/* 026EE5C4 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026EE5C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026EE5C4 */ cpu->r[1] = _t1;
|
|
/* 026EE5C8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE5C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026EE5CC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE5CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026EE5D0 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 026EE5D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026EE5D4 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 026EE5D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026EE5D8 */ cpu->ctr = cpu->r[12];
|
|
/* 026EE5DC */ cpu->r[31] = cpu->r[3];
|
|
/* 026EE5E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026EE5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026EE5E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026EE5E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026EE5E8 */ if (_t7) goto L_026EE5EC; else goto L_026EE604;
|
|
L_026EE5EC: ; // 0x26ee5ec
|
|
/* 026EE5EC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE5EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026EE5F0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE5F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026EE5F4 */ cpu->lr = cpu->r[0];
|
|
/* 026EE5F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE5FC */ cpu->r[3] = 0x00000000u;
|
|
/* 026EE600 */ return;
|
|
L_026EE604: ; // 0x26ee604
|
|
/* 026EE604 */ _t10 = cpu->r[31] + 0x00000034u;
|
|
/* 026EE604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026EE608 */ _t11 = cpu->r[12] + 0x000000F0u;
|
|
/* 026EE608 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026EE60C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 026EE610 */ cpu->r[0] = cpu->r[0] ^ 0x00000020u;
|
|
/* 026EE614 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 026EE618 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 026EE61C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 026EE61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026EE620 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EE620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026EE624 */ cpu->lr = cpu->r[0];
|
|
/* 026EE628 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EE62C */ return;
|
|
}
|
|
|
|
// fn_02512EC4 @ 0x2512ec4
|
|
void Gambit_fn_02512EC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_02512EC4: ; // 0x2512ec4
|
|
/* 02512EC4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 02512EC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02512EC4 */ cpu->r[1] = _t0;
|
|
/* 02512EC8 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02512EC8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 02512ECC */ /* nop */
|
|
/* 02512ED0 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02512ED0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02512ED4 */ /* nop */
|
|
/* 02512ED8 */ /* nop */
|
|
/* 02512EDC */ cpu->r[0] = cpu->lr;
|
|
/* 02512EE0 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 02512EE0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02512EE4 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 02512EE4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 02512EE8 */ /* nop */
|
|
/* 02512EEC */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 02512EEC */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 02512EF0 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 02512EF0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 02512EF4 */ /* nop */
|
|
/* 02512EF8 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 02512EF8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 02512EFC */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 02512F00 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 02512F00 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 02512F04 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02512F08 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02512F0C */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02512F0C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02512F10 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 02512F14 */ _t10 = cpu->r[7] + 0xFFFF96CCu;
|
|
/* 02512F14 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02512F14 */ cpu->r[7] = _t10;
|
|
/* 02512F18 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02512F1C */ cpu->r[10] = 0x101F0000u;
|
|
/* 02512F20 */ _t11 = cpu->r[5] + 0xFFFF96D4u;
|
|
/* 02512F20 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 02512F20 */ cpu->r[5] = _t11;
|
|
/* 02512F24 */ cpu->r[10] = cpu->r[10] + 0xFFFF96E4u;
|
|
/* 02512F28 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 02512F28 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02512F2C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02512F30 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 02512F30 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 02512F34 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 02512F38 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 02512F38 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 02512F3C */ cpu->r[12] = 0x101F0000u;
|
|
/* 02512F40 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 02512F40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02512F44 */ cpu->r[31] = 0x101F0000u;
|
|
/* 02512F48 */ _t16 = cpu->r[12] + 0xFFFF96DCu;
|
|
/* 02512F48 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 02512F48 */ cpu->r[12] = _t16;
|
|
/* 02512F4C */ cpu->r[11] = 0x00000002u;
|
|
/* 02512F50 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 02512F50 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02512F54 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02512F54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02512F58 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02512F58 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 02512F5C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02512F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02512F60 */ _t21 = cpu->r[31] + 0xFFFF96F8u;
|
|
/* 02512F60 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02512F60 */ cpu->r[31] = _t21;
|
|
/* 02512F64 */ cpu->r[0] = 0x00000004u;
|
|
/* 02512F68 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 02512F68 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 02512F6C */ cpu->r[12] = 0x101F0000u;
|
|
/* 02512F70 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02512F70 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02512F74 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 02512F74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02512F74 */ cpu->r[12] = _t24;
|
|
/* 02512F78 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 02512F78 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 02512F7C */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 02512F7C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02512F80 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 02512F80 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02512F84 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02512F84 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 02512F88 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 02512F88 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 02512F8C */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 02512F8C */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 02512F90 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02512F94 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 02512F94 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 02512F98 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02512F9C */ _t32 = cpu->r[7] + 0xFFFF96F4u;
|
|
/* 02512F9C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 02512FA0 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 02512FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02512FA0 */ cpu->r[6] = _t33;
|
|
/* 02512FA4 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 02512FA4 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 02512FA8 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 02512FA8 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 02512FAC */ cpu->r[5] = 0x101F0000u;
|
|
/* 02512FB0 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02512FB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02512FB4 */ _t37 = cpu->r[5] + 0xFFFF96ECu;
|
|
/* 02512FB4 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 02512FB4 */ cpu->r[5] = _t37;
|
|
/* 02512FB8 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 02512FB8 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 02512FBC */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 02512FBC */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 02512FC0 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 02512FC0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02512FC4 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02512FC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02512FC8 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 02512FC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02512FCC */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 02512FCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02512FD0 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02512FD0 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 02512FD4 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 02512FD4 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 02512FD8 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 02512FD8 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 02512FDC */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02512FDC */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 02512FE0 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 02512FE0 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 02512FE4 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 02512FE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02512FE8 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02512FE8 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02512FEC */ cpu->r[11] = 0x101F0000u;
|
|
/* 02512FF0 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 02512FF0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02512FF4 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 02512FF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02512FF4 */ cpu->r[11] = _t52;
|
|
/* 02512FF8 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 02512FF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02512FFC */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02512FFC */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02513000 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 02513000 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02513004 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 02513004 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 02513008 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 02513008 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0251300C */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 0251300C */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 02513010 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02513014 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02513014 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 02513018 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0251301C */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 0251301C */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 02513020 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 02513024 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 02513024 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02513024 */ cpu->r[12] = _t61;
|
|
/* 02513028 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 02513028 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0251302C */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0251302C */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02513030 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 02513030 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 02513034 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 02513034 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 02513038 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 02513038 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 0251303C */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 0251303C */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 02513040 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 02513040 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02513044 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02513044 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02513048 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 02513048 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 0251304C */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0251304C */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 02513050 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02513050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02513054 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02513054 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 02513058 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02513058 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0251305C */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 0251305C */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 02513060 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 02513060 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 02513064 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 02513064 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 02513068 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 02513068 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 0251306C */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 0251306C */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02513070 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02513074 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02513074 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 02513078 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 02513078 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02513078 */ cpu->r[10] = _t81;
|
|
/* 0251307C */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 0251307C */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02513080 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 02513080 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 02513084 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 02513084 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 02513088 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 02513088 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0251308C */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 0251308C */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 02513090 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02513094 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 02513094 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02513098 */ _t88 = cpu->r[12] + 0xFFFFFA04u;
|
|
/* 02513098 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0251309C */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0251309C */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 025130A0 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 025130A0 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 025130A4 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 025130A4 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 025130A8 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 025130A8 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 025130AC */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 025130AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 025130B0 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 025130B0 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 025130B4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025130B8 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 025130B8 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 025130BC */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 025130C0 */ _t96 = cpu->r[12] + 0xFFFFF9FCu;
|
|
/* 025130C0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 025130C4 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 025130C4 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 025130C8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025130CC */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 025130CC */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 025130D0 */ _t99 = cpu->r[12] + 0xFFFFF9F8u;
|
|
/* 025130D0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 025130D4 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025130D8 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 025130D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 025130DC */ _t101 = cpu->r[11] + 0xFFFFFA00u;
|
|
/* 025130DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 025130E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 025130E4 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 025130E4 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 025130E8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025130E8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 025130E8 */ if (_t104) goto L_025130EC; else goto L_025130FC;
|
|
L_025130EC: ; // 0x25130ec
|
|
/* 025130EC */ cpu->r[3] = 0x00000010u;
|
|
/* 025130F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025130F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025130F8 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025130F8 */ _t106 = _t105 & 0x00000001u;
|
|
/* 025130F8 */ if (_t106) goto L_0251310C; else goto L_025130FC;
|
|
L_025130FC: ; // 0x25130fc
|
|
/* 025130FC */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 025130FC */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 02513100 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 02513100 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 02513104 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 02513104 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 02513108 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02513108 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_0251310C: ; // 0x251310c
|
|
/* 0251310C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 02513110 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 02513114 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513114 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02513114 */ if (_t112) goto L_02513118; else goto L_02513128;
|
|
L_02513118: ; // 0x2513118
|
|
/* 02513118 */ cpu->r[3] = 0x00000010u;
|
|
/* 0251311C */ Gambit_fn_02801A78(cpu);
|
|
/* 02513120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02513124 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513124 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02513124 */ if (_t114) goto L_02513138; else goto L_02513128;
|
|
L_02513128: ; // 0x2513128
|
|
/* 02513128 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 02513128 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0251312C */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0251312C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 02513130 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 02513130 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 02513134 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02513134 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_02513138: ; // 0x2513138
|
|
/* 02513138 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0251313C */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 02513140 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 02513140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02513144 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 02513144 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02513148 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 02513148 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0251314C */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 0251314C */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 02513150 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02513150 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02513154 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 02513154 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02513158 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 02513158 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0251315C */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 0251315C */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 02513160 */ /* nop */
|
|
/* 02513164 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 02513164 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 02513168 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 02513168 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0251316C */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 0251316C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 02513170 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 02513170 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 02513174 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 02513174 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02513178 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 02513178 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0251317C */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0251317C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 02513180 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 02513180 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 02513184 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02513184 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02513184 */ if (_t136) goto L_02513188; // else: addr-0 trap, fall-through
|
|
L_02513188: ; // 0x2513188
|
|
/* 02513188 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02513188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0251318C */ cpu->lr = cpu->r[0];
|
|
/* 02513190 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02513194 */ return;
|
|
}
|
|
|
|
// fn_02513198 @ 0x2513198
|
|
void Gambit_fn_02513198(CPUState* cpu) {
|
|
L_02513198: ; // 0x2513198
|
|
/* 02513198 */ cpu->r[3] = 0x00000001u;
|
|
/* 0251319C */ return;
|
|
}
|
|
|
|
// fn_025131A0 @ 0x25131a0
|
|
void Gambit_fn_025131A0(CPUState* cpu) {
|
|
L_025131A0: ; // 0x25131a0
|
|
/* 025131A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025131A4 */ return;
|
|
}
|
|
|
|
// fn_025131A8 @ 0x25131a8
|
|
void Gambit_fn_025131A8(CPUState* cpu) {
|
|
L_025131A8: ; // 0x25131a8
|
|
/* 025131A8 */ return;
|
|
}
|
|
|
|
// fn_025131AC @ 0x25131ac
|
|
void Gambit_fn_025131AC(CPUState* cpu) {
|
|
L_025131AC: ; // 0x25131ac
|
|
/* 025131AC */ return;
|
|
}
|
|
|
|
// fn_025131B0 @ 0x25131b0
|
|
void Gambit_fn_025131B0(CPUState* cpu) {
|
|
L_025131B0: ; // 0x25131b0
|
|
/* 025131B0 */ return;
|
|
}
|
|
|
|
// fn_025131B4 @ 0x25131b4
|
|
void Gambit_fn_025131B4(CPUState* cpu) {
|
|
L_025131B4: ; // 0x25131b4
|
|
/* 025131B4 */ return;
|
|
}
|
|
|
|
// fn_025131B8 @ 0x25131b8
|
|
void Gambit_fn_025131B8(CPUState* cpu) {
|
|
L_025131B8: ; // 0x25131b8
|
|
/* 025131B8 */ return;
|
|
}
|
|
|
|
// fn_025131BC @ 0x25131bc
|
|
void Gambit_fn_025131BC(CPUState* cpu) {
|
|
L_025131BC: ; // 0x25131bc
|
|
/* 025131BC */ return;
|
|
}
|
|
|
|
// fn_025131C0 @ 0x25131c0
|
|
void Gambit_fn_025131C0(CPUState* cpu) {
|
|
L_025131C0: ; // 0x25131c0
|
|
/* 025131C0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025131C4 */ return;
|
|
}
|
|
|
|
// fn_025131C8 @ 0x25131c8
|
|
void Gambit_fn_025131C8(CPUState* cpu) {
|
|
L_025131C8: ; // 0x25131c8
|
|
/* 025131C8 */ cpu->r[3] = 0x00000000u;
|
|
/* 025131CC */ return;
|
|
}
|
|
|
|
// fn_025131D0 @ 0x25131d0
|
|
void Gambit_fn_025131D0(CPUState* cpu) {
|
|
L_025131D0: ; // 0x25131d0
|
|
/* 025131D0 */ cpu->r[3] = 0x00001000u;
|
|
/* 025131D4 */ return;
|
|
}
|
|
|
|
// fn_025131D8 @ 0x25131d8
|
|
void Gambit_fn_025131D8(CPUState* cpu) {
|
|
L_025131D8: ; // 0x25131d8
|
|
/* 025131D8 */ cpu->r[3] = 0x00003000u;
|
|
/* 025131DC */ return;
|
|
}
|
|
|
|
// fn_025131E0 @ 0x25131e0
|
|
void Gambit_fn_025131E0(CPUState* cpu) {
|
|
L_025131E0: ; // 0x25131e0
|
|
/* 025131E0 */ cpu->r[3] = 0x00003000u;
|
|
/* 025131E4 */ return;
|
|
}
|
|
|
|
// fn_025131E8 @ 0x25131e8
|
|
void Gambit_fn_025131E8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_025131E8: ; // 0x25131e8
|
|
/* 025131E8 */ _t0 = cpu->r[3] + 0x000000D8u;
|
|
/* 025131E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025131EC */ return;
|
|
}
|
|
|
|
// fn_025131F0 @ 0x25131f0
|
|
void Gambit_fn_025131F0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_025131F0: ; // 0x25131f0
|
|
/* 025131F0 */ _t0 = cpu->r[3] + 0x000000D4u;
|
|
/* 025131F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025131F4 */ return;
|
|
}
|
|
|
|
// fn_025131F8 @ 0x25131f8
|
|
void Gambit_fn_025131F8(CPUState* cpu) {
|
|
L_025131F8: ; // 0x25131f8
|
|
/* 025131F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 025131FC */ return;
|
|
}
|
|
|
|
// fn_02513200 @ 0x2513200
|
|
void Gambit_fn_02513200(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02513200: ; // 0x2513200
|
|
/* 02513200 */ _t0 = cpu->r[3] + 0x000000D4u;
|
|
/* 02513200 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02513204 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02513204 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02513208 */ _t2 = cpu->r[12] + 0x00000024u;
|
|
/* 02513208 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0251320C */ cpu->ctr = cpu->r[0];
|
|
/* 02513210 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02513214 @ 0x2513214
|
|
void Gambit_fn_02513214(CPUState* cpu) {
|
|
L_02513214: ; // 0x2513214
|
|
/* 02513214 */ cpu->r[3] = 0x00000010u;
|
|
/* 02513218 */ return;
|
|
}
|
|
|
|
// fn_0251321C @ 0x251321c
|
|
void Gambit_fn_0251321C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0251321C: ; // 0x251321c
|
|
/* 0251321C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0251321C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513220 */ cpu->r[12] = cpu->r[3];
|
|
/* 02513224 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513224 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02513224 */ if (_t1) goto L_0251323C; else goto L_02513228;
|
|
L_02513228: ; // 0x2513228
|
|
/* 02513228 */ cpu->r[3] = cpu->r[4];
|
|
/* 0251322C */ cpu->r[6] = 0x00000000u;
|
|
/* 02513230 */ cpu->r[5] = 0x00000010u;
|
|
/* 02513234 */ cpu->r[4] = cpu->r[12] + 0x0000003Cu;
|
|
/* 02513238 */ rbrew_dispatch(cpu, 0x02d0a6e8u); return;
|
|
L_0251323C: ; // 0x251323c
|
|
/* 0251323C */ _t2 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0251323C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02513240 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02513240 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 02513244 */ _t4 = cpu->r[12] + 0x00000040u;
|
|
/* 02513244 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02513248 */ _t5 = cpu->r[4] + 0x00000004u;
|
|
/* 02513248 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 0251324C */ _t6 = cpu->r[12] + 0x00000044u;
|
|
/* 0251324C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02513250 */ _t7 = cpu->r[4] + 0x00000008u;
|
|
/* 02513250 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02513254 */ _t8 = cpu->r[12] + 0x00000048u;
|
|
/* 02513254 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02513258 */ _t9 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02513258 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 0251325C */ return;
|
|
}
|
|
|
|
// fn_02513260 @ 0x2513260
|
|
void Gambit_fn_02513260(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02513260: ; // 0x2513260
|
|
/* 02513260 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 02513260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513264 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513264 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02513264 */ if (_t1) goto L_02513278; else goto L_02513268;
|
|
L_02513268: ; // 0x2513268
|
|
/* 02513268 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251326C */ cpu->r[5] = 0x00000010u;
|
|
/* 02513270 */ cpu->r[3] = cpu->r[3] + 0x0000003Cu;
|
|
/* 02513274 */ rbrew_dispatch(cpu, 0x02d0a6e8u); return;
|
|
L_02513278: ; // 0x2513278
|
|
/* 02513278 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02513278 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0251327C */ _t3 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0251327C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 02513280 */ _t4 = cpu->r[4] + 0x00000004u;
|
|
/* 02513280 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02513284 */ _t5 = cpu->r[3] + 0x00000040u;
|
|
/* 02513284 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02513288 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 02513288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0251328C */ _t7 = cpu->r[3] + 0x00000044u;
|
|
/* 0251328C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02513290 */ _t8 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02513290 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02513294 */ _t9 = cpu->r[3] + 0x00000048u;
|
|
/* 02513294 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02513298 */ return;
|
|
}
|
|
|
|
// fn_0251329C @ 0x251329c
|
|
void Gambit_fn_0251329C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0251329C: ; // 0x251329c
|
|
/* 0251329C */ cpu->r[0] = cpu->lr;
|
|
/* 025132A0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 025132A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025132A0 */ cpu->r[1] = _t0;
|
|
/* 025132A4 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025132A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025132A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025132AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 025132B0 */ cpu->r[4] = 0x00000010u;
|
|
/* 025132B4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 025132B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025132B8 */ Gambit_fn_02C89380(cpu);
|
|
/* 025132BC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025132BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 025132C0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 025132C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 025132C4 */ _t5 = cpu->r[31] + 0x00000040u;
|
|
/* 025132C4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 025132C8 */ _t6 = cpu->r[31] + 0x00000048u;
|
|
/* 025132C8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 025132CC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 025132CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025132D0 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 025132D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025132D4 */ _t9 = cpu->r[31] + 0x0000003Cu;
|
|
/* 025132D4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 025132D8 */ _t10 = cpu->r[31] + 0x00000044u;
|
|
/* 025132D8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 025132DC */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 025132DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025132E0 */ cpu->lr = cpu->r[0];
|
|
/* 025132E4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025132E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025132E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025132EC */ return;
|
|
}
|
|
|
|
// fn_025132A0 @ 0x25132a0
|
|
void Gambit_fn_025132A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_025132A0: ; // 0x25132a0
|
|
/* 025132A0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 025132A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025132A0 */ cpu->r[1] = _t0;
|
|
/* 025132A4 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025132A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025132A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025132AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 025132B0 */ cpu->r[4] = 0x00000010u;
|
|
/* 025132B4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 025132B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025132B8 */ Gambit_fn_02C89380(cpu);
|
|
/* 025132BC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025132BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 025132C0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 025132C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 025132C4 */ _t5 = cpu->r[31] + 0x00000040u;
|
|
/* 025132C4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 025132C8 */ _t6 = cpu->r[31] + 0x00000048u;
|
|
/* 025132C8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 025132CC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 025132CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025132D0 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 025132D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025132D4 */ _t9 = cpu->r[31] + 0x0000003Cu;
|
|
/* 025132D4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 025132D8 */ _t10 = cpu->r[31] + 0x00000044u;
|
|
/* 025132D8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 025132DC */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 025132DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025132E0 */ cpu->lr = cpu->r[0];
|
|
/* 025132E4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025132E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025132E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025132EC */ return;
|
|
}
|
|
|
|
// fn_025132F4 @ 0x25132f4
|
|
void Gambit_fn_025132F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_025132F4: ; // 0x25132f4
|
|
/* 025132F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025132F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025132F4 */ cpu->r[1] = _t0;
|
|
/* 025132F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025132F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025132FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025132FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02513300 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513304 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513304 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02513308 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513308 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513308 */ if (_t5) goto L_0251330C; else goto L_0251331C;
|
|
L_0251330C: ; // 0x251330c
|
|
/* 0251330C */ cpu->r[3] = 0x00000120u;
|
|
/* 02513310 */ Gambit_fn_02801A78(cpu);
|
|
/* 02513314 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513318 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513318 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513318 */ if (_t7) goto L_025133FC; else goto L_0251331C;
|
|
L_0251331C: ; // 0x251331c
|
|
/* 0251331C */ cpu->r[30] = cpu->r[31];
|
|
/* 0251331C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02513320 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513320 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02513320 */ if (_t9) goto L_02513324; else goto L_02513334;
|
|
L_02513324: ; // 0x2513324
|
|
/* 02513324 */ cpu->r[3] = 0x00000100u;
|
|
/* 02513328 */ Gambit_fn_02801A78(cpu);
|
|
/* 0251332C */ cpu->r[30] = cpu->r[3];
|
|
/* 0251332C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02513330 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513330 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02513330 */ if (_t11) goto L_025133AC; else goto L_02513334;
|
|
L_02513334: ; // 0x2513334
|
|
/* 02513334 */ cpu->r[3] = cpu->r[30];
|
|
/* 02513338 */ cpu->r[4] = 0x000000D4u;
|
|
/* 0251333C */ Gambit_fn_02C89380(cpu);
|
|
/* 02513340 */ cpu->r[3] = cpu->r[30];
|
|
/* 02513340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02513344 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513344 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02513344 */ if (_t13) goto L_02513348; else goto L_02513358;
|
|
L_02513348: ; // 0x2513348
|
|
/* 02513348 */ cpu->r[3] = 0x000000D4u;
|
|
/* 0251334C */ Gambit_fn_02801A78(cpu);
|
|
/* 02513350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02513354 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513354 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02513354 */ if (_t15) goto L_025133A0; else goto L_02513358;
|
|
L_02513358: ; // 0x2513358
|
|
/* 02513358 */ cpu->r[0] = 0x00000000u;
|
|
/* 0251335C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02513360 */ _t16 = cpu->r[3] + 0x00000050u;
|
|
/* 02513360 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02513364 */ cpu->r[7] = cpu->r[7] + 0xFFFFF898u;
|
|
/* 02513368 */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 02513368 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0251336C */ cpu->r[10] = 0x00000020u;
|
|
/* 02513370 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02513370 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 02513374 */ cpu->r[9] = cpu->r[3] + 0x00000050u;
|
|
/* 02513378 */ cpu->r[12] = 0x00010000u;
|
|
/* 0251337C */ _t19 = cpu->r[3] + 0x0000004Eu;
|
|
/* 0251337C */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 02513380 */ cpu->r[11] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02513384 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02513388 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02513388 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 0251338C */ cpu->ctr = cpu->r[10];
|
|
/* 02513390 */ _t21 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02513390 */ rbrew_write16(cpu->mem, _t21, (uint16_t)cpu->r[12]);
|
|
L_02513394: ; // 0x2513394
|
|
/* 02513394 */ _t22 = cpu->r[11] + 0x00000002u;
|
|
/* 02513394 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[12]);
|
|
/* 02513394 */ cpu->r[11] = _t22;
|
|
/* 02513398 */ _t23 = cpu->r[9] + 0x00000004u;
|
|
/* 02513398 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02513398 */ cpu->r[9] = _t23;
|
|
/* 0251339C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0251339C */ _t24 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0251339C */ _t25 = _t24 >> (0x00000002u & 31u);
|
|
/* 0251339C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0251339C */ if (_t26) goto L_02513394; else goto L_025133A0;
|
|
L_025133A0: ; // 0x25133a0
|
|
/* 025133A0 */ cpu->r[11] = 0x101B0000u;
|
|
/* 025133A4 */ cpu->r[11] = cpu->r[11] + 0xFFFF826Cu;
|
|
/* 025133A8 */ _t27 = cpu->r[30] + 0x00000008u;
|
|
/* 025133A8 */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
L_025133AC: ; // 0x25133ac
|
|
/* 025133AC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025133B0 */ cpu->r[3] = cpu->r[31] + 0x00000100u;
|
|
/* 025133B4 */ cpu->r[10] = cpu->r[10] + 0xFFFFFA08u;
|
|
/* 025133B8 */ cpu->r[4] = 0x0000001Cu;
|
|
/* 025133BC */ _t28 = cpu->r[31] + 0x00000008u;
|
|
/* 025133BC */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 025133C0 */ Gambit_fn_02C89380(cpu);
|
|
/* 025133C4 */ cpu->r[30] = cpu->r[31] + 0x00000100u;
|
|
/* 025133C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025133C8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025133C8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 025133C8 */ if (_t30) goto L_025133CC; else goto L_025133DC;
|
|
L_025133CC: ; // 0x25133cc
|
|
/* 025133CC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 025133D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025133D4 */ cpu->r[30] = cpu->r[3];
|
|
/* 025133D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025133D8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025133D8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 025133D8 */ if (_t32) goto L_025133FC; else goto L_025133DC;
|
|
L_025133DC: ; // 0x25133dc
|
|
/* 025133DC */ cpu->r[12] = cpu->r[30] + 0x00000004u;
|
|
/* 025133DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025133E0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025133E0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 025133E0 */ if (_t34) goto L_025133E4; else goto L_025133EC;
|
|
L_025133E4: ; // 0x25133e4
|
|
/* 025133E4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025133E8 */ Gambit_fn_02801A78(cpu);
|
|
L_025133EC: ; // 0x25133ec
|
|
/* 025133EC */ cpu->r[0] = cpu->r[30] + 0x00000010u;
|
|
/* 025133EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025133F0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025133F0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 025133F0 */ if (_t36) goto L_025133F4; else goto L_025133FC;
|
|
L_025133F4: ; // 0x25133f4
|
|
/* 025133F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025133F8 */ Gambit_fn_02801A78(cpu);
|
|
L_025133FC: ; // 0x25133fc
|
|
/* 025133FC */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 025133FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02513400 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513404 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513404 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02513408 */ cpu->lr = cpu->r[0];
|
|
/* 0251340C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 0251340C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02513410 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513414 */ return;
|
|
}
|
|
|
|
// fn_02513418 @ 0x2513418
|
|
void Gambit_fn_02513418(CPUState* cpu) {
|
|
L_02513418: ; // 0x2513418
|
|
/* 02513418 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0251341C */ return;
|
|
}
|
|
|
|
// fn_02513420 @ 0x2513420
|
|
void Gambit_fn_02513420(CPUState* cpu) {
|
|
L_02513420: ; // 0x2513420
|
|
/* 02513420 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000120u);
|
|
/* 02513424 */ cpu->r[12] = cpu->r[3] + 0x00000018u;
|
|
/* 02513428 */ cpu->r[3] = cpu->r[12] + cpu->r[0];
|
|
/* 0251342C */ return;
|
|
}
|
|
|
|
// fn_02513430 @ 0x2513430
|
|
void Gambit_fn_02513430(CPUState* cpu) {
|
|
L_02513430: ; // 0x2513430
|
|
/* 02513430 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000120u);
|
|
/* 02513434 */ cpu->r[12] = cpu->r[3] + 0x00000018u;
|
|
/* 02513438 */ cpu->r[3] = cpu->r[12] + cpu->r[0];
|
|
/* 0251343C */ return;
|
|
}
|
|
|
|
// fn_02513444 @ 0x2513444
|
|
void Gambit_fn_02513444(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02513444: ; // 0x2513444
|
|
/* 02513444 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513444 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513444 */ cpu->r[1] = _t0;
|
|
/* 02513448 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513448 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251344C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0251344C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02513450 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513454 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513454 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02513458 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513458 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513458 */ if (_t5) goto L_0251345C; else goto L_0251346C;
|
|
L_0251345C: ; // 0x251345c
|
|
/* 0251345C */ cpu->r[3] = 0x00000020u;
|
|
/* 02513460 */ Gambit_fn_02801A78(cpu);
|
|
/* 02513464 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513468 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513468 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513468 */ if (_t7) goto L_025134A4; else goto L_0251346C;
|
|
L_0251346C: ; // 0x251346c
|
|
/* 0251346C */ cpu->r[30] = cpu->r[31];
|
|
/* 0251346C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02513470 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513470 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02513470 */ if (_t9) goto L_02513474; else goto L_02513484;
|
|
L_02513474: ; // 0x2513474
|
|
/* 02513474 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02513478 */ Gambit_fn_02801A78(cpu);
|
|
/* 0251347C */ cpu->r[30] = cpu->r[3];
|
|
/* 0251347C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02513480 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513480 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02513480 */ if (_t11) goto L_025134A4; else goto L_02513484;
|
|
L_02513484: ; // 0x2513484
|
|
/* 02513484 */ cpu->r[12] = cpu->r[30] + 0x00000004u;
|
|
/* 02513484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02513488 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513488 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02513488 */ if (_t13) goto L_0251348C; else goto L_02513494;
|
|
L_0251348C: ; // 0x251348c
|
|
/* 0251348C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02513490 */ Gambit_fn_02801A78(cpu);
|
|
L_02513494: ; // 0x2513494
|
|
/* 02513494 */ cpu->r[0] = cpu->r[30] + 0x00000010u;
|
|
/* 02513494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513498 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513498 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02513498 */ if (_t15) goto L_0251349C; else goto L_025134A4;
|
|
L_0251349C: ; // 0x251349c
|
|
/* 0251349C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025134A0 */ Gambit_fn_02801A78(cpu);
|
|
L_025134A4: ; // 0x25134a4
|
|
/* 025134A4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 025134A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025134A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025134AC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025134AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025134B0 */ cpu->lr = cpu->r[0];
|
|
/* 025134B4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 025134B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025134B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025134BC */ return;
|
|
}
|
|
|
|
// fn_025134C0 @ 0x25134c0
|
|
void Gambit_fn_025134C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_025134C0: ; // 0x25134c0
|
|
/* 025134C0 */ cpu->r[0] = cpu->lr;
|
|
/* 025134C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025134C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025134C4 */ cpu->r[1] = _t0;
|
|
/* 025134C8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 025134C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 025134CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025134CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 025134D0 */ cpu->r[31] = cpu->r[4];
|
|
/* 025134D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 025134D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025134DC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025134DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025134E0 */ Gambit_fn_02C1B11C(cpu);
|
|
/* 025134E4 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 025134E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 025134E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025134EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025134EC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025134EC */ if (_t6) goto L_02513510; else goto L_025134F0;
|
|
L_025134F0: ; // 0x25134f0
|
|
/* 025134F0 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 025134F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025134F4 */ _t8 = cpu->r[30] + 0x0000003Cu;
|
|
/* 025134F4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 025134F8 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 025134F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 025134FC */ _t10 = cpu->r[30] + 0x00000040u;
|
|
/* 025134FC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02513500 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 02513500 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02513504 */ _t12 = cpu->r[30] + 0x00000044u;
|
|
/* 02513504 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 02513508 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02513508 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0251350C */ _t14 = cpu->r[30] + 0x00000048u;
|
|
/* 0251350C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
L_02513510: ; // 0x2513510
|
|
/* 02513510 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02513510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02513514 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02513514 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02513518 */ cpu->lr = cpu->r[0];
|
|
/* 0251351C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0251351C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02513520 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02513524 */ return;
|
|
}
|
|
|
|
// fn_025134C4 @ 0x25134c4
|
|
void Gambit_fn_025134C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_025134C4: ; // 0x25134c4
|
|
/* 025134C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025134C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025134C4 */ cpu->r[1] = _t0;
|
|
/* 025134C8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 025134C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 025134CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025134CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 025134D0 */ cpu->r[31] = cpu->r[4];
|
|
/* 025134D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 025134D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025134DC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025134DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025134E0 */ Gambit_fn_02C1B11C(cpu);
|
|
/* 025134E4 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 025134E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 025134E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025134EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025134EC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025134EC */ if (_t6) goto L_02513510; else goto L_025134F0;
|
|
L_025134F0: ; // 0x25134f0
|
|
/* 025134F0 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 025134F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025134F4 */ _t8 = cpu->r[30] + 0x0000003Cu;
|
|
/* 025134F4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 025134F8 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 025134F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 025134FC */ _t10 = cpu->r[30] + 0x00000040u;
|
|
/* 025134FC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02513500 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 02513500 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02513504 */ _t12 = cpu->r[30] + 0x00000044u;
|
|
/* 02513504 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 02513508 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02513508 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0251350C */ _t14 = cpu->r[30] + 0x00000048u;
|
|
/* 0251350C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
L_02513510: ; // 0x2513510
|
|
/* 02513510 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02513510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02513514 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02513514 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02513518 */ cpu->lr = cpu->r[0];
|
|
/* 0251351C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0251351C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02513520 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02513524 */ return;
|
|
}
|
|
|
|
// fn_02513528 @ 0x2513528
|
|
void Gambit_fn_02513528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02513528: ; // 0x2513528
|
|
/* 02513528 */ cpu->r[0] = cpu->lr;
|
|
/* 0251352C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0251352C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251352C */ cpu->r[1] = _t0;
|
|
/* 02513530 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02513530 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02513534 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513534 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02513538 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0251353C */ cpu->r[30] = cpu->r[4];
|
|
/* 02513540 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513540 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02513544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513544 */ if (_t5) goto L_02513548; else goto L_02513558;
|
|
L_02513548: ; // 0x2513548
|
|
/* 02513548 */ cpu->r[3] = 0x00004818u;
|
|
/* 0251354C */ Gambit_fn_02801A78(cpu);
|
|
/* 02513550 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513554 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513554 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513554 */ if (_t7) goto L_025135B4; else goto L_02513558;
|
|
L_02513558: ; // 0x2513558
|
|
/* 02513558 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251355C */ cpu->r[4] = 0x00000040u;
|
|
/* 02513560 */ Gambit_fn_02C18094(cpu);
|
|
/* 02513564 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02513568 */ cpu->r[6] = 0x02510000u;
|
|
/* 0251356C */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 02513570 */ cpu->r[12] = cpu->r[12] + 0xFFFFF8D8u;
|
|
/* 02513574 */ cpu->r[6] = cpu->r[6] + 0x000032F0u;
|
|
/* 02513578 */ cpu->r[4] = 0x00000040u;
|
|
/* 0251357C */ cpu->r[5] = 0x00000120u;
|
|
/* 02513580 */ _t8 = cpu->r[31] + 0x00000010u;
|
|
/* 02513580 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02513584 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02513588 */ cpu->r[8] = 0x00000040u;
|
|
/* 0251358C */ cpu->r[11] = 0x00000000u;
|
|
/* 02513590 */ cpu->r[10] = cpu->r[31] + 0x00000018u;
|
|
/* 02513594 */ cpu->ctr = cpu->r[8];
|
|
/* 02513598 */ cpu->r[0] = cpu->r[11];
|
|
L_0251359C: ; // 0x251359c
|
|
/* 0251359C */ _t9 = cpu->r[10] + 0x000000DCu;
|
|
/* 0251359C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[11]);
|
|
/* 025135A0 */ _t10 = cpu->r[10] + 0x000000F8u;
|
|
/* 025135A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 025135A4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 025135A8 */ _t11 = cpu->r[10] + 0x000000D4u;
|
|
/* 025135A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 025135AC */ cpu->r[10] = cpu->r[10] + 0x00000120u;
|
|
/* 025135B0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025135B0 */ _t12 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025135B0 */ _t13 = _t12 >> (0x00000002u & 31u);
|
|
/* 025135B0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 025135B0 */ if (_t14) goto L_0251359C; else goto L_025135B4;
|
|
L_025135B4: ; // 0x25135b4
|
|
/* 025135B4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 025135B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025135B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025135BC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025135BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025135C0 */ cpu->lr = cpu->r[0];
|
|
/* 025135C4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 025135C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025135C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025135CC */ return;
|
|
}
|
|
|
|
// fn_0251352C @ 0x251352c
|
|
void Gambit_fn_0251352C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0251352C: ; // 0x251352c
|
|
/* 0251352C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0251352C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251352C */ cpu->r[1] = _t0;
|
|
/* 02513530 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02513530 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02513534 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513534 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02513538 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0251353C */ cpu->r[30] = cpu->r[4];
|
|
/* 02513540 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513540 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02513544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513544 */ if (_t5) goto L_02513548; else goto L_02513558;
|
|
L_02513548: ; // 0x2513548
|
|
/* 02513548 */ cpu->r[3] = 0x00004818u;
|
|
/* 0251354C */ Gambit_fn_02801A78(cpu);
|
|
/* 02513550 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513554 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513554 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513554 */ if (_t7) goto L_025135B4; else goto L_02513558;
|
|
L_02513558: ; // 0x2513558
|
|
/* 02513558 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251355C */ cpu->r[4] = 0x00000040u;
|
|
/* 02513560 */ Gambit_fn_02C18094(cpu);
|
|
/* 02513564 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02513568 */ cpu->r[6] = 0x02510000u;
|
|
/* 0251356C */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 02513570 */ cpu->r[12] = cpu->r[12] + 0xFFFFF8D8u;
|
|
/* 02513574 */ cpu->r[6] = cpu->r[6] + 0x000032F0u;
|
|
/* 02513578 */ cpu->r[4] = 0x00000040u;
|
|
/* 0251357C */ cpu->r[5] = 0x00000120u;
|
|
/* 02513580 */ _t8 = cpu->r[31] + 0x00000010u;
|
|
/* 02513580 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02513584 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02513588 */ cpu->r[8] = 0x00000040u;
|
|
/* 0251358C */ cpu->r[11] = 0x00000000u;
|
|
/* 02513590 */ cpu->r[10] = cpu->r[31] + 0x00000018u;
|
|
/* 02513594 */ cpu->ctr = cpu->r[8];
|
|
/* 02513598 */ cpu->r[0] = cpu->r[11];
|
|
L_0251359C: ; // 0x251359c
|
|
/* 0251359C */ _t9 = cpu->r[10] + 0x000000DCu;
|
|
/* 0251359C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[11]);
|
|
/* 025135A0 */ _t10 = cpu->r[10] + 0x000000F8u;
|
|
/* 025135A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 025135A4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 025135A8 */ _t11 = cpu->r[10] + 0x000000D4u;
|
|
/* 025135A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 025135AC */ cpu->r[10] = cpu->r[10] + 0x00000120u;
|
|
/* 025135B0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025135B0 */ _t12 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025135B0 */ _t13 = _t12 >> (0x00000002u & 31u);
|
|
/* 025135B0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 025135B0 */ if (_t14) goto L_0251359C; else goto L_025135B4;
|
|
L_025135B4: ; // 0x25135b4
|
|
/* 025135B4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 025135B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025135B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025135BC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025135BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025135C0 */ cpu->lr = cpu->r[0];
|
|
/* 025135C4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 025135C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025135C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025135CC */ return;
|
|
}
|
|
|
|
// fn_025135D0 @ 0x25135d0
|
|
void Gambit_fn_025135D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_025135D0: ; // 0x25135d0
|
|
/* 025135D0 */ cpu->r[0] = cpu->lr;
|
|
/* 025135D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025135D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025135D4 */ cpu->r[1] = _t0;
|
|
/* 025135D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025135D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025135DC */ cpu->r[31] = cpu->r[3];
|
|
/* 025135DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025135E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025135E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025135E4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025135E4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 025135E4 */ if (_t4) goto L_025135E8; else goto L_025135F8;
|
|
L_025135E8: ; // 0x25135e8
|
|
/* 025135E8 */ cpu->r[3] = 0x00004930u;
|
|
/* 025135EC */ Gambit_fn_02801A78(cpu);
|
|
/* 025135F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025135F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025135F4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025135F4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025135F4 */ if (_t6) goto L_0251361C; else goto L_025135F8;
|
|
L_025135F8: ; // 0x25135f8
|
|
/* 025135F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025135FC */ cpu->r[4] = cpu->r[31] + 0x00000118u;
|
|
/* 02513600 */ Gambit_fn_02C17ACC(cpu);
|
|
/* 02513604 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02513608 */ cpu->r[3] = cpu->r[31] + 0x00000118u;
|
|
/* 0251360C */ cpu->r[0] = cpu->r[0] + 0xFFFFF970u;
|
|
/* 02513610 */ cpu->r[4] = cpu->r[31];
|
|
/* 02513614 */ _t7 = cpu->r[31] + 0x00000020u;
|
|
/* 02513614 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02513618 */ Gambit_fn_02513528(cpu);
|
|
L_0251361C: ; // 0x251361c
|
|
/* 0251361C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0251361C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02513620 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513624 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513624 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02513628 */ cpu->lr = cpu->r[0];
|
|
/* 0251362C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513630 */ return;
|
|
}
|
|
|
|
// fn_025135D4 @ 0x25135d4
|
|
void Gambit_fn_025135D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_025135D4: ; // 0x25135d4
|
|
/* 025135D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025135D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025135D4 */ cpu->r[1] = _t0;
|
|
/* 025135D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025135D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025135DC */ cpu->r[31] = cpu->r[3];
|
|
/* 025135DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025135E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025135E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025135E4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025135E4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 025135E4 */ if (_t4) goto L_025135E8; else goto L_025135F8;
|
|
L_025135E8: ; // 0x25135e8
|
|
/* 025135E8 */ cpu->r[3] = 0x00004930u;
|
|
/* 025135EC */ Gambit_fn_02801A78(cpu);
|
|
/* 025135F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025135F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025135F4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025135F4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025135F4 */ if (_t6) goto L_0251361C; else goto L_025135F8;
|
|
L_025135F8: ; // 0x25135f8
|
|
/* 025135F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025135FC */ cpu->r[4] = cpu->r[31] + 0x00000118u;
|
|
/* 02513600 */ Gambit_fn_02C17ACC(cpu);
|
|
/* 02513604 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02513608 */ cpu->r[3] = cpu->r[31] + 0x00000118u;
|
|
/* 0251360C */ cpu->r[0] = cpu->r[0] + 0xFFFFF970u;
|
|
/* 02513610 */ cpu->r[4] = cpu->r[31];
|
|
/* 02513614 */ _t7 = cpu->r[31] + 0x00000020u;
|
|
/* 02513614 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02513618 */ Gambit_fn_02513528(cpu);
|
|
L_0251361C: ; // 0x251361c
|
|
/* 0251361C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0251361C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02513620 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513624 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513624 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02513628 */ cpu->lr = cpu->r[0];
|
|
/* 0251362C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513630 */ return;
|
|
}
|
|
|
|
// fn_02513634 @ 0x2513634
|
|
void Gambit_fn_02513634(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02513634: ; // 0x2513634
|
|
/* 02513634 */ cpu->r[0] = cpu->lr;
|
|
/* 02513638 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513638 */ cpu->r[1] = _t0;
|
|
/* 0251363C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251363C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513640 */ cpu->r[31] = cpu->r[4];
|
|
/* 02513644 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02513648 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513648 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0251364C */ Gambit_fn_02C17C20(cpu);
|
|
/* 02513650 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02513650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513654 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513654 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02513654 */ if (_t4) goto L_02513658; else goto L_025136A4;
|
|
L_02513658: ; // 0x2513658
|
|
/* 02513658 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02513658 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251365C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02513660 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513660 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513660 */ if (_t7) goto L_025136A4; else goto L_02513664;
|
|
L_02513664: ; // 0x2513664
|
|
/* 02513664 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02513664 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02513668 */ _t9 = cpu->r[12] + 0x00000100u;
|
|
/* 02513668 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[10]);
|
|
/* 0251366C */ _t10 = cpu->r[31] + 0x00000001u;
|
|
/* 0251366C */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02513670 */ _t11 = cpu->r[12] + 0x00000101u;
|
|
/* 02513670 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02513674 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 02513674 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02513678 */ _t13 = cpu->r[12] + 0x00000104u;
|
|
/* 02513678 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 0251367C */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 0251367C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02513680 */ _t15 = cpu->r[12] + 0x00000108u;
|
|
/* 02513680 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02513684 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02513684 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02513688 */ _t17 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02513688 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 0251368C */ _t18 = cpu->r[31] + 0x00000010u;
|
|
/* 0251368C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02513690 */ _t19 = cpu->r[12] + 0x00000110u;
|
|
/* 02513690 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02513694 */ _t20 = cpu->r[31] + 0x00000014u;
|
|
/* 02513694 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02513698 */ _t21 = cpu->r[12] + 0x00000114u;
|
|
/* 02513698 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0251369C */ _t22 = cpu->r[31] + 0x00000018u;
|
|
/* 0251369C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 025136A0 */ _t23 = cpu->r[12] + 0x00000118u;
|
|
/* 025136A0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
L_025136A4: ; // 0x25136a4
|
|
/* 025136A4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 025136A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025136A8 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025136A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025136AC */ cpu->lr = cpu->r[0];
|
|
/* 025136B0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025136B4 */ return;
|
|
}
|
|
|
|
// fn_02513638 @ 0x2513638
|
|
void Gambit_fn_02513638(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02513638: ; // 0x2513638
|
|
/* 02513638 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513638 */ cpu->r[1] = _t0;
|
|
/* 0251363C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251363C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513640 */ cpu->r[31] = cpu->r[4];
|
|
/* 02513644 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02513648 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513648 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0251364C */ Gambit_fn_02C17C20(cpu);
|
|
/* 02513650 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02513650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513654 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513654 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02513654 */ if (_t4) goto L_02513658; else goto L_025136A4;
|
|
L_02513658: ; // 0x2513658
|
|
/* 02513658 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02513658 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251365C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02513660 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513660 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513660 */ if (_t7) goto L_025136A4; else goto L_02513664;
|
|
L_02513664: ; // 0x2513664
|
|
/* 02513664 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02513664 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02513668 */ _t9 = cpu->r[12] + 0x00000100u;
|
|
/* 02513668 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[10]);
|
|
/* 0251366C */ _t10 = cpu->r[31] + 0x00000001u;
|
|
/* 0251366C */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02513670 */ _t11 = cpu->r[12] + 0x00000101u;
|
|
/* 02513670 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02513674 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 02513674 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02513678 */ _t13 = cpu->r[12] + 0x00000104u;
|
|
/* 02513678 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 0251367C */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 0251367C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02513680 */ _t15 = cpu->r[12] + 0x00000108u;
|
|
/* 02513680 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02513684 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02513684 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02513688 */ _t17 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02513688 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 0251368C */ _t18 = cpu->r[31] + 0x00000010u;
|
|
/* 0251368C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02513690 */ _t19 = cpu->r[12] + 0x00000110u;
|
|
/* 02513690 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02513694 */ _t20 = cpu->r[31] + 0x00000014u;
|
|
/* 02513694 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02513698 */ _t21 = cpu->r[12] + 0x00000114u;
|
|
/* 02513698 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0251369C */ _t22 = cpu->r[31] + 0x00000018u;
|
|
/* 0251369C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 025136A0 */ _t23 = cpu->r[12] + 0x00000118u;
|
|
/* 025136A0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
L_025136A4: ; // 0x25136a4
|
|
/* 025136A4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 025136A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025136A8 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025136A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025136AC */ cpu->lr = cpu->r[0];
|
|
/* 025136B0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025136B4 */ return;
|
|
}
|
|
|
|
// fn_025136B8 @ 0x25136b8
|
|
void Gambit_fn_025136B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_025136B8: ; // 0x25136b8
|
|
/* 025136B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 025136B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025136BC */ cpu->r[10] = cpu->r[3];
|
|
/* 025136C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025136C0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 025136C0 */ if (_t1) goto L_025136D8; else goto L_025136C4;
|
|
L_025136C4: ; // 0x25136c4
|
|
/* 025136C4 */ cpu->r[3] = cpu->r[4];
|
|
/* 025136C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 025136CC */ cpu->r[5] = 0x0000001Cu;
|
|
/* 025136D0 */ cpu->r[4] = cpu->r[10] + 0x00000100u;
|
|
/* 025136D4 */ rbrew_dispatch(cpu, 0x02d0a6e8u); return;
|
|
L_025136D8: ; // 0x25136d8
|
|
/* 025136D8 */ _t2 = cpu->r[10] + 0x00000100u;
|
|
/* 025136D8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 025136DC */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 025136DC */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[11]);
|
|
/* 025136E0 */ _t4 = cpu->r[10] + 0x00000101u;
|
|
/* 025136E0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 025136E4 */ _t5 = cpu->r[4] + 0x00000001u;
|
|
/* 025136E4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 025136E8 */ _t6 = cpu->r[10] + 0x00000104u;
|
|
/* 025136E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 025136EC */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 025136EC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 025136F0 */ _t8 = cpu->r[10] + 0x00000108u;
|
|
/* 025136F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025136F4 */ _t9 = cpu->r[4] + 0x00000008u;
|
|
/* 025136F4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 025136F8 */ _t10 = cpu->r[10] + 0x0000010Cu;
|
|
/* 025136F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 025136FC */ _t11 = cpu->r[4] + 0x0000000Cu;
|
|
/* 025136FC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 02513700 */ _t12 = cpu->r[10] + 0x00000110u;
|
|
/* 02513700 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02513704 */ _t13 = cpu->r[4] + 0x00000010u;
|
|
/* 02513704 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 02513708 */ _t14 = cpu->r[10] + 0x00000114u;
|
|
/* 02513708 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0251370C */ _t15 = cpu->r[4] + 0x00000014u;
|
|
/* 0251370C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02513710 */ _t16 = cpu->r[10] + 0x00000118u;
|
|
/* 02513710 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02513714 */ _t17 = cpu->r[4] + 0x00000018u;
|
|
/* 02513714 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02513718 */ return;
|
|
}
|
|
|
|
// fn_0251371C @ 0x251371c
|
|
void Gambit_fn_0251371C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0251371C: ; // 0x251371c
|
|
/* 0251371C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0251371C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513720 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513720 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02513720 */ if (_t1) goto L_02513734; else goto L_02513724;
|
|
L_02513724: ; // 0x2513724
|
|
/* 02513724 */ cpu->r[6] = 0x00000000u;
|
|
/* 02513728 */ cpu->r[5] = 0x0000001Cu;
|
|
/* 0251372C */ cpu->r[3] = cpu->r[3] + 0x00000100u;
|
|
/* 02513730 */ rbrew_dispatch(cpu, 0x02d0a6e8u); return;
|
|
L_02513734: ; // 0x2513734
|
|
/* 02513734 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02513734 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02513738 */ _t3 = cpu->r[3] + 0x00000100u;
|
|
/* 02513738 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[11]);
|
|
/* 0251373C */ _t4 = cpu->r[4] + 0x00000001u;
|
|
/* 0251373C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02513740 */ _t5 = cpu->r[3] + 0x00000101u;
|
|
/* 02513740 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 02513744 */ _t6 = cpu->r[4] + 0x00000004u;
|
|
/* 02513744 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02513748 */ _t7 = cpu->r[3] + 0x00000104u;
|
|
/* 02513748 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 0251374C */ _t8 = cpu->r[4] + 0x00000008u;
|
|
/* 0251374C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02513750 */ _t9 = cpu->r[3] + 0x00000108u;
|
|
/* 02513750 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02513754 */ _t10 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02513754 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02513758 */ _t11 = cpu->r[3] + 0x0000010Cu;
|
|
/* 02513758 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 0251375C */ _t12 = cpu->r[4] + 0x00000010u;
|
|
/* 0251375C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02513760 */ _t13 = cpu->r[3] + 0x00000110u;
|
|
/* 02513760 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 02513764 */ _t14 = cpu->r[4] + 0x00000014u;
|
|
/* 02513764 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02513768 */ _t15 = cpu->r[3] + 0x00000114u;
|
|
/* 02513768 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 0251376C */ _t16 = cpu->r[4] + 0x00000018u;
|
|
/* 0251376C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02513770 */ _t17 = cpu->r[3] + 0x00000118u;
|
|
/* 02513770 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02513774 */ return;
|
|
}
|
|
|
|
// fn_02513778 @ 0x2513778
|
|
void Gambit_fn_02513778(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_02513778: ; // 0x2513778
|
|
/* 02513778 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02513778 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513778 */ cpu->r[1] = _t0;
|
|
/* 0251377C */ cpu->r[0] = cpu->lr;
|
|
/* 02513780 */ /* nop */
|
|
/* 02513784 */ cpu->r[28] = cpu->r[3];
|
|
/* 02513788 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0251378C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0251378C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02513790 */ cpu->r[29] = cpu->r[4];
|
|
/* 02513794 */ cpu->r[4] = cpu->r[5];
|
|
/* 02513794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02513798 */ cpu->r[30] = 0x00000001u;
|
|
/* 0251379C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251379C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0251379C */ if (_t3) goto L_025137AC; else goto L_025137A0;
|
|
L_025137A0: ; // 0x25137a0
|
|
/* 025137A0 */ _t4 = cpu->r[26] + 0xFFFF98F0u;
|
|
/* 025137A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025137A4 */ Gambit_fn_02827008(cpu);
|
|
/* 025137A8 */ cpu->r[30] = cpu->r[3];
|
|
L_025137AC: ; // 0x25137ac
|
|
/* 025137AC */ cpu->r[5] = 0x00000000u;
|
|
/* 025137B0 */ cpu->r[4] = cpu->r[29];
|
|
/* 025137B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 025137B8 */ Gambit_fn_026EFB50(cpu);
|
|
/* 025137BC */ cpu->r[3] = 0x0000004Cu;
|
|
/* 025137C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025137C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025137C8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025137C8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025137C8 */ if (_t6) goto L_02513810; else goto L_025137CC;
|
|
L_025137CC: ; // 0x25137cc
|
|
/* 025137CC */ cpu->r[31] = cpu->r[3];
|
|
/* 025137D0 */ Gambit_fn_02C1AE88(cpu);
|
|
/* 025137D4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025137D8 */ cpu->r[3] = cpu->r[31] + 0x0000003Cu;
|
|
/* 025137DC */ cpu->r[0] = cpu->r[0] + 0xFFFFF8F0u;
|
|
/* 025137E0 */ cpu->r[4] = 0x00000010u;
|
|
/* 025137E4 */ _t7 = cpu->r[31] + 0x00000020u;
|
|
/* 025137E4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 025137E8 */ Gambit_fn_02C89380(cpu);
|
|
/* 025137EC */ cpu->r[11] = cpu->r[31] + 0x0000003Cu;
|
|
/* 025137EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025137F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025137F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025137F0 */ if (_t9) goto L_025137F4; else goto L_025137FC;
|
|
L_025137F4: ; // 0x25137f4
|
|
/* 025137F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025137F8 */ Gambit_fn_02801A78(cpu);
|
|
L_025137FC: ; // 0x25137fc
|
|
/* 025137FC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02513800 */ Gambit_fn_02801A78(cpu);
|
|
/* 02513804 */ cpu->r[27] = cpu->r[3];
|
|
/* 02513804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02513808 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513808 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02513808 */ if (_t11) goto L_02513830; else goto L_0251380C;
|
|
L_0251380C: ; // 0x251380c
|
|
/* 0251380C */ goto L_02513824;
|
|
L_02513810: ; // 0x2513810
|
|
/* 02513810 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02513814 */ cpu->r[31] = 0x00000000u;
|
|
/* 02513818 */ Gambit_fn_02801A78(cpu);
|
|
/* 0251381C */ cpu->r[27] = cpu->r[3];
|
|
/* 0251381C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02513820 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513820 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02513820 */ if (_t13) goto L_02513830; else goto L_02513824;
|
|
L_02513824: ; // 0x2513824
|
|
/* 02513824 */ cpu->r[3] = cpu->r[27];
|
|
/* 02513828 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 0251382C */ Gambit_fn_02C89380(cpu);
|
|
L_02513830: ; // 0x2513830
|
|
/* 02513830 */ cpu->r[0] = 0x00000000u;
|
|
/* 02513834 */ _t14 = cpu->r[27] + 0x00000000u;
|
|
/* 02513834 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 02513838 */ cpu->r[3] = cpu->r[28];
|
|
/* 0251383C */ _t15 = cpu->r[27] + 0x00000004u;
|
|
/* 0251383C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02513840 */ cpu->r[4] = cpu->r[27];
|
|
/* 02513844 */ _t16 = cpu->r[27] + 0x00000008u;
|
|
/* 02513844 */ rbrew_write16(cpu->mem, _t16, (uint16_t)cpu->r[29]);
|
|
/* 02513848 */ Gambit_fn_026EFBAC(cpu);
|
|
/* 0251384C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000001u);
|
|
/* 02513850 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513850 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02513850 */ if (_t18) goto L_02513860; else goto L_02513854;
|
|
L_02513854: ; // 0x2513854
|
|
/* 02513854 */ _t19 = cpu->r[26] + 0xFFFF98F0u;
|
|
/* 02513854 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02513858 */ cpu->r[4] = cpu->r[30];
|
|
/* 0251385C */ Gambit_fn_02827008(cpu);
|
|
L_02513860: ; // 0x2513860
|
|
/* 02513860 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513864 */ /* nop */
|
|
/* 02513868 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 02513868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0251386C */ cpu->lr = cpu->r[0];
|
|
/* 02513870 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02513874 */ return;
|
|
}
|
|
|
|
// fn_02513878 @ 0x2513878
|
|
void Gambit_fn_02513878(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02513878: ; // 0x2513878
|
|
/* 02513878 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02513878 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513878 */ cpu->r[1] = _t0;
|
|
/* 0251387C */ cpu->r[0] = cpu->lr;
|
|
/* 02513880 */ /* nop */
|
|
/* 02513884 */ cpu->r[27] = cpu->r[3];
|
|
/* 02513888 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0251388C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0251388C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02513890 */ cpu->r[29] = cpu->r[4];
|
|
/* 02513894 */ cpu->r[4] = cpu->r[5];
|
|
/* 02513894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02513898 */ cpu->r[30] = 0x00000001u;
|
|
/* 0251389C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251389C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0251389C */ if (_t3) goto L_025138AC; else goto L_025138A0;
|
|
L_025138A0: ; // 0x25138a0
|
|
/* 025138A0 */ _t4 = cpu->r[26] + 0xFFFF98F0u;
|
|
/* 025138A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025138A4 */ Gambit_fn_02827008(cpu);
|
|
/* 025138A8 */ cpu->r[30] = cpu->r[3];
|
|
L_025138AC: ; // 0x25138ac
|
|
/* 025138AC */ cpu->r[5] = 0x00000000u;
|
|
/* 025138B0 */ cpu->r[4] = cpu->r[29];
|
|
/* 025138B4 */ cpu->r[3] = cpu->r[27];
|
|
/* 025138B8 */ Gambit_fn_026EFB50(cpu);
|
|
/* 025138BC */ cpu->r[3] = 0x00004930u;
|
|
/* 025138C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025138C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025138C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025138CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025138CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025138CC */ if (_t6) goto L_025138D8; else goto L_025138D0;
|
|
L_025138D0: ; // 0x25138d0
|
|
/* 025138D0 */ Gambit_fn_025135D0(cpu);
|
|
/* 025138D4 */ cpu->r[31] = cpu->r[3];
|
|
L_025138D8: ; // 0x25138d8
|
|
/* 025138D8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025138DC */ Gambit_fn_02801A78(cpu);
|
|
/* 025138E0 */ cpu->r[28] = cpu->r[3];
|
|
/* 025138E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 025138E4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025138E4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 025138E4 */ if (_t8) goto L_025138F4; else goto L_025138E8;
|
|
L_025138E8: ; // 0x25138e8
|
|
/* 025138E8 */ cpu->r[3] = cpu->r[28];
|
|
/* 025138EC */ cpu->r[4] = 0x0000000Cu;
|
|
/* 025138F0 */ Gambit_fn_02C89380(cpu);
|
|
L_025138F4: ; // 0x25138f4
|
|
/* 025138F4 */ cpu->r[0] = 0x00000000u;
|
|
/* 025138F8 */ _t9 = cpu->r[28] + 0x00000000u;
|
|
/* 025138F8 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 025138FC */ cpu->r[3] = cpu->r[27];
|
|
/* 02513900 */ _t10 = cpu->r[28] + 0x00000004u;
|
|
/* 02513900 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02513904 */ cpu->r[4] = cpu->r[28];
|
|
/* 02513908 */ _t11 = cpu->r[28] + 0x00000008u;
|
|
/* 02513908 */ rbrew_write16(cpu->mem, _t11, (uint16_t)cpu->r[29]);
|
|
/* 0251390C */ Gambit_fn_026EFBAC(cpu);
|
|
/* 02513910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000001u);
|
|
/* 02513914 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513914 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02513914 */ if (_t13) goto L_02513924; else goto L_02513918;
|
|
L_02513918: ; // 0x2513918
|
|
/* 02513918 */ _t14 = cpu->r[26] + 0xFFFF98F0u;
|
|
/* 02513918 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251391C */ cpu->r[4] = cpu->r[30];
|
|
/* 02513920 */ Gambit_fn_02827008(cpu);
|
|
L_02513924: ; // 0x2513924
|
|
/* 02513924 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513928 */ /* nop */
|
|
/* 0251392C */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0251392C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02513930 */ cpu->lr = cpu->r[0];
|
|
/* 02513934 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02513938 */ return;
|
|
}
|
|
|
|
// fn_0251393C @ 0x251393c
|
|
void Gambit_fn_0251393C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
|
|
L_024E9BA0: ; // 0x24e9ba0
|
|
/* 024E9BA0 */ cpu->r[0] = cpu->lr;
|
|
/* 024E9BA4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 024E9BA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024E9BA4 */ cpu->r[1] = _t0;
|
|
/* 024E9BA8 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 024E9BA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024E9BAC */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 024E9BAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024E9BB0 */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024E9BB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024E9BB4 */ _t4 = cpu->r[3] + 0x00000134u;
|
|
/* 024E9BB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024E9BB8 */ _t5 = cpu->r[7] + 0x000001ACu;
|
|
/* 024E9BB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024E9BBC */ cpu->r[31] = cpu->r[4];
|
|
/* 024E9BC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[5]);
|
|
/* 024E9BC4 */ cpu->r[5] = cpu->r[6];
|
|
/* 024E9BC8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024E9BC8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024E9BC8 */ if (_t7) goto L_024E9BCC; else goto L_024E9BE8;
|
|
L_024E9BCC: ; // 0x24e9bcc
|
|
/* 024E9BCC */ _t8 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024E9BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024E9BD0 */ _t9 = cpu->r[1] + 0x00000060u;
|
|
/* 024E9BD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024E9BD4 */ cpu->lr = cpu->r[0];
|
|
/* 024E9BD8 */ _t10 = cpu->r[1] + 0x00000064u;
|
|
/* 024E9BD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024E9BDC */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 024E9BE0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024E9BE4 */ return;
|
|
L_024E9BE8: ; // 0x24e9be8
|
|
/* 024E9BE8 */ cpu->r[30] = 0x101F0000u;
|
|
/* 024E9BEC */ cpu->r[12] = 0x10110000u;
|
|
/* 024E9BF0 */ _t11 = cpu->r[30] + 0x00003840u;
|
|
/* 024E9BF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024E9BF0 */ cpu->r[30] = _t11;
|
|
/* 024E9BF4 */ _t12 = cpu->r[30] + 0x00000004u;
|
|
/* 024E9BF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024E9BF8 */ cpu->r[12] = cpu->r[12] + 0xFFFFEFDCu;
|
|
/* 024E9BFC */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 024E9BFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024E9C00 */ cpu->r[11] = 0x101F0000u;
|
|
/* 024E9C04 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024E9C04 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 024E9C08 */ cpu->r[12] = cpu->r[1] + 0x00000028u;
|
|
/* 024E9C0C */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 024E9C0C */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 024E9C10 */ cpu->r[0] = 0x00000003u;
|
|
/* 024E9C14 */ cpu->r[11] = cpu->r[11] + 0x000037D8u;
|
|
/* 024E9C18 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 024E9C18 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 024E9C1C */ cpu->ctr = cpu->r[0];
|
|
/* 024E9C20 */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 024E9C20 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
L_024E9C24: ; // 0x24e9c24
|
|
/* 024E9C24 */ _t18 = cpu->r[11] + 0x00000004u;
|
|
/* 024E9C24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024E9C28 */ _t19 = cpu->r[12] + 0x00000004u;
|
|
/* 024E9C28 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 024E9C2C */ _t20 = cpu->r[11] + 0x00000008u;
|
|
/* 024E9C2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024E9C30 */ _t21 = cpu->r[12] + 0x00000008u;
|
|
/* 024E9C30 */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
/* 024E9C34 */ _t22 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024E9C34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024E9C34 */ cpu->r[11] = _t22;
|
|
/* 024E9C38 */ _t23 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024E9C38 */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 024E9C38 */ cpu->r[12] = _t23;
|
|
/* 024E9C3C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024E9C3C */ _t24 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024E9C3C */ _t25 = _t24 >> (0x00000002u & 31u);
|
|
/* 024E9C3C */ _t26 = _t25 & 0x00000001u;
|
|
/* 024E9C3C */ if (_t26) goto L_024E9C24; else goto L_024E9C40;
|
|
L_024E9C40: ; // 0x24e9c40
|
|
/* 024E9C40 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 024E9C40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024E9C44 */ _t28 = cpu->r[30] + 0x00000008u;
|
|
/* 024E9C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024E9C48 */ _t29 = cpu->r[30] + 0x00000004u;
|
|
/* 024E9C48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024E9C4C */ _t30 = cpu->r[1] + 0x00000058u;
|
|
/* 024E9C4C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 024E9C50 */ _t31 = cpu->r[1] + 0x00000054u;
|
|
/* 024E9C50 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 024E9C54 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024E9C58 */ _t32 = cpu->r[1] + 0x00000050u;
|
|
/* 024E9C58 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 024E9C5C */ Gambit_fn_024E9A28(cpu);
|
|
/* 024E9C60 */ cpu->r[8] = 0x100C0000u;
|
|
/* 024E9C64 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 024E9C64 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024E9C68 */ _t34 = cpu->r[8] + 0xFFFFB254u;
|
|
/* 024E9C68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 024E9C6C */ _t35 = cpu->r[30] + 0x00000008u;
|
|
/* 024E9C6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024E9C70 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 024E9C70 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 024E9C74 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 024E9C74 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 024E9C78 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024E9C7C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 024E9C7C */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 024E9C80 */ _t39 = cpu->r[31] + 0x00000008u;
|
|
/* 024E9C80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 024E9C84 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 024E9C84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 024E9C88 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 024E9C88 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 024E9C8C */ cpu->r[11] = 0x10110000u;
|
|
/* 024E9C90 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 024E9C90 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 024E9C94 */ cpu->r[11] = cpu->r[11] + 0xFFFFEF4Cu;
|
|
/* 024E9C98 */ _t43 = cpu->r[31] + 0x00000000u;
|
|
/* 024E9C98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 024E9C9C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024E9CA0 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 024E9CA0 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 024E9CA4 */ cpu->r[5] = 0x00000000u;
|
|
/* 024E9CA8 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024E9CA8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 024E9CAC */ Gambit_fn_027DE678(cpu);
|
|
/* 024E9CB0 */ _t46 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024E9CB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024E9CB4 */ _t47 = cpu->r[1] + 0x00000064u;
|
|
/* 024E9CB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024E9CB8 */ cpu->lr = cpu->r[0];
|
|
/* 024E9CBC */ _t48 = cpu->r[1] + 0x00000060u;
|
|
/* 024E9CBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024E9CC0 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 024E9CC4 */ return;
|
|
L_0251393C: ; // 0x251393c
|
|
/* 0251393C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE50u;
|
|
/* 02513940 */ goto L_024E9BA0;
|
|
}
|
|
|
|
// fn_02513944 @ 0x2513944
|
|
void Gambit_fn_02513944(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_024E9CD0: ; // 0x24e9cd0
|
|
/* 024E9CD0 */ cpu->r[0] = cpu->lr;
|
|
/* 024E9CD4 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 024E9CD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024E9CD4 */ cpu->r[1] = _t0;
|
|
/* 024E9CD8 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 024E9CD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024E9CDC */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024E9CDC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024E9CE0 */ cpu->r[30] = cpu->r[4];
|
|
/* 024E9CE4 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 024E9CE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024E9CE8 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024E9CE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024E9CEC */ cpu->r[29] = cpu->r[3];
|
|
/* 024E9CF0 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 024E9CF4 */ cpu->r[4] = cpu->r[29];
|
|
/* 024E9CF8 */ cpu->r[31] = cpu->r[5];
|
|
/* 024E9CFC */ Gambit_fn_024F51B0(cpu);
|
|
/* 024E9D00 */ _t5 = cpu->r[29] + 0x00000134u;
|
|
/* 024E9D00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024E9D04 */ _t6 = cpu->r[7] + 0x00000000u;
|
|
/* 024E9D04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024E9D08 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024E9D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024E9D0C */ /* nop */
|
|
/* 024E9D10 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024E9D10 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024E9D10 */ if (_t8) goto L_024E9DDC; else goto L_024E9D14;
|
|
L_024E9D14: ; // 0x24e9d14
|
|
/* 024E9D14 */ _t9 = cpu->r[7] + 0x00000030u;
|
|
/* 024E9D14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024E9D18 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024E9D18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024E9D1C */ cpu->f[7] = cpu->f[0] - cpu->f[8];
|
|
/* 024E9D20 */ /* nop */
|
|
/* 024E9D24 */ _t11 = cpu->r[1] + 0x00000034u;
|
|
/* 024E9D24 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[7]);
|
|
/* 024E9D28 */ /* nop */
|
|
/* 024E9D2C */ /* nop */
|
|
/* 024E9D30 */ /* nop */
|
|
/* 024E9D34 */ /* nop */
|
|
/* 024E9D38 */ /* nop */
|
|
/* 024E9D3C */ /* nop */
|
|
/* 024E9D40 */ /* nop */
|
|
/* 024E9D44 */ /* nop */
|
|
/* 024E9D48 */ cpu->f[12] = cpu->f[11];
|
|
/* 024E9D4C */ /* nop */
|
|
/* 024E9D50 */ cpu->f[6] = cpu->f[0];
|
|
/* 024E9D54 */ /* nop */
|
|
/* 024E9D58 */ _t12 = cpu->r[7] + 0x0000000Cu;
|
|
/* 024E9D58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024E9D5C */ cpu->f[11] = cpu->f[10];
|
|
/* 024E9D60 */ _t13 = cpu->r[7] + 0x00000024u;
|
|
/* 024E9D60 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024E9D64 */ cpu->f[13] = fma(cpu->f[7], cpu->f[0], cpu->f[12]);
|
|
/* 024E9D68 */ _t14 = cpu->r[7] + 0x00000018u;
|
|
/* 024E9D68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024E9D6C */ cpu->r[10] = 0x100C0000u;
|
|
/* 024E9D70 */ _t15 = cpu->r[10] + 0xFFFFB254u;
|
|
/* 024E9D70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024E9D74 */ cpu->f[12] = fma(cpu->f[7], cpu->f[12], cpu->f[11]);
|
|
/* 024E9D78 */ _t16 = cpu->r[7] + 0x00000034u;
|
|
/* 024E9D78 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024E9D7C */ cpu->f[10] = fma(cpu->f[7], cpu->f[10], cpu->f[6]);
|
|
/* 024E9D80 */ cpu->f[11] = cpu->f[0] / cpu->f[11];
|
|
/* 024E9D84 */ cpu->f[8] = cpu->f[13] * cpu->f[11];
|
|
/* 024E9D88 */ cpu->f[9] = cpu->f[12] * cpu->f[11];
|
|
/* 024E9D8C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024E9D8C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[8]);
|
|
/* 024E9D90 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 024E9D90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024E9D94 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024E9D94 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 024E9D98 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024E9D98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024E9D9C */ cpu->f[10] = cpu->f[10] * cpu->f[11];
|
|
/* 024E9DA0 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 024E9DA0 */ rbrew_write32(cpu->mem, _t21, cpu->r[6]);
|
|
/* 024E9DA4 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 024E9DA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024E9DA8 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 024E9DA8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 024E9DAC */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 024E9DAC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
/* 024E9DB0 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 024E9DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024E9DB4 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 024E9DB4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 024E9DB8 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 024E9DB8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024E9DBC */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 024E9DBC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 024E9DC0 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 024E9DC0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024E9DC4 */ _t30 = cpu->r[30] + 0x00000004u;
|
|
/* 024E9DC4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[8]);
|
|
/* 024E9DC8 */ _t31 = cpu->r[30] + 0x00000008u;
|
|
/* 024E9DC8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[9]);
|
|
/* 024E9DCC */ _t32 = cpu->r[29] + 0x00000134u;
|
|
/* 024E9DCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024E9DD0 */ Gambit_fn_02043A74(cpu);
|
|
/* 024E9DD4 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 024E9DD4 */ rbrew_write32(cpu->mem, _t33, cpu->r[3]);
|
|
/* 024E9DD8 */ goto L_024E9E60;
|
|
L_024E9DDC: ; // 0x24e9ddc
|
|
/* 024E9DDC */ /* nop */
|
|
/* 024E9DE0 */ /* nop */
|
|
/* 024E9DE4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 024E9DE8 */ /* nop */
|
|
/* 024E9DEC */ _t34 = cpu->r[7] + 0x00000034u;
|
|
/* 024E9DEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 024E9DF0 */ _t35 = cpu->r[10] + 0xFFFFB254u;
|
|
/* 024E9DF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 024E9DF4 */ _t36 = cpu->r[7] + 0x00000030u;
|
|
/* 024E9DF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 024E9DF8 */ cpu->f[11] = cpu->f[0] / cpu->f[11];
|
|
/* 024E9DFC */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 024E9DFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024E9E00 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024E9E00 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 024E9E04 */ cpu->f[8] = cpu->f[13] * cpu->f[11];
|
|
/* 024E9E08 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024E9E08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 024E9E0C */ cpu->f[10] = cpu->f[9] - cpu->f[10];
|
|
/* 024E9E10 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 024E9E10 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[8]);
|
|
/* 024E9E14 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 024E9E14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024E9E18 */ cpu->f[9] = cpu->f[12] * cpu->f[11];
|
|
/* 024E9E1C */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 024E9E1C */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 024E9E20 */ _t43 = cpu->r[1] + 0x00000020u;
|
|
/* 024E9E20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 024E9E24 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024E9E24 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[9]);
|
|
/* 024E9E28 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024E9E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024E9E2C */ cpu->f[10] = cpu->f[10] * cpu->f[11];
|
|
/* 024E9E30 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 024E9E30 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 024E9E34 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 024E9E34 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 024E9E38 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 024E9E38 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[10]);
|
|
/* 024E9E3C */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 024E9E3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024E9E40 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 024E9E40 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 024E9E44 */ _t51 = cpu->r[1] + 0x00000028u;
|
|
/* 024E9E44 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 024E9E48 */ _t52 = cpu->r[1] + 0x00000028u;
|
|
/* 024E9E48 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 024E9E4C */ _t53 = cpu->r[30] + 0x00000004u;
|
|
/* 024E9E4C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[8]);
|
|
/* 024E9E50 */ _t54 = cpu->r[30] + 0x00000008u;
|
|
/* 024E9E50 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[9]);
|
|
/* 024E9E54 */ _t55 = cpu->r[29] + 0x00000134u;
|
|
/* 024E9E54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024E9E58 */ Gambit_fn_02043A74(cpu);
|
|
/* 024E9E5C */ _t56 = cpu->r[31] + 0x00000000u;
|
|
/* 024E9E5C */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
L_024E9E60: ; // 0x24e9e60
|
|
/* 024E9E60 */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024E9E60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024E9E64 */ _t58 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024E9E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024E9E68 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 024E9E68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024E9E6C */ cpu->lr = cpu->r[0];
|
|
/* 024E9E70 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 024E9E70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024E9E74 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 024E9E78 */ return;
|
|
L_02513944: ; // 0x2513944
|
|
/* 02513944 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE50u;
|
|
/* 02513948 */ goto L_024E9CD0;
|
|
}
|
|
|
|
// fn_02513950 @ 0x2513950
|
|
void Gambit_fn_02513950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02513950: ; // 0x2513950
|
|
/* 02513950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513950 */ cpu->r[1] = _t0;
|
|
/* 02513954 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513954 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513958 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02513958 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0251395C */ cpu->r[31] = cpu->r[3];
|
|
/* 0251395C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513960 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513960 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02513964 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513964 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513964 */ if (_t5) goto L_02513968; else goto L_02513978;
|
|
L_02513968: ; // 0x2513968
|
|
/* 02513968 */ cpu->r[3] = 0x000005DCu;
|
|
/* 0251396C */ Gambit_fn_02801A78(cpu);
|
|
/* 02513970 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02513974 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513974 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02513974 */ if (_t7) goto L_025139E4; else goto L_02513978;
|
|
L_02513978: ; // 0x2513978
|
|
/* 02513978 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251397C */ Gambit_fn_024E9E84(cpu);
|
|
/* 02513980 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02513984 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02513988 */ cpu->r[12] = cpu->r[12] + 0xFFFFFB40u;
|
|
/* 0251398C */ cpu->r[0] = cpu->r[0] + 0xFFFFFEA0u;
|
|
/* 02513990 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02513990 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02513994 */ cpu->r[30] = 0x00000000u;
|
|
/* 02513998 */ _t9 = cpu->r[31] + 0x000001B0u;
|
|
/* 02513998 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0251399C */ _t10 = cpu->r[31] + 0x000005CCu;
|
|
/* 0251399C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[30]);
|
|
/* 025139A0 */ _t11 = cpu->r[31] + 0x000005C4u;
|
|
/* 025139A0 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 025139A4 */ cpu->r[3] = cpu->r[31] + 0x000005D0u;
|
|
/* 025139A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025139A8 */ _t12 = cpu->r[31] + 0x000005C8u;
|
|
/* 025139A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 025139AC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025139AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 025139AC */ if (_t14) goto L_025139B0; else goto L_025139C0;
|
|
L_025139B0: ; // 0x25139b0
|
|
/* 025139B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025139B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 025139B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025139BC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025139BC */ _t16 = _t15 & 0x00000001u;
|
|
/* 025139BC */ if (_t16) goto L_025139E4; else goto L_025139C0;
|
|
L_025139C0: ; // 0x25139c0
|
|
/* 025139C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025139C4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025139C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 025139C4 */ if (_t18) goto L_025139C8; else goto L_025139D8;
|
|
L_025139C8: ; // 0x25139c8
|
|
/* 025139C8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025139CC */ Gambit_fn_02801A78(cpu);
|
|
/* 025139D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025139D4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025139D4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 025139D4 */ if (_t20) goto L_025139E4; else goto L_025139D8;
|
|
L_025139D8: ; // 0x25139d8
|
|
/* 025139D8 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 025139D8 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 025139DC */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 025139DC */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 025139E0 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 025139E0 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
L_025139E4: ; // 0x25139e4
|
|
/* 025139E4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 025139E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025139E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025139EC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025139EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025139F0 */ cpu->lr = cpu->r[0];
|
|
/* 025139F4 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 025139F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025139F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025139FC */ return;
|
|
}
|
|
|
|
// fn_02513A00 @ 0x2513a00
|
|
void Gambit_fn_02513A00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273;
|
|
|
|
L_024EA798: ; // 0x24ea798
|
|
/* 024EA798 */ cpu->r[0] = cpu->lr;
|
|
/* 024EA79C */ _t0 = cpu->r[1] + 0xFFFFFC48u;
|
|
/* 024EA79C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024EA79C */ cpu->r[1] = _t0;
|
|
/* 024EA7A0 */ _t1 = cpu->r[1] + 0x00000398u;
|
|
/* 024EA7A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 024EA7A4 */ /* nop */
|
|
/* 024EA7A8 */ _t2 = cpu->r[1] + 0x000003A8u;
|
|
/* 024EA7A8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 024EA7AC */ /* nop */
|
|
/* 024EA7B0 */ _t3 = cpu->r[1] + 0x000003A0u;
|
|
/* 024EA7B0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 024EA7B4 */ _t4 = cpu->r[1] + 0x000003B0u;
|
|
/* 024EA7B4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 024EA7B8 */ _t5 = cpu->r[1] + 0x000003BCu;
|
|
/* 024EA7B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024EA7BC */ /* nop */
|
|
/* 024EA7C0 */ cpu->r[28] = cpu->r[3];
|
|
/* 024EA7C4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024EA7C8 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 024EA7CC */ Gambit_fn_024F6710(cpu);
|
|
/* 024EA7D0 */ cpu->r[5] = cpu->r[3];
|
|
/* 024EA7D4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024EA7D8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024EA7DC */ Gambit_fn_024F4798(cpu);
|
|
/* 024EA7E0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 024EA7E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024EA7E8 */ cpu->r[12] = cpu->r[12] + 0xFFFFB2ECu;
|
|
/* 024EA7EC */ cpu->r[26] = 0x100C0000u;
|
|
/* 024EA7F0 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 024EA7F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 024EA7F4 */ cpu->r[26] = cpu->r[26] + 0xFFFFB174u;
|
|
/* 024EA7F8 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 024EA7FC */ _t7 = cpu->r[1] + 0x00000048u;
|
|
/* 024EA7FC */ rbrew_write32(cpu->mem, _t7, cpu->r[26]);
|
|
/* 024EA800 */ Gambit_fn_020F08E8(cpu);
|
|
/* 024EA804 */ cpu->r[4] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 024EA808 */ cpu->r[11] = 0x100C0000u;
|
|
/* 024EA80C */ cpu->r[0] = cpu->r[3] - cpu->r[4];
|
|
/* 024EA810 */ _t8 = cpu->r[11] + 0xFFFFB258u;
|
|
/* 024EA810 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024EA814 */ cpu->r[25] = cpu->r[1] + 0x00000034u;
|
|
/* 024EA818 */ _t9 = cpu->r[28] + 0x00000510u;
|
|
/* 024EA818 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 024EA81C */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EA820 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024EA820 */ cpu->r[23] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024EA824 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024EA828 */ cpu->r[5] = cpu->r[5] + 0xFFFFB2B4u;
|
|
/* 024EA82C */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024EA82C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[31]);
|
|
/* 024EA830 */ cpu->r[3] = cpu->r[23];
|
|
/* 024EA834 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 024EA834 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 024EA838 */ cpu->r[24] = cpu->r[1] + 0x00000030u;
|
|
/* 024EA83C */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 024EA83C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[31]);
|
|
/* 024EA840 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EA844 */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EA848 */ cpu->r[4] = cpu->r[24];
|
|
/* 024EA84C */ cpu->r[3] = cpu->r[23];
|
|
/* 024EA850 */ cpu->r[5] = cpu->r[5] + 0xFFFFB2BCu;
|
|
/* 024EA854 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EA858 */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EA85C */ cpu->r[4] = cpu->r[25];
|
|
/* 024EA860 */ cpu->r[3] = cpu->r[23];
|
|
/* 024EA864 */ cpu->r[5] = cpu->r[5] + 0xFFFFB2C4u;
|
|
/* 024EA868 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EA86C */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EA870 */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 024EA870 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 024EA874 */ cpu->r[29] = cpu->r[1] + 0x0000003Cu;
|
|
/* 024EA878 */ cpu->r[5] = cpu->r[5] + 0xFFFFB2FCu;
|
|
/* 024EA87C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 024EA880 */ _t15 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024EA880 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[31]);
|
|
/* 024EA884 */ cpu->r[3] = cpu->r[23];
|
|
/* 024EA888 */ cpu->r[30] = cpu->r[1] + 0x00000040u;
|
|
/* 024EA88C */ _t16 = cpu->r[1] + 0x00000040u;
|
|
/* 024EA88C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 024EA890 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EA894 */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EA898 */ cpu->r[4] = cpu->r[29];
|
|
/* 024EA89C */ cpu->r[3] = cpu->r[23];
|
|
/* 024EA8A0 */ cpu->r[5] = cpu->r[5] + 0xFFFFB308u;
|
|
/* 024EA8A4 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EA8A8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EA8AC */ cpu->r[4] = cpu->r[30];
|
|
/* 024EA8B0 */ cpu->r[3] = cpu->r[23];
|
|
/* 024EA8B4 */ cpu->r[5] = cpu->r[5] + 0xFFFFB314u;
|
|
/* 024EA8B8 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EA8BC */ cpu->r[27] = 0x00000000u;
|
|
/* 024EA8C0 */ _t17 = cpu->r[28] + 0x00000564u;
|
|
/* 024EA8C0 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 024EA8C4 */ _t18 = cpu->r[31] + 0x000046E0u;
|
|
/* 024EA8C4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024EA8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024EA8CC */ _t19 = cpu->r[28] + 0x00000564u;
|
|
/* 024EA8CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024EA8D0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA8D0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024EA8D0 */ if (_t21) goto L_024EA904; else goto L_024EA8D4;
|
|
L_024EA8D4: ; // 0x24ea8d4
|
|
/* 024EA8D4 */ _t22 = cpu->r[31] + 0x000046C0u;
|
|
/* 024EA8D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024EA8D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000004u);
|
|
/* 024EA8DC */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EA8DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 024EA8DC */ if (_t24) goto L_024EA900; else goto L_024EA8E0;
|
|
L_024EA8E0: ; // 0x24ea8e0
|
|
/* 024EA8E0 */ _t25 = cpu->r[28] + 0x00000564u;
|
|
/* 024EA8E0 */ rbrew_write32(cpu->mem, _t25, cpu->r[27]);
|
|
/* 024EA8E4 */ _t26 = cpu->r[28] + 0x00000568u;
|
|
/* 024EA8E4 */ rbrew_write32(cpu->mem, _t26, cpu->r[27]);
|
|
/* 024EA8E8 */ _t27 = cpu->r[31] + 0x000046E1u;
|
|
/* 024EA8E8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t27);
|
|
/* 024EA8EC */ _t28 = cpu->r[28] + 0x00000564u;
|
|
/* 024EA8EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024EA8F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024EA8F4 */ _t29 = cpu->r[28] + 0x00000568u;
|
|
/* 024EA8F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024EA8F8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA8F8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 024EA8F8 */ if (_t31) goto L_024EA928; else goto L_024EA8FC;
|
|
L_024EA8FC: ; // 0x24ea8fc
|
|
/* 024EA8FC */ goto L_024EA918;
|
|
L_024EA900: ; // 0x24ea900
|
|
/* 024EA900 */ _t32 = cpu->r[28] + 0x00000564u;
|
|
/* 024EA900 */ rbrew_write32(cpu->mem, _t32, cpu->r[7]);
|
|
L_024EA904: ; // 0x24ea904
|
|
/* 024EA904 */ _t33 = cpu->r[28] + 0x00000568u;
|
|
/* 024EA904 */ rbrew_write32(cpu->mem, _t33, cpu->r[27]);
|
|
/* 024EA908 */ _t34 = cpu->r[31] + 0x000046E1u;
|
|
/* 024EA908 */ cpu->r[6] = rbrew_read8(cpu->mem, _t34);
|
|
/* 024EA90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024EA910 */ _t35 = cpu->r[28] + 0x00000568u;
|
|
/* 024EA910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024EA914 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA914 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024EA914 */ if (_t37) goto L_024EA928; else goto L_024EA918;
|
|
L_024EA918: ; // 0x24ea918
|
|
/* 024EA918 */ _t38 = cpu->r[31] + 0x000046C4u;
|
|
/* 024EA918 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024EA91C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000003u);
|
|
/* 024EA920 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EA920 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024EA920 */ if (_t40) goto L_024EA924; else goto L_024EA928;
|
|
L_024EA924: ; // 0x24ea924
|
|
/* 024EA924 */ _t41 = cpu->r[28] + 0x00000568u;
|
|
/* 024EA924 */ rbrew_write32(cpu->mem, _t41, cpu->r[4]);
|
|
L_024EA928: ; // 0x24ea928
|
|
/* 024EA928 */ cpu->r[7] = 0x00000003u;
|
|
/* 024EA92C */ cpu->r[10] = 0x100C0000u;
|
|
/* 024EA930 */ cpu->ctr = cpu->r[7];
|
|
/* 024EA934 */ _t42 = cpu->r[10] + 0xFFFFB2ACu;
|
|
/* 024EA934 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 024EA938 */ cpu->r[9] = 0x00000000u;
|
|
L_024EA93C: ; // 0x24ea93c
|
|
/* 024EA93C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 024EA940 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EA940 */ _t44 = _t43 & 0x00000001u;
|
|
/* 024EA940 */ if (_t44) goto L_024EA950; else goto L_024EA944;
|
|
L_024EA944: ; // 0x24ea944
|
|
/* 024EA944 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA944 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024EA944 */ if (_t46) goto L_024EA964; else goto L_024EA948;
|
|
L_024EA948: ; // 0x24ea948
|
|
/* 024EA948 */ cpu->r[4] = cpu->r[28] + 0x0000051Cu;
|
|
/* 024EA94C */ goto L_024EA968;
|
|
L_024EA950: ; // 0x24ea950
|
|
/* 024EA950 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 024EA954 */ cpu->r[4] = cpu->r[28] + 0x00000514u;
|
|
/* 024EA958 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EA958 */ _t48 = _t47 & 0x00000001u;
|
|
/* 024EA958 */ if (_t48) goto L_024EA97C; else goto L_024EA95C;
|
|
L_024EA95C: ; // 0x24ea95c
|
|
/* 024EA95C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA95C */ _t50 = _t49 & 0x00000001u;
|
|
/* 024EA95C */ if (_t50) goto L_024EA9A0; else goto L_024EA960;
|
|
L_024EA960: ; // 0x24ea960
|
|
/* 024EA960 */ goto L_024EA974;
|
|
L_024EA964: ; // 0x24ea964
|
|
/* 024EA964 */ cpu->r[4] = cpu->r[28] + 0x00000518u;
|
|
L_024EA968: ; // 0x24ea968
|
|
/* 024EA968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 024EA96C */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EA96C */ _t52 = _t51 & 0x00000001u;
|
|
/* 024EA96C */ if (_t52) goto L_024EA97C; else goto L_024EA970;
|
|
L_024EA970: ; // 0x24ea970
|
|
/* 024EA970 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA970 */ _t54 = _t53 & 0x00000001u;
|
|
/* 024EA970 */ if (_t54) goto L_024EA9A0; else goto L_024EA974;
|
|
L_024EA974: ; // 0x24ea974
|
|
/* 024EA974 */ cpu->r[6] = cpu->r[25];
|
|
/* 024EA978 */ goto L_024EA9A4;
|
|
L_024EA97C: ; // 0x24ea97c
|
|
/* 024EA97C */ _t55 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024EA97C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 024EA980 */ cpu->r[7] = 0x100C0000u;
|
|
/* 024EA984 */ cpu->f[9] = cpu->f[11] * cpu->f[30];
|
|
/* 024EA988 */ _t56 = cpu->r[7] + 0xFFFFB2B0u;
|
|
/* 024EA988 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 024EA98C */ cpu->f[12] = cpu->f[9] / cpu->f[6];
|
|
/* 024EA990 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024EA994 */ _t57 = cpu->r[4] + 0x00000000u;
|
|
/* 024EA994 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 024EA998 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024EA998 */ _t58 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024EA998 */ _t59 = _t58 >> (0x00000002u & 31u);
|
|
/* 024EA998 */ _t60 = _t59 & 0x00000001u;
|
|
/* 024EA998 */ if (_t60) goto L_024EA93C; else goto L_024EA99C;
|
|
L_024EA99C: ; // 0x24ea99c
|
|
/* 024EA99C */ goto L_024EA9C4;
|
|
L_024EA9A0: ; // 0x24ea9a0
|
|
/* 024EA9A0 */ cpu->r[6] = cpu->r[24];
|
|
L_024EA9A4: ; // 0x24ea9a4
|
|
/* 024EA9A4 */ _t61 = cpu->r[6] + 0x00000000u;
|
|
/* 024EA9A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 024EA9A8 */ cpu->r[7] = 0x100C0000u;
|
|
/* 024EA9AC */ cpu->f[9] = cpu->f[11] * cpu->f[30];
|
|
/* 024EA9B0 */ _t62 = cpu->r[7] + 0xFFFFB2B0u;
|
|
/* 024EA9B0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 024EA9B4 */ cpu->f[12] = cpu->f[9] / cpu->f[6];
|
|
/* 024EA9B8 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024EA9BC */ _t63 = cpu->r[4] + 0x00000000u;
|
|
/* 024EA9BC */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 024EA9C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024EA9C0 */ _t64 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024EA9C0 */ _t65 = _t64 >> (0x00000002u & 31u);
|
|
/* 024EA9C0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 024EA9C0 */ if (_t66) goto L_024EA93C; else goto L_024EA9C4;
|
|
L_024EA9C4: ; // 0x24ea9c4
|
|
/* 024EA9C4 */ cpu->r[3] = cpu->r[28] + 0x00000514u;
|
|
/* 024EA9C8 */ _t67 = cpu->r[28] + 0x00000511u;
|
|
/* 024EA9C8 */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[27]);
|
|
/* 024EA9CC */ Gambit_fn_02C69350(cpu);
|
|
/* 024EA9D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 024EA9D4 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EA9D4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 024EA9D4 */ if (_t69) goto L_024EA9E0; else goto L_024EA9D8;
|
|
L_024EA9D8: ; // 0x24ea9d8
|
|
/* 024EA9D8 */ cpu->r[7] = 0x00000001u;
|
|
/* 024EA9DC */ _t70 = cpu->r[28] + 0x00000511u;
|
|
/* 024EA9DC */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[7]);
|
|
L_024EA9E0: ; // 0x24ea9e0
|
|
/* 024EA9E0 */ cpu->r[6] = 0x00000003u;
|
|
/* 024EA9E4 */ cpu->ctr = cpu->r[6];
|
|
/* 024EA9E8 */ cpu->r[4] = 0x00000000u;
|
|
L_024EA9EC: ; // 0x24ea9ec
|
|
/* 024EA9EC */ _t71 = cpu->r[28] + 0x00000050u;
|
|
/* 024EA9EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024EA9F0 */ _t72 = cpu->r[6] + 0x000046CCu;
|
|
/* 024EA9F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 024EA9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024EA9F8 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EA9F8 */ _t74 = _t73 & 0x00000001u;
|
|
/* 024EA9F8 */ if (_t74) goto L_024EAA00; else goto L_024EA9FC;
|
|
L_024EA9FC: ; // 0x24ea9fc
|
|
/* 024EA9FC */ cpu->r[0] = 0x00000001u;
|
|
L_024EAA00: ; // 0x24eaa00
|
|
/* 024EAA00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000001u);
|
|
/* 024EAA04 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAA04 */ _t76 = _t75 & 0x00000001u;
|
|
/* 024EAA04 */ if (_t76) goto L_024EAA14; else goto L_024EAA08;
|
|
L_024EAA08: ; // 0x24eaa08
|
|
/* 024EAA08 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAA08 */ _t78 = _t77 & 0x00000001u;
|
|
/* 024EAA08 */ if (_t78) goto L_024EAA28; else goto L_024EAA0C;
|
|
L_024EAA0C: ; // 0x24eaa0c
|
|
/* 024EAA0C */ cpu->r[10] = cpu->r[28] + 0x0000052Cu;
|
|
/* 024EAA10 */ goto L_024EAA2C;
|
|
L_024EAA14: ; // 0x24eaa14
|
|
/* 024EAA14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000001u);
|
|
/* 024EAA18 */ cpu->r[10] = cpu->r[28] + 0x00000524u;
|
|
/* 024EAA1C */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAA1C */ _t80 = _t79 & 0x00000001u;
|
|
/* 024EAA1C */ if (_t80) goto L_024EAA40; else goto L_024EAA20;
|
|
L_024EAA20: ; // 0x24eaa20
|
|
/* 024EAA20 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAA20 */ _t82 = _t81 & 0x00000001u;
|
|
/* 024EAA20 */ if (_t82) goto L_024EAA80; else goto L_024EAA24;
|
|
L_024EAA24: ; // 0x24eaa24
|
|
/* 024EAA24 */ goto L_024EAA38;
|
|
L_024EAA28: ; // 0x24eaa28
|
|
/* 024EAA28 */ cpu->r[10] = cpu->r[28] + 0x00000528u;
|
|
L_024EAA2C: ; // 0x24eaa2c
|
|
/* 024EAA2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000001u);
|
|
/* 024EAA30 */ _t83 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAA30 */ _t84 = _t83 & 0x00000001u;
|
|
/* 024EAA30 */ if (_t84) goto L_024EAA40; else goto L_024EAA34;
|
|
L_024EAA34: ; // 0x24eaa34
|
|
/* 024EAA34 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAA34 */ _t86 = _t85 & 0x00000001u;
|
|
/* 024EAA34 */ if (_t86) goto L_024EAA80; else goto L_024EAA38;
|
|
L_024EAA38: ; // 0x24eaa38
|
|
/* 024EAA38 */ cpu->r[12] = cpu->r[30];
|
|
/* 024EAA3C */ goto L_024EAA84;
|
|
L_024EAA40: ; // 0x24eaa40
|
|
/* 024EAA40 */ cpu->r[11] = 0x100C0000u;
|
|
/* 024EAA44 */ _t87 = cpu->r[1] + 0x00000038u;
|
|
/* 024EAA44 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 024EAA48 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 024EAA4C */ _t88 = cpu->r[11] + 0xFFFFB148u;
|
|
/* 024EAA4C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 024EAA50 */ cpu->r[12] = 0x43300000u;
|
|
/* 024EAA54 */ _t89 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024EAA54 */ rbrew_write32(cpu->mem, _t89, cpu->r[0]);
|
|
/* 024EAA58 */ cpu->f[7] = cpu->f[8] * cpu->f[30];
|
|
/* 024EAA5C */ _t90 = cpu->r[1] + 0x00000018u;
|
|
/* 024EAA5C */ rbrew_write32(cpu->mem, _t90, cpu->r[12]);
|
|
/* 024EAA60 */ _t91 = cpu->r[1] + 0x00000018u;
|
|
/* 024EAA60 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 024EAA64 */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 024EAA68 */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 024EAA6C */ cpu->f[0] = cpu->f[7] / cpu->f[10];
|
|
/* 024EAA70 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 024EAA74 */ _t92 = cpu->r[10] + 0x00000000u;
|
|
/* 024EAA74 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
/* 024EAA78 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024EAA78 */ _t93 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024EAA78 */ _t94 = _t93 >> (0x00000002u & 31u);
|
|
/* 024EAA78 */ _t95 = _t94 & 0x00000001u;
|
|
/* 024EAA78 */ if (_t95) goto L_024EA9EC; else goto L_024EAA7C;
|
|
L_024EAA7C: ; // 0x24eaa7c
|
|
/* 024EAA7C */ goto L_024EAAC0;
|
|
L_024EAA80: ; // 0x24eaa80
|
|
/* 024EAA80 */ cpu->r[12] = cpu->r[29];
|
|
L_024EAA84: ; // 0x24eaa84
|
|
/* 024EAA84 */ cpu->r[11] = 0x100C0000u;
|
|
/* 024EAA88 */ _t96 = cpu->r[12] + 0x00000000u;
|
|
/* 024EAA88 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 024EAA8C */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 024EAA90 */ _t97 = cpu->r[11] + 0xFFFFB148u;
|
|
/* 024EAA90 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 024EAA94 */ cpu->r[12] = 0x43300000u;
|
|
/* 024EAA98 */ _t98 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024EAA98 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 024EAA9C */ cpu->f[7] = cpu->f[8] * cpu->f[30];
|
|
/* 024EAAA0 */ _t99 = cpu->r[1] + 0x00000018u;
|
|
/* 024EAAA0 */ rbrew_write32(cpu->mem, _t99, cpu->r[12]);
|
|
/* 024EAAA4 */ _t100 = cpu->r[1] + 0x00000018u;
|
|
/* 024EAAA4 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t100);
|
|
/* 024EAAA8 */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 024EAAAC */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 024EAAB0 */ cpu->f[0] = cpu->f[7] / cpu->f[10];
|
|
/* 024EAAB4 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 024EAAB8 */ _t101 = cpu->r[10] + 0x00000000u;
|
|
/* 024EAAB8 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[0]);
|
|
/* 024EAABC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024EAABC */ _t102 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024EAABC */ _t103 = _t102 >> (0x00000002u & 31u);
|
|
/* 024EAABC */ _t104 = _t103 & 0x00000001u;
|
|
/* 024EAABC */ if (_t104) goto L_024EA9EC; else goto L_024EAAC0;
|
|
L_024EAAC0: ; // 0x24eaac0
|
|
/* 024EAAC0 */ cpu->r[3] = cpu->r[28] + 0x00000524u;
|
|
/* 024EAAC4 */ _t105 = cpu->r[28] + 0x00000520u;
|
|
/* 024EAAC4 */ rbrew_write8(cpu->mem, _t105, (uint8_t)cpu->r[27]);
|
|
/* 024EAAC8 */ Gambit_fn_02C69350(cpu);
|
|
/* 024EAACC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 024EAAD0 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAAD0 */ _t107 = _t106 & 0x00000001u;
|
|
/* 024EAAD0 */ if (_t107) goto L_024EAADC; else goto L_024EAAD4;
|
|
L_024EAAD4: ; // 0x24eaad4
|
|
/* 024EAAD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024EAAD8 */ _t108 = cpu->r[28] + 0x00000520u;
|
|
/* 024EAAD8 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[0]);
|
|
L_024EAADC: ; // 0x24eaadc
|
|
/* 024EAADC */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EAAE0 */ cpu->r[4] = cpu->r[28] + 0x0000053Cu;
|
|
/* 024EAAE4 */ cpu->r[3] = cpu->r[23];
|
|
/* 024EAAE8 */ cpu->r[5] = cpu->r[5] + 0xFFFFB2CCu;
|
|
/* 024EAAEC */ Gambit_fn_027DBC88(cpu);
|
|
/* 024EAAF0 */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EAAF4 */ cpu->r[4] = cpu->r[28] + 0x00000540u;
|
|
/* 024EAAF8 */ cpu->r[3] = cpu->r[23];
|
|
/* 024EAAFC */ cpu->r[5] = cpu->r[5] + 0xFFFFB320u;
|
|
/* 024EAB00 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 024EAB04 */ cpu->r[5] = 0x100C0000u;
|
|
/* 024EAB08 */ cpu->r[4] = cpu->r[28] + 0x00000544u;
|
|
/* 024EAB0C */ cpu->r[3] = cpu->r[23];
|
|
/* 024EAB10 */ cpu->r[5] = cpu->r[5] + 0xFFFFB334u;
|
|
/* 024EAB14 */ Gambit_fn_027DBC88(cpu);
|
|
/* 024EAB18 */ _t109 = cpu->r[28] + 0x00000050u;
|
|
/* 024EAB18 */ cpu->r[29] = rbrew_read32(cpu->mem, _t109);
|
|
/* 024EAB1C */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024EAB20 */ cpu->r[4] = cpu->r[29] + 0x00000030u;
|
|
/* 024EAB24 */ Gambit_fn_02500A1C(cpu);
|
|
/* 024EAB28 */ _t110 = cpu->r[1] + 0x00000050u;
|
|
/* 024EAB28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t110);
|
|
/* 024EAB2C */ _t111 = cpu->r[6] + 0x00000014u;
|
|
/* 024EAB2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t111);
|
|
/* 024EAB30 */ cpu->ctr = cpu->r[7];
|
|
/* 024EAB34 */ _t112 = cpu->r[28] + 0x000001ECu;
|
|
/* 024EAB34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t112);
|
|
/* 024EAB38 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024EAB3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAB40 */ _t113 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024EAB40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 024EAB44 */ cpu->r[31] = 0x10110000u;
|
|
/* 024EAB48 */ _t114 = cpu->r[31] + 0x00007399u;
|
|
/* 024EAB48 */ cpu->r[31] = rbrew_read8(cpu->mem, _t114);
|
|
/* 024EAB4C */ _t115 = cpu->r[10] + 0x00000000u;
|
|
/* 024EAB4C */ cpu->r[8] = rbrew_read8(cpu->mem, _t115);
|
|
/* 024EAB50 */ cpu->r[0] = 0x00080000u;
|
|
/* 024EAB54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 024EAB58 */ cpu->r[30] = 0x00000000u;
|
|
/* 024EAB5C */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAB5C */ _t117 = _t116 & 0x00000001u;
|
|
/* 024EAB5C */ if (_t117) goto L_024EAB84; else goto L_024EAB60;
|
|
L_024EAB60: ; // 0x24eab60
|
|
/* 024EAB60 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024EAB64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 024EAB68 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 024EAB6C */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EAB6C */ _t119 = _t118 & 0x00000001u;
|
|
/* 024EAB6C */ if (_t119) goto L_024EAB80; else goto L_024EAB70;
|
|
L_024EAB70: ; // 0x24eab70
|
|
/* 024EAB70 */ _t120 = cpu->r[10] + 0x00000000u;
|
|
/* 024EAB70 */ cpu->r[9] = rbrew_read8(cpu->mem, _t120);
|
|
/* 024EAB74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 024EAB78 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAB78 */ _t122 = _t121 & 0x00000001u;
|
|
/* 024EAB78 */ if (_t122) goto L_024EAB7C; else goto L_024EAB60;
|
|
L_024EAB7C: ; // 0x24eab7c
|
|
/* 024EAB7C */ goto L_024EAB84;
|
|
L_024EAB80: ; // 0x24eab80
|
|
/* 024EAB80 */ cpu->r[30] = 0x00000000u;
|
|
L_024EAB84: ; // 0x24eab84
|
|
/* 024EAB84 */ _t123 = cpu->r[28] + 0x000001F4u;
|
|
/* 024EAB84 */ cpu->r[8] = rbrew_read32(cpu->mem, _t123);
|
|
/* 024EAB88 */ _t124 = cpu->r[1] + 0x00000050u;
|
|
/* 024EAB88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 024EAB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 024EAB90 */ _t125 = cpu->r[10] + 0x00000014u;
|
|
/* 024EAB90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t125);
|
|
/* 024EAB94 */ _t126 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAB94 */ _t127 = _t126 & 0x00000001u;
|
|
/* 024EAB94 */ if (_t127) goto L_024EAB9C; else goto L_024EAB98;
|
|
L_024EAB98: ; // 0x24eab98
|
|
/* 024EAB98 */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_024EAB9C: ; // 0x24eab9c
|
|
/* 024EAB9C */ cpu->ctr = cpu->r[11];
|
|
/* 024EABA0 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024EABA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EABA8 */ _t128 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024EABA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t128);
|
|
/* 024EABAC */ cpu->r[6] = 0x00000000u;
|
|
/* 024EABB0 */ cpu->r[5] = cpu->r[30];
|
|
/* 024EABB4 */ cpu->r[3] = cpu->r[29];
|
|
/* 024EABB8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024EABBC */ _t129 = cpu->r[29] + cpu->r[30];
|
|
/* 024EABBC */ rbrew_write8(cpu->mem, _t129, (uint8_t)cpu->r[31]);
|
|
/* 024EABC0 */ _t130 = cpu->r[1] + 0x0000015Cu;
|
|
/* 024EABC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 024EABC4 */ _t131 = cpu->r[12] + 0x00000014u;
|
|
/* 024EABC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 024EABC8 */ cpu->ctr = cpu->r[0];
|
|
/* 024EABCC */ _t132 = cpu->r[28] + 0x000002F8u;
|
|
/* 024EABCC */ cpu->r[29] = rbrew_read32(cpu->mem, _t132);
|
|
/* 024EABD0 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 024EABD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EABD8 */ _t133 = cpu->r[1] + 0x00000158u;
|
|
/* 024EABD8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t133);
|
|
/* 024EABDC */ _t134 = cpu->r[6] + 0x00000000u;
|
|
/* 024EABDC */ cpu->r[4] = rbrew_read8(cpu->mem, _t134);
|
|
/* 024EABE0 */ cpu->r[30] = 0x00000000u;
|
|
/* 024EABE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 024EABE8 */ cpu->r[0] = 0x00080000u;
|
|
/* 024EABEC */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EABEC */ _t136 = _t135 & 0x00000001u;
|
|
/* 024EABEC */ if (_t136) goto L_024EAC14; else goto L_024EABF0;
|
|
L_024EABF0: ; // 0x24eabf0
|
|
/* 024EABF0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024EABF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 024EABF8 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 024EABFC */ _t137 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EABFC */ _t138 = _t137 & 0x00000001u;
|
|
/* 024EABFC */ if (_t138) goto L_024EAC10; else goto L_024EAC00;
|
|
L_024EAC00: ; // 0x24eac00
|
|
/* 024EAC00 */ _t139 = cpu->r[6] + 0x00000000u;
|
|
/* 024EAC00 */ cpu->r[5] = rbrew_read8(cpu->mem, _t139);
|
|
/* 024EAC04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 024EAC08 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAC08 */ _t141 = _t140 & 0x00000001u;
|
|
/* 024EAC08 */ if (_t141) goto L_024EAC0C; else goto L_024EABF0;
|
|
L_024EAC0C: ; // 0x24eac0c
|
|
/* 024EAC0C */ goto L_024EAC14;
|
|
L_024EAC10: ; // 0x24eac10
|
|
/* 024EAC10 */ cpu->r[30] = 0x00000000u;
|
|
L_024EAC14: ; // 0x24eac14
|
|
/* 024EAC14 */ _t142 = cpu->r[28] + 0x00000300u;
|
|
/* 024EAC14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t142);
|
|
/* 024EAC18 */ _t143 = cpu->r[1] + 0x0000015Cu;
|
|
/* 024EAC18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t143);
|
|
/* 024EAC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 024EAC20 */ _t144 = cpu->r[6] + 0x00000014u;
|
|
/* 024EAC20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t144);
|
|
/* 024EAC24 */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAC24 */ _t146 = _t145 & 0x00000001u;
|
|
/* 024EAC24 */ if (_t146) goto L_024EAC2C; else goto L_024EAC28;
|
|
L_024EAC28: ; // 0x24eac28
|
|
/* 024EAC28 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_024EAC2C: ; // 0x24eac2c
|
|
/* 024EAC2C */ cpu->ctr = cpu->r[7];
|
|
/* 024EAC30 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 024EAC34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAC38 */ _t147 = cpu->r[1] + 0x00000158u;
|
|
/* 024EAC38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t147);
|
|
/* 024EAC3C */ cpu->r[6] = 0x00000000u;
|
|
/* 024EAC40 */ cpu->r[5] = cpu->r[30];
|
|
/* 024EAC44 */ cpu->r[3] = cpu->r[29];
|
|
/* 024EAC48 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024EAC4C */ _t148 = cpu->r[29] + cpu->r[30];
|
|
/* 024EAC4C */ rbrew_write8(cpu->mem, _t148, (uint8_t)cpu->r[31]);
|
|
/* 024EAC50 */ _t149 = cpu->r[1] + 0x00000268u;
|
|
/* 024EAC50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 024EAC54 */ _t150 = cpu->r[8] + 0x00000014u;
|
|
/* 024EAC54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t150);
|
|
/* 024EAC58 */ cpu->ctr = cpu->r[9];
|
|
/* 024EAC5C */ _t151 = cpu->r[28] + 0x00000404u;
|
|
/* 024EAC5C */ cpu->r[29] = rbrew_read32(cpu->mem, _t151);
|
|
/* 024EAC60 */ cpu->r[3] = cpu->r[1] + 0x00000264u;
|
|
/* 024EAC64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAC68 */ _t152 = cpu->r[1] + 0x00000264u;
|
|
/* 024EAC68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t152);
|
|
/* 024EAC6C */ _t153 = cpu->r[12] + 0x00000000u;
|
|
/* 024EAC6C */ cpu->r[0] = rbrew_read8(cpu->mem, _t153);
|
|
/* 024EAC70 */ cpu->r[30] = 0x00000000u;
|
|
/* 024EAC74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024EAC78 */ cpu->r[5] = 0x00080000u;
|
|
/* 024EAC7C */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAC7C */ _t155 = _t154 & 0x00000001u;
|
|
/* 024EAC7C */ if (_t155) goto L_024EACA4; else goto L_024EAC80;
|
|
L_024EAC80: ; // 0x24eac80
|
|
/* 024EAC80 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024EAC84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 024EAC88 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024EAC8C */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EAC8C */ _t157 = _t156 & 0x00000001u;
|
|
/* 024EAC8C */ if (_t157) goto L_024EACA0; else goto L_024EAC90;
|
|
L_024EAC90: ; // 0x24eac90
|
|
/* 024EAC90 */ _t158 = cpu->r[12] + 0x00000000u;
|
|
/* 024EAC90 */ cpu->r[0] = rbrew_read8(cpu->mem, _t158);
|
|
/* 024EAC94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024EAC98 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAC98 */ _t160 = _t159 & 0x00000001u;
|
|
/* 024EAC98 */ if (_t160) goto L_024EAC9C; else goto L_024EAC80;
|
|
L_024EAC9C: ; // 0x24eac9c
|
|
/* 024EAC9C */ goto L_024EACA4;
|
|
L_024EACA0: ; // 0x24eaca0
|
|
/* 024EACA0 */ cpu->r[30] = 0x00000000u;
|
|
L_024EACA4: ; // 0x24eaca4
|
|
/* 024EACA4 */ _t161 = cpu->r[28] + 0x0000040Cu;
|
|
/* 024EACA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t161);
|
|
/* 024EACA8 */ _t162 = cpu->r[1] + 0x00000268u;
|
|
/* 024EACA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t162);
|
|
/* 024EACAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024EACB0 */ _t163 = cpu->r[12] + 0x00000014u;
|
|
/* 024EACB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t163);
|
|
/* 024EACB4 */ _t164 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EACB4 */ _t165 = _t164 & 0x00000001u;
|
|
/* 024EACB4 */ if (_t165) goto L_024EACBC; else goto L_024EACB8;
|
|
L_024EACB8: ; // 0x24eacb8
|
|
/* 024EACB8 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024EACBC: ; // 0x24eacbc
|
|
/* 024EACBC */ cpu->ctr = cpu->r[4];
|
|
/* 024EACC0 */ cpu->r[3] = cpu->r[1] + 0x00000264u;
|
|
/* 024EACC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EACC8 */ _t166 = cpu->r[1] + 0x00000264u;
|
|
/* 024EACC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t166);
|
|
/* 024EACCC */ cpu->r[3] = cpu->r[29];
|
|
/* 024EACD0 */ cpu->r[5] = cpu->r[30];
|
|
/* 024EACD4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024EACD8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024EACDC */ _t167 = cpu->r[29] + cpu->r[30];
|
|
/* 024EACDC */ rbrew_write8(cpu->mem, _t167, (uint8_t)cpu->r[31]);
|
|
/* 024EACE0 */ _t168 = cpu->r[28] + 0x00000004u;
|
|
/* 024EACE0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t168);
|
|
/* 024EACE4 */ _t169 = cpu->r[5] + 0x00000124u;
|
|
/* 024EACE4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t169);
|
|
/* 024EACE8 */ cpu->ctr = cpu->r[6];
|
|
/* 024EACEC */ cpu->r[3] = cpu->r[28];
|
|
/* 024EACF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EACF4 */ _t170 = cpu->r[1] + 0x00000024u;
|
|
/* 024EACF4 */ rbrew_write32(cpu->mem, _t170, cpu->r[26]);
|
|
/* 024EACF8 */ cpu->r[7] = 0x100C0000u;
|
|
/* 024EACFC */ _t171 = cpu->r[1] + 0x00000020u;
|
|
/* 024EACFC */ rbrew_write32(cpu->mem, _t171, cpu->r[3]);
|
|
/* 024EAD00 */ cpu->r[7] = cpu->r[7] + 0xFFFFB2DCu;
|
|
/* 024EAD04 */ _t172 = cpu->r[1] + 0x00000014u;
|
|
/* 024EAD04 */ rbrew_write32(cpu->mem, _t172, cpu->r[26]);
|
|
/* 024EAD08 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 024EAD0C */ _t173 = cpu->r[1] + 0x00000010u;
|
|
/* 024EAD0C */ rbrew_write32(cpu->mem, _t173, cpu->r[7]);
|
|
/* 024EAD10 */ Gambit_fn_024ED5C8(cpu);
|
|
/* 024EAD14 */ _t174 = cpu->r[1] + 0x00000020u;
|
|
/* 024EAD14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t174);
|
|
/* 024EAD18 */ _t175 = cpu->r[10] + 0x00000000u;
|
|
/* 024EAD18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t175);
|
|
/* 024EAD1C */ cpu->r[29] = 0x00000000u;
|
|
/* 024EAD20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024EAD24 */ cpu->r[0] = 0x00080000u;
|
|
/* 024EAD28 */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAD28 */ _t177 = _t176 & 0x00000001u;
|
|
/* 024EAD28 */ if (_t177) goto L_024EAD50; else goto L_024EAD2C;
|
|
L_024EAD2C: ; // 0x24ead2c
|
|
/* 024EAD2C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 024EAD30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 024EAD34 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 024EAD38 */ _t178 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EAD38 */ _t179 = _t178 & 0x00000001u;
|
|
/* 024EAD38 */ if (_t179) goto L_024EAD4C; else goto L_024EAD3C;
|
|
L_024EAD3C: ; // 0x24ead3c
|
|
/* 024EAD3C */ _t180 = cpu->r[10] + 0x00000000u;
|
|
/* 024EAD3C */ cpu->r[9] = rbrew_read8(cpu->mem, _t180);
|
|
/* 024EAD40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 024EAD44 */ _t181 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAD44 */ _t182 = _t181 & 0x00000001u;
|
|
/* 024EAD44 */ if (_t182) goto L_024EAD48; else goto L_024EAD2C;
|
|
L_024EAD48: ; // 0x24ead48
|
|
/* 024EAD48 */ goto L_024EAD50;
|
|
L_024EAD4C: ; // 0x24ead4c
|
|
/* 024EAD4C */ cpu->r[29] = 0x00000000u;
|
|
L_024EAD50: ; // 0x24ead50
|
|
/* 024EAD50 */ _t183 = cpu->r[1] + 0x00000014u;
|
|
/* 024EAD50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t183);
|
|
/* 024EAD54 */ _t184 = cpu->r[10] + 0x00000014u;
|
|
/* 024EAD54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t184);
|
|
/* 024EAD58 */ cpu->ctr = cpu->r[11];
|
|
/* 024EAD5C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024EAD60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAD64 */ _t185 = cpu->r[1] + 0x00000010u;
|
|
/* 024EAD64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t185);
|
|
/* 024EAD68 */ _t186 = cpu->r[8] + 0x00000000u;
|
|
/* 024EAD68 */ cpu->r[12] = rbrew_read8(cpu->mem, _t186);
|
|
/* 024EAD6C */ cpu->r[30] = 0x00000000u;
|
|
/* 024EAD70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 024EAD74 */ cpu->r[9] = 0x00080000u;
|
|
/* 024EAD78 */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAD78 */ _t188 = _t187 & 0x00000001u;
|
|
/* 024EAD78 */ if (_t188) goto L_024EADA0; else goto L_024EAD7C;
|
|
L_024EAD7C: ; // 0x24ead7c
|
|
/* 024EAD7C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024EAD80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 024EAD84 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024EAD88 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EAD88 */ _t190 = _t189 & 0x00000001u;
|
|
/* 024EAD88 */ if (_t190) goto L_024EAD9C; else goto L_024EAD8C;
|
|
L_024EAD8C: ; // 0x24ead8c
|
|
/* 024EAD8C */ _t191 = cpu->r[8] + 0x00000000u;
|
|
/* 024EAD8C */ cpu->r[0] = rbrew_read8(cpu->mem, _t191);
|
|
/* 024EAD90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024EAD94 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAD94 */ _t193 = _t192 & 0x00000001u;
|
|
/* 024EAD94 */ if (_t193) goto L_024EAD98; else goto L_024EAD7C;
|
|
L_024EAD98: ; // 0x24ead98
|
|
/* 024EAD98 */ goto L_024EADA0;
|
|
L_024EAD9C: ; // 0x24ead9c
|
|
/* 024EAD9C */ cpu->r[30] = 0x00000000u;
|
|
L_024EADA0: ; // 0x24eada0
|
|
/* 024EADA0 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 024EADA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024EADA4 */ cpu->r[25] = 0x00000000u;
|
|
/* 024EADA8 */ _t194 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EADA8 */ _t195 = _t194 & 0x00000001u;
|
|
/* 024EADA8 */ if (_t195) goto L_024EAE70; else goto L_024EADAC;
|
|
L_024EADAC: ; // 0x24eadac
|
|
/* 024EADAC */ cpu->r[24] = cpu->r[31];
|
|
L_024EADB0: ; // 0x24eadb0
|
|
/* 024EADB0 */ _t196 = cpu->r[1] + 0x00000020u;
|
|
/* 024EADB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t196);
|
|
/* 024EADB4 */ _t197 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024EADB4 */ rbrew_write32(cpu->mem, _t197, cpu->r[26]);
|
|
/* 024EADB8 */ cpu->r[4] = cpu->r[5] + cpu->r[25];
|
|
/* 024EADBC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024EADC0 */ _t198 = cpu->r[1] + 0x00000008u;
|
|
/* 024EADC0 */ rbrew_write32(cpu->mem, _t198, cpu->r[4]);
|
|
/* 024EADC4 */ Gambit_fn_024ED5C8(cpu);
|
|
/* 024EADC8 */ _t199 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024EADC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t199);
|
|
/* 024EADCC */ _t200 = cpu->r[6] + 0x00000014u;
|
|
/* 024EADCC */ cpu->r[7] = rbrew_read32(cpu->mem, _t200);
|
|
/* 024EADD0 */ cpu->ctr = cpu->r[7];
|
|
/* 024EADD4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024EADD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EADDC */ _t201 = cpu->r[1] + 0x00000014u;
|
|
/* 024EADDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t201);
|
|
/* 024EADE0 */ _t202 = cpu->r[8] + 0x00000014u;
|
|
/* 024EADE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t202);
|
|
/* 024EADE4 */ cpu->ctr = cpu->r[9];
|
|
/* 024EADE8 */ _t203 = cpu->r[1] + 0x00000008u;
|
|
/* 024EADE8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t203);
|
|
/* 024EADEC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024EADF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EADF4 */ _t204 = cpu->r[1] + 0x00000010u;
|
|
/* 024EADF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t204);
|
|
/* 024EADF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[10]);
|
|
/* 024EADFC */ _t205 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EADFC */ _t206 = _t205 & 0x00000001u;
|
|
/* 024EADFC */ if (_t206) goto L_024EAE50; else goto L_024EAE00;
|
|
L_024EAE00: ; // 0x24eae00
|
|
/* 024EAE00 */ cpu->r[0] = cpu->r[30];
|
|
/* 024EAE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024EAE04 */ _t207 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EAE04 */ _t208 = _t207 & 0x00000001u;
|
|
/* 024EAE04 */ if (_t208) goto L_024EAE08; else goto L_024EAE50;
|
|
L_024EAE08: ; // 0x24eae08
|
|
/* 024EAE08 */ _t209 = cpu->r[1] + 0x00000010u;
|
|
/* 024EAE08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t209);
|
|
/* 024EAE0C */ cpu->ctr = cpu->r[0];
|
|
/* 024EAE10 */ _t210 = cpu->r[1] + 0x00000008u;
|
|
/* 024EAE10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t210);
|
|
L_024EAE14: ; // 0x24eae14
|
|
/* 024EAE14 */ _t211 = cpu->r[5] + 0x00000000u;
|
|
/* 024EAE14 */ cpu->r[0] = rbrew_read8(cpu->mem, _t211);
|
|
/* 024EAE18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[24]);
|
|
/* 024EAE1C */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAE1C */ _t213 = _t212 & 0x00000001u;
|
|
/* 024EAE1C */ if (_t213) goto L_024EAE20; else goto L_024EAE30;
|
|
L_024EAE20: ; // 0x24eae20
|
|
/* 024EAE20 */ _t214 = cpu->r[4] + 0x00000000u;
|
|
/* 024EAE20 */ cpu->r[11] = rbrew_read8(cpu->mem, _t214);
|
|
/* 024EAE24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[24]);
|
|
/* 024EAE28 */ _t215 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAE28 */ _t216 = _t215 & 0x00000001u;
|
|
/* 024EAE28 */ if (_t216) goto L_024EAE50; else goto L_024EAE2C;
|
|
L_024EAE2C: ; // 0x24eae2c
|
|
/* 024EAE2C */ goto L_024EAE64;
|
|
L_024EAE30: ; // 0x24eae30
|
|
/* 024EAE30 */ _t217 = cpu->r[4] + 0x00000000u;
|
|
/* 024EAE30 */ cpu->r[8] = rbrew_read8(cpu->mem, _t217);
|
|
/* 024EAE34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[24]);
|
|
/* 024EAE38 */ _t218 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAE38 */ _t219 = _t218 & 0x00000001u;
|
|
/* 024EAE38 */ if (_t219) goto L_024EAE64; else goto L_024EAE3C;
|
|
L_024EAE3C: ; // 0x24eae3c
|
|
/* 024EAE3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 024EAE40 */ _t220 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAE40 */ _t221 = _t220 & 0x00000001u;
|
|
/* 024EAE40 */ if (_t221) goto L_024EAE44; else goto L_024EAE64;
|
|
L_024EAE44: ; // 0x24eae44
|
|
/* 024EAE44 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 024EAE48 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 024EAE4C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024EAE4C */ _t222 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024EAE4C */ _t223 = _t222 >> (0x00000002u & 31u);
|
|
/* 024EAE4C */ _t224 = _t223 & 0x00000001u;
|
|
/* 024EAE4C */ if (_t224) goto L_024EAE14; else goto L_024EAE50;
|
|
L_024EAE50: ; // 0x24eae50
|
|
/* 024EAE50 */ _t225 = cpu->r[25] | cpu->r[25];
|
|
/* 024EAE50 */ cpu->r[12] = ~_t225;
|
|
/* 024EAE54 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024EAE58 */ cpu->r[0] = cpu->r[12] - cpu->r[0];
|
|
/* 024EAE58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024EAE5C */ _t226 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAE5C */ _t227 = _t226 & 0x00000001u;
|
|
/* 024EAE5C */ if (_t227) goto L_024EAE8C; else goto L_024EAE60;
|
|
L_024EAE60: ; // 0x24eae60
|
|
/* 024EAE60 */ goto L_024EAE80;
|
|
L_024EAE64: ; // 0x24eae64
|
|
/* 024EAE64 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 024EAE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[29]);
|
|
/* 024EAE6C */ _t228 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024EAE6C */ _t229 = _t228 & 0x00000001u;
|
|
/* 024EAE6C */ if (_t229) goto L_024EAE70; else goto L_024EADB0;
|
|
L_024EAE70: ; // 0x24eae70
|
|
/* 024EAE70 */ cpu->r[12] = 0x00000000u;
|
|
/* 024EAE74 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024EAE78 */ cpu->r[0] = ~cpu->r[0];
|
|
/* 024EAE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024EAE7C */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAE7C */ _t231 = _t230 & 0x00000001u;
|
|
/* 024EAE7C */ if (_t231) goto L_024EAE8C; else goto L_024EAE80;
|
|
L_024EAE80: ; // 0x24eae80
|
|
/* 024EAE80 */ cpu->r[4] = 0x00000001u;
|
|
/* 024EAE84 */ _t232 = cpu->r[28] + 0x00000580u;
|
|
/* 024EAE84 */ rbrew_write32(cpu->mem, _t232, cpu->r[4]);
|
|
/* 024EAE88 */ _t233 = cpu->r[28] + 0x00000580u;
|
|
/* 024EAE88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t233);
|
|
L_024EAE8C: ; // 0x24eae8c
|
|
/* 024EAE8C */ _t234 = cpu->r[28] + 0x00000050u;
|
|
/* 024EAE8C */ cpu->r[29] = rbrew_read32(cpu->mem, _t234);
|
|
/* 024EAE90 */ cpu->r[6] = 0x100C0000u;
|
|
/* 024EAE94 */ _t235 = cpu->r[28] + 0x000005B8u;
|
|
/* 024EAE94 */ rbrew_write8(cpu->mem, _t235, (uint8_t)cpu->r[27]);
|
|
/* 024EAE98 */ cpu->r[6] = cpu->r[6] + 0xFFFFB344u;
|
|
/* 024EAE9C */ _t236 = cpu->r[1] + 0x00000014u;
|
|
/* 024EAE9C */ rbrew_write32(cpu->mem, _t236, cpu->r[26]);
|
|
/* 024EAEA0 */ _t237 = cpu->r[1] + 0x00000010u;
|
|
/* 024EAEA0 */ rbrew_write32(cpu->mem, _t237, cpu->r[6]);
|
|
/* 024EAEA4 */ _t238 = cpu->r[29] + 0x00000034u;
|
|
/* 024EAEA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t238);
|
|
/* 024EAEA8 */ _t239 = cpu->r[7] + 0x00000014u;
|
|
/* 024EAEA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t239);
|
|
/* 024EAEAC */ cpu->ctr = cpu->r[8];
|
|
/* 024EAEB0 */ cpu->r[3] = cpu->r[29] + 0x00000030u;
|
|
/* 024EAEB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAEB8 */ _t240 = cpu->r[29] + 0x00000034u;
|
|
/* 024EAEB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t240);
|
|
/* 024EAEBC */ _t241 = cpu->r[9] + 0x00000014u;
|
|
/* 024EAEBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t241);
|
|
/* 024EAEC0 */ cpu->ctr = cpu->r[10];
|
|
/* 024EAEC4 */ cpu->r[3] = cpu->r[29] + 0x00000030u;
|
|
/* 024EAEC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAECC */ _t242 = cpu->r[1] + 0x00000014u;
|
|
/* 024EAECC */ cpu->r[11] = rbrew_read32(cpu->mem, _t242);
|
|
/* 024EAED0 */ _t243 = cpu->r[11] + 0x00000014u;
|
|
/* 024EAED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t243);
|
|
/* 024EAED4 */ cpu->ctr = cpu->r[0];
|
|
/* 024EAED8 */ _t244 = cpu->r[29] + 0x00000030u;
|
|
/* 024EAED8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t244);
|
|
/* 024EAEDC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024EAEE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024EAEE4 */ _t245 = cpu->r[1] + 0x00000010u;
|
|
/* 024EAEE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t245);
|
|
/* 024EAEE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[7]);
|
|
/* 024EAEEC */ _t246 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAEEC */ _t247 = _t246 & 0x00000001u;
|
|
/* 024EAEEC */ if (_t247) goto L_024EAF50; else goto L_024EAEF0;
|
|
L_024EAEF0: ; // 0x24eaef0
|
|
/* 024EAEF0 */ cpu->r[5] = 0x00080000u;
|
|
/* 024EAEF4 */ _t248 = cpu->r[29] + 0x00000030u;
|
|
/* 024EAEF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t248);
|
|
/* 024EAEF8 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 024EAEFC */ _t249 = cpu->r[1] + 0x00000010u;
|
|
/* 024EAEFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t249);
|
|
/* 024EAF00 */ cpu->ctr = cpu->r[5];
|
|
/* 024EAF04 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 024EAF08 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_024EAF0C: ; // 0x24eaf0c
|
|
/* 024EAF0C */ _t250 = cpu->r[11] + 0x00000001u;
|
|
/* 024EAF0C */ cpu->r[4] = rbrew_read8(cpu->mem, _t250);
|
|
/* 024EAF0C */ cpu->r[11] = _t250;
|
|
/* 024EAF10 */ _t251 = cpu->r[9] + 0x00000001u;
|
|
/* 024EAF10 */ cpu->r[8] = rbrew_read8(cpu->mem, _t251);
|
|
/* 024EAF10 */ cpu->r[9] = _t251;
|
|
/* 024EAF14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 024EAF18 */ _t252 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAF18 */ _t253 = _t252 & 0x00000001u;
|
|
/* 024EAF18 */ if (_t253) goto L_024EAF1C; else goto L_024EAF58;
|
|
L_024EAF1C: ; // 0x24eaf1c
|
|
/* 024EAF1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 024EAF20 */ _t254 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024EAF20 */ _t255 = _t254 & 0x00000001u;
|
|
/* 024EAF20 */ if (_t255) goto L_024EAF50; else goto L_024EAF24;
|
|
L_024EAF24: ; // 0x24eaf24
|
|
/* 024EAF24 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024EAF24 */ _t256 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024EAF24 */ _t257 = _t256 >> (0x00000002u & 31u);
|
|
/* 024EAF24 */ _t258 = _t257 & 0x00000001u;
|
|
/* 024EAF24 */ if (_t258) goto L_024EAF0C; else goto L_024EAF28;
|
|
L_024EAF28: ; // 0x24eaf28
|
|
/* 024EAF28 */ /* nop */
|
|
/* 024EAF2C */ _t259 = cpu->r[1] + 0x000003A0u;
|
|
/* 024EAF2C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 024EAF30 */ _t260 = cpu->r[1] + 0x000003B0u;
|
|
/* 024EAF30 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t260);
|
|
/* 024EAF34 */ _t261 = cpu->r[1] + 0x00000398u;
|
|
/* 024EAF34 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t261);
|
|
/* 024EAF38 */ _t262 = cpu->r[1] + 0x000003A8u;
|
|
/* 024EAF38 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t262);
|
|
/* 024EAF3C */ _t263 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAF3C */ _t264 = _t263 & 0x00000001u;
|
|
/* 024EAF3C */ if (_t264) goto L_024EAF40; // else: addr-0 trap, fall-through
|
|
L_024EAF40: ; // 0x24eaf40
|
|
/* 024EAF40 */ _t265 = cpu->r[1] + 0x000003BCu;
|
|
/* 024EAF40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t265);
|
|
/* 024EAF44 */ cpu->lr = cpu->r[0];
|
|
/* 024EAF48 */ cpu->r[1] = cpu->r[1] + 0x000003B8u;
|
|
/* 024EAF4C */ return;
|
|
L_024EAF50: ; // 0x24eaf50
|
|
/* 024EAF50 */ cpu->r[0] = 0x00000001u;
|
|
/* 024EAF54 */ _t266 = cpu->r[28] + 0x000005B8u;
|
|
/* 024EAF54 */ rbrew_write8(cpu->mem, _t266, (uint8_t)cpu->r[0]);
|
|
L_024EAF58: ; // 0x24eaf58
|
|
/* 024EAF58 */ /* nop */
|
|
/* 024EAF5C */ _t267 = cpu->r[1] + 0x000003A0u;
|
|
/* 024EAF5C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 024EAF60 */ _t268 = cpu->r[1] + 0x000003B0u;
|
|
/* 024EAF60 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t268);
|
|
/* 024EAF64 */ _t269 = cpu->r[1] + 0x00000398u;
|
|
/* 024EAF64 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t269);
|
|
/* 024EAF68 */ _t270 = cpu->r[1] + 0x000003A8u;
|
|
/* 024EAF68 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t270);
|
|
/* 024EAF6C */ _t271 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024EAF6C */ _t272 = _t271 & 0x00000001u;
|
|
/* 024EAF6C */ if (_t272) goto L_024EAF70; // else: addr-0 trap, fall-through
|
|
L_024EAF70: ; // 0x24eaf70
|
|
/* 024EAF70 */ _t273 = cpu->r[1] + 0x000003BCu;
|
|
/* 024EAF70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t273);
|
|
/* 024EAF74 */ cpu->lr = cpu->r[0];
|
|
/* 024EAF78 */ cpu->r[1] = cpu->r[1] + 0x000003B8u;
|
|
/* 024EAF7C */ return;
|
|
L_02513A00: ; // 0x2513a00
|
|
/* 02513A00 */ goto L_024EA798;
|
|
}
|
|
|
|
// fn_02513A04 @ 0x2513a04
|
|
void Gambit_fn_02513A04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_02513A04: ; // 0x2513a04
|
|
/* 02513A04 */ cpu->r[0] = cpu->lr;
|
|
/* 02513A08 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 02513A08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513A08 */ cpu->r[1] = _t0;
|
|
/* 02513A0C */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 02513A0C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02513A10 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02513A10 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02513A14 */ _t3 = cpu->r[1] + 0x00000060u;
|
|
/* 02513A14 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02513A18 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 02513A18 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02513A1C */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02513A1C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02513A20 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02513A20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02513A24 */ _t7 = cpu->r[8] + 0x00000234u;
|
|
/* 02513A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02513A28 */ cpu->ctr = cpu->r[0];
|
|
/* 02513A2C */ cpu->r[31] = cpu->r[3];
|
|
/* 02513A30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513A34 */ cpu->r[29] = 0x100C0000u;
|
|
/* 02513A38 */ cpu->r[5] = 0x00000000u;
|
|
/* 02513A3C */ cpu->r[29] = cpu->r[29] + 0xFFFFFA88u;
|
|
/* 02513A40 */ cpu->r[6] = cpu->r[5];
|
|
/* 02513A44 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02513A44 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02513A48 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02513A4C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02513A50 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02513A50 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02513A54 */ Gambit_fn_027C6980(cpu);
|
|
/* 02513A58 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02513A5C */ Gambit_fn_02982574(cpu);
|
|
/* 02513A60 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02513A64 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02513A68 */ _t10 = cpu->r[10] + 0xFFFF97D0u;
|
|
/* 02513A68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02513A6C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02513A70 */ _t11 = cpu->r[9] + 0xFFFF97D4u;
|
|
/* 02513A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02513A74 */ _t12 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 02513A74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02513A78 */ _t13 = cpu->r[1] + 0x00000044u;
|
|
/* 02513A78 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02513A7C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02513A80 */ _t14 = cpu->r[1] + 0x00000049u;
|
|
/* 02513A80 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 02513A84 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02513A88 */ _t15 = cpu->r[8] + 0xFFFF97D8u;
|
|
/* 02513A88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02513A8C */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 02513A8C */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02513A90 */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 02513A90 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[12]);
|
|
/* 02513A94 */ Gambit_fn_02984F3C(cpu);
|
|
/* 02513A98 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02513A9C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02513A9C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02513AA0 */ cpu->r[0] = cpu->r[0] + 0xFFFFFAF0u;
|
|
/* 02513AA4 */ _t19 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02513AA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02513AA8 */ cpu->r[7] = cpu->r[1] + 0x00000030u;
|
|
/* 02513AAC */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02513AAC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02513AB0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02513AB4 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02513AB4 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02513AB8 */ cpu->r[5] = cpu->r[6];
|
|
/* 02513ABC */ cpu->r[9] = 0x00000006u;
|
|
/* 02513AC0 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02513AC0 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02513AC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 02513AC8 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513ACC */ _t23 = cpu->r[1] + 0x00000050u;
|
|
/* 02513ACC */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 02513AD0 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 02513AD4 */ cpu->r[8] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02513AD8 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02513AD8 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 02513ADC */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02513AE0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513AE0 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02513AE4 */ Gambit_fn_023C982C(cpu);
|
|
/* 02513AE8 */ cpu->r[11] = 0x101C0000u;
|
|
/* 02513AEC */ _t26 = cpu->r[31] + 0x000005C4u;
|
|
/* 02513AEC */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02513AF0 */ _t27 = cpu->r[11] + 0x00006000u;
|
|
/* 02513AF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02513AF4 */ _t28 = cpu->r[11] + 0x0000025Cu;
|
|
/* 02513AF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02513AF8 */ _t29 = cpu->r[6] + 0x00000008u;
|
|
/* 02513AF8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02513AFC */ Gambit_fn_0297FD44(cpu);
|
|
/* 02513B00 */ cpu->r[4] = cpu->r[31];
|
|
/* 02513B04 */ cpu->r[3] = 0x00000000u;
|
|
/* 02513B08 */ Gambit_fn_024F7A74(cpu);
|
|
/* 02513B0C */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02513B0C */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02513B10 */ cpu->r[30] = 0x100C0000u;
|
|
/* 02513B14 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513B18 */ _t31 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513B18 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 02513B1C */ cpu->r[30] = cpu->r[30] + 0xFFFFFB00u;
|
|
/* 02513B20 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02513B24 */ cpu->r[5] = 0x00000000u;
|
|
/* 02513B28 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513B28 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 02513B2C */ Gambit_fn_027C6C00(cpu);
|
|
/* 02513B30 */ cpu->r[4] = cpu->r[3];
|
|
/* 02513B34 */ _t33 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513B34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02513B38 */ cpu->r[5] = cpu->r[30];
|
|
/* 02513B3C */ Gambit_fn_0204049C(cpu);
|
|
/* 02513B40 */ _t34 = cpu->r[1] + 0x00000058u;
|
|
/* 02513B40 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02513B44 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02513B44 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02513B48 */ _t36 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02513B48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02513B4C */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 02513B4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02513B50 */ cpu->lr = cpu->r[0];
|
|
/* 02513B54 */ _t38 = cpu->r[1] + 0x00000060u;
|
|
/* 02513B54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02513B58 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02513B5C */ return;
|
|
}
|
|
|
|
// fn_02513A08 @ 0x2513a08
|
|
void Gambit_fn_02513A08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_02513A08: ; // 0x2513a08
|
|
/* 02513A08 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 02513A08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513A08 */ cpu->r[1] = _t0;
|
|
/* 02513A0C */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 02513A0C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02513A10 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02513A10 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02513A14 */ _t3 = cpu->r[1] + 0x00000060u;
|
|
/* 02513A14 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02513A18 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 02513A18 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02513A1C */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02513A1C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02513A20 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02513A20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02513A24 */ _t7 = cpu->r[8] + 0x00000234u;
|
|
/* 02513A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02513A28 */ cpu->ctr = cpu->r[0];
|
|
/* 02513A2C */ cpu->r[31] = cpu->r[3];
|
|
/* 02513A30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513A34 */ cpu->r[29] = 0x100C0000u;
|
|
/* 02513A38 */ cpu->r[5] = 0x00000000u;
|
|
/* 02513A3C */ cpu->r[29] = cpu->r[29] + 0xFFFFFA88u;
|
|
/* 02513A40 */ cpu->r[6] = cpu->r[5];
|
|
/* 02513A44 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02513A44 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02513A48 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02513A4C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02513A50 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02513A50 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02513A54 */ Gambit_fn_027C6980(cpu);
|
|
/* 02513A58 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02513A5C */ Gambit_fn_02982574(cpu);
|
|
/* 02513A60 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02513A64 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02513A68 */ _t10 = cpu->r[10] + 0xFFFF97D0u;
|
|
/* 02513A68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02513A6C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02513A70 */ _t11 = cpu->r[9] + 0xFFFF97D4u;
|
|
/* 02513A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02513A74 */ _t12 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 02513A74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02513A78 */ _t13 = cpu->r[1] + 0x00000044u;
|
|
/* 02513A78 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02513A7C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02513A80 */ _t14 = cpu->r[1] + 0x00000049u;
|
|
/* 02513A80 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 02513A84 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02513A88 */ _t15 = cpu->r[8] + 0xFFFF97D8u;
|
|
/* 02513A88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02513A8C */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 02513A8C */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02513A90 */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 02513A90 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[12]);
|
|
/* 02513A94 */ Gambit_fn_02984F3C(cpu);
|
|
/* 02513A98 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02513A9C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02513A9C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02513AA0 */ cpu->r[0] = cpu->r[0] + 0xFFFFFAF0u;
|
|
/* 02513AA4 */ _t19 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02513AA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02513AA8 */ cpu->r[7] = cpu->r[1] + 0x00000030u;
|
|
/* 02513AAC */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02513AAC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02513AB0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02513AB4 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02513AB4 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02513AB8 */ cpu->r[5] = cpu->r[6];
|
|
/* 02513ABC */ cpu->r[9] = 0x00000006u;
|
|
/* 02513AC0 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02513AC0 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02513AC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 02513AC8 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513ACC */ _t23 = cpu->r[1] + 0x00000050u;
|
|
/* 02513ACC */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 02513AD0 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 02513AD4 */ cpu->r[8] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02513AD8 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02513AD8 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 02513ADC */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02513AE0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513AE0 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02513AE4 */ Gambit_fn_023C982C(cpu);
|
|
/* 02513AE8 */ cpu->r[11] = 0x101C0000u;
|
|
/* 02513AEC */ _t26 = cpu->r[31] + 0x000005C4u;
|
|
/* 02513AEC */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02513AF0 */ _t27 = cpu->r[11] + 0x00006000u;
|
|
/* 02513AF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02513AF4 */ _t28 = cpu->r[11] + 0x0000025Cu;
|
|
/* 02513AF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02513AF8 */ _t29 = cpu->r[6] + 0x00000008u;
|
|
/* 02513AF8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02513AFC */ Gambit_fn_0297FD44(cpu);
|
|
/* 02513B00 */ cpu->r[4] = cpu->r[31];
|
|
/* 02513B04 */ cpu->r[3] = 0x00000000u;
|
|
/* 02513B08 */ Gambit_fn_024F7A74(cpu);
|
|
/* 02513B0C */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02513B0C */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02513B10 */ cpu->r[30] = 0x100C0000u;
|
|
/* 02513B14 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513B18 */ _t31 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513B18 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 02513B1C */ cpu->r[30] = cpu->r[30] + 0xFFFFFB00u;
|
|
/* 02513B20 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02513B24 */ cpu->r[5] = 0x00000000u;
|
|
/* 02513B28 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513B28 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 02513B2C */ Gambit_fn_027C6C00(cpu);
|
|
/* 02513B30 */ cpu->r[4] = cpu->r[3];
|
|
/* 02513B34 */ _t33 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513B34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02513B38 */ cpu->r[5] = cpu->r[30];
|
|
/* 02513B3C */ Gambit_fn_0204049C(cpu);
|
|
/* 02513B40 */ _t34 = cpu->r[1] + 0x00000058u;
|
|
/* 02513B40 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02513B44 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02513B44 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02513B48 */ _t36 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02513B48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02513B4C */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 02513B4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02513B50 */ cpu->lr = cpu->r[0];
|
|
/* 02513B54 */ _t38 = cpu->r[1] + 0x00000060u;
|
|
/* 02513B54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02513B58 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02513B5C */ return;
|
|
}
|
|
|
|
// fn_02513B60 @ 0x2513b60
|
|
void Gambit_fn_02513B60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_02513B60: ; // 0x2513b60
|
|
/* 02513B60 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02513B60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513B60 */ cpu->r[1] = _t0;
|
|
/* 02513B64 */ /* nop */
|
|
/* 02513B68 */ cpu->r[0] = cpu->lr;
|
|
/* 02513B6C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513B6C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02513B70 */ cpu->r[28] = cpu->r[3];
|
|
/* 02513B74 */ _t2 = cpu->r[28] + 0x00000050u;
|
|
/* 02513B74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02513B78 */ _t3 = cpu->r[12] + 0x000023B8u;
|
|
/* 02513B78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513B80 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513B80 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513B80 */ if (_t5) goto L_02513C94; else goto L_02513B84;
|
|
L_02513B84: ; // 0x2513b84
|
|
/* 02513B84 */ _t6 = cpu->r[12] + 0x000023B8u;
|
|
/* 02513B84 */ cpu->r[24] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02513B88 */ cpu->r[25] = 0x00000000u;
|
|
/* 02513B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02513B90 */ cpu->r[29] = cpu->r[25];
|
|
/* 02513B94 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02513B94 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02513B94 */ if (_t8) goto L_02513B98; else goto L_02513C94;
|
|
L_02513B98: ; // 0x2513b98
|
|
/* 02513B98 */ cpu->r[31] = 0x10110000u;
|
|
/* 02513B9C */ cpu->r[27] = 0x100C0000u;
|
|
/* 02513BA0 */ cpu->r[26] = 0x100C0000u;
|
|
/* 02513BA4 */ cpu->r[23] = 0x00080000u;
|
|
/* 02513BA8 */ cpu->r[27] = cpu->r[27] + 0xFFFFFA88u;
|
|
/* 02513BAC */ _t9 = cpu->r[31] + 0x00007399u;
|
|
/* 02513BAC */ cpu->r[31] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02513BB0 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02513BB4 */ cpu->r[26] = cpu->r[26] + 0xFFFFFB14u;
|
|
L_02513BB8: ; // 0x2513bb8
|
|
/* 02513BB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000020u);
|
|
/* 02513BBC */ cpu->r[30] = cpu->r[12] + 0x000023BCu;
|
|
/* 02513BC0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02513BC0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02513BC0 */ if (_t11) goto L_02513BC4; else goto L_02513BCC;
|
|
L_02513BC4: ; // 0x2513bc4
|
|
/* 02513BC4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x00000118u);
|
|
/* 02513BC8 */ cpu->r[30] = cpu->r[30] + cpu->r[0];
|
|
L_02513BCC: ; // 0x2513bcc
|
|
/* 02513BCC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02513BCC */ rbrew_write32(cpu->mem, _t12, cpu->r[26]);
|
|
/* 02513BD0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513BD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[27]);
|
|
/* 02513BD4 */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 02513BD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02513BD8 */ _t15 = cpu->r[11] + 0x00000014u;
|
|
/* 02513BD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02513BDC */ cpu->ctr = cpu->r[5];
|
|
/* 02513BE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02513BE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513BE8 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 02513BE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02513BEC */ _t17 = cpu->r[10] + 0x00000014u;
|
|
/* 02513BEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02513BF0 */ cpu->ctr = cpu->r[4];
|
|
/* 02513BF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02513BF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513BFC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513BFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02513C00 */ _t19 = cpu->r[6] + 0x00000014u;
|
|
/* 02513C00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02513C04 */ cpu->ctr = cpu->r[0];
|
|
/* 02513C08 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 02513C08 */ cpu->r[22] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02513C0C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02513C10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513C14 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02513C14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02513C18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[8]);
|
|
/* 02513C1C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513C1C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02513C1C */ if (_t23) goto L_02513C60; else goto L_02513C20;
|
|
L_02513C20: ; // 0x2513c20
|
|
/* 02513C20 */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 02513C20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02513C24 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02513C24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02513C28 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02513C2C */ cpu->ctr = cpu->r[23];
|
|
/* 02513C30 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02513C34: ; // 0x2513c34
|
|
/* 02513C34 */ _t26 = cpu->r[12] + 0x00000001u;
|
|
/* 02513C34 */ cpu->r[9] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02513C34 */ cpu->r[12] = _t26;
|
|
/* 02513C38 */ _t27 = cpu->r[8] + 0x00000001u;
|
|
/* 02513C38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27);
|
|
/* 02513C38 */ cpu->r[8] = _t27;
|
|
/* 02513C3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 02513C40 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513C40 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02513C40 */ if (_t29) goto L_02513C44; else goto L_02513C64;
|
|
L_02513C44: ; // 0x2513c44
|
|
/* 02513C44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02513C48 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513C48 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02513C48 */ if (_t31) goto L_02513C60; else goto L_02513C4C;
|
|
L_02513C4C: ; // 0x2513c4c
|
|
/* 02513C4C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02513C4C */ _t32 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02513C4C */ _t33 = _t32 >> (0x00000002u & 31u);
|
|
/* 02513C4C */ _t34 = _t33 & 0x00000001u;
|
|
/* 02513C4C */ if (_t34) goto L_02513C34; else goto L_02513C50;
|
|
L_02513C50: ; // 0x2513c50
|
|
/* 02513C50 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02513C50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02513C54 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02513C58 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513C58 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02513C58 */ if (_t36) goto L_02513C5C; else goto L_02513C70;
|
|
L_02513C5C: ; // 0x2513c5c
|
|
/* 02513C5C */ goto L_02513C78;
|
|
L_02513C60: ; // 0x2513c60
|
|
/* 02513C60 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
L_02513C64: ; // 0x2513c64
|
|
/* 02513C64 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02513C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02513C68 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02513C6C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513C6C */ _t38 = _t37 & 0x00000001u;
|
|
/* 02513C6C */ if (_t38) goto L_02513C78; else goto L_02513C70;
|
|
L_02513C70: ; // 0x2513c70
|
|
/* 02513C70 */ _t39 = cpu->r[28] + 0x00000050u;
|
|
/* 02513C70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02513C74 */ goto L_02513BB8;
|
|
L_02513C78: ; // 0x2513c78
|
|
/* 02513C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02513C7C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513C7C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02513C7C */ if (_t41) goto L_02513C94; else goto L_02513C80;
|
|
L_02513C80: ; // 0x2513c80
|
|
/* 02513C80 */ cpu->r[6] = 0x00000004u;
|
|
/* 02513C84 */ cpu->r[5] = 0x00000000u;
|
|
/* 02513C88 */ cpu->r[4] = cpu->r[25];
|
|
/* 02513C8C */ cpu->r[3] = cpu->r[28] + 0x000005D0u;
|
|
/* 02513C90 */ Gambit_fn_028023CC(cpu);
|
|
L_02513C94: ; // 0x2513c94
|
|
/* 02513C94 */ /* nop */
|
|
/* 02513C98 */ _t42 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02513C9C */ cpu->lr = cpu->r[0];
|
|
/* 02513CA0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02513CA4 */ return;
|
|
}
|
|
|
|
// fn_02513CA8 @ 0x2513ca8
|
|
void Gambit_fn_02513CA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02513CA8: ; // 0x2513ca8
|
|
/* 02513CA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02513CAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513CAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513CAC */ cpu->r[1] = _t0;
|
|
/* 02513CB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513CB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513CB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513CB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513CBC */ Gambit_fn_024EAF80(cpu);
|
|
/* 02513CC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513CC4 */ Gambit_fn_02513A04(cpu);
|
|
/* 02513CC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513CCC */ Gambit_fn_02513B60(cpu);
|
|
/* 02513CD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513CD4 */ cpu->lr = cpu->r[0];
|
|
/* 02513CD8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513CD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02513CDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513CE0 */ return;
|
|
}
|
|
|
|
// fn_02513CAC @ 0x2513cac
|
|
void Gambit_fn_02513CAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02513CAC: ; // 0x2513cac
|
|
/* 02513CAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513CAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513CAC */ cpu->r[1] = _t0;
|
|
/* 02513CB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513CB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513CB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513CB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513CBC */ Gambit_fn_024EAF80(cpu);
|
|
/* 02513CC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513CC4 */ Gambit_fn_02513A04(cpu);
|
|
/* 02513CC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513CCC */ Gambit_fn_02513B60(cpu);
|
|
/* 02513CD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513CD4 */ cpu->lr = cpu->r[0];
|
|
/* 02513CD8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513CD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02513CDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513CE0 */ return;
|
|
}
|
|
|
|
// fn_02513CE4 @ 0x2513ce4
|
|
void Gambit_fn_02513CE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
|
|
L_02513CE4: ; // 0x2513ce4
|
|
/* 02513CE4 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02513CE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513CE4 */ cpu->r[1] = _t0;
|
|
/* 02513CE8 */ /* nop */
|
|
/* 02513CEC */ cpu->r[0] = cpu->lr;
|
|
/* 02513CF0 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02513CF4 */ cpu->r[28] = cpu->r[3];
|
|
/* 02513CF8 */ _t2 = cpu->r[28] + 0x00000050u;
|
|
/* 02513CF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02513CFC */ _t3 = cpu->r[12] + 0x000023B8u;
|
|
/* 02513CFC */ cpu->r[24] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02513D04 */ cpu->r[29] = 0x00000000u;
|
|
/* 02513D08 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02513D08 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513D08 */ if (_t5) goto L_02513D0C; else goto L_02513E38;
|
|
L_02513D0C: ; // 0x2513d0c
|
|
/* 02513D0C */ cpu->r[31] = 0x10110000u;
|
|
/* 02513D10 */ cpu->r[27] = 0x100C0000u;
|
|
/* 02513D14 */ cpu->r[26] = 0x100C0000u;
|
|
/* 02513D18 */ cpu->r[23] = 0x00080000u;
|
|
/* 02513D1C */ cpu->r[27] = cpu->r[27] + 0xFFFFFA88u;
|
|
/* 02513D20 */ _t6 = cpu->r[31] + 0x00007399u;
|
|
/* 02513D20 */ cpu->r[31] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02513D24 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02513D28 */ cpu->r[25] = 0x101C0000u;
|
|
/* 02513D2C */ cpu->r[26] = cpu->r[26] + 0xFFFFFB24u;
|
|
/* 02513D30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000020u);
|
|
/* 02513D34 */ cpu->r[30] = cpu->r[12] + 0x000023BCu;
|
|
/* 02513D38 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02513D38 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02513D38 */ if (_t8) goto L_02513D3C; else goto L_02513E34;
|
|
L_02513D3C: ; // 0x2513d3c
|
|
/* 02513D3C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x00000118u);
|
|
/* 02513D40 */ cpu->r[30] = cpu->r[30] + cpu->r[0];
|
|
L_02513D44: ; // 0x2513d44
|
|
/* 02513D44 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02513D44 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 02513D48 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513D48 */ rbrew_write32(cpu->mem, _t10, cpu->r[27]);
|
|
/* 02513D4C */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 02513D4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02513D50 */ _t12 = cpu->r[12] + 0x00000014u;
|
|
/* 02513D50 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02513D54 */ cpu->ctr = cpu->r[5];
|
|
/* 02513D58 */ cpu->r[3] = cpu->r[30];
|
|
/* 02513D5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513D60 */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 02513D60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02513D64 */ _t14 = cpu->r[11] + 0x00000014u;
|
|
/* 02513D64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02513D68 */ cpu->ctr = cpu->r[4];
|
|
/* 02513D6C */ cpu->r[3] = cpu->r[30];
|
|
/* 02513D70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513D74 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513D74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02513D78 */ _t16 = cpu->r[6] + 0x00000014u;
|
|
/* 02513D78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02513D7C */ cpu->ctr = cpu->r[7];
|
|
/* 02513D80 */ _t17 = cpu->r[30] + 0x00000000u;
|
|
/* 02513D80 */ cpu->r[22] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02513D84 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02513D88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513D8C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02513D8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02513D90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[8]);
|
|
/* 02513D94 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513D94 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02513D94 */ if (_t20) goto L_02513D98; else goto L_02513DBC;
|
|
L_02513D98: ; // 0x2513d98
|
|
/* 02513D98 */ _t21 = cpu->r[25] + 0x00006000u;
|
|
/* 02513D98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02513D9C */ _t22 = cpu->r[11] + 0x00000264u;
|
|
/* 02513D9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02513DA0 */ cpu->r[4] = cpu->r[30] + 0x0000008Cu;
|
|
/* 02513DA4 */ Gambit_fn_024FDCB0(cpu);
|
|
/* 02513DA8 */ _t23 = cpu->r[28] + 0x000005D0u;
|
|
/* 02513DA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02513DAC */ _t24 = cpu->r[28] + 0x000005D4u;
|
|
/* 02513DAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02513DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[11]);
|
|
/* 02513DB4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02513DB4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02513DB4 */ if (_t26) goto L_02513DB8; else goto L_02513E18;
|
|
L_02513DB8: ; // 0x2513db8
|
|
/* 02513DB8 */ goto L_02513E00;
|
|
L_02513DBC: ; // 0x2513dbc
|
|
/* 02513DBC */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 02513DBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02513DC0 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02513DC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02513DC4 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02513DC8 */ cpu->ctr = cpu->r[23];
|
|
/* 02513DCC */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_02513DD0: ; // 0x2513dd0
|
|
/* 02513DD0 */ _t29 = cpu->r[6] + 0x00000001u;
|
|
/* 02513DD0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 02513DD0 */ cpu->r[6] = _t29;
|
|
/* 02513DD4 */ _t30 = cpu->r[4] + 0x00000001u;
|
|
/* 02513DD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 02513DD4 */ cpu->r[4] = _t30;
|
|
/* 02513DD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02513DDC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513DDC */ _t32 = _t31 & 0x00000001u;
|
|
/* 02513DDC */ if (_t32) goto L_02513DE0; else goto L_02513DEC;
|
|
L_02513DE0: ; // 0x2513de0
|
|
/* 02513DE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02513DE4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513DE4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02513DE4 */ if (_t34) goto L_02513D98; else goto L_02513DE8;
|
|
L_02513DE8: ; // 0x2513de8
|
|
/* 02513DE8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02513DE8 */ _t35 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02513DE8 */ _t36 = _t35 >> (0x00000002u & 31u);
|
|
/* 02513DE8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02513DE8 */ if (_t37) goto L_02513DD0; else goto L_02513DEC;
|
|
L_02513DEC: ; // 0x2513dec
|
|
/* 02513DEC */ /* nop */
|
|
/* 02513DF0 */ _t38 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02513DF4 */ cpu->lr = cpu->r[0];
|
|
/* 02513DF8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02513DFC */ return;
|
|
L_02513E00: ; // 0x2513e00
|
|
/* 02513E00 */ _t39 = cpu->r[28] + 0x000005D8u;
|
|
/* 02513E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02513E04 */ cpu->r[12] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02513E08 */ _t40 = cpu->r[12] + cpu->r[0];
|
|
/* 02513E08 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 02513E0C */ _t41 = cpu->r[28] + 0x000005D0u;
|
|
/* 02513E0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02513E10 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02513E14 */ _t42 = cpu->r[28] + 0x000005D0u;
|
|
/* 02513E14 */ rbrew_write32(cpu->mem, _t42, cpu->r[5]);
|
|
L_02513E18: ; // 0x2513e18
|
|
/* 02513E18 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02513E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02513E1C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02513E20 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513E20 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02513E20 */ if (_t44) goto L_02513E38; else goto L_02513E24;
|
|
L_02513E24: ; // 0x2513e24
|
|
/* 02513E24 */ _t45 = cpu->r[28] + 0x00000050u;
|
|
/* 02513E24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02513E28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000020u);
|
|
/* 02513E2C */ cpu->r[30] = cpu->r[12] + 0x000023BCu;
|
|
/* 02513E30 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02513E30 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02513E30 */ if (_t47) goto L_02513D3C; else goto L_02513E34;
|
|
L_02513E34: ; // 0x2513e34
|
|
/* 02513E34 */ goto L_02513D44;
|
|
L_02513E38: ; // 0x2513e38
|
|
/* 02513E38 */ /* nop */
|
|
/* 02513E3C */ _t48 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513E3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02513E40 */ cpu->lr = cpu->r[0];
|
|
/* 02513E44 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02513E48 */ return;
|
|
}
|
|
|
|
// fn_02513E4C @ 0x2513e4c
|
|
void Gambit_fn_02513E4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02513E4C: ; // 0x2513e4c
|
|
/* 02513E4C */ cpu->r[0] = cpu->lr;
|
|
/* 02513E50 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513E50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513E50 */ cpu->r[1] = _t0;
|
|
/* 02513E54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513E54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513E58 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513E5C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513E5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513E60 */ Gambit_fn_024EB28C(cpu);
|
|
/* 02513E64 */ _t3 = cpu->r[31] + 0x000005D4u;
|
|
/* 02513E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513E68 */ cpu->r[12] = 0x00000000u;
|
|
/* 02513E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513E70 */ _t4 = cpu->r[31] + 0x000005CCu;
|
|
/* 02513E70 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02513E74 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02513E74 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02513E74 */ if (_t6) goto L_02513E78; else goto L_02513E8C;
|
|
L_02513E78: ; // 0x2513e78
|
|
/* 02513E78 */ _t7 = cpu->r[31] + 0x000005D0u;
|
|
/* 02513E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02513E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513E80 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513E80 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02513E80 */ if (_t9) goto L_02513E84; else goto L_02513E8C;
|
|
L_02513E84: ; // 0x2513e84
|
|
/* 02513E84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513E88 */ Gambit_fn_02513CE4(cpu);
|
|
L_02513E8C: ; // 0x2513e8c
|
|
/* 02513E8C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02513E8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02513E90 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513E90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02513E94 */ cpu->lr = cpu->r[0];
|
|
/* 02513E98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513E9C */ return;
|
|
}
|
|
|
|
// fn_02513E50 @ 0x2513e50
|
|
void Gambit_fn_02513E50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02513E50: ; // 0x2513e50
|
|
/* 02513E50 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513E50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513E50 */ cpu->r[1] = _t0;
|
|
/* 02513E54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513E54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513E58 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513E5C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513E5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513E60 */ Gambit_fn_024EB28C(cpu);
|
|
/* 02513E64 */ _t3 = cpu->r[31] + 0x000005D4u;
|
|
/* 02513E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513E68 */ cpu->r[12] = 0x00000000u;
|
|
/* 02513E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513E70 */ _t4 = cpu->r[31] + 0x000005CCu;
|
|
/* 02513E70 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02513E74 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02513E74 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02513E74 */ if (_t6) goto L_02513E78; else goto L_02513E8C;
|
|
L_02513E78: ; // 0x2513e78
|
|
/* 02513E78 */ _t7 = cpu->r[31] + 0x000005D0u;
|
|
/* 02513E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02513E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513E80 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513E80 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02513E80 */ if (_t9) goto L_02513E84; else goto L_02513E8C;
|
|
L_02513E84: ; // 0x2513e84
|
|
/* 02513E84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513E88 */ Gambit_fn_02513CE4(cpu);
|
|
L_02513E8C: ; // 0x2513e8c
|
|
/* 02513E8C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02513E8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02513E90 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513E90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02513E94 */ cpu->lr = cpu->r[0];
|
|
/* 02513E98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513E9C */ return;
|
|
}
|
|
|
|
// fn_02513EA0 @ 0x2513ea0
|
|
void Gambit_fn_02513EA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02513EA0: ; // 0x2513ea0
|
|
/* 02513EA0 */ cpu->r[0] = cpu->lr;
|
|
/* 02513EA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513EA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513EA4 */ cpu->r[1] = _t0;
|
|
/* 02513EA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513EA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513EAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02513EB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513EB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513EB4 */ _t3 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513EB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513EB8 */ _t4 = cpu->r[3] + 0x000001CCu;
|
|
/* 02513EB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02513EBC */ _t5 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02513EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02513EC0 */ cpu->ctr = cpu->r[0];
|
|
/* 02513EC4 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 02513EC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513ECC */ _t6 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02513ED0 */ _t7 = cpu->r[3] + 0x000001CCu;
|
|
/* 02513ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02513ED4 */ _t8 = cpu->r[12] + 0x00000024u;
|
|
/* 02513ED4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02513ED8 */ cpu->ctr = cpu->r[11];
|
|
/* 02513EDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513EE0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02513EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02513EE4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513EE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02513EE8 */ cpu->lr = cpu->r[0];
|
|
/* 02513EEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513EF0 */ return;
|
|
}
|
|
|
|
// fn_02513EA4 @ 0x2513ea4
|
|
void Gambit_fn_02513EA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02513EA4: ; // 0x2513ea4
|
|
/* 02513EA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513EA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513EA4 */ cpu->r[1] = _t0;
|
|
/* 02513EA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513EA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513EAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02513EB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513EB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513EB4 */ _t3 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513EB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513EB8 */ _t4 = cpu->r[3] + 0x000001CCu;
|
|
/* 02513EB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02513EBC */ _t5 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02513EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02513EC0 */ cpu->ctr = cpu->r[0];
|
|
/* 02513EC4 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 02513EC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513ECC */ _t6 = cpu->r[31] + 0x000005C8u;
|
|
/* 02513ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02513ED0 */ _t7 = cpu->r[3] + 0x000001CCu;
|
|
/* 02513ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02513ED4 */ _t8 = cpu->r[12] + 0x00000024u;
|
|
/* 02513ED4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02513ED8 */ cpu->ctr = cpu->r[11];
|
|
/* 02513EDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02513EE0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02513EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02513EE4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513EE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02513EE8 */ cpu->lr = cpu->r[0];
|
|
/* 02513EEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513EF0 */ return;
|
|
}
|
|
|
|
// fn_02513EF4 @ 0x2513ef4
|
|
void Gambit_fn_02513EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02513EF4: ; // 0x2513ef4
|
|
/* 02513EF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02513EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513EF8 */ cpu->r[1] = _t0;
|
|
/* 02513EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513F04 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513F08 */ Gambit_fn_024EC78C(cpu);
|
|
/* 02513F0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02513F10 */ Gambit_fn_02513EA0(cpu);
|
|
/* 02513F14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513F18 */ cpu->lr = cpu->r[0];
|
|
/* 02513F1C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513F1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02513F20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513F24 */ return;
|
|
}
|
|
|
|
// fn_02513EF8 @ 0x2513ef8
|
|
void Gambit_fn_02513EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02513EF8: ; // 0x2513ef8
|
|
/* 02513EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513EF8 */ cpu->r[1] = _t0;
|
|
/* 02513EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513F04 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513F08 */ Gambit_fn_024EC78C(cpu);
|
|
/* 02513F0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02513F10 */ Gambit_fn_02513EA0(cpu);
|
|
/* 02513F14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02513F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02513F18 */ cpu->lr = cpu->r[0];
|
|
/* 02513F1C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513F1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02513F20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02513F24 */ return;
|
|
}
|
|
|
|
// fn_02513F28 @ 0x2513f28
|
|
void Gambit_fn_02513F28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_02513F28: ; // 0x2513f28
|
|
/* 02513F28 */ cpu->r[0] = cpu->lr;
|
|
/* 02513F2C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02513F2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513F2C */ cpu->r[1] = _t0;
|
|
/* 02513F30 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513F30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513F34 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02513F34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513F38 */ _t3 = cpu->r[3] + 0x000005CCu;
|
|
/* 02513F38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02513F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513F40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513F40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513F40 */ if (_t5) goto L_02513F44; else goto L_02513FD4;
|
|
L_02513F44: ; // 0x2513f44
|
|
/* 02513F44 */ _t6 = cpu->r[3] + 0x00000060u;
|
|
/* 02513F44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02513F48 */ _t7 = cpu->r[3] + 0x00000054u;
|
|
/* 02513F48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02513F4C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513F4C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 02513F50 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02513F50 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02513F54 */ _t10 = cpu->r[3] + 0x00000064u;
|
|
/* 02513F54 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02513F58 */ _t11 = cpu->r[3] + 0x0000006Cu;
|
|
/* 02513F58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02513F5C */ _t12 = cpu->r[3] + 0x000005C4u;
|
|
/* 02513F5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02513F60 */ _t13 = cpu->r[3] + 0x00000078u;
|
|
/* 02513F60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02513F64 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02513F64 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 02513F68 */ _t15 = cpu->r[3] + 0x00000058u;
|
|
/* 02513F68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02513F6C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02513F6C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 02513F70 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02513F70 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02513F74 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02513F74 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 02513F78 */ _t19 = cpu->r[3] + 0x0000007Cu;
|
|
/* 02513F78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02513F7C */ _t20 = cpu->r[3] + 0x00000070u;
|
|
/* 02513F7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02513F80 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 02513F80 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 02513F84 */ _t22 = cpu->r[3] + 0x00000074u;
|
|
/* 02513F84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02513F88 */ _t23 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02513F88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02513F8C */ _t24 = cpu->r[3] + 0x00000080u;
|
|
/* 02513F8C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02513F90 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 02513F90 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[12]);
|
|
/* 02513F94 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02513F94 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02513F98 */ _t27 = cpu->r[3] + 0x00000068u;
|
|
/* 02513F98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02513F9C */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 02513F9C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02513FA0 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02513FA0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 02513FA4 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 02513FA4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02513FA8 */ _t31 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02513FA8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02513FAC */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02513FB0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02513FB4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02513FB8 */ _t32 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02513FB8 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 02513FBC */ Gambit_fn_02C69510(cpu);
|
|
/* 02513FC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513FC4 */ cpu->r[4] = 0x00000003u;
|
|
/* 02513FC8 */ Gambit_fn_02980304(cpu);
|
|
/* 02513FCC */ cpu->r[3] = cpu->r[31];
|
|
/* 02513FD0 */ Gambit_fn_02980318(cpu);
|
|
L_02513FD4: ; // 0x2513fd4
|
|
/* 02513FD4 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 02513FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02513FD8 */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513FD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02513FDC */ cpu->lr = cpu->r[0];
|
|
/* 02513FE0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02513FE4 */ return;
|
|
}
|
|
|
|
// fn_02513F2C @ 0x2513f2c
|
|
void Gambit_fn_02513F2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_02513F2C: ; // 0x2513f2c
|
|
/* 02513F2C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02513F2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513F2C */ cpu->r[1] = _t0;
|
|
/* 02513F30 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513F30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513F34 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02513F34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513F38 */ _t3 = cpu->r[3] + 0x000005CCu;
|
|
/* 02513F38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02513F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02513F40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02513F40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02513F40 */ if (_t5) goto L_02513F44; else goto L_02513FD4;
|
|
L_02513F44: ; // 0x2513f44
|
|
/* 02513F44 */ _t6 = cpu->r[3] + 0x00000060u;
|
|
/* 02513F44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02513F48 */ _t7 = cpu->r[3] + 0x00000054u;
|
|
/* 02513F48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02513F4C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513F4C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 02513F50 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02513F50 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02513F54 */ _t10 = cpu->r[3] + 0x00000064u;
|
|
/* 02513F54 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02513F58 */ _t11 = cpu->r[3] + 0x0000006Cu;
|
|
/* 02513F58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02513F5C */ _t12 = cpu->r[3] + 0x000005C4u;
|
|
/* 02513F5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02513F60 */ _t13 = cpu->r[3] + 0x00000078u;
|
|
/* 02513F60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02513F64 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02513F64 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 02513F68 */ _t15 = cpu->r[3] + 0x00000058u;
|
|
/* 02513F68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02513F6C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02513F6C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 02513F70 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02513F70 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02513F74 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02513F74 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 02513F78 */ _t19 = cpu->r[3] + 0x0000007Cu;
|
|
/* 02513F78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02513F7C */ _t20 = cpu->r[3] + 0x00000070u;
|
|
/* 02513F7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02513F80 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 02513F80 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 02513F84 */ _t22 = cpu->r[3] + 0x00000074u;
|
|
/* 02513F84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02513F88 */ _t23 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02513F88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02513F8C */ _t24 = cpu->r[3] + 0x00000080u;
|
|
/* 02513F8C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02513F90 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 02513F90 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[12]);
|
|
/* 02513F94 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02513F94 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02513F98 */ _t27 = cpu->r[3] + 0x00000068u;
|
|
/* 02513F98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02513F9C */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 02513F9C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02513FA0 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02513FA0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 02513FA4 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 02513FA4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02513FA8 */ _t31 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02513FA8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02513FAC */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02513FB0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02513FB4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02513FB8 */ _t32 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02513FB8 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 02513FBC */ Gambit_fn_02C69510(cpu);
|
|
/* 02513FC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02513FC4 */ cpu->r[4] = 0x00000003u;
|
|
/* 02513FC8 */ Gambit_fn_02980304(cpu);
|
|
/* 02513FCC */ cpu->r[3] = cpu->r[31];
|
|
/* 02513FD0 */ Gambit_fn_02980318(cpu);
|
|
L_02513FD4: ; // 0x2513fd4
|
|
/* 02513FD4 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 02513FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02513FD8 */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02513FD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02513FDC */ cpu->lr = cpu->r[0];
|
|
/* 02513FE0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02513FE4 */ return;
|
|
}
|
|
|
|
// fn_02513FE8 @ 0x2513fe8
|
|
void Gambit_fn_02513FE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02513FE8: ; // 0x2513fe8
|
|
/* 02513FE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02513FEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513FEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513FEC */ cpu->r[1] = _t0;
|
|
/* 02513FF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513FF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513FF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513FF8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513FF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513FFC */ Gambit_fn_024EC96C(cpu);
|
|
/* 02514000 */ cpu->r[3] = cpu->r[31];
|
|
/* 02514004 */ Gambit_fn_02513F28(cpu);
|
|
/* 02514008 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02514008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0251400C */ cpu->lr = cpu->r[0];
|
|
/* 02514010 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514010 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514014 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514018 */ return;
|
|
}
|
|
|
|
// fn_02513FEC @ 0x2513fec
|
|
void Gambit_fn_02513FEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02513FEC: ; // 0x2513fec
|
|
/* 02513FEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02513FEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02513FEC */ cpu->r[1] = _t0;
|
|
/* 02513FF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02513FF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02513FF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02513FF8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02513FF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02513FFC */ Gambit_fn_024EC96C(cpu);
|
|
/* 02514000 */ cpu->r[3] = cpu->r[31];
|
|
/* 02514004 */ Gambit_fn_02513F28(cpu);
|
|
/* 02514008 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02514008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0251400C */ cpu->lr = cpu->r[0];
|
|
/* 02514010 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514010 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514014 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514018 */ return;
|
|
}
|
|
|
|
// fn_0251401C @ 0x251401c
|
|
void Gambit_fn_0251401C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0251401C: ; // 0x251401c
|
|
/* 0251401C */ cpu->r[0] = cpu->lr;
|
|
/* 02514020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514020 */ cpu->r[1] = _t0;
|
|
/* 02514024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02514028 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02514028 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0251402C */ _t3 = cpu->r[3] + 0x000005C8u;
|
|
/* 0251402C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02514030 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514030 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02514034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02514038 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514038 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02514038 */ if (_t6) goto L_0251403C; else goto L_0251404C;
|
|
L_0251403C: ; // 0x251403c
|
|
/* 0251403C */ cpu->r[3] = cpu->r[31];
|
|
/* 02514040 */ Gambit_fn_0203F288(cpu);
|
|
/* 02514044 */ cpu->r[12] = 0x00000001u;
|
|
/* 02514048 */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514048 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
L_0251404C: ; // 0x251404c
|
|
/* 0251404C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0251404C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02514050 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514050 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02514054 */ cpu->lr = cpu->r[0];
|
|
/* 02514058 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251405C */ return;
|
|
}
|
|
|
|
// fn_02514020 @ 0x2514020
|
|
void Gambit_fn_02514020(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02514020: ; // 0x2514020
|
|
/* 02514020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514020 */ cpu->r[1] = _t0;
|
|
/* 02514024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02514028 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02514028 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0251402C */ _t3 = cpu->r[3] + 0x000005C8u;
|
|
/* 0251402C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02514030 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514030 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02514034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02514038 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514038 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02514038 */ if (_t6) goto L_0251403C; else goto L_0251404C;
|
|
L_0251403C: ; // 0x251403c
|
|
/* 0251403C */ cpu->r[3] = cpu->r[31];
|
|
/* 02514040 */ Gambit_fn_0203F288(cpu);
|
|
/* 02514044 */ cpu->r[12] = 0x00000001u;
|
|
/* 02514048 */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514048 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
L_0251404C: ; // 0x251404c
|
|
/* 0251404C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0251404C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02514050 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514050 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02514054 */ cpu->lr = cpu->r[0];
|
|
/* 02514058 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251405C */ return;
|
|
}
|
|
|
|
// fn_02514060 @ 0x2514060
|
|
void Gambit_fn_02514060(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02514060: ; // 0x2514060
|
|
/* 02514060 */ cpu->r[0] = cpu->lr;
|
|
/* 02514064 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514064 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514064 */ cpu->r[1] = _t0;
|
|
/* 02514068 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514068 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251406C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251406C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02514070 */ _t3 = cpu->r[3] + 0x000005C8u;
|
|
/* 02514070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02514074 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514074 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02514078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251407C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251407C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0251407C */ if (_t6) goto L_0251409C; else goto L_02514080;
|
|
L_02514080: ; // 0x2514080
|
|
/* 02514080 */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514080 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02514084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02514088 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514088 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02514088 */ if (_t9) goto L_0251409C; else goto L_0251408C;
|
|
L_0251408C: ; // 0x251408c
|
|
/* 0251408C */ cpu->r[3] = cpu->r[31];
|
|
/* 02514090 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 02514094 */ cpu->r[0] = 0x00000000u;
|
|
/* 02514098 */ _t10 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514098 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
L_0251409C: ; // 0x251409c
|
|
/* 0251409C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0251409C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025140A0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025140A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025140A4 */ cpu->lr = cpu->r[0];
|
|
/* 025140A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025140AC */ return;
|
|
}
|
|
|
|
// fn_02514064 @ 0x2514064
|
|
void Gambit_fn_02514064(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02514064: ; // 0x2514064
|
|
/* 02514064 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514064 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514064 */ cpu->r[1] = _t0;
|
|
/* 02514068 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514068 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251406C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251406C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02514070 */ _t3 = cpu->r[3] + 0x000005C8u;
|
|
/* 02514070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02514074 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514074 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02514078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251407C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251407C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0251407C */ if (_t6) goto L_0251409C; else goto L_02514080;
|
|
L_02514080: ; // 0x2514080
|
|
/* 02514080 */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514080 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02514084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02514088 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514088 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02514088 */ if (_t9) goto L_0251409C; else goto L_0251408C;
|
|
L_0251408C: ; // 0x251408c
|
|
/* 0251408C */ cpu->r[3] = cpu->r[31];
|
|
/* 02514090 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 02514094 */ cpu->r[0] = 0x00000000u;
|
|
/* 02514098 */ _t10 = cpu->r[31] + 0x000001E8u;
|
|
/* 02514098 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
L_0251409C: ; // 0x251409c
|
|
/* 0251409C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0251409C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025140A0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025140A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025140A4 */ cpu->lr = cpu->r[0];
|
|
/* 025140A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025140AC */ return;
|
|
}
|
|
|
|
// fn_025140B0 @ 0x25140b0
|
|
void Gambit_fn_025140B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_025140B0: ; // 0x25140b0
|
|
/* 025140B0 */ cpu->r[0] = cpu->lr;
|
|
/* 025140B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025140B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025140B4 */ cpu->r[1] = _t0;
|
|
/* 025140B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025140B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025140BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025140BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025140C0 */ _t3 = cpu->r[3] + 0x000005C8u;
|
|
/* 025140C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025140C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 025140C8 */ _t4 = cpu->r[3] + 0x000005CCu;
|
|
/* 025140C8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 025140CC */ _t5 = cpu->r[31] + 0x000001E8u;
|
|
/* 025140CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 025140D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025140D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025140D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025140D4 */ if (_t7) goto L_025140F4; else goto L_025140D8;
|
|
L_025140D8: ; // 0x25140d8
|
|
/* 025140D8 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 025140D8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t8);
|
|
/* 025140DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025140E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025140E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 025140E0 */ if (_t10) goto L_025140F4; else goto L_025140E4;
|
|
L_025140E4: ; // 0x25140e4
|
|
/* 025140E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025140E8 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 025140EC */ cpu->r[0] = 0x00000000u;
|
|
/* 025140F0 */ _t11 = cpu->r[31] + 0x000001E8u;
|
|
/* 025140F0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
L_025140F4: ; // 0x25140f4
|
|
/* 025140F4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 025140F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025140F8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025140F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025140FC */ cpu->lr = cpu->r[0];
|
|
/* 02514100 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514104 */ return;
|
|
}
|
|
|
|
// fn_025140B4 @ 0x25140b4
|
|
void Gambit_fn_025140B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_025140B4: ; // 0x25140b4
|
|
/* 025140B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025140B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025140B4 */ cpu->r[1] = _t0;
|
|
/* 025140B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025140B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025140BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025140BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025140C0 */ _t3 = cpu->r[3] + 0x000005C8u;
|
|
/* 025140C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025140C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 025140C8 */ _t4 = cpu->r[3] + 0x000005CCu;
|
|
/* 025140C8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 025140CC */ _t5 = cpu->r[31] + 0x000001E8u;
|
|
/* 025140CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 025140D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025140D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025140D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025140D4 */ if (_t7) goto L_025140F4; else goto L_025140D8;
|
|
L_025140D8: ; // 0x25140d8
|
|
/* 025140D8 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 025140D8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t8);
|
|
/* 025140DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025140E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025140E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 025140E0 */ if (_t10) goto L_025140F4; else goto L_025140E4;
|
|
L_025140E4: ; // 0x25140e4
|
|
/* 025140E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025140E8 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 025140EC */ cpu->r[0] = 0x00000000u;
|
|
/* 025140F0 */ _t11 = cpu->r[31] + 0x000001E8u;
|
|
/* 025140F0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
L_025140F4: ; // 0x25140f4
|
|
/* 025140F4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 025140F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025140F8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025140F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025140FC */ cpu->lr = cpu->r[0];
|
|
/* 02514100 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514104 */ return;
|
|
}
|
|
|
|
// fn_02514108 @ 0x2514108
|
|
void Gambit_fn_02514108(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_02514108: ; // 0x2514108
|
|
/* 02514108 */ cpu->r[0] = cpu->lr;
|
|
/* 0251410C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0251410C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251410C */ cpu->r[1] = _t0;
|
|
/* 02514110 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02514110 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02514114 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514114 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02514118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251411C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0251411C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02514120 */ _t4 = cpu->r[3] + 0x00000134u;
|
|
/* 02514120 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514124 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514124 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02514124 */ if (_t6) goto L_0251417C; else goto L_02514128;
|
|
L_02514128: ; // 0x2514128
|
|
/* 02514128 */ cpu->r[12] = 0x00000001u;
|
|
/* 0251412C */ _t7 = cpu->r[10] + 0x000001C8u;
|
|
/* 0251412C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 02514130 */ _t8 = cpu->r[3] + 0x000005C8u;
|
|
/* 02514130 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02514134 */ _t9 = cpu->r[11] + 0x000001C8u;
|
|
/* 02514134 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 02514138 */ _t10 = cpu->r[3] + 0x000005D0u;
|
|
/* 02514138 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251413C */ _t11 = cpu->r[3] + 0x000005D8u;
|
|
/* 0251413C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02514140 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514144 */ cpu->r[31] = cpu->r[30] + cpu->r[10];
|
|
/* 02514148 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 0251414C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251414C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251414C */ if (_t13) goto L_025141B8; else goto L_02514150;
|
|
L_02514150: ; // 0x2514150
|
|
/* 02514150 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 02514150 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514154 */ Gambit_fn_024F4F50(cpu);
|
|
/* 02514158 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 0251415C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02514160 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514160 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02514160 */ if (_t16) goto L_02514164; else goto L_02514150;
|
|
L_02514164: ; // 0x2514164
|
|
/* 02514164 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02514164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02514168 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02514168 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251416C */ cpu->lr = cpu->r[0];
|
|
/* 02514170 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514170 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02514174 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514178 */ return;
|
|
L_0251417C: ; // 0x251417c
|
|
/* 0251417C */ cpu->r[12] = 0x00000000u;
|
|
/* 02514180 */ _t20 = cpu->r[10] + 0x000001C8u;
|
|
/* 02514180 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[12]);
|
|
/* 02514184 */ _t21 = cpu->r[3] + 0x000005C8u;
|
|
/* 02514184 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02514188 */ _t22 = cpu->r[11] + 0x000001C8u;
|
|
/* 02514188 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[12]);
|
|
/* 0251418C */ _t23 = cpu->r[3] + 0x000005D0u;
|
|
/* 0251418C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02514190 */ _t24 = cpu->r[3] + 0x000005D8u;
|
|
/* 02514190 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02514194 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514198 */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 0251419C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 025141A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025141A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 025141A0 */ if (_t26) goto L_025141B8; else goto L_025141A4;
|
|
L_025141A4: ; // 0x25141a4
|
|
/* 025141A4 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 025141A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025141A8 */ Gambit_fn_024F4F68(cpu);
|
|
/* 025141AC */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 025141B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 025141B4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025141B4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 025141B4 */ if (_t29) goto L_025141B8; else goto L_025141A4;
|
|
L_025141B8: ; // 0x25141b8
|
|
/* 025141B8 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 025141B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025141BC */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 025141BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025141C0 */ cpu->lr = cpu->r[0];
|
|
/* 025141C4 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025141C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 025141C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025141CC */ return;
|
|
}
|
|
|
|
// fn_0251410C @ 0x251410c
|
|
void Gambit_fn_0251410C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_0251410C: ; // 0x251410c
|
|
/* 0251410C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0251410C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251410C */ cpu->r[1] = _t0;
|
|
/* 02514110 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02514110 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02514114 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514114 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02514118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251411C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0251411C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02514120 */ _t4 = cpu->r[3] + 0x00000134u;
|
|
/* 02514120 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514124 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514124 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02514124 */ if (_t6) goto L_0251417C; else goto L_02514128;
|
|
L_02514128: ; // 0x2514128
|
|
/* 02514128 */ cpu->r[12] = 0x00000001u;
|
|
/* 0251412C */ _t7 = cpu->r[10] + 0x000001C8u;
|
|
/* 0251412C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 02514130 */ _t8 = cpu->r[3] + 0x000005C8u;
|
|
/* 02514130 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02514134 */ _t9 = cpu->r[11] + 0x000001C8u;
|
|
/* 02514134 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 02514138 */ _t10 = cpu->r[3] + 0x000005D0u;
|
|
/* 02514138 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251413C */ _t11 = cpu->r[3] + 0x000005D8u;
|
|
/* 0251413C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02514140 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514144 */ cpu->r[31] = cpu->r[30] + cpu->r[10];
|
|
/* 02514148 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 0251414C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251414C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251414C */ if (_t13) goto L_025141B8; else goto L_02514150;
|
|
L_02514150: ; // 0x2514150
|
|
/* 02514150 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 02514150 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514154 */ Gambit_fn_024F4F50(cpu);
|
|
/* 02514158 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 0251415C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02514160 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514160 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02514160 */ if (_t16) goto L_02514164; else goto L_02514150;
|
|
L_02514164: ; // 0x2514164
|
|
/* 02514164 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02514164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02514168 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02514168 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251416C */ cpu->lr = cpu->r[0];
|
|
/* 02514170 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514170 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02514174 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514178 */ return;
|
|
L_0251417C: ; // 0x251417c
|
|
/* 0251417C */ cpu->r[12] = 0x00000000u;
|
|
/* 02514180 */ _t20 = cpu->r[10] + 0x000001C8u;
|
|
/* 02514180 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[12]);
|
|
/* 02514184 */ _t21 = cpu->r[3] + 0x000005C8u;
|
|
/* 02514184 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02514188 */ _t22 = cpu->r[11] + 0x000001C8u;
|
|
/* 02514188 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[12]);
|
|
/* 0251418C */ _t23 = cpu->r[3] + 0x000005D0u;
|
|
/* 0251418C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02514190 */ _t24 = cpu->r[3] + 0x000005D8u;
|
|
/* 02514190 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02514194 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514198 */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 0251419C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 025141A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025141A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 025141A0 */ if (_t26) goto L_025141B8; else goto L_025141A4;
|
|
L_025141A4: ; // 0x25141a4
|
|
/* 025141A4 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 025141A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025141A8 */ Gambit_fn_024F4F68(cpu);
|
|
/* 025141AC */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 025141B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 025141B4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025141B4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 025141B4 */ if (_t29) goto L_025141B8; else goto L_025141A4;
|
|
L_025141B8: ; // 0x25141b8
|
|
/* 025141B8 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 025141B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025141BC */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 025141BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025141C0 */ cpu->lr = cpu->r[0];
|
|
/* 025141C4 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025141C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 025141C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025141CC */ return;
|
|
}
|
|
|
|
// fn_025141D0 @ 0x25141d0
|
|
void Gambit_fn_025141D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_025141D0: ; // 0x25141d0
|
|
/* 025141D0 */ _t0 = cpu->r[3] + 0x00000134u;
|
|
/* 025141D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025141D4 */ _t1 = cpu->r[12] + 0x000001C8u;
|
|
/* 025141D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t1);
|
|
/* 025141D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025141DC */ cpu->r[12] = 0x00000001u;
|
|
/* 025141E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025141E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025141E0 */ if (_t3) goto L_025141E4; else goto L_025141F8;
|
|
L_025141E4: ; // 0x25141e4
|
|
/* 025141E4 */ _t4 = cpu->r[3] + 0x000005C8u;
|
|
/* 025141E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025141E8 */ _t5 = cpu->r[11] + 0x000001C8u;
|
|
/* 025141E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 025141EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025141F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025141F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025141F0 */ if (_t7) goto L_025141F4; else goto L_025141F8;
|
|
L_025141F4: ; // 0x25141f4
|
|
/* 025141F4 */ cpu->r[12] = 0x00000000u;
|
|
L_025141F8: ; // 0x25141f8
|
|
/* 025141F8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 025141FC */ return;
|
|
}
|
|
|
|
// fn_02514200 @ 0x2514200
|
|
void Gambit_fn_02514200(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02514200: ; // 0x2514200
|
|
/* 02514200 */ cpu->r[0] = cpu->lr;
|
|
/* 02514204 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02514208 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251420C */ cpu->r[12] = cpu->r[12] + 0xFFFFFB34u;
|
|
/* 02514210 */ cpu->r[11] = cpu->r[11] + 0xFFFFFA88u;
|
|
/* 02514214 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02514218 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02514218 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0251421C */ cpu->r[0] = 0x02510000u;
|
|
/* 02514220 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02514220 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02514220 */ cpu->r[1] = _t1;
|
|
/* 02514224 */ cpu->r[0] = cpu->r[0] + 0x000046F0u;
|
|
/* 02514228 */ _t2 = cpu->r[3] + 0xFFFF97E8u;
|
|
/* 02514228 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02514228 */ cpu->r[3] = _t2;
|
|
/* 0251422C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02514230 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02514230 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02514234 */ cpu->r[12] = cpu->r[12] + 0xFFFFFA68u;
|
|
/* 02514238 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02514238 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251423C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0251423C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02514240 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02514240 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02514244 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02514248 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0251424C */ cpu->r[3] = cpu->r[3] + 0x00006790u;
|
|
/* 02514250 */ Gambit_fn_02C83090(cpu);
|
|
/* 02514254 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02514258 */ cpu->lr = cpu->r[0];
|
|
/* 0251425C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02514260 */ return;
|
|
}
|
|
|
|
// fn_02514220 @ 0x2514220
|
|
void Gambit_fn_02514220(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02514220: ; // 0x2514220
|
|
/* 02514220 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02514220 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514220 */ cpu->r[1] = _t0;
|
|
/* 02514224 */ cpu->r[0] = cpu->r[0] + 0x000046F0u;
|
|
/* 02514228 */ _t1 = cpu->r[3] + 0xFFFF97E8u;
|
|
/* 02514228 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02514228 */ cpu->r[3] = _t1;
|
|
/* 0251422C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02514230 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02514230 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02514234 */ cpu->r[12] = cpu->r[12] + 0xFFFFFA68u;
|
|
/* 02514238 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 02514238 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0251423C */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 0251423C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02514240 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02514240 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02514244 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02514248 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0251424C */ cpu->r[3] = cpu->r[3] + 0x00006790u;
|
|
/* 02514250 */ Gambit_fn_02C83090(cpu);
|
|
/* 02514254 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02514258 */ cpu->lr = cpu->r[0];
|
|
/* 0251425C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02514260 */ return;
|
|
}
|
|
|
|
// fn_02514264 @ 0x2514264
|
|
void Gambit_fn_02514264(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02514264: ; // 0x2514264
|
|
/* 02514264 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514268 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514268 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02514268 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02514268 */ goto L_0251426C;
|
|
L_0251426C: ; // 0x251426c
|
|
/* 0251426C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0251426C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02514270 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514270 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02514270 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02514270 */ goto L_02514274;
|
|
L_02514274: ; // 0x2514274
|
|
/* 02514274 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02514278 @ 0x2514278
|
|
void Gambit_fn_02514278(CPUState* cpu) {
|
|
L_02514278: ; // 0x2514278
|
|
/* 02514278 */ return;
|
|
}
|
|
|
|
// fn_0251427C @ 0x251427c
|
|
void Gambit_fn_0251427C(CPUState* cpu) {
|
|
L_0251427C: ; // 0x251427c
|
|
/* 0251427C */ return;
|
|
}
|
|
|
|
// fn_02514280 @ 0x2514280
|
|
void Gambit_fn_02514280(CPUState* cpu) {
|
|
L_02514280: ; // 0x2514280
|
|
/* 02514280 */ return;
|
|
}
|
|
|
|
// fn_02514284 @ 0x2514284
|
|
void Gambit_fn_02514284(CPUState* cpu) {
|
|
L_02514284: ; // 0x2514284
|
|
/* 02514284 */ return;
|
|
}
|
|
|
|
// fn_02514288 @ 0x2514288
|
|
void Gambit_fn_02514288(CPUState* cpu) {
|
|
L_02514288: ; // 0x2514288
|
|
/* 02514288 */ return;
|
|
}
|
|
|
|
// fn_0251428C @ 0x251428c
|
|
void Gambit_fn_0251428C(CPUState* cpu) {
|
|
L_0251428C: ; // 0x251428c
|
|
/* 0251428C */ return;
|
|
}
|
|
|
|
// fn_02514290 @ 0x2514290
|
|
void Gambit_fn_02514290(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02514290: ; // 0x2514290
|
|
/* 02514290 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02514290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02514294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02514298 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514298 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02514298 */ if (_t2) goto L_025142A4; else goto L_0251429C;
|
|
L_0251429C: ; // 0x251429c
|
|
/* 0251429C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 025142A0 */ return;
|
|
L_025142A4: ; // 0x25142a4
|
|
/* 025142A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 025142A8 */ return;
|
|
}
|
|
|
|
// fn_025142AC @ 0x25142ac
|
|
void Gambit_fn_025142AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_025142AC: ; // 0x25142ac
|
|
/* 025142AC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 025142AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025142B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025142B4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025142B4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 025142B4 */ if (_t2) goto L_025142C0; else goto L_025142B8;
|
|
L_025142B8: ; // 0x25142b8
|
|
/* 025142B8 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 025142BC */ return;
|
|
L_025142C0: ; // 0x25142c0
|
|
/* 025142C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 025142C4 */ return;
|
|
}
|
|
|
|
// fn_025142C8 @ 0x25142c8
|
|
void Gambit_fn_025142C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025142C8: ; // 0x25142c8
|
|
/* 025142C8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025142C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025142CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025142CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025142D0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025142D0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 025142D0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 025142D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025142D0 */ goto L_025142D4;
|
|
L_025142D4: ; // 0x25142d4
|
|
/* 025142D4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 025142D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025142D8 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 025142D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025142DC */ cpu->ctr = cpu->r[0];
|
|
/* 025142E0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025142E4 @ 0x25142e4
|
|
void Gambit_fn_025142E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025142E4: ; // 0x25142e4
|
|
/* 025142E4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025142E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025142E8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025142E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025142EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025142EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 025142EC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 025142EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025142EC */ goto L_025142F0;
|
|
L_025142F0: ; // 0x25142f0
|
|
/* 025142F0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 025142F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025142F4 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 025142F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025142F8 */ cpu->ctr = cpu->r[0];
|
|
/* 025142FC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02514300 @ 0x2514300
|
|
void Gambit_fn_02514300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02514300: ; // 0x2514300
|
|
/* 02514300 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02514300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02514304 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02514304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02514308 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514308 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02514308 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02514308 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02514308 */ goto L_0251430C;
|
|
L_0251430C: ; // 0x251430c
|
|
/* 0251430C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0251430C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514310 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02514310 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02514314 */ cpu->ctr = cpu->r[0];
|
|
/* 02514318 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0251431C @ 0x251431c
|
|
void Gambit_fn_0251431C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0251431C: ; // 0x251431c
|
|
/* 0251431C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0251431C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02514320 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02514320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02514324 */ cpu->ctr = cpu->r[0];
|
|
/* 02514328 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0251432C @ 0x251432c
|
|
void Gambit_fn_0251432C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0251432C: ; // 0x251432c
|
|
/* 0251432C */ cpu->r[0] = cpu->lr;
|
|
/* 02514330 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514330 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514330 */ cpu->r[1] = _t0;
|
|
/* 02514334 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514334 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02514338 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251433C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251433C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02514340 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02514340 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02514344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02514348 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514348 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02514348 */ if (_t5) goto L_0251434C; else goto L_02514368;
|
|
L_0251434C: ; // 0x251434c
|
|
/* 0251434C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0251434C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02514350 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02514350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02514354 */ cpu->ctr = cpu->r[0];
|
|
/* 02514358 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251435C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514360 */ cpu->r[0] = 0x00000002u;
|
|
/* 02514364 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02514364 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02514368: ; // 0x2514368
|
|
/* 02514368 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02514368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251436C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251436C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02514370 */ cpu->lr = cpu->r[0];
|
|
/* 02514374 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514378 */ return;
|
|
}
|
|
|
|
// fn_02514330 @ 0x2514330
|
|
void Gambit_fn_02514330(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02514330: ; // 0x2514330
|
|
/* 02514330 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514330 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514330 */ cpu->r[1] = _t0;
|
|
/* 02514334 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02514334 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02514338 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251433C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251433C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02514340 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02514340 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02514344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02514348 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514348 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02514348 */ if (_t5) goto L_0251434C; else goto L_02514368;
|
|
L_0251434C: ; // 0x251434c
|
|
/* 0251434C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0251434C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02514350 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02514350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02514354 */ cpu->ctr = cpu->r[0];
|
|
/* 02514358 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251435C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514360 */ cpu->r[0] = 0x00000002u;
|
|
/* 02514364 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02514364 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02514368: ; // 0x2514368
|
|
/* 02514368 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02514368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251436C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251436C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02514370 */ cpu->lr = cpu->r[0];
|
|
/* 02514374 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02514378 */ return;
|
|
}
|
|
|
|
// fn_02514384 @ 0x2514384
|
|
void Gambit_fn_02514384(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02514384: ; // 0x2514384
|
|
/* 02514384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514388 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514388 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02514388 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02514388 */ goto L_0251438C;
|
|
L_0251438C: ; // 0x251438c
|
|
/* 0251438C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0251438C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02514390 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514390 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02514390 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02514390 */ goto L_02514394;
|
|
L_02514394: ; // 0x2514394
|
|
/* 02514394 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02514398 @ 0x2514398
|
|
void Gambit_fn_02514398(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02514398: ; // 0x2514398
|
|
/* 02514398 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02514398 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251439C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0251439C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025143A0 */ cpu->ctr = cpu->r[0];
|
|
/* 025143A4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025143A8 @ 0x25143a8
|
|
void Gambit_fn_025143A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_025143A8: ; // 0x25143a8
|
|
/* 025143A8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 025143A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025143AC */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 025143AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025143B0 */ cpu->ctr = cpu->r[0];
|
|
/* 025143B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025143B8 @ 0x25143b8
|
|
void Gambit_fn_025143B8(CPUState* cpu) {
|
|
L_025143B8: ; // 0x25143b8
|
|
/* 025143B8 */ cpu->r[3] = 0x00000001u;
|
|
/* 025143BC */ return;
|
|
}
|
|
|
|
// fn_025143C0 @ 0x25143c0
|
|
void Gambit_fn_025143C0(CPUState* cpu) {
|
|
L_025143C0: ; // 0x25143c0
|
|
/* 025143C0 */ return;
|
|
}
|
|
|
|
// fn_025143C4 @ 0x25143c4
|
|
void Gambit_fn_025143C4(CPUState* cpu) {
|
|
L_025143C4: ; // 0x25143c4
|
|
/* 025143C4 */ return;
|
|
}
|
|
|
|
// fn_025143C8 @ 0x25143c8
|
|
void Gambit_fn_025143C8(CPUState* cpu) {
|
|
L_025143C8: ; // 0x25143c8
|
|
/* 025143C8 */ return;
|
|
}
|
|
|
|
// fn_025143CC @ 0x25143cc
|
|
void Gambit_fn_025143CC(CPUState* cpu) {
|
|
L_025143CC: ; // 0x25143cc
|
|
/* 025143CC */ return;
|
|
}
|
|
|
|
// fn_025143D0 @ 0x25143d0
|
|
void Gambit_fn_025143D0(CPUState* cpu) {
|
|
L_025143D0: ; // 0x25143d0
|
|
/* 025143D0 */ return;
|
|
}
|
|
|
|
// fn_025143D4 @ 0x25143d4
|
|
void Gambit_fn_025143D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025143D4: ; // 0x25143d4
|
|
/* 025143D4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 025143D8 */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 025143D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025143D8 */ cpu->r[10] = _t0;
|
|
/* 025143DC */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 025143DC */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 025143E0 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 025143E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025143E4 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 025143E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025143E8 */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 025143E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025143EC */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 025143EC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025143F0 */ return;
|
|
}
|
|
|
|
// fn_025143F4 @ 0x25143f4
|
|
void Gambit_fn_025143F4(CPUState* cpu) {
|
|
L_025143F4: ; // 0x25143f4
|
|
/* 025143F4 */ return;
|
|
}
|
|
|
|
// fn_025143F8 @ 0x25143f8
|
|
void Gambit_fn_025143F8(CPUState* cpu) {
|
|
L_025143F8: ; // 0x25143f8
|
|
/* 025143F8 */ return;
|
|
}
|
|
|
|
// fn_025143FC @ 0x25143fc
|
|
void Gambit_fn_025143FC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_025143FC: ; // 0x25143fc
|
|
/* 025143FC */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 025143FC */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02514400 */ return;
|
|
}
|
|
|
|
// fn_02514404 @ 0x2514404
|
|
void Gambit_fn_02514404(CPUState* cpu) {
|
|
L_02514404: ; // 0x2514404
|
|
/* 02514404 */ return;
|
|
}
|
|
|
|
// fn_02514408 @ 0x2514408
|
|
void Gambit_fn_02514408(CPUState* cpu) {
|
|
L_02514408: ; // 0x2514408
|
|
/* 02514408 */ return;
|
|
}
|
|
|
|
// fn_0251440C @ 0x251440c
|
|
void Gambit_fn_0251440C(CPUState* cpu) {
|
|
L_0251440C: ; // 0x251440c
|
|
/* 0251440C */ return;
|
|
}
|
|
|
|
// fn_02514410 @ 0x2514410
|
|
void Gambit_fn_02514410(CPUState* cpu) {
|
|
L_02514410: ; // 0x2514410
|
|
/* 02514410 */ return;
|
|
}
|
|
|
|
// fn_02514414 @ 0x2514414
|
|
void Gambit_fn_02514414(CPUState* cpu) {
|
|
L_02514414: ; // 0x2514414
|
|
/* 02514414 */ return;
|
|
}
|
|
|
|
// fn_02514418 @ 0x2514418
|
|
void Gambit_fn_02514418(CPUState* cpu) {
|
|
L_02514418: ; // 0x2514418
|
|
/* 02514418 */ return;
|
|
}
|
|
|
|
// fn_0251441C @ 0x251441c
|
|
void Gambit_fn_0251441C(CPUState* cpu) {
|
|
L_0251441C: ; // 0x251441c
|
|
/* 0251441C */ return;
|
|
}
|
|
|
|
// fn_02514420 @ 0x2514420
|
|
void Gambit_fn_02514420(CPUState* cpu) {
|
|
L_02514420: ; // 0x2514420
|
|
/* 02514420 */ cpu->r[3] = 0x00000000u;
|
|
/* 02514424 */ return;
|
|
}
|
|
|
|
// fn_02514428 @ 0x2514428
|
|
void Gambit_fn_02514428(CPUState* cpu) {
|
|
L_02514428: ; // 0x2514428
|
|
/* 02514428 */ return;
|
|
}
|
|
|
|
// fn_0251442C @ 0x251442c
|
|
void Gambit_fn_0251442C(CPUState* cpu) {
|
|
L_0251442C: ; // 0x251442c
|
|
/* 0251442C */ return;
|
|
}
|
|
|
|
// fn_02514430 @ 0x2514430
|
|
void Gambit_fn_02514430(CPUState* cpu) {
|
|
L_02514430: ; // 0x2514430
|
|
/* 02514430 */ cpu->r[3] = 0x00000001u;
|
|
/* 02514434 */ return;
|
|
}
|
|
|
|
// fn_02514438 @ 0x2514438
|
|
void Gambit_fn_02514438(CPUState* cpu) {
|
|
L_02514438: ; // 0x2514438
|
|
/* 02514438 */ cpu->r[3] = 0x00000000u;
|
|
/* 0251443C */ return;
|
|
}
|
|
|
|
// fn_02514440 @ 0x2514440
|
|
void Gambit_fn_02514440(CPUState* cpu) {
|
|
L_02514440: ; // 0x2514440
|
|
/* 02514440 */ cpu->r[3] = 0x00000000u;
|
|
/* 02514444 */ return;
|
|
}
|
|
|
|
// fn_02514448 @ 0x2514448
|
|
void Gambit_fn_02514448(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02514448: ; // 0x2514448
|
|
/* 02514448 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02514448 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0251444C */ return;
|
|
}
|
|
|
|
// fn_02514450 @ 0x2514450
|
|
void Gambit_fn_02514450(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02514450: ; // 0x2514450
|
|
/* 02514450 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 02514450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02514454 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02514454 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02514458 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02514458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0251445C */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0251445C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02514460 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 02514460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514464 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02514464 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02514468 */ return;
|
|
}
|
|
|
|
// fn_0251446C @ 0x251446c
|
|
void Gambit_fn_0251446C(CPUState* cpu) {
|
|
L_0251446C: ; // 0x251446c
|
|
/* 0251446C */ cpu->r[3] = 0x00000000u;
|
|
/* 02514470 */ return;
|
|
}
|
|
|
|
// fn_02514474 @ 0x2514474
|
|
void Gambit_fn_02514474(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02514474: ; // 0x2514474
|
|
/* 02514474 */ cpu->r[0] = cpu->lr;
|
|
/* 02514478 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514478 */ cpu->r[1] = _t0;
|
|
/* 0251447C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251447C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02514480 */ cpu->r[31] = cpu->r[3];
|
|
/* 02514484 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02514484 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02514488 */ _t3 = cpu->r[31] + 0x000002FCu;
|
|
/* 02514488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0251448C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0251448C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514490 */ cpu->ctr = cpu->r[0];
|
|
/* 02514494 */ cpu->r[3] = cpu->r[31] + 0x000002F8u;
|
|
/* 02514498 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251449C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0251449C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025144A0 */ _t6 = cpu->r[31] + 0x000002F8u;
|
|
/* 025144A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025144A4 */ cpu->lr = cpu->r[0];
|
|
/* 025144A8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025144A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025144AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025144B0 */ return;
|
|
}
|
|
|
|
// fn_02514478 @ 0x2514478
|
|
void Gambit_fn_02514478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02514478: ; // 0x2514478
|
|
/* 02514478 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02514478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02514478 */ cpu->r[1] = _t0;
|
|
/* 0251447C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251447C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02514480 */ cpu->r[31] = cpu->r[3];
|
|
/* 02514484 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02514484 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02514488 */ _t3 = cpu->r[31] + 0x000002FCu;
|
|
/* 02514488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0251448C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0251448C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02514490 */ cpu->ctr = cpu->r[0];
|
|
/* 02514494 */ cpu->r[3] = cpu->r[31] + 0x000002F8u;
|
|
/* 02514498 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251449C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0251449C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025144A0 */ _t6 = cpu->r[31] + 0x000002F8u;
|
|
/* 025144A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025144A4 */ cpu->lr = cpu->r[0];
|
|
/* 025144A8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025144A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025144AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025144B0 */ return;
|
|
}
|
|
|
|
// fn_025144B4 @ 0x25144b4
|
|
void Gambit_fn_025144B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_025144B4: ; // 0x25144b4
|
|
/* 025144B4 */ cpu->r[0] = cpu->lr;
|
|
/* 025144B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025144B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025144B8 */ cpu->r[1] = _t0;
|
|
/* 025144BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025144BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025144C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025144C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025144C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025144C8 */ _t3 = cpu->r[31] + 0x00000408u;
|
|
/* 025144C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025144CC */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 025144CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025144D0 */ cpu->ctr = cpu->r[0];
|
|
/* 025144D4 */ cpu->r[3] = cpu->r[31] + 0x00000404u;
|
|
/* 025144D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025144DC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 025144DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025144E0 */ _t6 = cpu->r[31] + 0x00000404u;
|
|
/* 025144E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025144E4 */ cpu->lr = cpu->r[0];
|
|
/* 025144E8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025144E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025144EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025144F0 */ return;
|
|
}
|
|
|
|
// fn_025144B8 @ 0x25144b8
|
|
void Gambit_fn_025144B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_025144B8: ; // 0x25144b8
|
|
/* 025144B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025144B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025144B8 */ cpu->r[1] = _t0;
|
|
/* 025144BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025144BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025144C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025144C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025144C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025144C8 */ _t3 = cpu->r[31] + 0x00000408u;
|
|
/* 025144C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025144CC */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 025144CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025144D0 */ cpu->ctr = cpu->r[0];
|
|
/* 025144D4 */ cpu->r[3] = cpu->r[31] + 0x00000404u;
|
|
/* 025144D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025144DC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 025144DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025144E0 */ _t6 = cpu->r[31] + 0x00000404u;
|
|
/* 025144E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025144E4 */ cpu->lr = cpu->r[0];
|
|
/* 025144E8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025144E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025144EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025144F0 */ return;
|
|
}
|
|
|
|
// fn_025144F4 @ 0x25144f4
|
|
void Gambit_fn_025144F4(CPUState* cpu) {
|
|
L_025144F4: ; // 0x25144f4
|
|
/* 025144F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 025144F8 */ return;
|
|
}
|
|
|
|
// fn_025144FC @ 0x25144fc
|
|
void Gambit_fn_025144FC(CPUState* cpu) {
|
|
L_025144FC: ; // 0x25144fc
|
|
/* 025144FC */ cpu->r[3] = 0x00000001u;
|
|
/* 02514500 */ return;
|
|
}
|
|
|
|
// fn_02514504 @ 0x2514504
|
|
void Gambit_fn_02514504(CPUState* cpu) {
|
|
L_02514504: ; // 0x2514504
|
|
/* 02514504 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02514508 */ cpu->r[3] = cpu->r[3] + 0xFFFFFA70u;
|
|
/* 0251450C */ return;
|
|
}
|
|
|
|
// fn_02514510 @ 0x2514510
|
|
void Gambit_fn_02514510(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_02514510: ; // 0x2514510
|
|
/* 02514510 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02514514 */ _t0 = cpu->r[8] + 0x00000424u;
|
|
/* 02514514 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02514518 */ cpu->r[6] = 0x101D0000u;
|
|
/* 0251451C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02514520 */ cpu->r[6] = cpu->r[6] + 0x000009B0u;
|
|
/* 02514524 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514524 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02514524 */ if (_t2) goto L_02514528; else goto L_02514540;
|
|
L_02514528: ; // 0x2514528
|
|
/* 02514528 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251452C */ cpu->r[0] = 0x00000001u;
|
|
/* 02514530 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02514534 */ cpu->r[5] = cpu->r[5] + 0xFFFFFAE0u;
|
|
/* 02514538 */ _t3 = cpu->r[8] + 0x00000424u;
|
|
/* 02514538 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0251453C */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 0251453C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_02514540: ; // 0x2514540
|
|
/* 02514540 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 02514544 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514544 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02514544 */ if (_t6) goto L_02514548; else goto L_02514550;
|
|
L_02514548: ; // 0x2514548
|
|
/* 02514548 */ cpu->r[3] = 0x00000001u;
|
|
/* 0251454C */ return;
|
|
L_02514550: ; // 0x2514550
|
|
/* 02514550 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02514554 */ _t7 = cpu->r[10] + 0x0000013Cu;
|
|
/* 02514554 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02514558 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0251455C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02514560 */ cpu->r[8] = cpu->r[8] + 0x00000878u;
|
|
/* 02514564 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514564 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02514564 */ if (_t9) goto L_02514568; else goto L_02514580;
|
|
L_02514568: ; // 0x2514568
|
|
/* 02514568 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251456C */ cpu->r[7] = 0x00000001u;
|
|
/* 02514570 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02514574 */ cpu->r[0] = cpu->r[0] + 0xFFFFFAD0u;
|
|
/* 02514578 */ _t10 = cpu->r[6] + 0x0000013Cu;
|
|
/* 02514578 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 0251457C */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 0251457C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02514580: ; // 0x2514580
|
|
/* 02514580 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 02514584 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514584 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02514584 */ if (_t13) goto L_02514588; else goto L_02514590;
|
|
L_02514588: ; // 0x2514588
|
|
/* 02514588 */ cpu->r[0] = 0x00000001u;
|
|
/* 0251458C */ goto L_02514688;
|
|
L_02514590: ; // 0x2514590
|
|
/* 02514590 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02514594 */ _t14 = cpu->r[12] + 0xFFFFDDF0u;
|
|
/* 02514594 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514598 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0251459C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025145A0 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF40u;
|
|
/* 025145A4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025145A4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 025145A4 */ if (_t16) goto L_025145A8; else goto L_025145C0;
|
|
L_025145A8: ; // 0x25145a8
|
|
/* 025145A8 */ cpu->r[7] = 0x100C0000u;
|
|
/* 025145AC */ cpu->r[5] = 0x00000001u;
|
|
/* 025145B0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 025145B4 */ cpu->r[7] = cpu->r[7] + 0xFFFFFAC0u;
|
|
/* 025145B8 */ _t17 = cpu->r[12] + 0xFFFFDDF0u;
|
|
/* 025145B8 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 025145BC */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 025145BC */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_025145C0: ; // 0x25145c0
|
|
/* 025145C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 025145C4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025145C4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 025145C4 */ if (_t20) goto L_025145C8; else goto L_025145D0;
|
|
L_025145C8: ; // 0x25145c8
|
|
/* 025145C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 025145CC */ goto L_02514688;
|
|
L_025145D0: ; // 0x25145d0
|
|
/* 025145D0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 025145D4 */ _t21 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 025145D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025145D8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 025145DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025145E0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBBCu;
|
|
/* 025145E4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025145E4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025145E4 */ if (_t23) goto L_025145E8; else goto L_02514600;
|
|
L_025145E8: ; // 0x25145e8
|
|
/* 025145E8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025145EC */ cpu->r[9] = 0x00000001u;
|
|
/* 025145F0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 025145F4 */ cpu->r[10] = cpu->r[10] + 0xFFFFFAB0u;
|
|
/* 025145F8 */ _t24 = cpu->r[8] + 0xFFFFDA10u;
|
|
/* 025145F8 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 025145FC */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 025145FC */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_02514600: ; // 0x2514600
|
|
/* 02514600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02514604 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514604 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02514604 */ if (_t27) goto L_02514608; else goto L_02514610;
|
|
L_02514608: ; // 0x2514608
|
|
/* 02514608 */ cpu->r[0] = 0x00000001u;
|
|
/* 0251460C */ goto L_02514684;
|
|
L_02514610: ; // 0x2514610
|
|
/* 02514610 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02514614 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 02514614 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02514614 */ cpu->r[10] = _t28;
|
|
/* 02514618 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0251461C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02514620 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 02514624 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514624 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02514624 */ if (_t30) goto L_02514628; else goto L_0251463C;
|
|
L_02514628: ; // 0x2514628
|
|
/* 02514628 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251462C */ cpu->r[12] = 0x00000001u;
|
|
/* 02514630 */ cpu->r[0] = cpu->r[0] + 0xFFFFFAA0u;
|
|
/* 02514634 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02514634 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 02514638 */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 02514638 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_0251463C: ; // 0x251463c
|
|
/* 0251463C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 02514640 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514640 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02514640 */ if (_t34) goto L_02514644; else goto L_0251464C;
|
|
L_02514644: ; // 0x2514644
|
|
/* 02514644 */ cpu->r[0] = 0x00000001u;
|
|
/* 02514648 */ goto L_02514684;
|
|
L_0251464C: ; // 0x251464c
|
|
/* 0251464C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02514650 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 02514650 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02514650 */ cpu->r[8] = _t35;
|
|
/* 02514654 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02514658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251465C */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 02514660 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514660 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02514660 */ if (_t37) goto L_02514664; else goto L_02514678;
|
|
L_02514664: ; // 0x2514664
|
|
/* 02514664 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02514668 */ cpu->r[7] = 0x00000001u;
|
|
/* 0251466C */ cpu->r[9] = cpu->r[9] + 0xFFFFFA78u;
|
|
/* 02514670 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 02514670 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02514674 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 02514674 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_02514678: ; // 0x2514678
|
|
/* 02514678 */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 0251467C */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 02514680 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02514684: ; // 0x2514684
|
|
/* 02514684 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02514688: ; // 0x2514688
|
|
/* 02514688 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0251468C */ return;
|
|
}
|
|
|
|
// fn_02514690 @ 0x2514690
|
|
void Gambit_fn_02514690(CPUState* cpu) {
|
|
L_02514690: ; // 0x2514690
|
|
/* 02514690 */ cpu->r[3] = 0x00000000u;
|
|
/* 02514694 */ return;
|
|
}
|
|
|
|
// fn_02514698 @ 0x2514698
|
|
void Gambit_fn_02514698(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02514698: ; // 0x2514698
|
|
/* 02514698 */ cpu->r[0] = cpu->lr;
|
|
/* 0251469C */ cpu->r[12] = 0x101D0000u;
|
|
/* 025146A0 */ cpu->r[7] = 0x02510000u;
|
|
/* 025146A4 */ cpu->r[6] = 0x02510000u;
|
|
/* 025146A8 */ cpu->r[10] = 0x101C0000u;
|
|
/* 025146AC */ cpu->r[7] = cpu->r[7] + 0x0000437Cu;
|
|
/* 025146B0 */ cpu->r[6] = cpu->r[6] + 0x0000437Cu;
|
|
/* 025146B4 */ cpu->r[10] = cpu->r[10] + 0x000067A0u;
|
|
/* 025146B8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 025146B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 025146BC */ cpu->r[0] = 0x101C0000u;
|
|
/* 025146C0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025146C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 025146C0 */ cpu->r[1] = _t1;
|
|
/* 025146C4 */ cpu->r[0] = cpu->r[0] + 0x0000679Cu;
|
|
/* 025146C8 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 025146C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025146CC */ cpu->r[8] = 0x00000000u;
|
|
/* 025146D0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 025146D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025146D4 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025146D8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025146D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 025146DC */ Gambit_fn_02791B10(cpu);
|
|
/* 025146E0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 025146E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025146E4 */ cpu->lr = cpu->r[0];
|
|
/* 025146E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025146EC */ return;
|
|
}
|
|
|
|
// fn_025146C0 @ 0x25146c0
|
|
void Gambit_fn_025146C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_025146C0: ; // 0x25146c0
|
|
/* 025146C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025146C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025146C0 */ cpu->r[1] = _t0;
|
|
/* 025146C4 */ cpu->r[0] = cpu->r[0] + 0x0000679Cu;
|
|
/* 025146C8 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 025146C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025146CC */ cpu->r[8] = 0x00000000u;
|
|
/* 025146D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025146D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025146D4 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025146D8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025146D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025146DC */ Gambit_fn_02791B10(cpu);
|
|
/* 025146E0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 025146E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025146E4 */ cpu->lr = cpu->r[0];
|
|
/* 025146E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025146EC */ return;
|
|
}
|
|
|
|
// fn_025146F0 @ 0x25146f0
|
|
void Gambit_fn_025146F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_025146F0: ; // 0x25146f0
|
|
/* 025146F0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025146F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025146F0 */ cpu->r[1] = _t0;
|
|
/* 025146F4 */ cpu->r[0] = cpu->lr;
|
|
/* 025146F8 */ /* nop */
|
|
/* 025146FC */ cpu->r[30] = cpu->r[5];
|
|
/* 02514700 */ cpu->r[26] = cpu->r[3];
|
|
/* 02514704 */ cpu->r[27] = cpu->r[7];
|
|
/* 02514708 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251470C */ cpu->r[31] = cpu->r[6];
|
|
/* 02514710 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514710 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02514714 */ cpu->r[29] = cpu->r[4];
|
|
/* 02514718 */ cpu->r[4] = cpu->r[27];
|
|
/* 0251471C */ Gambit_fn_027DB318(cpu);
|
|
/* 02514720 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 02514720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02514724 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514724 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02514724 */ if (_t3) goto L_025147B8; else goto L_02514728;
|
|
L_02514728: ; // 0x2514728
|
|
/* 02514728 */ cpu->r[5] = cpu->r[28];
|
|
/* 0251472C */ cpu->r[4] = cpu->r[29];
|
|
/* 02514730 */ cpu->r[3] = cpu->r[26];
|
|
/* 02514734 */ Gambit_fn_02514698(cpu);
|
|
/* 02514738 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02514738 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0251473C */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 0251473C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02514740 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 02514744 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02514748 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251474C */ cpu->r[25] = 0x00000000u;
|
|
/* 02514750 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514750 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02514750 */ if (_t7) goto L_025147B8; else goto L_02514754;
|
|
L_02514754: ; // 0x2514754
|
|
/* 02514754 */ cpu->r[24] = 0x101C0000u;
|
|
L_02514758: ; // 0x2514758
|
|
/* 02514758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0251475C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251475C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0251475C */ if (_t9) goto L_02514774; else goto L_02514760;
|
|
L_02514760: ; // 0x2514760
|
|
/* 02514760 */ cpu->ctr = cpu->r[27];
|
|
/* 02514764 */ cpu->r[3] = cpu->r[31];
|
|
/* 02514768 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251476C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514770 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514770 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02514770 */ if (_t11) goto L_025147A4; else goto L_02514774;
|
|
L_02514774: ; // 0x2514774
|
|
/* 02514774 */ _t12 = cpu->r[24] + 0x0000679Cu;
|
|
/* 02514774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02514778 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 0251477C */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 0251477C */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02514780 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 02514780 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514784 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514788 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02514788 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0251478C */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514790 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02514790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02514794 */ cpu->r[4] = cpu->r[31];
|
|
/* 02514798 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02514798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251479C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 025147A0 */ Gambit_fn_02513A00(cpu);
|
|
L_025147A4: ; // 0x25147a4
|
|
/* 025147A4 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 025147A8 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 025147A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025147AC */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 025147B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 025147B4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025147B4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 025147B4 */ if (_t20) goto L_025147B8; else goto L_02514758;
|
|
L_025147B8: ; // 0x25147b8
|
|
/* 025147B8 */ cpu->r[3] = cpu->r[28];
|
|
/* 025147BC */ /* nop */
|
|
/* 025147C0 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025147C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025147C4 */ cpu->lr = cpu->r[0];
|
|
/* 025147C8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025147CC */ return;
|
|
}
|
|
|
|
// fn_025147D0 @ 0x25147d0
|
|
void Gambit_fn_025147D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_025147D0: ; // 0x25147d0
|
|
/* 025147D0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 025147D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025147D0 */ cpu->r[1] = _t0;
|
|
/* 025147D4 */ cpu->r[0] = cpu->lr;
|
|
/* 025147D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 025147D8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 025147DC */ /* nop */
|
|
/* 025147E0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 025147E0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 025147E4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 025147E4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 025147E8 */ /* nop */
|
|
/* 025147EC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025147EC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025147F0 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 025147F0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 025147F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025147F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025147F8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 025147F8 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 025147FC */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 025147FC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02514800 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514800 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02514800 */ if (_t9) goto L_02514804; else goto L_02514814;
|
|
L_02514804: ; // 0x2514804
|
|
/* 02514804 */ cpu->r[3] = 0x000001D4u;
|
|
/* 02514808 */ Gambit_fn_02801A78(cpu);
|
|
/* 0251480C */ cpu->r[31] = cpu->r[3];
|
|
/* 0251480C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02514810 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514810 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02514810 */ if (_t11) goto L_02514894; else goto L_02514814;
|
|
L_02514814: ; // 0x2514814
|
|
/* 02514814 */ cpu->r[3] = cpu->r[31];
|
|
/* 02514818 */ Gambit_fn_024F2B00(cpu);
|
|
/* 0251481C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02514820 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02514824 */ _t12 = cpu->r[10] + 0xFFFFFF2Cu;
|
|
/* 02514824 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02514828 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251482C */ cpu->r[30] = 0x00000000u;
|
|
/* 02514830 */ _t13 = cpu->r[12] + 0xFFFFFF30u;
|
|
/* 02514830 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02514834 */ cpu->r[11] = cpu->r[11] + 0xFFFFFF74u;
|
|
/* 02514838 */ _t14 = cpu->r[31] + 0x000001B0u;
|
|
/* 02514838 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 0251483C */ cpu->r[3] = cpu->r[31] + 0x000001B4u;
|
|
/* 0251483C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514840 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02514840 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02514844 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514844 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02514844 */ if (_t17) goto L_02514848; else goto L_02514858;
|
|
L_02514848: ; // 0x2514848
|
|
/* 02514848 */ cpu->r[3] = 0x00000018u;
|
|
/* 0251484C */ Gambit_fn_02801A78(cpu);
|
|
/* 02514850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514854 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514854 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02514854 */ if (_t19) goto L_02514870; else goto L_02514858;
|
|
L_02514858: ; // 0x2514858
|
|
/* 02514858 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02514858 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[31]);
|
|
/* 0251485C */ _t21 = cpu->r[3] + 0x00000010u;
|
|
/* 0251485C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[30]);
|
|
/* 02514860 */ _t22 = cpu->r[3] + 0x00000014u;
|
|
/* 02514860 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[30]);
|
|
/* 02514864 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02514864 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[30]);
|
|
/* 02514868 */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 02514868 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 0251486C */ _t25 = cpu->r[3] + 0x00000004u;
|
|
/* 0251486C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[31]);
|
|
L_02514870: ; // 0x2514870
|
|
/* 02514870 */ _t26 = cpu->r[31] + 0x000001C4u;
|
|
/* 02514870 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[30]);
|
|
/* 02514874 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02514878 */ _t27 = cpu->r[31] + 0x000001C8u;
|
|
/* 02514878 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[30]);
|
|
/* 0251487C */ _t28 = cpu->r[31] + 0x000001CCu;
|
|
/* 0251487C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02514880 */ _t29 = cpu->r[31] + 0x000001B8u;
|
|
/* 02514880 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[31]);
|
|
/* 02514884 */ _t30 = cpu->r[31] + 0x000001C0u;
|
|
/* 02514884 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[30]);
|
|
/* 02514888 */ _t31 = cpu->r[31] + 0x000001D0u;
|
|
/* 02514888 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 0251488C */ _t32 = cpu->r[31] + 0x000001BCu;
|
|
/* 0251488C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 02514890 */ _t33 = cpu->r[31] + 0x000001B4u;
|
|
/* 02514890 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
L_02514894: ; // 0x2514894
|
|
/* 02514894 */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 02514894 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02514898 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251489C */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 0251489C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 025148A0 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 025148A0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 025148A4 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 025148A4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 025148A8 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 025148A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025148AC */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025148AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025148B0 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025148B0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 025148B0 */ if (_t41) goto L_025148B4; // else: addr-0 trap, fall-through
|
|
L_025148B4: ; // 0x25148b4
|
|
/* 025148B4 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 025148B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 025148B8 */ cpu->lr = cpu->r[0];
|
|
/* 025148BC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 025148C0 */ return;
|
|
}
|
|
|
|
// fn_025148C4 @ 0x25148c4
|
|
void Gambit_fn_025148C4(CPUState* cpu) {
|
|
L_025148C4: ; // 0x25148c4
|
|
/* 025148C4 */ return;
|
|
}
|
|
|
|
// fn_025148C8 @ 0x25148c8
|
|
void Gambit_fn_025148C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
|
|
L_025148C8: ; // 0x25148c8
|
|
/* 025148C8 */ cpu->r[0] = cpu->lr;
|
|
/* 025148CC */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 025148CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025148CC */ cpu->r[1] = _t0;
|
|
/* 025148D0 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 025148D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 025148D4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 025148D8 */ _t2 = cpu->r[7] + 0xFFFFFF34u;
|
|
/* 025148D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 025148DC */ cpu->r[11] = cpu->r[3];
|
|
/* 025148E0 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025148E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 025148E4 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 025148E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025148E8 */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025148E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025148EC */ _t6 = cpu->r[11] + 0x000001B4u;
|
|
/* 025148EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 025148F0 */ _t7 = cpu->r[11] + 0x000001C0u;
|
|
/* 025148F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025148F4 */ _t8 = cpu->r[11] + 0x000001CCu;
|
|
/* 025148F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025148F8 */ cpu->f[8] = cpu->f[10] + cpu->f[12];
|
|
/* 025148FC */ _t9 = cpu->r[11] + 0x000001B8u;
|
|
/* 025148FC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02514900 */ cpu->f[5] = cpu->f[12] - cpu->f[10];
|
|
/* 02514904 */ _t10 = cpu->r[11] + 0x000001C4u;
|
|
/* 02514904 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02514908 */ cpu->f[11] = cpu->f[8] * cpu->f[0];
|
|
/* 0251490C */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 0251490C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02514910 */ cpu->f[13] = cpu->f[6] + cpu->f[7];
|
|
/* 02514914 */ _t12 = cpu->r[11] + 0x000001C8u;
|
|
/* 02514914 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02514918 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02514918 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 0251491C */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251491C */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514920 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02514924 */ _t15 = cpu->r[11] + 0x000001BCu;
|
|
/* 02514924 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02514928 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0251492C */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 0251492C */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 02514930 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02514934 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 02514934 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 02514938 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02514938 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251493C */ _t19 = cpu->r[6] + 0x00006350u;
|
|
/* 0251493C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251493C */ cpu->r[6] = _t19;
|
|
/* 02514940 */ cpu->f[13] = cpu->f[8] * cpu->f[0];
|
|
/* 02514944 */ _t20 = cpu->r[1] + 0x00000038u;
|
|
/* 02514944 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 02514948 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02514948 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[5]);
|
|
/* 0251494C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02514950 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02514950 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 02514954 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02514954 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02514958 */ cpu->r[29] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251495C */ _t24 = cpu->r[3] + 0x000060F4u;
|
|
/* 0251495C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02514960 */ _t25 = cpu->r[11] + 0x00000024u;
|
|
/* 02514960 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02514964 */ _t26 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02514964 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02514968 */ _t27 = cpu->r[6] + 0x00000008u;
|
|
/* 02514968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0251496C */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 0251496C */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02514970 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02514970 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02514974 */ _t30 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514974 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 02514978 */ cpu->f[11] = cpu->f[10] - cpu->f[9];
|
|
/* 0251497C */ _t31 = cpu->r[11] + 0x000001D0u;
|
|
/* 0251497C */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02514980 */ cpu->r[0] = 0x000000FEu;
|
|
/* 02514984 */ _t32 = cpu->r[6] + 0x00000004u;
|
|
/* 02514984 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02514988 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02514988 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 0251498C */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 0251498C */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02514990 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02514990 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 02514994 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 02514994 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 02514998 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02514998 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0251499C */ _t38 = cpu->r[11] + 0x000001B0u;
|
|
/* 0251499C */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025149A0 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 025149A4 */ _t39 = cpu->r[1] + 0x00000040u;
|
|
/* 025149A4 */ rbrew_write32(cpu->mem, _t39, cpu->r[5]);
|
|
/* 025149A8 */ _t40 = cpu->r[1] + 0x00000048u;
|
|
/* 025149A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 025149AC */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 025149B0 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 025149B0 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 025149B4 */ cpu->r[9] = 0x00000004u;
|
|
/* 025149B8 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 025149B8 */ rbrew_write32(cpu->mem, _t42, cpu->r[7]);
|
|
/* 025149BC */ cpu->f[1] = cpu->f[7] - cpu->f[6];
|
|
/* 025149C0 */ _t43 = cpu->r[1] + 0x00000050u;
|
|
/* 025149C0 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 025149C4 */ cpu->r[7] = cpu->r[1] + 0x0000002Cu;
|
|
/* 025149C8 */ cpu->r[6] = cpu->r[1] + 0x00000040u;
|
|
/* 025149CC */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025149CC */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 025149D0 */ Gambit_fn_023EFB60(cpu);
|
|
/* 025149D4 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025149D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 025149D8 */ _t46 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025149D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025149DC */ _t47 = cpu->r[1] + 0x00000060u;
|
|
/* 025149DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 025149E0 */ cpu->lr = cpu->r[0];
|
|
/* 025149E4 */ _t48 = cpu->r[1] + 0x00000064u;
|
|
/* 025149E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 025149E8 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 025149EC */ return;
|
|
}
|
|
|
|
// fn_025148CC @ 0x25148cc
|
|
void Gambit_fn_025148CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
|
|
L_025148CC: ; // 0x25148cc
|
|
/* 025148CC */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 025148CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025148CC */ cpu->r[1] = _t0;
|
|
/* 025148D0 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 025148D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 025148D4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 025148D8 */ _t2 = cpu->r[7] + 0xFFFFFF34u;
|
|
/* 025148D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 025148DC */ cpu->r[11] = cpu->r[3];
|
|
/* 025148E0 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025148E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 025148E4 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 025148E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025148E8 */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025148E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025148EC */ _t6 = cpu->r[11] + 0x000001B4u;
|
|
/* 025148EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 025148F0 */ _t7 = cpu->r[11] + 0x000001C0u;
|
|
/* 025148F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025148F4 */ _t8 = cpu->r[11] + 0x000001CCu;
|
|
/* 025148F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025148F8 */ cpu->f[8] = cpu->f[10] + cpu->f[12];
|
|
/* 025148FC */ _t9 = cpu->r[11] + 0x000001B8u;
|
|
/* 025148FC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02514900 */ cpu->f[5] = cpu->f[12] - cpu->f[10];
|
|
/* 02514904 */ _t10 = cpu->r[11] + 0x000001C4u;
|
|
/* 02514904 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02514908 */ cpu->f[11] = cpu->f[8] * cpu->f[0];
|
|
/* 0251490C */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 0251490C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02514910 */ cpu->f[13] = cpu->f[6] + cpu->f[7];
|
|
/* 02514914 */ _t12 = cpu->r[11] + 0x000001C8u;
|
|
/* 02514914 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02514918 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02514918 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 0251491C */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251491C */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514920 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02514924 */ _t15 = cpu->r[11] + 0x000001BCu;
|
|
/* 02514924 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02514928 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0251492C */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 0251492C */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 02514930 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02514934 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 02514934 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 02514938 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02514938 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251493C */ _t19 = cpu->r[6] + 0x00006350u;
|
|
/* 0251493C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251493C */ cpu->r[6] = _t19;
|
|
/* 02514940 */ cpu->f[13] = cpu->f[8] * cpu->f[0];
|
|
/* 02514944 */ _t20 = cpu->r[1] + 0x00000038u;
|
|
/* 02514944 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 02514948 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02514948 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[5]);
|
|
/* 0251494C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02514950 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02514950 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 02514954 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02514954 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02514958 */ cpu->r[29] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0251495C */ _t24 = cpu->r[3] + 0x000060F4u;
|
|
/* 0251495C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02514960 */ _t25 = cpu->r[11] + 0x00000024u;
|
|
/* 02514960 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02514964 */ _t26 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02514964 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02514968 */ _t27 = cpu->r[6] + 0x00000008u;
|
|
/* 02514968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0251496C */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 0251496C */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02514970 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02514970 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02514974 */ _t30 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514974 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 02514978 */ cpu->f[11] = cpu->f[10] - cpu->f[9];
|
|
/* 0251497C */ _t31 = cpu->r[11] + 0x000001D0u;
|
|
/* 0251497C */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02514980 */ cpu->r[0] = 0x000000FEu;
|
|
/* 02514984 */ _t32 = cpu->r[6] + 0x00000004u;
|
|
/* 02514984 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02514988 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02514988 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 0251498C */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 0251498C */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02514990 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02514990 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 02514994 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 02514994 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 02514998 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02514998 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0251499C */ _t38 = cpu->r[11] + 0x000001B0u;
|
|
/* 0251499C */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025149A0 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 025149A4 */ _t39 = cpu->r[1] + 0x00000040u;
|
|
/* 025149A4 */ rbrew_write32(cpu->mem, _t39, cpu->r[5]);
|
|
/* 025149A8 */ _t40 = cpu->r[1] + 0x00000048u;
|
|
/* 025149A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 025149AC */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 025149B0 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 025149B0 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 025149B4 */ cpu->r[9] = 0x00000004u;
|
|
/* 025149B8 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 025149B8 */ rbrew_write32(cpu->mem, _t42, cpu->r[7]);
|
|
/* 025149BC */ cpu->f[1] = cpu->f[7] - cpu->f[6];
|
|
/* 025149C0 */ _t43 = cpu->r[1] + 0x00000050u;
|
|
/* 025149C0 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 025149C4 */ cpu->r[7] = cpu->r[1] + 0x0000002Cu;
|
|
/* 025149C8 */ cpu->r[6] = cpu->r[1] + 0x00000040u;
|
|
/* 025149CC */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025149CC */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 025149D0 */ Gambit_fn_023EFB60(cpu);
|
|
/* 025149D4 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025149D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 025149D8 */ _t46 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025149D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025149DC */ _t47 = cpu->r[1] + 0x00000060u;
|
|
/* 025149DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 025149E0 */ cpu->lr = cpu->r[0];
|
|
/* 025149E4 */ _t48 = cpu->r[1] + 0x00000064u;
|
|
/* 025149E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 025149E8 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 025149EC */ return;
|
|
}
|
|
|
|
// fn_025149F0 @ 0x25149f0
|
|
void Gambit_fn_025149F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259;
|
|
|
|
L_025149F0: ; // 0x25149f0
|
|
/* 025149F0 */ _t0 = cpu->r[1] + 0xFFFFFE40u;
|
|
/* 025149F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025149F0 */ cpu->r[1] = _t0;
|
|
/* 025149F4 */ /* nop */
|
|
/* 025149F8 */ _t1 = cpu->r[1] + 0x000001A0u;
|
|
/* 025149F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 025149FC */ /* nop */
|
|
/* 02514A00 */ _t2 = cpu->r[1] + 0x000001A8u;
|
|
/* 02514A00 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02514A04 */ _t3 = cpu->r[1] + 0x00000190u;
|
|
/* 02514A04 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02514A08 */ _t4 = cpu->r[1] + 0x00000170u;
|
|
/* 02514A08 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[27]);
|
|
/* 02514A0C */ /* nop */
|
|
/* 02514A10 */ _t5 = cpu->r[1] + 0x00000198u;
|
|
/* 02514A10 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 02514A14 */ /* nop */
|
|
/* 02514A18 */ _t6 = cpu->r[1] + 0x00000180u;
|
|
/* 02514A18 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02514A1C */ cpu->r[0] = cpu->lr;
|
|
/* 02514A20 */ _t7 = cpu->r[1] + 0x000001C4u;
|
|
/* 02514A20 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02514A24 */ /* nop */
|
|
/* 02514A28 */ _t8 = cpu->r[1] + 0x00000188u;
|
|
/* 02514A28 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 02514A2C */ _t9 = cpu->r[1] + 0x000001B0u;
|
|
/* 02514A2C */ rbrew_write_f64(cpu->mem, _t9, cpu->f[31]);
|
|
/* 02514A30 */ _t10 = cpu->r[1] + 0x00000178u;
|
|
/* 02514A30 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[27]);
|
|
/* 02514A34 */ /* nop */
|
|
/* 02514A38 */ _t11 = cpu->r[1] + 0x000001B8u;
|
|
/* 02514A38 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[31]);
|
|
/* 02514A3C */ cpu->r[11] = 0x101C0000u;
|
|
/* 02514A40 */ _t12 = cpu->r[11] + 0x00006000u;
|
|
/* 02514A40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02514A44 */ _t13 = cpu->r[11] + 0x00000264u;
|
|
/* 02514A44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02514A48 */ _t14 = cpu->r[10] + 0x00000030u;
|
|
/* 02514A48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02514A4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02514A50 */ _t15 = cpu->r[7] + cpu->r[0];
|
|
/* 02514A50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02514A54 */ cpu->r[26] = cpu->r[3];
|
|
/* 02514A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02514A5C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02514A5C */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02514A60 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514A60 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02514A60 */ if (_t18) goto L_0251505C; else goto L_02514A64;
|
|
L_02514A64: ; // 0x2514a64
|
|
/* 02514A64 */ _t19 = cpu->r[8] + 0x00000000u;
|
|
/* 02514A64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02514A68 */ cpu->r[25] = 0x00000000u;
|
|
/* 02514A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]);
|
|
/* 02514A70 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02514A70 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02514A70 */ if (_t21) goto L_02514A74; else goto L_0251505C;
|
|
L_02514A74: ; // 0x2514a74
|
|
/* 02514A74 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02514A78 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02514A7C */ cpu->r[24] = 0x00000001u;
|
|
/* 02514A80 */ _t22 = cpu->r[11] + 0xFFFFFF34u;
|
|
/* 02514A80 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02514A84 */ cpu->r[15] = cpu->r[0];
|
|
/* 02514A88 */ cpu->r[16] = 0x00000003u;
|
|
/* 02514A8C */ _t23 = cpu->r[9] + 0xFFFFFF38u;
|
|
/* 02514A8C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02514A90 */ cpu->r[29] = 0x101C0000u;
|
|
/* 02514A94 */ cpu->r[27] = 0x101F0000u;
|
|
/* 02514A98 */ cpu->r[14] = cpu->r[1] + 0x000000B4u;
|
|
/* 02514A9C */ _t24 = cpu->r[7] + cpu->r[15];
|
|
/* 02514A9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02514AA0 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02514AA4 */ cpu->r[27] = cpu->r[27] + 0x00006350u;
|
|
/* 02514AA8 */ cpu->r[30] = 0x00000000u;
|
|
/* 02514AAC */ cpu->r[28] = 0x101D0000u;
|
|
L_02514AB0: ; // 0x2514ab0
|
|
/* 02514AB0 */ _t25 = cpu->r[31] + 0xFFFFDA10u;
|
|
/* 02514AB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02514AB4 */ _t26 = cpu->r[9] + 0x00000004u;
|
|
/* 02514AB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02514AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02514ABC */ _t27 = cpu->r[12] + cpu->r[30];
|
|
/* 02514ABC */ cpu->r[23] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02514AC0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514AC0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02514AC0 */ if (_t29) goto L_02514AC4; else goto L_02514AD4;
|
|
L_02514AC4: ; // 0x2514ac4
|
|
/* 02514AC4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02514AC8 */ _t30 = cpu->r[31] + 0xFFFFDA10u;
|
|
/* 02514AC8 */ rbrew_write32(cpu->mem, _t30, cpu->r[24]);
|
|
/* 02514ACC */ cpu->r[7] = cpu->r[7] + 0xFFFFFEF4u;
|
|
/* 02514AD0 */ _t31 = cpu->r[28] + 0xFFFFFBBCu;
|
|
/* 02514AD0 */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
L_02514AD4: ; // 0x2514ad4
|
|
/* 02514AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02514AD8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514AD8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02514AD8 */ if (_t33) goto L_0251503C; else goto L_02514ADC;
|
|
L_02514ADC: ; // 0x2514adc
|
|
/* 02514ADC */ _t34 = cpu->r[23] + 0x00000004u;
|
|
/* 02514ADC */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02514AE0 */ _t35 = cpu->r[9] + 0x00000014u;
|
|
/* 02514AE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02514AE4 */ cpu->ctr = cpu->r[7];
|
|
/* 02514AE8 */ cpu->r[3] = cpu->r[23];
|
|
/* 02514AEC */ cpu->r[4] = cpu->r[28] + 0xFFFFFBBCu;
|
|
/* 02514AF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514AF8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514AF8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02514AF8 */ if (_t37) goto L_0251503C; else goto L_02514AFC;
|
|
L_02514AFC: ; // 0x2514afc
|
|
/* 02514AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02514B00 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514B00 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02514B00 */ if (_t39) goto L_0251503C; else goto L_02514B04;
|
|
L_02514B04: ; // 0x2514b04
|
|
/* 02514B04 */ _t40 = cpu->r[26] + 0x000001B4u;
|
|
/* 02514B04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02514B08 */ _t41 = cpu->r[23] + 0x00000078u;
|
|
/* 02514B08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02514B0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 02514B10 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02514B10 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02514B10 */ if (_t43) goto L_02514B58; else goto L_02514B14;
|
|
L_02514B14: ; // 0x2514b14
|
|
/* 02514B14 */ _t44 = cpu->r[26] + 0x000001C0u;
|
|
/* 02514B14 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02514B18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[6]);
|
|
/* 02514B1C */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02514B1C */ _t46 = _t45 & 0x00000001u;
|
|
/* 02514B1C */ if (_t46) goto L_02514B58; else goto L_02514B20;
|
|
L_02514B20: ; // 0x2514b20
|
|
/* 02514B20 */ _t47 = cpu->r[26] + 0x000001B8u;
|
|
/* 02514B20 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02514B24 */ _t48 = cpu->r[23] + 0x0000007Cu;
|
|
/* 02514B24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02514B28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 02514B2C */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02514B2C */ _t50 = _t49 & 0x00000001u;
|
|
/* 02514B2C */ if (_t50) goto L_02514B58; else goto L_02514B30;
|
|
L_02514B30: ; // 0x2514b30
|
|
/* 02514B30 */ _t51 = cpu->r[26] + 0x000001C4u;
|
|
/* 02514B30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02514B34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[11]);
|
|
/* 02514B38 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02514B38 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02514B38 */ if (_t53) goto L_02514B58; else goto L_02514B3C;
|
|
L_02514B3C: ; // 0x2514b3c
|
|
/* 02514B3C */ _t54 = cpu->r[26] + 0x000001BCu;
|
|
/* 02514B3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02514B40 */ _t55 = cpu->r[23] + 0x00000080u;
|
|
/* 02514B40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02514B44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[12]);
|
|
/* 02514B48 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02514B48 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02514B48 */ if (_t57) goto L_02514B58; else goto L_02514B4C;
|
|
L_02514B4C: ; // 0x2514b4c
|
|
/* 02514B4C */ _t58 = cpu->r[26] + 0x000001C8u;
|
|
/* 02514B4C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02514B50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[7]);
|
|
/* 02514B54 */ _t59 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02514B54 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02514B54 */ if (_t60) goto L_02514B58; else goto L_02514B84;
|
|
L_02514B58: ; // 0x2514b58
|
|
/* 02514B58 */ _t61 = cpu->r[26] + 0x000001A8u;
|
|
/* 02514B58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02514B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02514B60 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514B60 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02514B60 */ if (_t63) goto L_0251503C; else goto L_02514B64;
|
|
L_02514B64: ; // 0x2514b64
|
|
/* 02514B64 */ _t64 = cpu->r[12] + 0x00000000u;
|
|
/* 02514B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02514B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[23]);
|
|
/* 02514B6C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514B6C */ _t66 = _t65 & 0x00000001u;
|
|
/* 02514B6C */ if (_t66) goto L_02514B70; else goto L_0251503C;
|
|
L_02514B70: ; // 0x2514b70
|
|
/* 02514B70 */ _t67 = cpu->r[26] + 0x000001B8u;
|
|
/* 02514B70 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02514B74 */ _t68 = cpu->r[26] + 0x000001C0u;
|
|
/* 02514B74 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02514B78 */ _t69 = cpu->r[26] + 0x000001BCu;
|
|
/* 02514B78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02514B7C */ _t70 = cpu->r[26] + 0x000001C4u;
|
|
/* 02514B7C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02514B80 */ _t71 = cpu->r[26] + 0x000001C8u;
|
|
/* 02514B80 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t71);
|
|
L_02514B84: ; // 0x2514b84
|
|
/* 02514B84 */ cpu->r[12] = 0x00000003u;
|
|
/* 02514B88 */ cpu->r[7] = cpu->r[23] + 0x00000050u;
|
|
/* 02514B8C */ cpu->ctr = cpu->r[12];
|
|
/* 02514B90 */ cpu->r[10] = cpu->r[1] + 0x000000D8u;
|
|
L_02514B94: ; // 0x2514b94
|
|
/* 02514B94 */ _t72 = cpu->r[7] + 0x00000004u;
|
|
/* 02514B94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02514B98 */ _t73 = cpu->r[10] + 0x00000004u;
|
|
/* 02514B98 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 02514B9C */ _t74 = cpu->r[7] + 0x00000008u;
|
|
/* 02514B9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02514BA0 */ _t75 = cpu->r[10] + 0x00000008u;
|
|
/* 02514BA0 */ rbrew_write32(cpu->mem, _t75, cpu->r[5]);
|
|
/* 02514BA4 */ _t76 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02514BA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02514BA8 */ _t77 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02514BA8 */ rbrew_write32(cpu->mem, _t77, cpu->r[8]);
|
|
/* 02514BAC */ _t78 = cpu->r[7] + 0x00000010u;
|
|
/* 02514BAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02514BAC */ cpu->r[7] = _t78;
|
|
/* 02514BB0 */ _t79 = cpu->r[10] + 0x00000010u;
|
|
/* 02514BB0 */ rbrew_write32(cpu->mem, _t79, cpu->r[11]);
|
|
/* 02514BB0 */ cpu->r[10] = _t79;
|
|
/* 02514BB4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02514BB4 */ _t80 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02514BB4 */ _t81 = _t80 >> (0x00000002u & 31u);
|
|
/* 02514BB4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02514BB4 */ if (_t82) goto L_02514B94; else goto L_02514BB8;
|
|
L_02514BB8: ; // 0x2514bb8
|
|
/* 02514BB8 */ cpu->f[9] = cpu->f[0] + cpu->f[6];
|
|
/* 02514BBC */ /* nop */
|
|
/* 02514BC0 */ cpu->f[11] = cpu->f[8] + cpu->f[11];
|
|
/* 02514BC4 */ /* nop */
|
|
/* 02514BC8 */ cpu->f[9] = cpu->f[9] * cpu->f[31];
|
|
/* 02514BCC */ /* nop */
|
|
/* 02514BD0 */ cpu->f[12] = cpu->f[11] * cpu->f[31];
|
|
/* 02514BD4 */ _t83 = cpu->r[1] + 0x00000050u;
|
|
/* 02514BD4 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[9]);
|
|
/* 02514BD8 */ _t84 = cpu->r[1] + 0x00000050u;
|
|
/* 02514BD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02514BDC */ cpu->f[13] = cpu->f[13] + cpu->f[7];
|
|
/* 02514BE0 */ _t85 = cpu->r[1] + 0x00000054u;
|
|
/* 02514BE0 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[12]);
|
|
/* 02514BE4 */ _t86 = cpu->r[1] + 0x00000054u;
|
|
/* 02514BE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02514BE8 */ _t87 = cpu->r[1] + 0x000000D0u;
|
|
/* 02514BE8 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 02514BEC */ cpu->f[0] = cpu->f[13] * cpu->f[31];
|
|
/* 02514BF0 */ _t88 = cpu->r[1] + 0x000000D4u;
|
|
/* 02514BF0 */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
/* 02514BF4 */ /* nop */
|
|
/* 02514BF8 */ /* nop */
|
|
/* 02514BFC */ _t89 = cpu->r[1] + 0x00000058u;
|
|
/* 02514BFC */ rbrew_write_f32(cpu->mem, _t89, cpu->f[0]);
|
|
/* 02514C00 */ /* nop */
|
|
/* 02514C04 */ _t90 = cpu->r[1] + 0x00000058u;
|
|
/* 02514C04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02514C08 */ /* nop */
|
|
/* 02514C0C */ _t91 = cpu->r[1] + 0x00000108u;
|
|
/* 02514C0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02514C10 */ /* nop */
|
|
/* 02514C14 */ _t92 = cpu->r[1] + 0x000000D8u;
|
|
/* 02514C14 */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 02514C18 */ /* nop */
|
|
/* 02514C1C */ _t93 = cpu->r[1] + 0x000000D8u;
|
|
/* 02514C1C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 02514C20 */ cpu->f[11] = cpu->f[12];
|
|
/* 02514C24 */ /* nop */
|
|
/* 02514C28 */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 02514C2C */ /* nop */
|
|
/* 02514C30 */ _t94 = cpu->r[1] + 0x000000E4u;
|
|
/* 02514C30 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02514C34 */ _t95 = cpu->r[1] + 0x000000F0u;
|
|
/* 02514C34 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02514C38 */ cpu->f[9] = fma(cpu->f[8], cpu->f[6], cpu->f[11]);
|
|
/* 02514C3C */ _t96 = cpu->r[1] + 0x000000FCu;
|
|
/* 02514C3C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02514C40 */ /* nop */
|
|
/* 02514C44 */ _t97 = cpu->r[1] + 0x00000120u;
|
|
/* 02514C44 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 02514C48 */ cpu->f[13] = fma(cpu->f[8], cpu->f[11], cpu->f[10]);
|
|
/* 02514C4C */ _t98 = cpu->r[1] + 0x00000038u;
|
|
/* 02514C4C */ rbrew_write_f32(cpu->mem, _t98, cpu->f[9]);
|
|
/* 02514C50 */ _t99 = cpu->r[1] + 0x00000038u;
|
|
/* 02514C50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02514C54 */ cpu->f[6] = fma(cpu->f[8], cpu->f[12], cpu->f[0]);
|
|
/* 02514C58 */ _t100 = cpu->r[1] + 0x00000040u;
|
|
/* 02514C58 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[13]);
|
|
/* 02514C5C */ _t101 = cpu->r[1] + 0x00000040u;
|
|
/* 02514C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02514C60 */ _t102 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02514C60 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[6]);
|
|
/* 02514C64 */ _t103 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02514C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02514C68 */ _t104 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02514C68 */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 02514C6C */ _t105 = cpu->r[1] + 0x00000078u;
|
|
/* 02514C6C */ rbrew_write32(cpu->mem, _t105, cpu->r[11]);
|
|
/* 02514C70 */ _t106 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514C70 */ rbrew_write32(cpu->mem, _t106, cpu->r[8]);
|
|
/* 02514C74 */ _t107 = cpu->r[1] + 0x00000030u;
|
|
/* 02514C74 */ rbrew_write32(cpu->mem, _t107, cpu->r[11]);
|
|
/* 02514C78 */ _t108 = cpu->r[1] + 0x00000034u;
|
|
/* 02514C78 */ rbrew_write32(cpu->mem, _t108, cpu->r[0]);
|
|
/* 02514C7C */ _t109 = cpu->r[1] + 0x00000074u;
|
|
/* 02514C7C */ rbrew_write32(cpu->mem, _t109, cpu->r[8]);
|
|
/* 02514C80 */ _t110 = cpu->r[23] + 0x00000004u;
|
|
/* 02514C80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02514C84 */ _t111 = cpu->r[6] + 0x0000021Cu;
|
|
/* 02514C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02514C88 */ cpu->ctr = cpu->r[0];
|
|
/* 02514C8C */ cpu->r[3] = cpu->r[23];
|
|
/* 02514C90 */ cpu->r[4] = 0x00000000u;
|
|
/* 02514C94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514C98 */ _t112 = cpu->r[29] + 0x000060F4u;
|
|
/* 02514C98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02514C9C */ cpu->r[5] = cpu->r[6] + 0x00080000u;
|
|
/* 02514CA0 */ cpu->r[4] = cpu->r[3];
|
|
/* 02514CA4 */ _t113 = cpu->r[5] + 0xFFFFCEDCu;
|
|
/* 02514CA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02514CA8 */ Gambit_fn_023E43BC(cpu);
|
|
/* 02514CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02514CB0 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514CB0 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02514CB0 */ if (_t115) goto L_02514CC0; else goto L_02514CB4;
|
|
L_02514CB4: ; // 0x2514cb4
|
|
/* 02514CB4 */ _t116 = cpu->r[3] + 0x00000F9Cu;
|
|
/* 02514CB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02514CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 02514CBC */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514CBC */ _t118 = _t117 & 0x00000001u;
|
|
/* 02514CBC */ if (_t118) goto L_02514D9C; else goto L_02514CC0;
|
|
L_02514CC0: ; // 0x2514cc0
|
|
/* 02514CC0 */ /* nop */
|
|
/* 02514CC4 */ /* nop */
|
|
/* 02514CC8 */ /* nop */
|
|
/* 02514CCC */ _t119 = cpu->r[1] + 0x000000E4u;
|
|
/* 02514CCC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02514CD0 */ /* nop */
|
|
/* 02514CD4 */ _t120 = cpu->r[27] + 0x00000008u;
|
|
/* 02514CD4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02514CD8 */ /* nop */
|
|
/* 02514CDC */ _t121 = cpu->r[1] + 0x000000F0u;
|
|
/* 02514CDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 02514CE0 */ cpu->f[9] = fma(cpu->f[5], cpu->f[8], cpu->f[9]);
|
|
/* 02514CE4 */ _t122 = cpu->r[1] + 0x000000FCu;
|
|
/* 02514CE4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 02514CE8 */ cpu->f[0] = fma(cpu->f[5], cpu->f[13], cpu->f[11]);
|
|
/* 02514CEC */ _t123 = cpu->r[1] + 0x00000044u;
|
|
/* 02514CEC */ rbrew_write_f32(cpu->mem, _t123, cpu->f[9]);
|
|
/* 02514CF0 */ /* nop */
|
|
/* 02514CF4 */ _t124 = cpu->r[1] + 0x00000044u;
|
|
/* 02514CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02514CF8 */ /* nop */
|
|
/* 02514CFC */ _t125 = cpu->r[1] + 0x00000048u;
|
|
/* 02514CFC */ rbrew_write_f32(cpu->mem, _t125, cpu->f[0]);
|
|
/* 02514D00 */ cpu->f[8] = fma(cpu->f[5], cpu->f[7], cpu->f[6]);
|
|
/* 02514D04 */ _t126 = cpu->r[1] + 0x00000048u;
|
|
/* 02514D04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02514D08 */ _t127 = cpu->r[1] + 0x00000084u;
|
|
/* 02514D08 */ rbrew_write32(cpu->mem, _t127, cpu->r[12]);
|
|
/* 02514D0C */ _t128 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02514D0C */ rbrew_write_f32(cpu->mem, _t128, cpu->f[8]);
|
|
/* 02514D10 */ _t129 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02514D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02514D14 */ _t130 = cpu->r[1] + 0x00000088u;
|
|
/* 02514D14 */ rbrew_write32(cpu->mem, _t130, cpu->r[4]);
|
|
/* 02514D18 */ _t131 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02514D18 */ rbrew_write32(cpu->mem, _t131, cpu->r[0]);
|
|
/* 02514D1C */ _t132 = cpu->r[23] + 0x00000050u;
|
|
/* 02514D1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02514D20 */ _t133 = cpu->r[10] + 0x0000009Cu;
|
|
/* 02514D20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02514D24 */ cpu->f[1] = cpu->f[0] * cpu->f[30];
|
|
/* 02514D28 */ Gambit_fn_02C898C4(cpu);
|
|
/* 02514D2C */ _t134 = cpu->r[23] + 0x00000004u;
|
|
/* 02514D2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02514D30 */ _t135 = cpu->r[5] + 0x0000021Cu;
|
|
/* 02514D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02514D34 */ _t136 = cpu->r[26] + 0x000001D0u;
|
|
/* 02514D34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02514D38 */ cpu->ctr = cpu->r[0];
|
|
/* 02514D3C */ cpu->r[3] = cpu->r[23];
|
|
/* 02514D40 */ cpu->r[18] = cpu->r[12] - cpu->r[4];
|
|
/* 02514D44 */ cpu->r[4] = 0x00000000u;
|
|
/* 02514D48 */ _t137 = cpu->r[29] + 0x000060F4u;
|
|
/* 02514D48 */ cpu->r[21] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02514D4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514D50 */ cpu->r[22] = cpu->r[3];
|
|
/* 02514D54 */ _t138 = cpu->r[1] + 0x000000B4u;
|
|
/* 02514D54 */ rbrew_write32(cpu->mem, _t138, cpu->r[16]);
|
|
/* 02514D58 */ _t139 = cpu->r[14] + 0x00000000u;
|
|
/* 02514D58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02514D5C */ cpu->r[3] = cpu->r[21];
|
|
/* 02514D60 */ cpu->r[4] = cpu->r[22];
|
|
/* 02514D64 */ _t140 = cpu->r[1] + 0x00000080u;
|
|
/* 02514D64 */ rbrew_write32(cpu->mem, _t140, cpu->r[6]);
|
|
/* 02514D68 */ Gambit_fn_023F600C(cpu);
|
|
/* 02514D6C */ cpu->r[7] = cpu->r[1] + 0x00000080u;
|
|
/* 02514D70 */ cpu->r[6] = cpu->r[1] + 0x00000084u;
|
|
/* 02514D74 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514D78 */ cpu->r[4] = cpu->r[22];
|
|
/* 02514D7C */ cpu->r[3] = cpu->r[21];
|
|
/* 02514D80 */ Gambit_fn_023F4B7C(cpu);
|
|
/* 02514D84 */ cpu->r[17] = cpu->r[3];
|
|
/* 02514D88 */ cpu->r[19] = 0x00000000u;
|
|
/* 02514D8C */ cpu->r[21] = 0x00000006u;
|
|
/* 02514D90 */ cpu->r[22] = 0xFFFFFFFFu;
|
|
/* 02514D94 */ cpu->r[24] = 0x00000001u;
|
|
/* 02514D98 */ goto L_02514F5C;
|
|
L_02514D9C: ; // 0x2514d9c
|
|
/* 02514D9C */ _t141 = cpu->r[3] + 0x00000F08u;
|
|
/* 02514D9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02514DA0 */ _t142 = cpu->r[1] + 0x000000B8u;
|
|
/* 02514DA0 */ rbrew_write32(cpu->mem, _t142, cpu->r[9]);
|
|
/* 02514DA4 */ _t143 = cpu->r[3] + 0x00000F0Cu;
|
|
/* 02514DA4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02514DA8 */ _t144 = cpu->r[1] + 0x000000BCu;
|
|
/* 02514DA8 */ rbrew_write32(cpu->mem, _t144, cpu->r[10]);
|
|
/* 02514DAC */ _t145 = cpu->r[3] + 0x00000F10u;
|
|
/* 02514DAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02514DB0 */ _t146 = cpu->r[1] + 0x000000B8u;
|
|
/* 02514DB0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 02514DB4 */ _t147 = cpu->r[1] + 0x000000C0u;
|
|
/* 02514DB4 */ rbrew_write32(cpu->mem, _t147, cpu->r[11]);
|
|
/* 02514DB8 */ _t148 = cpu->r[3] + 0x00000F14u;
|
|
/* 02514DB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02514DBC */ _t149 = cpu->r[1] + 0x000000BCu;
|
|
/* 02514DBC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 02514DC0 */ _t150 = cpu->r[1] + 0x000000C4u;
|
|
/* 02514DC0 */ rbrew_write32(cpu->mem, _t150, cpu->r[12]);
|
|
/* 02514DC4 */ _t151 = cpu->r[3] + 0x00000F18u;
|
|
/* 02514DC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02514DC8 */ _t152 = cpu->r[1] + 0x000000C4u;
|
|
/* 02514DC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 02514DCC */ _t153 = cpu->r[1] + 0x000000C8u;
|
|
/* 02514DCC */ rbrew_write32(cpu->mem, _t153, cpu->r[4]);
|
|
/* 02514DD0 */ _t154 = cpu->r[1] + 0x000000C8u;
|
|
/* 02514DD0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 02514DD4 */ cpu->f[13] = cpu->f[0] - cpu->f[6];
|
|
/* 02514DD8 */ _t155 = cpu->r[3] + 0x00000F1Cu;
|
|
/* 02514DD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02514DDC */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 02514DE0 */ _t156 = cpu->r[1] + 0x000000C0u;
|
|
/* 02514DE0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 02514DE4 */ _t157 = cpu->r[1] + 0x000000CCu;
|
|
/* 02514DE4 */ rbrew_write32(cpu->mem, _t157, cpu->r[5]);
|
|
/* 02514DE8 */ _t158 = cpu->r[1] + 0x000000CCu;
|
|
/* 02514DE8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 02514DEC */ cpu->f[12] = cpu->f[9] * cpu->f[31];
|
|
/* 02514DF0 */ _t159 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02514DF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 02514DF4 */ cpu->f[6] = cpu->f[7] - cpu->f[8];
|
|
/* 02514DF8 */ cpu->f[7] = cpu->f[13] * cpu->f[31];
|
|
/* 02514DFC */ cpu->f[8] = cpu->f[12] - cpu->f[7];
|
|
/* 02514E00 */ cpu->f[6] = cpu->f[6] * cpu->f[31];
|
|
/* 02514E04 */ /* nop */
|
|
/* 02514E08 */ cpu->f[10] = cpu->f[6] - cpu->f[12];
|
|
/* 02514E0C */ _t160 = cpu->r[27] + 0x00000008u;
|
|
/* 02514E0C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 02514E10 */ /* nop */
|
|
/* 02514E14 */ /* nop */
|
|
/* 02514E18 */ cpu->f[0] = cpu->f[5] * cpu->f[9];
|
|
/* 02514E1C */ /* nop */
|
|
/* 02514E20 */ /* nop */
|
|
/* 02514E24 */ /* nop */
|
|
/* 02514E28 */ _t161 = cpu->r[1] + 0x00000090u;
|
|
/* 02514E28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02514E2C */ _t162 = cpu->r[1] + 0x00000094u;
|
|
/* 02514E2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02514E30 */ _t163 = cpu->r[1] + 0x0000010Cu;
|
|
/* 02514E30 */ rbrew_write32(cpu->mem, _t163, cpu->r[9]);
|
|
/* 02514E34 */ _t164 = cpu->r[1] + 0x00000110u;
|
|
/* 02514E34 */ rbrew_write32(cpu->mem, _t164, cpu->r[10]);
|
|
/* 02514E38 */ /* nop */
|
|
/* 02514E3C */ _t165 = cpu->r[1] + 0x00000098u;
|
|
/* 02514E3C */ rbrew_write_f32(cpu->mem, _t165, cpu->f[0]);
|
|
/* 02514E40 */ _t166 = cpu->r[1] + 0x00000098u;
|
|
/* 02514E40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02514E44 */ /* nop */
|
|
/* 02514E48 */ /* nop */
|
|
/* 02514E4C */ _t167 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02514E4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t167);
|
|
/* 02514E50 */ _t168 = cpu->r[1] + 0x00000114u;
|
|
/* 02514E50 */ rbrew_write32(cpu->mem, _t168, cpu->r[0]);
|
|
/* 02514E54 */ _t169 = cpu->r[1] + 0x00000114u;
|
|
/* 02514E54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 02514E58 */ _t170 = cpu->r[1] + 0x000000A0u;
|
|
/* 02514E58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02514E5C */ _t171 = cpu->r[1] + 0x000000A8u;
|
|
/* 02514E5C */ rbrew_write32(cpu->mem, _t171, cpu->r[4]);
|
|
/* 02514E60 */ _t172 = cpu->r[1] + 0x000000A8u;
|
|
/* 02514E60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 02514E64 */ cpu->f[10] = cpu->f[11] + cpu->f[13];
|
|
/* 02514E68 */ _t173 = cpu->r[1] + 0x000000ACu;
|
|
/* 02514E68 */ rbrew_write32(cpu->mem, _t173, cpu->r[5]);
|
|
/* 02514E6C */ _t174 = cpu->r[1] + 0x000000ACu;
|
|
/* 02514E6C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 02514E70 */ _t175 = cpu->r[1] + 0x000000A4u;
|
|
/* 02514E70 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[10]);
|
|
/* 02514E74 */ _t176 = cpu->r[1] + 0x000000A4u;
|
|
/* 02514E74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02514E78 */ _t177 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514E78 */ rbrew_write_f32(cpu->mem, _t177, cpu->f[0]);
|
|
/* 02514E7C */ _t178 = cpu->r[1] + 0x000000B0u;
|
|
/* 02514E7C */ rbrew_write32(cpu->mem, _t178, cpu->r[6]);
|
|
/* 02514E80 */ _t179 = cpu->r[1] + 0x000000B0u;
|
|
/* 02514E80 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 02514E84 */ _t180 = cpu->r[1] + 0x00000030u;
|
|
/* 02514E84 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[6]);
|
|
/* 02514E88 */ _t181 = cpu->r[1] + 0x00000034u;
|
|
/* 02514E88 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[7]);
|
|
/* 02514E8C */ /* nop */
|
|
/* 02514E90 */ /* nop */
|
|
/* 02514E94 */ _t182 = cpu->r[1] + 0x000000E4u;
|
|
/* 02514E94 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02514E98 */ /* nop */
|
|
/* 02514E9C */ cpu->f[9] = fma(cpu->f[5], cpu->f[8], cpu->f[9]);
|
|
/* 02514EA0 */ _t183 = cpu->r[1] + 0x000000F0u;
|
|
/* 02514EA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 02514EA4 */ /* nop */
|
|
/* 02514EA8 */ _t184 = cpu->r[1] + 0x000000FCu;
|
|
/* 02514EA8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 02514EAC */ /* nop */
|
|
/* 02514EB0 */ _t185 = cpu->r[1] + 0x00000044u;
|
|
/* 02514EB0 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[9]);
|
|
/* 02514EB4 */ _t186 = cpu->r[1] + 0x00000044u;
|
|
/* 02514EB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02514EB8 */ cpu->f[0] = fma(cpu->f[5], cpu->f[13], cpu->f[11]);
|
|
/* 02514EBC */ /* nop */
|
|
/* 02514EC0 */ _t187 = cpu->r[1] + 0x00000084u;
|
|
/* 02514EC0 */ rbrew_write32(cpu->mem, _t187, cpu->r[12]);
|
|
/* 02514EC4 */ cpu->f[8] = fma(cpu->f[5], cpu->f[7], cpu->f[6]);
|
|
/* 02514EC8 */ _t188 = cpu->r[1] + 0x00000048u;
|
|
/* 02514EC8 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[0]);
|
|
/* 02514ECC */ _t189 = cpu->r[1] + 0x00000048u;
|
|
/* 02514ECC */ cpu->r[4] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02514ED0 */ _t190 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02514ED0 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[8]);
|
|
/* 02514ED4 */ _t191 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02514ED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02514ED8 */ _t192 = cpu->r[1] + 0x00000088u;
|
|
/* 02514ED8 */ rbrew_write32(cpu->mem, _t192, cpu->r[4]);
|
|
/* 02514EDC */ _t193 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02514EDC */ rbrew_write32(cpu->mem, _t193, cpu->r[0]);
|
|
/* 02514EE0 */ _t194 = cpu->r[23] + 0x00000050u;
|
|
/* 02514EE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t194);
|
|
/* 02514EE4 */ _t195 = cpu->r[10] + 0x0000009Cu;
|
|
/* 02514EE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 02514EE8 */ cpu->f[1] = cpu->f[0] * cpu->f[30];
|
|
/* 02514EEC */ Gambit_fn_02C898C4(cpu);
|
|
/* 02514EF0 */ _t196 = cpu->r[23] + 0x00000004u;
|
|
/* 02514EF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02514EF4 */ _t197 = cpu->r[5] + 0x0000021Cu;
|
|
/* 02514EF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t197);
|
|
/* 02514EF8 */ _t198 = cpu->r[26] + 0x000001D0u;
|
|
/* 02514EF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t198);
|
|
/* 02514EFC */ cpu->ctr = cpu->r[0];
|
|
/* 02514F00 */ cpu->r[3] = cpu->r[23];
|
|
/* 02514F04 */ cpu->r[18] = cpu->r[12] - cpu->r[4];
|
|
/* 02514F08 */ cpu->r[4] = 0x00000000u;
|
|
/* 02514F0C */ _t199 = cpu->r[29] + 0x000060F4u;
|
|
/* 02514F0C */ cpu->r[21] = rbrew_read32(cpu->mem, _t199);
|
|
/* 02514F10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514F14 */ _t200 = cpu->r[1] + 0x000000B4u;
|
|
/* 02514F14 */ rbrew_write32(cpu->mem, _t200, cpu->r[16]);
|
|
/* 02514F18 */ cpu->r[22] = cpu->r[3];
|
|
/* 02514F1C */ _t201 = cpu->r[14] + 0x00000000u;
|
|
/* 02514F1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t201);
|
|
/* 02514F20 */ cpu->r[4] = cpu->r[22];
|
|
/* 02514F24 */ cpu->r[3] = cpu->r[21];
|
|
/* 02514F28 */ _t202 = cpu->r[1] + 0x00000080u;
|
|
/* 02514F28 */ rbrew_write32(cpu->mem, _t202, cpu->r[6]);
|
|
/* 02514F2C */ Gambit_fn_023F600C(cpu);
|
|
/* 02514F30 */ cpu->r[3] = cpu->r[21];
|
|
/* 02514F34 */ cpu->r[4] = cpu->r[22];
|
|
/* 02514F38 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02514F3C */ cpu->r[6] = cpu->r[1] + 0x00000084u;
|
|
/* 02514F40 */ cpu->r[7] = cpu->r[1] + 0x00000080u;
|
|
/* 02514F44 */ Gambit_fn_023F4B7C(cpu);
|
|
/* 02514F48 */ cpu->r[17] = cpu->r[3];
|
|
/* 02514F4C */ cpu->r[19] = 0x00000000u;
|
|
/* 02514F50 */ cpu->r[21] = 0x00000006u;
|
|
/* 02514F54 */ cpu->r[22] = 0xFFFFFFFFu;
|
|
/* 02514F58 */ cpu->r[24] = 0x00000001u;
|
|
L_02514F5C: ; // 0x2514f5c
|
|
/* 02514F5C */ /* nop */
|
|
/* 02514F60 */ cpu->r[9] = cpu->r[17] & cpu->r[8];
|
|
/* 02514F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02514F64 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02514F64 */ _t204 = _t203 & 0x00000001u;
|
|
/* 02514F64 */ if (_t204) goto L_02515030; else goto L_02514F68;
|
|
L_02514F68: ; // 0x2514f68
|
|
/* 02514F68 */ _t205 = cpu->r[26] + 0x000001C0u;
|
|
/* 02514F68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 02514F6C */ _t206 = cpu->r[26] + 0x000001B4u;
|
|
/* 02514F6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 02514F70 */ _t207 = cpu->r[26] + 0x000001C8u;
|
|
/* 02514F70 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t207);
|
|
/* 02514F74 */ _t208 = cpu->r[26] + 0x000001CCu;
|
|
/* 02514F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t208);
|
|
/* 02514F78 */ _t209 = cpu->r[26] + 0x000001BCu;
|
|
/* 02514F78 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 02514F7C */ cpu->f[10] = cpu->f[0] - cpu->f[8];
|
|
/* 02514F80 */ _t210 = cpu->r[1] + 0x00000020u;
|
|
/* 02514F80 */ rbrew_write32(cpu->mem, _t210, cpu->r[0]);
|
|
/* 02514F84 */ cpu->f[12] = cpu->f[6] - cpu->f[9];
|
|
/* 02514F88 */ _t211 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02514F88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t211);
|
|
/* 02514F8C */ _t212 = cpu->r[1] + 0x00000018u;
|
|
/* 02514F8C */ rbrew_write_f32(cpu->mem, _t212, cpu->f[10]);
|
|
/* 02514F90 */ _t213 = cpu->r[1] + 0x00000018u;
|
|
/* 02514F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t213);
|
|
/* 02514F94 */ _t214 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02514F94 */ rbrew_write_f32(cpu->mem, _t214, cpu->f[12]);
|
|
/* 02514F98 */ _t215 = cpu->r[23] + 0x00000004u;
|
|
/* 02514F98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02514F9C */ _t216 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02514F9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t216);
|
|
/* 02514FA0 */ _t217 = cpu->r[1] + 0x00000078u;
|
|
/* 02514FA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t217);
|
|
/* 02514FA4 */ _t218 = cpu->r[1] + 0x00000070u;
|
|
/* 02514FA4 */ rbrew_write32(cpu->mem, _t218, cpu->r[10]);
|
|
/* 02514FA8 */ _t219 = cpu->r[1] + 0x00000060u;
|
|
/* 02514FA8 */ rbrew_write32(cpu->mem, _t219, cpu->r[5]);
|
|
/* 02514FAC */ _t220 = cpu->r[1] + 0x00000074u;
|
|
/* 02514FAC */ cpu->r[4] = rbrew_read32(cpu->mem, _t220);
|
|
/* 02514FB0 */ _t221 = cpu->r[1] + 0x00000088u;
|
|
/* 02514FB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t221);
|
|
/* 02514FB4 */ _t222 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02514FB4 */ rbrew_write32(cpu->mem, _t222, cpu->r[4]);
|
|
/* 02514FB8 */ _t223 = cpu->r[1] + 0x00000024u;
|
|
/* 02514FB8 */ rbrew_write32(cpu->mem, _t223, cpu->r[0]);
|
|
/* 02514FBC */ _t224 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02514FBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t224);
|
|
/* 02514FC0 */ _t225 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02514FC0 */ rbrew_write32(cpu->mem, _t225, cpu->r[8]);
|
|
/* 02514FC4 */ _t226 = cpu->r[1] + 0x00000028u;
|
|
/* 02514FC4 */ rbrew_write32(cpu->mem, _t226, cpu->r[4]);
|
|
/* 02514FC8 */ _t227 = cpu->r[1] + 0x00000084u;
|
|
/* 02514FC8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t227);
|
|
/* 02514FCC */ _t228 = cpu->r[1] + 0x00000064u;
|
|
/* 02514FCC */ rbrew_write32(cpu->mem, _t228, cpu->r[7]);
|
|
/* 02514FD0 */ _t229 = cpu->r[1] + 0x00000068u;
|
|
/* 02514FD0 */ rbrew_write32(cpu->mem, _t229, cpu->r[5]);
|
|
/* 02514FD4 */ _t230 = cpu->r[6] + 0x0000021Cu;
|
|
/* 02514FD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t230);
|
|
/* 02514FD8 */ _t231 = cpu->r[29] + 0x000060F4u;
|
|
/* 02514FD8 */ cpu->r[20] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02514FDC */ cpu->ctr = cpu->r[12];
|
|
/* 02514FE0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02514FE4 */ cpu->r[3] = cpu->r[23];
|
|
/* 02514FE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02514FEC */ _t232 = cpu->r[26] + 0x00000024u;
|
|
/* 02514FEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02514FF0 */ cpu->r[9] = cpu->r[19];
|
|
/* 02514FF4 */ _t233 = cpu->r[26] + 0x000001C4u;
|
|
/* 02514FF4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 02514FF8 */ cpu->r[8] = cpu->r[18];
|
|
/* 02514FFC */ cpu->r[0] = cpu->r[1] + 0x00000068u;
|
|
/* 02515000 */ _t234 = cpu->r[26] + 0x000001B8u;
|
|
/* 02515000 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 02515004 */ cpu->r[7] = cpu->r[1] + 0x00000024u;
|
|
/* 02515008 */ _t235 = cpu->r[1] + 0x00000008u;
|
|
/* 02515008 */ rbrew_write32(cpu->mem, _t235, cpu->r[3]);
|
|
/* 0251500C */ cpu->r[6] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02515010 */ _t236 = cpu->r[26] + 0x000001B0u;
|
|
/* 02515010 */ cpu->r[12] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02515014 */ cpu->r[10] = cpu->r[22];
|
|
/* 02515018 */ cpu->f[1] = cpu->f[7] - cpu->f[8];
|
|
/* 0251501C */ _t237 = cpu->r[1] + 0x00000010u;
|
|
/* 0251501C */ rbrew_write32(cpu->mem, _t237, cpu->r[0]);
|
|
/* 02515020 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02515024 */ cpu->r[3] = cpu->r[20];
|
|
/* 02515028 */ _t238 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515028 */ rbrew_write32(cpu->mem, _t238, cpu->r[12]);
|
|
/* 0251502C */ Gambit_fn_023EFB60(cpu);
|
|
L_02515030: ; // 0x2515030
|
|
/* 02515030 */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 02515030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02515034 */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 02515038 */ _t239 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515038 */ _t240 = _t239 & 0x00000001u;
|
|
/* 02515038 */ if (_t240) goto L_0251503C; else goto L_02514F5C;
|
|
L_0251503C: ; // 0x251503c
|
|
/* 0251503C */ _t241 = cpu->r[1] + 0x00000014u;
|
|
/* 0251503C */ cpu->r[7] = rbrew_read32(cpu->mem, _t241);
|
|
/* 02515040 */ _t242 = cpu->r[7] + 0x00000030u;
|
|
/* 02515040 */ cpu->r[7] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02515044 */ _t243 = cpu->r[7] + cpu->r[15];
|
|
/* 02515044 */ cpu->r[9] = rbrew_read32(cpu->mem, _t243);
|
|
/* 02515048 */ _t244 = cpu->r[9] + 0x00000000u;
|
|
/* 02515048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0251504C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02515050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 02515054 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02515058 */ _t245 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02515058 */ _t246 = _t245 & 0x00000001u;
|
|
/* 02515058 */ if (_t246) goto L_02514AB0; else goto L_0251505C;
|
|
L_0251505C: ; // 0x251505c
|
|
/* 0251505C */ /* nop */
|
|
/* 02515060 */ _t247 = cpu->r[1] + 0x00000188u;
|
|
/* 02515060 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t247);
|
|
/* 02515064 */ _t248 = cpu->r[1] + 0x000001A8u;
|
|
/* 02515064 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t248);
|
|
/* 02515068 */ _t249 = cpu->r[1] + 0x00000180u;
|
|
/* 02515068 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t249);
|
|
/* 0251506C */ _t250 = cpu->r[1] + 0x00000198u;
|
|
/* 0251506C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t250);
|
|
/* 02515070 */ _t251 = cpu->r[1] + 0x000001A0u;
|
|
/* 02515070 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t251);
|
|
/* 02515074 */ _t252 = cpu->r[1] + 0x00000190u;
|
|
/* 02515074 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t252);
|
|
/* 02515078 */ _t253 = cpu->r[1] + 0x00000178u;
|
|
/* 02515078 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 0251507C */ _t254 = cpu->r[1] + 0x000001B8u;
|
|
/* 0251507C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 02515080 */ _t255 = cpu->r[1] + 0x00000170u;
|
|
/* 02515080 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t255);
|
|
/* 02515084 */ _t256 = cpu->r[1] + 0x000001B0u;
|
|
/* 02515084 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t256);
|
|
/* 02515088 */ _t257 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02515088 */ _t258 = _t257 & 0x00000001u;
|
|
/* 02515088 */ if (_t258) goto L_0251508C; // else: addr-0 trap, fall-through
|
|
L_0251508C: ; // 0x251508c
|
|
/* 0251508C */ _t259 = cpu->r[1] + 0x000001C4u;
|
|
/* 0251508C */ cpu->r[0] = rbrew_read32(cpu->mem, _t259);
|
|
/* 02515090 */ cpu->lr = cpu->r[0];
|
|
/* 02515094 */ cpu->r[1] = cpu->r[1] + 0x000001C0u;
|
|
/* 02515098 */ return;
|
|
}
|
|
|
|
// fn_0251509C @ 0x251509c
|
|
void Gambit_fn_0251509C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0251509C: ; // 0x251509c
|
|
/* 0251509C */ cpu->r[0] = cpu->lr;
|
|
/* 025150A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025150A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025150A0 */ cpu->r[1] = _t0;
|
|
/* 025150A4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025150A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025150A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025150AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025150AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025150B0 */ _t3 = cpu->r[31] + 0x000001CCu;
|
|
/* 025150B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025150B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025150B8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025150B8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025150B8 */ if (_t5) goto L_025150C4; else goto L_025150BC;
|
|
L_025150BC: ; // 0x25150bc
|
|
/* 025150BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 025150C0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025150C0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025150C0 */ if (_t7) goto L_025150C4; else goto L_025150F0;
|
|
L_025150C4: ; // 0x25150c4
|
|
/* 025150C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025150C8 */ Gambit_fn_025148C8(cpu);
|
|
/* 025150CC */ cpu->r[3] = cpu->r[31];
|
|
/* 025150D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 025150D4 */ Gambit_fn_025149F0(cpu);
|
|
/* 025150D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025150DC */ cpu->r[4] = 0x00000003u;
|
|
/* 025150E0 */ Gambit_fn_025149F0(cpu);
|
|
/* 025150E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025150E8 */ cpu->r[4] = 0x00000016u;
|
|
/* 025150EC */ Gambit_fn_025149F0(cpu);
|
|
L_025150F0: ; // 0x25150f0
|
|
/* 025150F0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 025150F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025150F4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025150F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025150F8 */ cpu->lr = cpu->r[0];
|
|
/* 025150FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02515100 */ return;
|
|
}
|
|
|
|
// fn_025150A0 @ 0x25150a0
|
|
void Gambit_fn_025150A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_025150A0: ; // 0x25150a0
|
|
/* 025150A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025150A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025150A0 */ cpu->r[1] = _t0;
|
|
/* 025150A4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025150A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025150A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025150AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025150AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025150B0 */ _t3 = cpu->r[31] + 0x000001CCu;
|
|
/* 025150B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025150B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025150B8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025150B8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025150B8 */ if (_t5) goto L_025150C4; else goto L_025150BC;
|
|
L_025150BC: ; // 0x25150bc
|
|
/* 025150BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 025150C0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025150C0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025150C0 */ if (_t7) goto L_025150C4; else goto L_025150F0;
|
|
L_025150C4: ; // 0x25150c4
|
|
/* 025150C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025150C8 */ Gambit_fn_025148C8(cpu);
|
|
/* 025150CC */ cpu->r[3] = cpu->r[31];
|
|
/* 025150D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 025150D4 */ Gambit_fn_025149F0(cpu);
|
|
/* 025150D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 025150DC */ cpu->r[4] = 0x00000003u;
|
|
/* 025150E0 */ Gambit_fn_025149F0(cpu);
|
|
/* 025150E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025150E8 */ cpu->r[4] = 0x00000016u;
|
|
/* 025150EC */ Gambit_fn_025149F0(cpu);
|
|
L_025150F0: ; // 0x25150f0
|
|
/* 025150F0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 025150F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025150F4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025150F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025150F8 */ cpu->lr = cpu->r[0];
|
|
/* 025150FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02515100 */ return;
|
|
}
|
|
|
|
// fn_02515104 @ 0x2515104
|
|
void Gambit_fn_02515104(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02515104: ; // 0x2515104
|
|
/* 02515104 */ cpu->r[0] = cpu->lr;
|
|
/* 02515108 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02515108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02515108 */ cpu->r[1] = _t0;
|
|
/* 0251510C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251510C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02515110 */ cpu->r[31] = cpu->r[3];
|
|
/* 02515114 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02515114 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02515118 */ Gambit_fn_0251509C(cpu);
|
|
/* 0251511C */ cpu->r[3] = cpu->r[31];
|
|
/* 02515120 */ Gambit_fn_02790488(cpu);
|
|
/* 02515124 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02515124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02515128 */ cpu->lr = cpu->r[0];
|
|
/* 0251512C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251512C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02515130 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02515134 */ return;
|
|
}
|
|
|
|
// fn_02515108 @ 0x2515108
|
|
void Gambit_fn_02515108(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02515108: ; // 0x2515108
|
|
/* 02515108 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02515108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02515108 */ cpu->r[1] = _t0;
|
|
/* 0251510C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251510C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02515110 */ cpu->r[31] = cpu->r[3];
|
|
/* 02515114 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02515114 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02515118 */ Gambit_fn_0251509C(cpu);
|
|
/* 0251511C */ cpu->r[3] = cpu->r[31];
|
|
/* 02515120 */ Gambit_fn_02790488(cpu);
|
|
/* 02515124 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02515124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02515128 */ cpu->lr = cpu->r[0];
|
|
/* 0251512C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251512C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02515130 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02515134 */ return;
|
|
}
|
|
|
|
// fn_02515138 @ 0x2515138
|
|
void Gambit_fn_02515138(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72;
|
|
|
|
L_02515138: ; // 0x2515138
|
|
/* 02515138 */ cpu->r[0] = cpu->lr;
|
|
/* 0251513C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0251513C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251513C */ cpu->r[1] = _t0;
|
|
/* 02515140 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02515140 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02515144 */ cpu->r[30] = cpu->r[3];
|
|
/* 02515148 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 02515148 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251514C */ cpu->r[31] = cpu->r[4];
|
|
/* 02515150 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02515154 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02515154 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02515158 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02515158 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251515C */ Gambit_fn_024F6710(cpu);
|
|
/* 02515160 */ cpu->r[5] = cpu->r[3];
|
|
/* 02515164 */ cpu->r[4] = cpu->r[31];
|
|
/* 02515168 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251516C */ Gambit_fn_024F4798(cpu);
|
|
/* 02515170 */ _t5 = cpu->r[31] + 0x000046BCu;
|
|
/* 02515170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02515174 */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02515174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02515178 */ cpu->ctr = cpu->r[0];
|
|
/* 0251517C */ cpu->r[3] = cpu->r[31];
|
|
/* 02515180 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515184 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02515184 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02515188 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0251518C */ _t8 = cpu->r[8] + 0xFFFFFF3Cu;
|
|
/* 0251518C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02515190 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02515194 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02515194 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02515198 */ _t10 = cpu->r[6] + 0xFFFFFF34u;
|
|
/* 02515198 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0251519C */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 0251519C */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 025151A0 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 025151A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025151A4 */ _t13 = cpu->r[31] + 0x00000090u;
|
|
/* 025151A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025151A8 */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 025151A8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 025151AC */ _t15 = cpu->r[31] + 0x00000094u;
|
|
/* 025151AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025151B0 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 025151B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025151B4 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025151B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 025151B8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025151B8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 025151BC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 025151BC */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 025151C0 */ cpu->f[6] = cpu->f[6] * cpu->f[12];
|
|
/* 025151C4 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 025151C4 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 025151C8 */ /* nop */
|
|
/* 025151CC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 025151CC */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025151D0 */ /* nop */
|
|
/* 025151D4 */ /* nop */
|
|
/* 025151D8 */ cpu->f[12] = cpu->f[6] * cpu->f[13];
|
|
/* 025151DC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 025151DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 025151E0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 025151E0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 025151E4 */ cpu->f[10] = cpu->f[9] * cpu->f[13];
|
|
/* 025151E8 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 025151E8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 025151EC */ cpu->f[8] = cpu->f[7] * cpu->f[13];
|
|
/* 025151F0 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 025151F0 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 025151F4 */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 025151F8 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 025151F8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 025151FC */ cpu->r[11] = 0x100C0000u;
|
|
/* 02515200 */ cpu->f[9] = cpu->f[9] + cpu->f[10];
|
|
/* 02515204 */ _t27 = cpu->r[30] + 0x000001B8u;
|
|
/* 02515204 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 02515208 */ cpu->f[7] = cpu->f[5] - cpu->f[12];
|
|
/* 0251520C */ _t28 = cpu->r[11] + 0xFFFFFF38u;
|
|
/* 0251520C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02515210 */ cpu->f[11] = cpu->f[4] - cpu->f[8];
|
|
/* 02515214 */ _t29 = cpu->r[30] + 0x000001C4u;
|
|
/* 02515214 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 02515218 */ _t30 = cpu->r[30] + 0x000001BCu;
|
|
/* 02515218 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[7]);
|
|
/* 0251521C */ cpu->f[8] = cpu->f[4] + cpu->f[8];
|
|
/* 02515220 */ _t31 = cpu->r[30] + 0x000001B4u;
|
|
/* 02515220 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 02515224 */ cpu->f[11] = cpu->f[5] + cpu->f[12];
|
|
/* 02515228 */ _t32 = cpu->r[30] + 0x000001C0u;
|
|
/* 02515228 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[8]);
|
|
/* 0251522C */ _t33 = cpu->r[30] + 0x000001C8u;
|
|
/* 0251522C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 02515230 */ _t34 = cpu->r[31] + 0x00004710u;
|
|
/* 02515230 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02515234 */ _t35 = cpu->r[30] + 0x000001CCu;
|
|
/* 02515234 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02515238 */ _t36 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02515238 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0251523C */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 02515240 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02515240 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[6]);
|
|
/* 02515244 */ Gambit_fn_02C898C4(cpu);
|
|
/* 02515248 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251524C */ _t38 = cpu->r[30] + 0x00000050u;
|
|
/* 0251524C */ cpu->r[29] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02515250 */ cpu->r[9] = cpu->r[9] + 0xFFFFFECCu;
|
|
/* 02515254 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02515258 */ _t39 = cpu->r[30] + 0x000001D0u;
|
|
/* 02515258 */ rbrew_write32(cpu->mem, _t39, cpu->r[4]);
|
|
/* 0251525C */ cpu->r[10] = cpu->r[10] + 0xFFFFFF40u;
|
|
/* 02515260 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02515260 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 02515264 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515264 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 02515268 */ _t42 = cpu->r[29] + 0x00000034u;
|
|
/* 02515268 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0251526C */ _t43 = cpu->r[12] + 0x00000014u;
|
|
/* 0251526C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02515270 */ cpu->ctr = cpu->r[0];
|
|
/* 02515274 */ cpu->r[3] = cpu->r[29] + 0x00000030u;
|
|
/* 02515278 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251527C */ _t44 = cpu->r[29] + 0x00000034u;
|
|
/* 0251527C */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02515280 */ _t45 = cpu->r[7] + 0x00000014u;
|
|
/* 02515280 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02515284 */ cpu->ctr = cpu->r[9];
|
|
/* 02515288 */ cpu->r[3] = cpu->r[29] + 0x00000030u;
|
|
/* 0251528C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515290 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02515290 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02515294 */ _t47 = cpu->r[10] + 0x00000014u;
|
|
/* 02515294 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02515298 */ cpu->ctr = cpu->r[11];
|
|
/* 0251529C */ _t48 = cpu->r[29] + 0x00000030u;
|
|
/* 0251529C */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 025152A0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025152A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025152A8 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025152A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 025152AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 025152B0 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025152B0 */ _t51 = _t50 & 0x00000001u;
|
|
/* 025152B0 */ if (_t51) goto L_02515310; else goto L_025152B4;
|
|
L_025152B4: ; // 0x25152b4
|
|
/* 025152B4 */ cpu->r[0] = 0x00080000u;
|
|
/* 025152B8 */ _t52 = cpu->r[29] + 0x00000030u;
|
|
/* 025152B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025152BC */ cpu->r[12] = 0x10110000u;
|
|
/* 025152C0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 025152C4 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025152C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025152C8 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 025152CC */ cpu->ctr = cpu->r[0];
|
|
/* 025152D0 */ _t54 = cpu->r[12] + 0x00007399u;
|
|
/* 025152D0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t54);
|
|
/* 025152D4 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_025152D8: ; // 0x25152d8
|
|
/* 025152D8 */ _t55 = cpu->r[9] + 0x00000001u;
|
|
/* 025152D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t55);
|
|
/* 025152D8 */ cpu->r[9] = _t55;
|
|
/* 025152DC */ _t56 = cpu->r[8] + 0x00000001u;
|
|
/* 025152DC */ cpu->r[6] = rbrew_read8(cpu->mem, _t56);
|
|
/* 025152DC */ cpu->r[8] = _t56;
|
|
/* 025152E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 025152E4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025152E4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 025152E4 */ if (_t58) goto L_025152E8; else goto L_02515318;
|
|
L_025152E8: ; // 0x25152e8
|
|
/* 025152E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 025152EC */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025152EC */ _t60 = _t59 & 0x00000001u;
|
|
/* 025152EC */ if (_t60) goto L_02515310; else goto L_025152F0;
|
|
L_025152F0: ; // 0x25152f0
|
|
/* 025152F0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025152F0 */ _t61 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025152F0 */ _t62 = _t61 >> (0x00000002u & 31u);
|
|
/* 025152F0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 025152F0 */ if (_t63) goto L_025152D8; else goto L_025152F4;
|
|
L_025152F4: ; // 0x25152f4
|
|
/* 025152F4 */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025152F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 025152F8 */ _t65 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025152F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025152FC */ _t66 = cpu->r[1] + 0x00000030u;
|
|
/* 025152FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02515300 */ cpu->lr = cpu->r[0];
|
|
/* 02515304 */ _t67 = cpu->r[1] + 0x00000034u;
|
|
/* 02515304 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02515308 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0251530C */ return;
|
|
L_02515310: ; // 0x2515310
|
|
/* 02515310 */ cpu->r[7] = 0x00000001u;
|
|
/* 02515314 */ _t68 = cpu->r[30] + 0x000001B0u;
|
|
/* 02515314 */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
L_02515318: ; // 0x2515318
|
|
/* 02515318 */ _t69 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02515318 */ cpu->r[29] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0251531C */ _t70 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251531C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02515320 */ _t71 = cpu->r[1] + 0x00000030u;
|
|
/* 02515320 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02515324 */ cpu->lr = cpu->r[0];
|
|
/* 02515328 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 02515328 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251532C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02515330 */ return;
|
|
}
|
|
|
|
// fn_0251513C @ 0x251513c
|
|
void Gambit_fn_0251513C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72;
|
|
|
|
L_0251513C: ; // 0x251513c
|
|
/* 0251513C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0251513C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251513C */ cpu->r[1] = _t0;
|
|
/* 02515140 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02515140 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02515144 */ cpu->r[30] = cpu->r[3];
|
|
/* 02515148 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 02515148 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251514C */ cpu->r[31] = cpu->r[4];
|
|
/* 02515150 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02515154 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02515154 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02515158 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02515158 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251515C */ Gambit_fn_024F6710(cpu);
|
|
/* 02515160 */ cpu->r[5] = cpu->r[3];
|
|
/* 02515164 */ cpu->r[4] = cpu->r[31];
|
|
/* 02515168 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251516C */ Gambit_fn_024F4798(cpu);
|
|
/* 02515170 */ _t5 = cpu->r[31] + 0x000046BCu;
|
|
/* 02515170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02515174 */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02515174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02515178 */ cpu->ctr = cpu->r[0];
|
|
/* 0251517C */ cpu->r[3] = cpu->r[31];
|
|
/* 02515180 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515184 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02515184 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02515188 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0251518C */ _t8 = cpu->r[8] + 0xFFFFFF3Cu;
|
|
/* 0251518C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02515190 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02515194 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02515194 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02515198 */ _t10 = cpu->r[6] + 0xFFFFFF34u;
|
|
/* 02515198 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0251519C */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 0251519C */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 025151A0 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 025151A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025151A4 */ _t13 = cpu->r[31] + 0x00000090u;
|
|
/* 025151A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025151A8 */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 025151A8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 025151AC */ _t15 = cpu->r[31] + 0x00000094u;
|
|
/* 025151AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025151B0 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 025151B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025151B4 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025151B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 025151B8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025151B8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 025151BC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 025151BC */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 025151C0 */ cpu->f[6] = cpu->f[6] * cpu->f[12];
|
|
/* 025151C4 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 025151C4 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 025151C8 */ /* nop */
|
|
/* 025151CC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 025151CC */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025151D0 */ /* nop */
|
|
/* 025151D4 */ /* nop */
|
|
/* 025151D8 */ cpu->f[12] = cpu->f[6] * cpu->f[13];
|
|
/* 025151DC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 025151DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 025151E0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 025151E0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 025151E4 */ cpu->f[10] = cpu->f[9] * cpu->f[13];
|
|
/* 025151E8 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 025151E8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 025151EC */ cpu->f[8] = cpu->f[7] * cpu->f[13];
|
|
/* 025151F0 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 025151F0 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 025151F4 */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 025151F8 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 025151F8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 025151FC */ cpu->r[11] = 0x100C0000u;
|
|
/* 02515200 */ cpu->f[9] = cpu->f[9] + cpu->f[10];
|
|
/* 02515204 */ _t27 = cpu->r[30] + 0x000001B8u;
|
|
/* 02515204 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 02515208 */ cpu->f[7] = cpu->f[5] - cpu->f[12];
|
|
/* 0251520C */ _t28 = cpu->r[11] + 0xFFFFFF38u;
|
|
/* 0251520C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02515210 */ cpu->f[11] = cpu->f[4] - cpu->f[8];
|
|
/* 02515214 */ _t29 = cpu->r[30] + 0x000001C4u;
|
|
/* 02515214 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 02515218 */ _t30 = cpu->r[30] + 0x000001BCu;
|
|
/* 02515218 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[7]);
|
|
/* 0251521C */ cpu->f[8] = cpu->f[4] + cpu->f[8];
|
|
/* 02515220 */ _t31 = cpu->r[30] + 0x000001B4u;
|
|
/* 02515220 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 02515224 */ cpu->f[11] = cpu->f[5] + cpu->f[12];
|
|
/* 02515228 */ _t32 = cpu->r[30] + 0x000001C0u;
|
|
/* 02515228 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[8]);
|
|
/* 0251522C */ _t33 = cpu->r[30] + 0x000001C8u;
|
|
/* 0251522C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 02515230 */ _t34 = cpu->r[31] + 0x00004710u;
|
|
/* 02515230 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02515234 */ _t35 = cpu->r[30] + 0x000001CCu;
|
|
/* 02515234 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02515238 */ _t36 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02515238 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0251523C */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 02515240 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02515240 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[6]);
|
|
/* 02515244 */ Gambit_fn_02C898C4(cpu);
|
|
/* 02515248 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251524C */ _t38 = cpu->r[30] + 0x00000050u;
|
|
/* 0251524C */ cpu->r[29] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02515250 */ cpu->r[9] = cpu->r[9] + 0xFFFFFECCu;
|
|
/* 02515254 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02515258 */ _t39 = cpu->r[30] + 0x000001D0u;
|
|
/* 02515258 */ rbrew_write32(cpu->mem, _t39, cpu->r[4]);
|
|
/* 0251525C */ cpu->r[10] = cpu->r[10] + 0xFFFFFF40u;
|
|
/* 02515260 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02515260 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 02515264 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515264 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 02515268 */ _t42 = cpu->r[29] + 0x00000034u;
|
|
/* 02515268 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0251526C */ _t43 = cpu->r[12] + 0x00000014u;
|
|
/* 0251526C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02515270 */ cpu->ctr = cpu->r[0];
|
|
/* 02515274 */ cpu->r[3] = cpu->r[29] + 0x00000030u;
|
|
/* 02515278 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251527C */ _t44 = cpu->r[29] + 0x00000034u;
|
|
/* 0251527C */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02515280 */ _t45 = cpu->r[7] + 0x00000014u;
|
|
/* 02515280 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02515284 */ cpu->ctr = cpu->r[9];
|
|
/* 02515288 */ cpu->r[3] = cpu->r[29] + 0x00000030u;
|
|
/* 0251528C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515290 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02515290 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02515294 */ _t47 = cpu->r[10] + 0x00000014u;
|
|
/* 02515294 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02515298 */ cpu->ctr = cpu->r[11];
|
|
/* 0251529C */ _t48 = cpu->r[29] + 0x00000030u;
|
|
/* 0251529C */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 025152A0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025152A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025152A8 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025152A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 025152AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 025152B0 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025152B0 */ _t51 = _t50 & 0x00000001u;
|
|
/* 025152B0 */ if (_t51) goto L_02515310; else goto L_025152B4;
|
|
L_025152B4: ; // 0x25152b4
|
|
/* 025152B4 */ cpu->r[0] = 0x00080000u;
|
|
/* 025152B8 */ _t52 = cpu->r[29] + 0x00000030u;
|
|
/* 025152B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025152BC */ cpu->r[12] = 0x10110000u;
|
|
/* 025152C0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 025152C4 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025152C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025152C8 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 025152CC */ cpu->ctr = cpu->r[0];
|
|
/* 025152D0 */ _t54 = cpu->r[12] + 0x00007399u;
|
|
/* 025152D0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t54);
|
|
/* 025152D4 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_025152D8: ; // 0x25152d8
|
|
/* 025152D8 */ _t55 = cpu->r[9] + 0x00000001u;
|
|
/* 025152D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t55);
|
|
/* 025152D8 */ cpu->r[9] = _t55;
|
|
/* 025152DC */ _t56 = cpu->r[8] + 0x00000001u;
|
|
/* 025152DC */ cpu->r[6] = rbrew_read8(cpu->mem, _t56);
|
|
/* 025152DC */ cpu->r[8] = _t56;
|
|
/* 025152E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 025152E4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025152E4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 025152E4 */ if (_t58) goto L_025152E8; else goto L_02515318;
|
|
L_025152E8: ; // 0x25152e8
|
|
/* 025152E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 025152EC */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025152EC */ _t60 = _t59 & 0x00000001u;
|
|
/* 025152EC */ if (_t60) goto L_02515310; else goto L_025152F0;
|
|
L_025152F0: ; // 0x25152f0
|
|
/* 025152F0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025152F0 */ _t61 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025152F0 */ _t62 = _t61 >> (0x00000002u & 31u);
|
|
/* 025152F0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 025152F0 */ if (_t63) goto L_025152D8; else goto L_025152F4;
|
|
L_025152F4: ; // 0x25152f4
|
|
/* 025152F4 */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025152F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 025152F8 */ _t65 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025152F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025152FC */ _t66 = cpu->r[1] + 0x00000030u;
|
|
/* 025152FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02515300 */ cpu->lr = cpu->r[0];
|
|
/* 02515304 */ _t67 = cpu->r[1] + 0x00000034u;
|
|
/* 02515304 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02515308 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0251530C */ return;
|
|
L_02515310: ; // 0x2515310
|
|
/* 02515310 */ cpu->r[7] = 0x00000001u;
|
|
/* 02515314 */ _t68 = cpu->r[30] + 0x000001B0u;
|
|
/* 02515314 */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
L_02515318: ; // 0x2515318
|
|
/* 02515318 */ _t69 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02515318 */ cpu->r[29] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0251531C */ _t70 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251531C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02515320 */ _t71 = cpu->r[1] + 0x00000030u;
|
|
/* 02515320 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02515324 */ cpu->lr = cpu->r[0];
|
|
/* 02515328 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 02515328 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251532C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02515330 */ return;
|
|
}
|
|
|
|
// fn_02515334 @ 0x2515334
|
|
void Gambit_fn_02515334(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02515334: ; // 0x2515334
|
|
/* 02515334 */ cpu->r[0] = cpu->lr;
|
|
/* 02515338 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02515338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02515338 */ cpu->r[1] = _t0;
|
|
/* 0251533C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0251533C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02515340 */ cpu->r[31] = 0x100C0000u;
|
|
/* 02515344 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02515344 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02515348 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515348 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0251534C */ cpu->r[3] = 0x101F0000u;
|
|
/* 02515350 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02515350 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02515354 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02515358 */ cpu->r[29] = 0x100C0000u;
|
|
/* 0251535C */ cpu->r[0] = cpu->r[0] + 0xFFFFFF54u;
|
|
/* 02515360 */ cpu->r[29] = cpu->r[29] + 0xFFFFFECCu;
|
|
/* 02515364 */ _t5 = cpu->r[3] + 0xFFFF97FCu;
|
|
/* 02515364 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02515364 */ cpu->r[3] = _t5;
|
|
/* 02515368 */ cpu->r[31] = cpu->r[31] + 0xFFFFFF14u;
|
|
/* 0251536C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0251536C */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02515370 */ cpu->r[30] = 0x02510000u;
|
|
/* 02515374 */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02515374 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02515378 */ cpu->r[30] = cpu->r[30] + 0x000057BCu;
|
|
/* 0251537C */ _t8 = cpu->r[3] + 0x00000008u;
|
|
/* 0251537C */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02515380 */ _t9 = cpu->r[3] + 0x00000010u;
|
|
/* 02515380 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02515384 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02515388 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0251538C */ cpu->r[3] = cpu->r[3] + 0x000067A4u;
|
|
/* 02515390 */ Gambit_fn_02C83090(cpu);
|
|
/* 02515394 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02515398 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251539C */ cpu->r[3] = cpu->r[3] + 0xFFFF9810u;
|
|
/* 025153A0 */ cpu->r[0] = cpu->r[0] + 0xFFFFFF60u;
|
|
/* 025153A4 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 025153A4 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 025153A8 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 025153A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 025153AC */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 025153AC */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 025153B0 */ _t13 = cpu->r[3] + 0x00000010u;
|
|
/* 025153B0 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 025153B4 */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025153B4 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 025153B8 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 025153BC */ cpu->r[3] = 0x101C0000u;
|
|
/* 025153C0 */ cpu->r[3] = cpu->r[3] + 0x000067B0u;
|
|
/* 025153C4 */ Gambit_fn_02C83090(cpu);
|
|
/* 025153C8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025153C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025153CC */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025153CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025153D0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 025153D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025153D4 */ cpu->lr = cpu->r[0];
|
|
/* 025153D8 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 025153D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025153DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025153E0 */ return;
|
|
}
|
|
|
|
// fn_02515338 @ 0x2515338
|
|
void Gambit_fn_02515338(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02515338: ; // 0x2515338
|
|
/* 02515338 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02515338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02515338 */ cpu->r[1] = _t0;
|
|
/* 0251533C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0251533C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02515340 */ cpu->r[31] = 0x100C0000u;
|
|
/* 02515344 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02515344 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02515348 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515348 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0251534C */ cpu->r[3] = 0x101F0000u;
|
|
/* 02515350 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02515350 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02515354 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02515358 */ cpu->r[29] = 0x100C0000u;
|
|
/* 0251535C */ cpu->r[0] = cpu->r[0] + 0xFFFFFF54u;
|
|
/* 02515360 */ cpu->r[29] = cpu->r[29] + 0xFFFFFECCu;
|
|
/* 02515364 */ _t5 = cpu->r[3] + 0xFFFF97FCu;
|
|
/* 02515364 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02515364 */ cpu->r[3] = _t5;
|
|
/* 02515368 */ cpu->r[31] = cpu->r[31] + 0xFFFFFF14u;
|
|
/* 0251536C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0251536C */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02515370 */ cpu->r[30] = 0x02510000u;
|
|
/* 02515374 */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02515374 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02515378 */ cpu->r[30] = cpu->r[30] + 0x000057BCu;
|
|
/* 0251537C */ _t8 = cpu->r[3] + 0x00000008u;
|
|
/* 0251537C */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02515380 */ _t9 = cpu->r[3] + 0x00000010u;
|
|
/* 02515380 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02515384 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02515388 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0251538C */ cpu->r[3] = cpu->r[3] + 0x000067A4u;
|
|
/* 02515390 */ Gambit_fn_02C83090(cpu);
|
|
/* 02515394 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02515398 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251539C */ cpu->r[3] = cpu->r[3] + 0xFFFF9810u;
|
|
/* 025153A0 */ cpu->r[0] = cpu->r[0] + 0xFFFFFF60u;
|
|
/* 025153A4 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 025153A4 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 025153A8 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 025153A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 025153AC */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 025153AC */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 025153B0 */ _t13 = cpu->r[3] + 0x00000010u;
|
|
/* 025153B0 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 025153B4 */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025153B4 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 025153B8 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 025153BC */ cpu->r[3] = 0x101C0000u;
|
|
/* 025153C0 */ cpu->r[3] = cpu->r[3] + 0x000067B0u;
|
|
/* 025153C4 */ Gambit_fn_02C83090(cpu);
|
|
/* 025153C8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025153C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025153CC */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025153CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025153D0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 025153D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025153D4 */ cpu->lr = cpu->r[0];
|
|
/* 025153D8 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 025153D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025153DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025153E0 */ return;
|
|
}
|
|
|
|
// fn_025153E4 @ 0x25153e4
|
|
void Gambit_fn_025153E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_025153E4: ; // 0x25153e4
|
|
/* 025153E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025153E8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025153E8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 025153E8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025153E8 */ goto L_025153EC;
|
|
L_025153EC: ; // 0x25153ec
|
|
/* 025153EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025153EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025153F0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025153F0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025153F0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025153F0 */ goto L_025153F4;
|
|
L_025153F4: ; // 0x25153f4
|
|
/* 025153F4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_025153F8 @ 0x25153f8
|
|
void Gambit_fn_025153F8(CPUState* cpu) {
|
|
L_025153F8: ; // 0x25153f8
|
|
/* 025153F8 */ return;
|
|
}
|
|
|
|
// fn_025153FC @ 0x25153fc
|
|
void Gambit_fn_025153FC(CPUState* cpu) {
|
|
L_025153FC: ; // 0x25153fc
|
|
/* 025153FC */ return;
|
|
}
|
|
|
|
// fn_02515400 @ 0x2515400
|
|
void Gambit_fn_02515400(CPUState* cpu) {
|
|
L_02515400: ; // 0x2515400
|
|
/* 02515400 */ return;
|
|
}
|
|
|
|
// fn_02515404 @ 0x2515404
|
|
void Gambit_fn_02515404(CPUState* cpu) {
|
|
L_02515404: ; // 0x2515404
|
|
/* 02515404 */ return;
|
|
}
|
|
|
|
// fn_02515408 @ 0x2515408
|
|
void Gambit_fn_02515408(CPUState* cpu) {
|
|
L_02515408: ; // 0x2515408
|
|
/* 02515408 */ return;
|
|
}
|
|
|
|
// fn_0251540C @ 0x251540c
|
|
void Gambit_fn_0251540C(CPUState* cpu) {
|
|
L_0251540C: ; // 0x251540c
|
|
/* 0251540C */ return;
|
|
}
|
|
|
|
// fn_02515410 @ 0x2515410
|
|
void Gambit_fn_02515410(CPUState* cpu) {
|
|
L_02515410: ; // 0x2515410
|
|
/* 02515410 */ return;
|
|
}
|
|
|
|
// fn_02515414 @ 0x2515414
|
|
void Gambit_fn_02515414(CPUState* cpu) {
|
|
L_02515414: ; // 0x2515414
|
|
/* 02515414 */ return;
|
|
}
|
|
|
|
// fn_02515418 @ 0x2515418
|
|
void Gambit_fn_02515418(CPUState* cpu) {
|
|
L_02515418: ; // 0x2515418
|
|
/* 02515418 */ return;
|
|
}
|
|
|
|
// fn_0251541C @ 0x251541c
|
|
void Gambit_fn_0251541C(CPUState* cpu) {
|
|
L_0251541C: ; // 0x251541c
|
|
/* 0251541C */ return;
|
|
}
|
|
|
|
// fn_02515420 @ 0x2515420
|
|
void Gambit_fn_02515420(CPUState* cpu) {
|
|
L_02515420: ; // 0x2515420
|
|
/* 02515420 */ return;
|
|
}
|
|
|
|
// fn_02515424 @ 0x2515424
|
|
void Gambit_fn_02515424(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02515424: ; // 0x2515424
|
|
/* 02515424 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02515424 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251542C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251542C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0251542C */ if (_t2) goto L_02515438; else goto L_02515430;
|
|
L_02515430: ; // 0x2515430
|
|
/* 02515430 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02515434 */ return;
|
|
L_02515438: ; // 0x2515438
|
|
/* 02515438 */ cpu->r[3] = 0x00000000u;
|
|
/* 0251543C */ return;
|
|
}
|
|
|
|
// fn_02515440 @ 0x2515440
|
|
void Gambit_fn_02515440(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02515440: ; // 0x2515440
|
|
/* 02515440 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02515440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02515448 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515448 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02515448 */ if (_t2) goto L_02515454; else goto L_0251544C;
|
|
L_0251544C: ; // 0x251544c
|
|
/* 0251544C */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02515450 */ return;
|
|
L_02515454: ; // 0x2515454
|
|
/* 02515454 */ cpu->r[3] = 0x00000000u;
|
|
/* 02515458 */ return;
|
|
}
|
|
|
|
// fn_0251545C @ 0x251545c
|
|
void Gambit_fn_0251545C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0251545C: ; // 0x251545c
|
|
/* 0251545C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0251545C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515460 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02515460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02515464 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515464 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02515464 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02515464 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02515464 */ goto L_02515468;
|
|
L_02515468: ; // 0x2515468
|
|
/* 02515468 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02515468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0251546C */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0251546C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02515470 */ cpu->ctr = cpu->r[0];
|
|
/* 02515474 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02515478 @ 0x2515478
|
|
void Gambit_fn_02515478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02515478: ; // 0x2515478
|
|
/* 02515478 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02515478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251547C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0251547C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02515480 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515480 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02515480 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02515480 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02515480 */ goto L_02515484;
|
|
L_02515484: ; // 0x2515484
|
|
/* 02515484 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02515484 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02515488 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02515488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251548C */ cpu->ctr = cpu->r[0];
|
|
/* 02515490 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02515494 @ 0x2515494
|
|
void Gambit_fn_02515494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02515494: ; // 0x2515494
|
|
/* 02515494 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02515494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515498 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02515498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251549C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251549C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0251549C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0251549C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0251549C */ goto L_025154A0;
|
|
L_025154A0: ; // 0x25154a0
|
|
/* 025154A0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 025154A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025154A4 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 025154A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025154A8 */ cpu->ctr = cpu->r[0];
|
|
/* 025154AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025154B0 @ 0x25154b0
|
|
void Gambit_fn_025154B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_025154B0: ; // 0x25154b0
|
|
/* 025154B0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 025154B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025154B4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 025154B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025154B8 */ cpu->ctr = cpu->r[0];
|
|
/* 025154BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025154C0 @ 0x25154c0
|
|
void Gambit_fn_025154C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_025154C0: ; // 0x25154c0
|
|
/* 025154C0 */ cpu->r[0] = cpu->lr;
|
|
/* 025154C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025154C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025154C4 */ cpu->r[1] = _t0;
|
|
/* 025154C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025154C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025154CC */ cpu->r[31] = cpu->r[3];
|
|
/* 025154D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025154D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025154D4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025154D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025154D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 025154DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025154DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 025154DC */ if (_t5) goto L_025154E0; else goto L_025154FC;
|
|
L_025154E0: ; // 0x25154e0
|
|
/* 025154E0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 025154E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025154E4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 025154E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025154E8 */ cpu->ctr = cpu->r[0];
|
|
/* 025154EC */ cpu->r[3] = cpu->r[31];
|
|
/* 025154F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025154F4 */ cpu->r[0] = 0x00000002u;
|
|
/* 025154F8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025154F8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_025154FC: ; // 0x25154fc
|
|
/* 025154FC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 025154FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02515500 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515500 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02515504 */ cpu->lr = cpu->r[0];
|
|
/* 02515508 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251550C */ return;
|
|
}
|
|
|
|
// fn_025154C4 @ 0x25154c4
|
|
void Gambit_fn_025154C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_025154C4: ; // 0x25154c4
|
|
/* 025154C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025154C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025154C4 */ cpu->r[1] = _t0;
|
|
/* 025154C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025154C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025154CC */ cpu->r[31] = cpu->r[3];
|
|
/* 025154D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025154D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025154D4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025154D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025154D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 025154DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025154DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 025154DC */ if (_t5) goto L_025154E0; else goto L_025154FC;
|
|
L_025154E0: ; // 0x25154e0
|
|
/* 025154E0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 025154E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025154E4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 025154E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025154E8 */ cpu->ctr = cpu->r[0];
|
|
/* 025154EC */ cpu->r[3] = cpu->r[31];
|
|
/* 025154F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025154F4 */ cpu->r[0] = 0x00000002u;
|
|
/* 025154F8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 025154F8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_025154FC: ; // 0x25154fc
|
|
/* 025154FC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 025154FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02515500 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515500 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02515504 */ cpu->lr = cpu->r[0];
|
|
/* 02515508 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251550C */ return;
|
|
}
|
|
|
|
// fn_02515518 @ 0x2515518
|
|
void Gambit_fn_02515518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02515518: ; // 0x2515518
|
|
/* 02515518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251551C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251551C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0251551C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0251551C */ goto L_02515520;
|
|
L_02515520: ; // 0x2515520
|
|
/* 02515520 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02515520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02515524 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515524 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02515524 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02515524 */ goto L_02515528;
|
|
L_02515528: ; // 0x2515528
|
|
/* 02515528 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_0251552C @ 0x251552c
|
|
void Gambit_fn_0251552C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0251552C: ; // 0x251552c
|
|
/* 0251552C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0251552C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515530 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02515530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02515534 */ cpu->ctr = cpu->r[0];
|
|
/* 02515538 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0251553C @ 0x251553c
|
|
void Gambit_fn_0251553C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0251553C: ; // 0x251553c
|
|
/* 0251553C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0251553C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515540 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02515540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02515544 */ cpu->ctr = cpu->r[0];
|
|
/* 02515548 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0251554C @ 0x251554c
|
|
void Gambit_fn_0251554C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0251554C: ; // 0x251554c
|
|
/* 0251554C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0251554C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515550 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02515550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02515554 */ cpu->ctr = cpu->r[0];
|
|
/* 02515558 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0251555C @ 0x251555c
|
|
void Gambit_fn_0251555C(CPUState* cpu) {
|
|
L_0251555C: ; // 0x251555c
|
|
/* 0251555C */ cpu->r[3] = 0x00000001u;
|
|
/* 02515560 */ return;
|
|
}
|
|
|
|
// fn_02515564 @ 0x2515564
|
|
void Gambit_fn_02515564(CPUState* cpu) {
|
|
L_02515564: ; // 0x2515564
|
|
/* 02515564 */ return;
|
|
}
|
|
|
|
// fn_02515568 @ 0x2515568
|
|
void Gambit_fn_02515568(CPUState* cpu) {
|
|
L_02515568: ; // 0x2515568
|
|
/* 02515568 */ return;
|
|
}
|
|
|
|
// fn_0251556C @ 0x251556c
|
|
void Gambit_fn_0251556C(CPUState* cpu) {
|
|
L_0251556C: ; // 0x251556c
|
|
/* 0251556C */ return;
|
|
}
|
|
|
|
// fn_02515570 @ 0x2515570
|
|
void Gambit_fn_02515570(CPUState* cpu) {
|
|
L_02515570: ; // 0x2515570
|
|
/* 02515570 */ return;
|
|
}
|
|
|
|
// fn_02515574 @ 0x2515574
|
|
void Gambit_fn_02515574(CPUState* cpu) {
|
|
L_02515574: ; // 0x2515574
|
|
/* 02515574 */ return;
|
|
}
|
|
|
|
// fn_02515578 @ 0x2515578
|
|
void Gambit_fn_02515578(CPUState* cpu) {
|
|
L_02515578: ; // 0x2515578
|
|
/* 02515578 */ cpu->r[3] = 0x00000001u;
|
|
/* 0251557C */ return;
|
|
}
|
|
|
|
// fn_02515580 @ 0x2515580
|
|
void Gambit_fn_02515580(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02515580: ; // 0x2515580
|
|
/* 02515580 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02515584 */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 02515584 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515584 */ cpu->r[10] = _t0;
|
|
/* 02515588 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02515588 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 0251558C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0251558C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02515590 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02515590 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02515594 */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 02515594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02515598 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02515598 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0251559C */ return;
|
|
}
|
|
|
|
// fn_025155A0 @ 0x25155a0
|
|
void Gambit_fn_025155A0(CPUState* cpu) {
|
|
L_025155A0: ; // 0x25155a0
|
|
/* 025155A0 */ return;
|
|
}
|
|
|
|
// fn_025155A4 @ 0x25155a4
|
|
void Gambit_fn_025155A4(CPUState* cpu) {
|
|
L_025155A4: ; // 0x25155a4
|
|
/* 025155A4 */ return;
|
|
}
|
|
|
|
// fn_025155A8 @ 0x25155a8
|
|
void Gambit_fn_025155A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_025155A8: ; // 0x25155a8
|
|
/* 025155A8 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 025155A8 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 025155AC */ return;
|
|
}
|
|
|
|
// fn_025155B0 @ 0x25155b0
|
|
void Gambit_fn_025155B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_025155B0: ; // 0x25155b0
|
|
/* 025155B0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 025155B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025155B4 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 025155B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025155B8 */ cpu->ctr = cpu->r[0];
|
|
/* 025155BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025155C0 @ 0x25155c0
|
|
void Gambit_fn_025155C0(CPUState* cpu) {
|
|
L_025155C0: ; // 0x25155c0
|
|
/* 025155C0 */ return;
|
|
}
|
|
|
|
// fn_025155C4 @ 0x25155c4
|
|
void Gambit_fn_025155C4(CPUState* cpu) {
|
|
L_025155C4: ; // 0x25155c4
|
|
/* 025155C4 */ return;
|
|
}
|
|
|
|
// fn_025155C8 @ 0x25155c8
|
|
void Gambit_fn_025155C8(CPUState* cpu) {
|
|
L_025155C8: ; // 0x25155c8
|
|
/* 025155C8 */ return;
|
|
}
|
|
|
|
// fn_025155CC @ 0x25155cc
|
|
void Gambit_fn_025155CC(CPUState* cpu) {
|
|
L_025155CC: ; // 0x25155cc
|
|
/* 025155CC */ return;
|
|
}
|
|
|
|
// fn_025155D0 @ 0x25155d0
|
|
void Gambit_fn_025155D0(CPUState* cpu) {
|
|
L_025155D0: ; // 0x25155d0
|
|
/* 025155D0 */ return;
|
|
}
|
|
|
|
// fn_025155D4 @ 0x25155d4
|
|
void Gambit_fn_025155D4(CPUState* cpu) {
|
|
L_025155D4: ; // 0x25155d4
|
|
/* 025155D4 */ return;
|
|
}
|
|
|
|
// fn_025155D8 @ 0x25155d8
|
|
void Gambit_fn_025155D8(CPUState* cpu) {
|
|
L_025155D8: ; // 0x25155d8
|
|
/* 025155D8 */ return;
|
|
}
|
|
|
|
// fn_025155DC @ 0x25155dc
|
|
void Gambit_fn_025155DC(CPUState* cpu) {
|
|
L_025155DC: ; // 0x25155dc
|
|
/* 025155DC */ return;
|
|
}
|
|
|
|
// fn_025155E0 @ 0x25155e0
|
|
void Gambit_fn_025155E0(CPUState* cpu) {
|
|
L_025155E0: ; // 0x25155e0
|
|
/* 025155E0 */ return;
|
|
}
|
|
|
|
// fn_025155E4 @ 0x25155e4
|
|
void Gambit_fn_025155E4(CPUState* cpu) {
|
|
L_025155E4: ; // 0x25155e4
|
|
/* 025155E4 */ return;
|
|
}
|
|
|
|
// fn_025155E8 @ 0x25155e8
|
|
void Gambit_fn_025155E8(CPUState* cpu) {
|
|
L_025155E8: ; // 0x25155e8
|
|
/* 025155E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 025155EC */ return;
|
|
}
|
|
|
|
// fn_025155F0 @ 0x25155f0
|
|
void Gambit_fn_025155F0(CPUState* cpu) {
|
|
L_025155F0: ; // 0x25155f0
|
|
/* 025155F0 */ return;
|
|
}
|
|
|
|
// fn_025155F4 @ 0x25155f4
|
|
void Gambit_fn_025155F4(CPUState* cpu) {
|
|
L_025155F4: ; // 0x25155f4
|
|
/* 025155F4 */ return;
|
|
}
|
|
|
|
// fn_025155F8 @ 0x25155f8
|
|
void Gambit_fn_025155F8(CPUState* cpu) {
|
|
L_025155F8: ; // 0x25155f8
|
|
/* 025155F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 025155FC */ return;
|
|
}
|
|
|
|
// fn_02515600 @ 0x2515600
|
|
void Gambit_fn_02515600(CPUState* cpu) {
|
|
L_02515600: ; // 0x2515600
|
|
/* 02515600 */ cpu->r[3] = 0x00000000u;
|
|
/* 02515604 */ return;
|
|
}
|
|
|
|
// fn_02515608 @ 0x2515608
|
|
void Gambit_fn_02515608(CPUState* cpu) {
|
|
L_02515608: ; // 0x2515608
|
|
/* 02515608 */ cpu->r[3] = 0x00000000u;
|
|
/* 0251560C */ return;
|
|
}
|
|
|
|
// fn_02515610 @ 0x2515610
|
|
void Gambit_fn_02515610(CPUState* cpu) {
|
|
L_02515610: ; // 0x2515610
|
|
/* 02515610 */ cpu->r[3] = 0x00000000u;
|
|
/* 02515614 */ return;
|
|
}
|
|
|
|
// fn_02515618 @ 0x2515618
|
|
void Gambit_fn_02515618(CPUState* cpu) {
|
|
L_02515618: ; // 0x2515618
|
|
/* 02515618 */ cpu->r[3] = 0x00000000u;
|
|
/* 0251561C */ return;
|
|
}
|
|
|
|
// fn_02515620 @ 0x2515620
|
|
void Gambit_fn_02515620(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02515620: ; // 0x2515620
|
|
/* 02515620 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02515620 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02515624 */ return;
|
|
}
|
|
|
|
// fn_02515628 @ 0x2515628
|
|
void Gambit_fn_02515628(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02515628: ; // 0x2515628
|
|
/* 02515628 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 02515628 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251562C */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0251562C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02515630 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02515630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02515634 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02515634 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02515638 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 02515638 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0251563C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0251563C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02515640 */ return;
|
|
}
|
|
|
|
// fn_02515644 @ 0x2515644
|
|
void Gambit_fn_02515644(CPUState* cpu) {
|
|
L_02515644: ; // 0x2515644
|
|
/* 02515644 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02515648 */ cpu->r[3] = cpu->r[3] + 0xFFFFFF20u;
|
|
/* 0251564C */ return;
|
|
}
|
|
|
|
// fn_02515650 @ 0x2515650
|
|
void Gambit_fn_02515650(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02515650: ; // 0x2515650
|
|
/* 02515650 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02515654 */ _t0 = cpu->r[9] + 0x000008D4u;
|
|
/* 02515654 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02515658 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0251565C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02515660 */ cpu->r[11] = cpu->r[11] + 0x000009B4u;
|
|
/* 02515664 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515664 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02515664 */ if (_t2) goto L_02515668; else goto L_02515680;
|
|
L_02515668: ; // 0x2515668
|
|
/* 02515668 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251566C */ cpu->r[0] = 0x00000001u;
|
|
/* 02515670 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02515674 */ cpu->r[9] = cpu->r[9] + 0xFFFFFF04u;
|
|
/* 02515678 */ _t3 = cpu->r[12] + 0x000008D4u;
|
|
/* 02515678 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0251567C */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 0251567C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_02515680: ; // 0x2515680
|
|
/* 02515680 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02515684 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515684 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02515684 */ if (_t6) goto L_02515688; else goto L_02515690;
|
|
L_02515688: ; // 0x2515688
|
|
/* 02515688 */ cpu->r[3] = 0x00000001u;
|
|
/* 0251568C */ return;
|
|
L_02515690: ; // 0x2515690
|
|
/* 02515690 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02515694 */ _t7 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 02515694 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02515698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251569C */ cpu->r[12] = 0x101D0000u;
|
|
/* 025156A0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBBCu;
|
|
/* 025156A4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025156A4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025156A4 */ if (_t9) goto L_025156A8; else goto L_025156C0;
|
|
L_025156A8: ; // 0x25156a8
|
|
/* 025156A8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025156AC */ cpu->r[10] = 0x00000001u;
|
|
/* 025156B0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 025156B4 */ cpu->r[11] = cpu->r[11] + 0xFFFFFEF4u;
|
|
/* 025156B8 */ _t10 = cpu->r[9] + 0xFFFFDA10u;
|
|
/* 025156B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 025156BC */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 025156BC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_025156C0: ; // 0x25156c0
|
|
/* 025156C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 025156C4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025156C4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 025156C4 */ if (_t13) goto L_025156C8; else goto L_025156D0;
|
|
L_025156C8: ; // 0x25156c8
|
|
/* 025156C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 025156CC */ goto L_02515744;
|
|
L_025156D0: ; // 0x25156d0
|
|
/* 025156D0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 025156D4 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 025156D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025156D4 */ cpu->r[10] = _t14;
|
|
/* 025156D8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 025156DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025156E0 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 025156E4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025156E4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 025156E4 */ if (_t16) goto L_025156E8; else goto L_025156FC;
|
|
L_025156E8: ; // 0x25156e8
|
|
/* 025156E8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025156EC */ cpu->r[0] = 0x00000001u;
|
|
/* 025156F0 */ cpu->r[9] = cpu->r[9] + 0xFFFFFEE4u;
|
|
/* 025156F4 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 025156F4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 025156F8 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 025156F8 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_025156FC: ; // 0x25156fc
|
|
/* 025156FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02515700 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515700 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02515700 */ if (_t20) goto L_02515704; else goto L_0251570C;
|
|
L_02515704: ; // 0x2515704
|
|
/* 02515704 */ cpu->r[0] = 0x00000001u;
|
|
/* 02515708 */ goto L_02515744;
|
|
L_0251570C: ; // 0x251570c
|
|
/* 0251570C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02515710 */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 02515710 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02515710 */ cpu->r[9] = _t21;
|
|
/* 02515714 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02515718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0251571C */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 02515720 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515720 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02515720 */ if (_t23) goto L_02515724; else goto L_02515738;
|
|
L_02515724: ; // 0x2515724
|
|
/* 02515724 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02515728 */ cpu->r[11] = 0x00000001u;
|
|
/* 0251572C */ cpu->r[0] = cpu->r[0] + 0xFFFFFEBCu;
|
|
/* 02515730 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02515730 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02515734 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 02515734 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02515738: ; // 0x2515738
|
|
/* 02515738 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 0251573C */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 02515740 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02515744: ; // 0x2515744
|
|
/* 02515744 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02515748 */ return;
|
|
}
|
|
|
|
// fn_0251574C @ 0x251574c
|
|
void Gambit_fn_0251574C(CPUState* cpu) {
|
|
L_0251574C: ; // 0x251574c
|
|
/* 0251574C */ return;
|
|
}
|
|
|
|
// fn_02515750 @ 0x2515750
|
|
void Gambit_fn_02515750(CPUState* cpu) {
|
|
L_02515750: ; // 0x2515750
|
|
/* 02515750 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02515754 */ cpu->r[3] = cpu->r[3] + 0xFFFFFEB8u;
|
|
/* 02515758 */ return;
|
|
}
|
|
|
|
// fn_0251575C @ 0x251575c
|
|
void Gambit_fn_0251575C(CPUState* cpu) {
|
|
L_0251575C: ; // 0x251575c
|
|
/* 0251575C */ cpu->r[3] = 0x00000000u;
|
|
/* 02515760 */ return;
|
|
}
|
|
|
|
// fn_02515764 @ 0x2515764
|
|
void Gambit_fn_02515764(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02515764: ; // 0x2515764
|
|
/* 02515764 */ cpu->r[0] = cpu->lr;
|
|
/* 02515768 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0251576C */ cpu->r[7] = 0x02510000u;
|
|
/* 02515770 */ cpu->r[6] = 0x02510000u;
|
|
/* 02515774 */ cpu->r[10] = 0x101C0000u;
|
|
/* 02515778 */ cpu->r[7] = cpu->r[7] + 0x00005510u;
|
|
/* 0251577C */ cpu->r[6] = cpu->r[6] + 0x00005510u;
|
|
/* 02515780 */ cpu->r[10] = cpu->r[10] + 0x000067C0u;
|
|
/* 02515784 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02515784 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02515788 */ cpu->r[0] = 0x101C0000u;
|
|
/* 0251578C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0251578C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0251578C */ cpu->r[1] = _t1;
|
|
/* 02515790 */ cpu->r[0] = cpu->r[0] + 0x000067BCu;
|
|
/* 02515794 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02515794 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02515798 */ cpu->r[8] = 0x00000000u;
|
|
/* 0251579C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0251579C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025157A0 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025157A4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025157A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 025157A8 */ Gambit_fn_02791B10(cpu);
|
|
/* 025157AC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 025157AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025157B0 */ cpu->lr = cpu->r[0];
|
|
/* 025157B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025157B8 */ return;
|
|
}
|
|
|
|
// fn_0251578C @ 0x251578c
|
|
void Gambit_fn_0251578C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0251578C: ; // 0x251578c
|
|
/* 0251578C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0251578C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251578C */ cpu->r[1] = _t0;
|
|
/* 02515790 */ cpu->r[0] = cpu->r[0] + 0x000067BCu;
|
|
/* 02515794 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02515794 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02515798 */ cpu->r[8] = 0x00000000u;
|
|
/* 0251579C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0251579C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025157A0 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025157A4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025157A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025157A8 */ Gambit_fn_02791B10(cpu);
|
|
/* 025157AC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 025157AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025157B0 */ cpu->lr = cpu->r[0];
|
|
/* 025157B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025157B8 */ return;
|
|
}
|
|
|
|
// fn_025157BC @ 0x25157bc
|
|
void Gambit_fn_025157BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_025157BC: ; // 0x25157bc
|
|
/* 025157BC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025157BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025157BC */ cpu->r[1] = _t0;
|
|
/* 025157C0 */ cpu->r[0] = cpu->lr;
|
|
/* 025157C4 */ /* nop */
|
|
/* 025157C8 */ cpu->r[30] = cpu->r[5];
|
|
/* 025157CC */ cpu->r[26] = cpu->r[3];
|
|
/* 025157D0 */ cpu->r[27] = cpu->r[7];
|
|
/* 025157D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025157D8 */ cpu->r[31] = cpu->r[6];
|
|
/* 025157DC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025157DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025157E0 */ cpu->r[29] = cpu->r[4];
|
|
/* 025157E4 */ cpu->r[4] = cpu->r[27];
|
|
/* 025157E8 */ Gambit_fn_027DB318(cpu);
|
|
/* 025157EC */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 025157EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 025157F0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025157F0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025157F0 */ if (_t3) goto L_02515884; else goto L_025157F4;
|
|
L_025157F4: ; // 0x25157f4
|
|
/* 025157F4 */ cpu->r[5] = cpu->r[28];
|
|
/* 025157F8 */ cpu->r[4] = cpu->r[29];
|
|
/* 025157FC */ cpu->r[3] = cpu->r[26];
|
|
/* 02515800 */ Gambit_fn_02515764(cpu);
|
|
/* 02515804 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02515804 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02515808 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 02515808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251580C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 02515810 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02515814 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02515818 */ cpu->r[25] = 0x00000000u;
|
|
/* 0251581C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251581C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251581C */ if (_t7) goto L_02515884; else goto L_02515820;
|
|
L_02515820: ; // 0x2515820
|
|
/* 02515820 */ cpu->r[24] = 0x101C0000u;
|
|
L_02515824: ; // 0x2515824
|
|
/* 02515824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02515828 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515828 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02515828 */ if (_t9) goto L_02515840; else goto L_0251582C;
|
|
L_0251582C: ; // 0x251582c
|
|
/* 0251582C */ cpu->ctr = cpu->r[27];
|
|
/* 02515830 */ cpu->r[3] = cpu->r[31];
|
|
/* 02515834 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251583C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251583C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0251583C */ if (_t11) goto L_02515870; else goto L_02515840;
|
|
L_02515840: ; // 0x2515840
|
|
/* 02515840 */ _t12 = cpu->r[24] + 0x000067BCu;
|
|
/* 02515840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02515844 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02515848 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02515848 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0251584C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 0251584C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02515850 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02515854 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02515854 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02515858 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0251585C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 0251585C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02515860 */ cpu->r[4] = cpu->r[31];
|
|
/* 02515864 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02515864 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02515868 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0251586C */ Gambit_fn_02515138(cpu);
|
|
L_02515870: ; // 0x2515870
|
|
/* 02515870 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 02515874 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 02515874 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02515878 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0251587C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02515880 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515880 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02515880 */ if (_t20) goto L_02515884; else goto L_02515824;
|
|
L_02515884: ; // 0x2515884
|
|
/* 02515884 */ cpu->r[3] = cpu->r[28];
|
|
/* 02515888 */ /* nop */
|
|
/* 0251588C */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251588C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02515890 */ cpu->lr = cpu->r[0];
|
|
/* 02515894 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02515898 */ return;
|
|
}
|
|
|
|
// fn_0251589C @ 0x251589c
|
|
void Gambit_fn_0251589C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81;
|
|
|
|
L_0251589C: ; // 0x251589c
|
|
/* 0251589C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0251589C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251589C */ cpu->r[1] = _t0;
|
|
/* 025158A0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 025158A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 025158A4 */ cpu->r[0] = cpu->lr;
|
|
/* 025158A8 */ /* nop */
|
|
/* 025158AC */ /* nop */
|
|
/* 025158B0 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 025158B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025158B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025158B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025158B8 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 025158B8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 025158BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025158BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 025158BC */ if (_t5) goto L_025158C0; else goto L_025158D0;
|
|
L_025158C0: ; // 0x25158c0
|
|
/* 025158C0 */ cpu->r[3] = 0x00000344u;
|
|
/* 025158C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 025158C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025158C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025158CC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025158CC */ _t7 = _t6 & 0x00000001u;
|
|
/* 025158CC */ if (_t7) goto L_02515A70; else goto L_025158D0;
|
|
L_025158D0: ; // 0x25158d0
|
|
/* 025158D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025158D4 */ Gambit_fn_024F6F3C(cpu);
|
|
/* 025158D8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025158DC */ cpu->r[30] = cpu->r[31] + 0x000001B0u;
|
|
/* 025158DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025158E0 */ cpu->r[0] = cpu->r[0] + 0x00000684u;
|
|
/* 025158E4 */ cpu->r[28] = 0x00000000u;
|
|
/* 025158E8 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 025158E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 025158EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025158EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 025158EC */ if (_t10) goto L_025158F0; else goto L_02515900;
|
|
L_025158F0: ; // 0x25158f0
|
|
/* 025158F0 */ cpu->r[3] = 0x00000038u;
|
|
/* 025158F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 025158F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025158F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025158FC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025158FC */ _t12 = _t11 & 0x00000001u;
|
|
/* 025158FC */ if (_t12) goto L_02515930; else goto L_02515900;
|
|
L_02515900: ; // 0x2515900
|
|
/* 02515900 */ cpu->r[3] = cpu->r[30];
|
|
/* 02515904 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02515908 */ cpu->r[0] = 0x10000000u;
|
|
/* 0251590C */ _t13 = cpu->r[30] + 0x00000030u;
|
|
/* 0251590C */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 02515910 */ cpu->r[0] = cpu->r[0] + 0x00006788u;
|
|
/* 02515914 */ _t14 = cpu->r[30] + 0x00000034u;
|
|
/* 02515914 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 02515918 */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 02515918 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0251591C */ _t16 = cpu->r[30] + 0x00000024u;
|
|
/* 0251591C */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02515920 */ _t17 = cpu->r[30] + 0x00000028u;
|
|
/* 02515920 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02515924 */ _t18 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02515924 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02515928 */ _t19 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02515928 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0251592C */ _t20 = cpu->r[30] + 0x00000020u;
|
|
/* 0251592C */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_02515930: ; // 0x2515930
|
|
/* 02515930 */ _t21 = cpu->r[31] + 0x000001F4u;
|
|
/* 02515930 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02515934 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02515938 */ _t22 = cpu->r[6] + 0x0000046Cu;
|
|
/* 02515938 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251593C */ _t23 = cpu->r[31] + 0x000001F0u;
|
|
/* 0251593C */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
/* 02515940 */ cpu->r[3] = cpu->r[31] + 0x000001FCu;
|
|
/* 02515940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02515944 */ _t24 = cpu->r[31] + 0x000001E8u;
|
|
/* 02515944 */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 02515948 */ _t25 = cpu->r[31] + 0x000001F8u;
|
|
/* 02515948 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[28]);
|
|
/* 0251594C */ _t26 = cpu->r[31] + 0x000001ECu;
|
|
/* 0251594C */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02515950 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515950 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02515950 */ if (_t28) goto L_02515954; else goto L_02515964;
|
|
L_02515954: ; // 0x2515954
|
|
/* 02515954 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02515958 */ Gambit_fn_02801A78(cpu);
|
|
/* 0251595C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02515960 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515960 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02515960 */ if (_t30) goto L_02515988; else goto L_02515964;
|
|
L_02515964: ; // 0x2515964
|
|
/* 02515964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02515968 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515968 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02515968 */ if (_t32) goto L_0251596C; else goto L_0251597C;
|
|
L_0251596C: ; // 0x251596c
|
|
/* 0251596C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02515970 */ Gambit_fn_02801A78(cpu);
|
|
/* 02515974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02515978 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515978 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02515978 */ if (_t34) goto L_02515988; else goto L_0251597C;
|
|
L_0251597C: ; // 0x251597c
|
|
/* 0251597C */ _t35 = cpu->r[3] + 0x00000004u;
|
|
/* 0251597C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02515980 */ _t36 = cpu->r[3] + 0x00000000u;
|
|
/* 02515980 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
/* 02515984 */ _t37 = cpu->r[3] + 0x00000008u;
|
|
/* 02515984 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
L_02515988: ; // 0x2515988
|
|
/* 02515988 */ _t38 = cpu->r[31] + 0x00000214u;
|
|
/* 02515988 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 0251598C */ cpu->r[5] = 0x0000001Bu;
|
|
/* 02515990 */ _t39 = cpu->r[31] + 0x00000208u;
|
|
/* 02515990 */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 02515994 */ _t40 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02515994 */ rbrew_write32(cpu->mem, _t40, cpu->r[5]);
|
|
/* 02515998 */ cpu->r[27] = cpu->r[31] + 0x00000224u;
|
|
/* 02515998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0251599C */ _t41 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0251599C */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 025159A0 */ _t42 = cpu->r[31] + 0x00000220u;
|
|
/* 025159A0 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[28]);
|
|
/* 025159A4 */ _t43 = cpu->r[31] + 0x00000219u;
|
|
/* 025159A4 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[28]);
|
|
/* 025159A8 */ _t44 = cpu->r[31] + 0x00000210u;
|
|
/* 025159A8 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[28]);
|
|
/* 025159AC */ _t45 = cpu->r[31] + 0x00000218u;
|
|
/* 025159AC */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[28]);
|
|
/* 025159B0 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025159B0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 025159B0 */ if (_t47) goto L_025159B4; else goto L_025159C4;
|
|
L_025159B4: ; // 0x25159b4
|
|
/* 025159B4 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 025159B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025159BC */ cpu->r[27] = cpu->r[3];
|
|
/* 025159BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025159C0 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025159C0 */ _t49 = _t48 & 0x00000001u;
|
|
/* 025159C0 */ if (_t49) goto L_02515A58; else goto L_025159C4;
|
|
L_025159C4: ; // 0x25159c4
|
|
/* 025159C4 */ cpu->r[29] = cpu->r[27];
|
|
/* 025159C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 025159C8 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025159C8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 025159C8 */ if (_t51) goto L_025159CC; else goto L_025159DC;
|
|
L_025159CC: ; // 0x25159cc
|
|
/* 025159CC */ cpu->r[3] = 0x0000010Cu;
|
|
/* 025159D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025159D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 025159D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 025159D8 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025159D8 */ _t53 = _t52 & 0x00000001u;
|
|
/* 025159D8 */ if (_t53) goto L_02515A4C; else goto L_025159DC;
|
|
L_025159DC: ; // 0x25159dc
|
|
/* 025159DC */ cpu->r[3] = cpu->r[29];
|
|
/* 025159DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025159E0 */ cpu->r[30] = 0x10110000u;
|
|
/* 025159E4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025159E4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 025159E4 */ if (_t55) goto L_025159E8; else goto L_02515A14;
|
|
L_025159E8: ; // 0x25159e8
|
|
/* 025159E8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025159EC */ Gambit_fn_02801A78(cpu);
|
|
/* 025159F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025159F4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025159F4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 025159F4 */ if (_t57) goto L_025159F8; else goto L_02515A14;
|
|
L_025159F8: ; // 0x25159f8
|
|
/* 025159F8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025159FC */ _t58 = cpu->r[30] + 0x00007399u;
|
|
/* 025159FC */ cpu->r[10] = rbrew_read8(cpu->mem, _t58);
|
|
/* 02515A00 */ cpu->r[0] = cpu->r[0] + 0x000002ECu;
|
|
/* 02515A04 */ _t59 = cpu->r[29] + 0x00000000u;
|
|
/* 02515A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02515A08 */ _t60 = cpu->r[29] + 0x00000004u;
|
|
/* 02515A08 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 02515A0C */ _t61 = cpu->r[12] + 0x00000000u;
|
|
/* 02515A0C */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[10]);
|
|
/* 02515A10 */ goto L_02515A4C;
|
|
L_02515A14: ; // 0x2515a14
|
|
/* 02515A14 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02515A18 */ cpu->r[7] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02515A1C */ cpu->r[8] = cpu->r[8] + 0x000002D4u;
|
|
/* 02515A20 */ _t62 = cpu->r[3] + 0x00000000u;
|
|
/* 02515A20 */ rbrew_write32(cpu->mem, _t62, cpu->r[7]);
|
|
/* 02515A24 */ cpu->r[0] = 0x00000100u;
|
|
/* 02515A28 */ _t63 = cpu->r[3] + 0x00000004u;
|
|
/* 02515A28 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 02515A2C */ _t64 = cpu->r[3] + 0x00000008u;
|
|
/* 02515A2C */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 02515A30 */ _t65 = cpu->r[30] + 0x00007399u;
|
|
/* 02515A30 */ cpu->r[10] = rbrew_read8(cpu->mem, _t65);
|
|
/* 02515A34 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02515A38 */ _t66 = cpu->r[29] + 0x00000000u;
|
|
/* 02515A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02515A3C */ cpu->r[0] = cpu->r[0] + 0x000002ECu;
|
|
/* 02515A40 */ _t67 = cpu->r[29] + 0x0000010Bu;
|
|
/* 02515A40 */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[10]);
|
|
/* 02515A44 */ _t68 = cpu->r[29] + 0x00000004u;
|
|
/* 02515A44 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 02515A48 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 02515A48 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[10]);
|
|
L_02515A4C: ; // 0x2515a4c
|
|
/* 02515A4C */ cpu->r[0] = 0x100C0000u;
|
|
/* 02515A50 */ cpu->r[0] = cpu->r[0] + 0x00000304u;
|
|
/* 02515A54 */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 02515A54 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
L_02515A58: ; // 0x2515a58
|
|
/* 02515A58 */ _t71 = cpu->r[31] + 0x00000330u;
|
|
/* 02515A58 */ rbrew_write32(cpu->mem, _t71, cpu->r[28]);
|
|
/* 02515A5C */ _t72 = cpu->r[31] + 0x0000033Du;
|
|
/* 02515A5C */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[28]);
|
|
/* 02515A60 */ _t73 = cpu->r[31] + 0x00000340u;
|
|
/* 02515A60 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[31]);
|
|
/* 02515A64 */ _t74 = cpu->r[31] + 0x0000033Cu;
|
|
/* 02515A64 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[28]);
|
|
/* 02515A68 */ _t75 = cpu->r[31] + 0x00000338u;
|
|
/* 02515A68 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 02515A6C */ _t76 = cpu->r[31] + 0x00000334u;
|
|
/* 02515A6C */ rbrew_write32(cpu->mem, _t76, cpu->r[28]);
|
|
L_02515A70: ; // 0x2515a70
|
|
/* 02515A70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02515A74 */ /* nop */
|
|
/* 02515A78 */ _t77 = cpu->r[1] + 0x00000028u;
|
|
/* 02515A78 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02515A7C */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 02515A7C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02515A80 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02515A80 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02515A80 */ if (_t80) goto L_02515A84; // else: addr-0 trap, fall-through
|
|
L_02515A84: ; // 0x2515a84
|
|
/* 02515A84 */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 02515A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02515A88 */ cpu->lr = cpu->r[0];
|
|
/* 02515A8C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02515A90 */ return;
|
|
}
|
|
|
|
// fn_02515A94 @ 0x2515a94
|
|
void Gambit_fn_02515A94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469, _t470, _t471, _t472, _t473, _t474, _t475, _t476, _t477, _t478, _t479, _t480, _t481, _t482, _t483, _t484, _t485, _t486, _t487, _t488, _t489, _t490, _t491, _t492, _t493, _t494, _t495, _t496, _t497, _t498, _t499, _t500, _t501, _t502, _t503, _t504, _t505, _t506, _t507, _t508, _t509, _t510, _t511, _t512, _t513, _t514, _t515, _t516, _t517, _t518, _t519, _t520, _t521, _t522, _t523, _t524, _t525, _t526, _t527, _t528, _t529, _t530, _t531, _t532, _t533, _t534, _t535, _t536, _t537, _t538, _t539, _t540, _t541, _t542, _t543, _t544, _t545, _t546, _t547, _t548, _t549, _t550, _t551, _t552, _t553, _t554, _t555, _t556, _t557, _t558, _t559, _t560, _t561, _t562, _t563, _t564, _t565, _t566, _t567, _t568, _t569, _t570, _t571, _t572, _t573, _t574, _t575, _t576, _t577, _t578, _t579, _t580, _t581, _t582, _t583, _t584, _t585, _t586, _t587, _t588, _t589, _t590, _t591, _t592, _t593, _t594, _t595, _t596, _t597, _t598, _t599, _t600, _t601, _t602, _t603, _t604, _t605, _t606, _t607, _t608, _t609, _t610, _t611, _t612, _t613, _t614, _t615, _t616, _t617, _t618, _t619, _t620, _t621, _t622, _t623, _t624, _t625, _t626, _t627, _t628, _t629, _t630, _t631, _t632, _t633, _t634, _t635, _t636, _t637, _t638, _t639;
|
|
|
|
L_02515A94: ; // 0x2515a94
|
|
/* 02515A94 */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 02515A94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02515A94 */ cpu->r[1] = _t0;
|
|
/* 02515A98 */ /* nop */
|
|
/* 02515A9C */ cpu->r[0] = cpu->lr;
|
|
/* 02515AA0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02515AA4 */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 02515AA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02515AA8 */ cpu->r[9] = cpu->r[9] + 0x0000047Cu;
|
|
/* 02515AAC */ cpu->r[27] = 0x100C0000u;
|
|
/* 02515AB0 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 02515AB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 02515AB4 */ cpu->r[26] = cpu->r[4];
|
|
/* 02515AB8 */ cpu->r[27] = cpu->r[27] + 0x000002BCu;
|
|
/* 02515ABC */ _t3 = cpu->r[26] + 0x00000004u;
|
|
/* 02515ABC */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02515AC0 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02515AC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[27]);
|
|
/* 02515AC4 */ _t5 = cpu->r[10] + 0x00000014u;
|
|
/* 02515AC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02515AC8 */ cpu->r[28] = cpu->r[3];
|
|
/* 02515ACC */ cpu->ctr = cpu->r[0];
|
|
/* 02515AD0 */ cpu->r[3] = cpu->r[26];
|
|
/* 02515AD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515AD8 */ cpu->r[29] = 0x10110000u;
|
|
/* 02515ADC */ _t6 = cpu->r[29] + 0x00007399u;
|
|
/* 02515ADC */ cpu->r[29] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02515AE0 */ _t7 = cpu->r[26] + 0x00000000u;
|
|
/* 02515AE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02515AE4 */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 02515AE4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02515AE8 */ cpu->r[23] = 0x00000000u;
|
|
/* 02515AEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 02515AF0 */ cpu->r[31] = cpu->r[23];
|
|
/* 02515AF4 */ cpu->r[7] = 0x00080000u;
|
|
/* 02515AF8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515AF8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02515AF8 */ if (_t10) goto L_02515B20; else goto L_02515AFC;
|
|
L_02515AFC: ; // 0x2515afc
|
|
/* 02515AFC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02515B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 02515B04 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02515B08 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515B08 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02515B08 */ if (_t12) goto L_02515B1C; else goto L_02515B0C;
|
|
L_02515B0C: ; // 0x2515b0c
|
|
/* 02515B0C */ _t13 = cpu->r[6] + 0x00000000u;
|
|
/* 02515B0C */ cpu->r[5] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02515B10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 02515B14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515B14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02515B14 */ if (_t15) goto L_02515B18; else goto L_02515AFC;
|
|
L_02515B18: ; // 0x2515b18
|
|
/* 02515B18 */ goto L_02515B20;
|
|
L_02515B1C: ; // 0x2515b1c
|
|
/* 02515B1C */ cpu->r[31] = 0x00000000u;
|
|
L_02515B20: ; // 0x2515b20
|
|
/* 02515B20 */ _t16 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02515B20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02515B24 */ _t17 = cpu->r[8] + 0x00000014u;
|
|
/* 02515B24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02515B28 */ cpu->ctr = cpu->r[9];
|
|
/* 02515B2C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02515B30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515B34 */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 02515B34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02515B38 */ _t19 = cpu->r[4] + 0x00000000u;
|
|
/* 02515B38 */ cpu->r[10] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02515B3C */ cpu->r[30] = 0x00000000u;
|
|
/* 02515B40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[29]);
|
|
/* 02515B44 */ cpu->r[5] = 0x00080000u;
|
|
/* 02515B48 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515B48 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02515B48 */ if (_t21) goto L_02515B70; else goto L_02515B4C;
|
|
L_02515B4C: ; // 0x2515b4c
|
|
/* 02515B4C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02515B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02515B54 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02515B58 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515B58 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02515B58 */ if (_t23) goto L_02515B6C; else goto L_02515B5C;
|
|
L_02515B5C: ; // 0x2515b5c
|
|
/* 02515B5C */ _t24 = cpu->r[4] + 0x00000000u;
|
|
/* 02515B5C */ cpu->r[12] = rbrew_read8(cpu->mem, _t24);
|
|
/* 02515B60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]);
|
|
/* 02515B64 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515B64 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02515B64 */ if (_t26) goto L_02515B68; else goto L_02515B4C;
|
|
L_02515B68: ; // 0x2515b68
|
|
/* 02515B68 */ goto L_02515B70;
|
|
L_02515B6C: ; // 0x2515b6c
|
|
/* 02515B6C */ cpu->r[30] = 0x00000000u;
|
|
L_02515B70: ; // 0x2515b70
|
|
/* 02515B70 */ cpu->r[31] = cpu->r[31] - cpu->r[30];
|
|
/* 02515B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02515B74 */ cpu->r[24] = 0x00000000u;
|
|
/* 02515B78 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02515B78 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02515B78 */ if (_t28) goto L_02515C54; else goto L_02515B7C;
|
|
L_02515B7C: ; // 0x2515b7c
|
|
/* 02515B7C */ cpu->r[25] = cpu->r[29];
|
|
L_02515B80: ; // 0x2515b80
|
|
/* 02515B80 */ _t29 = cpu->r[26] + 0x00000000u;
|
|
/* 02515B80 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02515B84 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515B84 */ rbrew_write32(cpu->mem, _t30, cpu->r[27]);
|
|
/* 02515B88 */ cpu->r[0] = cpu->r[4] + cpu->r[24];
|
|
/* 02515B8C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02515B90 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02515B90 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02515B94 */ Gambit_fn_02518B68(cpu);
|
|
/* 02515B98 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02515B98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02515B9C */ _t33 = cpu->r[5] + 0x00000014u;
|
|
/* 02515B9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02515BA0 */ cpu->ctr = cpu->r[6];
|
|
/* 02515BA4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02515BA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515BAC */ _t34 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02515BAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02515BB0 */ _t35 = cpu->r[7] + 0x00000014u;
|
|
/* 02515BB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02515BB4 */ cpu->ctr = cpu->r[8];
|
|
/* 02515BB8 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 02515BB8 */ cpu->r[22] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02515BBC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02515BC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515BC4 */ _t37 = cpu->r[1] + 0x00000048u;
|
|
/* 02515BC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02515BC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[9]);
|
|
/* 02515BCC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515BCC */ _t39 = _t38 & 0x00000001u;
|
|
/* 02515BCC */ if (_t39) goto L_02515C20; else goto L_02515BD0;
|
|
L_02515BD0: ; // 0x2515bd0
|
|
/* 02515BD0 */ cpu->r[0] = cpu->r[30];
|
|
/* 02515BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02515BD4 */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515BD4 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02515BD4 */ if (_t41) goto L_02515BD8; else goto L_02515C20;
|
|
L_02515BD8: ; // 0x2515bd8
|
|
/* 02515BD8 */ _t42 = cpu->r[1] + 0x00000048u;
|
|
/* 02515BD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02515BDC */ cpu->ctr = cpu->r[0];
|
|
/* 02515BE0 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02515BE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
L_02515BE4: ; // 0x2515be4
|
|
/* 02515BE4 */ _t44 = cpu->r[12] + 0x00000000u;
|
|
/* 02515BE4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t44);
|
|
/* 02515BE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[25]);
|
|
/* 02515BEC */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515BEC */ _t46 = _t45 & 0x00000001u;
|
|
/* 02515BEC */ if (_t46) goto L_02515BF0; else goto L_02515C00;
|
|
L_02515BF0: ; // 0x2515bf0
|
|
/* 02515BF0 */ _t47 = cpu->r[11] + 0x00000000u;
|
|
/* 02515BF0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t47);
|
|
/* 02515BF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[25]);
|
|
/* 02515BF8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515BF8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02515BF8 */ if (_t49) goto L_02515C20; else goto L_02515BFC;
|
|
L_02515BFC: ; // 0x2515bfc
|
|
/* 02515BFC */ goto L_02515C48;
|
|
L_02515C00: ; // 0x2515c00
|
|
/* 02515C00 */ _t50 = cpu->r[11] + 0x00000000u;
|
|
/* 02515C00 */ cpu->r[9] = rbrew_read8(cpu->mem, _t50);
|
|
/* 02515C04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[25]);
|
|
/* 02515C08 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515C08 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02515C08 */ if (_t52) goto L_02515C48; else goto L_02515C0C;
|
|
L_02515C0C: ; // 0x2515c0c
|
|
/* 02515C0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 02515C10 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515C10 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02515C10 */ if (_t54) goto L_02515C14; else goto L_02515C48;
|
|
L_02515C14: ; // 0x2515c14
|
|
/* 02515C14 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02515C18 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02515C1C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02515C1C */ _t55 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02515C1C */ _t56 = _t55 >> (0x00000002u & 31u);
|
|
/* 02515C1C */ _t57 = _t56 & 0x00000001u;
|
|
/* 02515C1C */ if (_t57) goto L_02515BE4; else goto L_02515C20;
|
|
L_02515C20: ; // 0x2515c20
|
|
/* 02515C20 */ _t58 = cpu->r[24] | cpu->r[24];
|
|
/* 02515C20 */ cpu->r[11] = ~_t58;
|
|
/* 02515C24 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02515C28 */ cpu->r[24] = 0x100C0000u;
|
|
/* 02515C2C */ cpu->r[0] = cpu->r[11] - cpu->r[12];
|
|
/* 02515C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02515C30 */ cpu->r[25] = 0x100C0000u;
|
|
/* 02515C34 */ cpu->r[24] = cpu->r[24] + 0x00000478u;
|
|
/* 02515C38 */ cpu->r[25] = cpu->r[25] + 0x000004A8u;
|
|
/* 02515C3C */ cpu->r[3] = cpu->r[26];
|
|
/* 02515C40 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515C40 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02515C40 */ if (_t60) goto L_02516334; else goto L_02515C44;
|
|
L_02515C44: ; // 0x2515c44
|
|
/* 02515C44 */ goto L_02515C78;
|
|
L_02515C48: ; // 0x2515c48
|
|
/* 02515C48 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02515C4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[31]);
|
|
/* 02515C50 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515C50 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02515C50 */ if (_t62) goto L_02515C54; else goto L_02515B80;
|
|
L_02515C54: ; // 0x2515c54
|
|
/* 02515C54 */ cpu->r[11] = 0x00000000u;
|
|
/* 02515C58 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02515C5C */ cpu->r[24] = 0x100C0000u;
|
|
/* 02515C60 */ cpu->r[0] = ~cpu->r[12];
|
|
/* 02515C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02515C64 */ cpu->r[25] = 0x100C0000u;
|
|
/* 02515C68 */ cpu->r[24] = cpu->r[24] + 0x00000478u;
|
|
/* 02515C6C */ cpu->r[25] = cpu->r[25] + 0x000004A8u;
|
|
/* 02515C70 */ cpu->r[3] = cpu->r[26];
|
|
/* 02515C74 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515C74 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02515C74 */ if (_t64) goto L_02516334; else goto L_02515C78;
|
|
L_02515C78: ; // 0x2515c78
|
|
/* 02515C78 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02515C7C */ _t65 = cpu->r[1] + 0x00000054u;
|
|
/* 02515C7C */ rbrew_write32(cpu->mem, _t65, cpu->r[27]);
|
|
/* 02515C80 */ cpu->r[4] = cpu->r[4] + 0x00000470u;
|
|
/* 02515C84 */ _t66 = cpu->r[28] + 0x000001E8u;
|
|
/* 02515C84 */ rbrew_write32(cpu->mem, _t66, cpu->r[23]);
|
|
/* 02515C88 */ _t67 = cpu->r[26] + 0x00000004u;
|
|
/* 02515C88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02515C8C */ _t68 = cpu->r[1] + 0x00000050u;
|
|
/* 02515C8C */ rbrew_write32(cpu->mem, _t68, cpu->r[4]);
|
|
/* 02515C90 */ _t69 = cpu->r[5] + 0x00000014u;
|
|
/* 02515C90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02515C94 */ cpu->ctr = cpu->r[6];
|
|
/* 02515C98 */ _t70 = cpu->r[28] + 0x000001E8u;
|
|
/* 02515C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02515C9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515CA0 */ _t71 = cpu->r[26] + 0x00000000u;
|
|
/* 02515CA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02515CA4 */ _t72 = cpu->r[9] + 0x00000000u;
|
|
/* 02515CA4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t72);
|
|
/* 02515CA8 */ cpu->r[31] = 0x00000000u;
|
|
/* 02515CAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]);
|
|
/* 02515CB0 */ cpu->r[0] = 0x00080000u;
|
|
/* 02515CB4 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515CB4 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02515CB4 */ if (_t74) goto L_02515CDC; else goto L_02515CB8;
|
|
L_02515CB8: ; // 0x2515cb8
|
|
/* 02515CB8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02515CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02515CC0 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02515CC4 */ _t75 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515CC4 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02515CC4 */ if (_t76) goto L_02515CD8; else goto L_02515CC8;
|
|
L_02515CC8: ; // 0x2515cc8
|
|
/* 02515CC8 */ _t77 = cpu->r[9] + 0x00000000u;
|
|
/* 02515CC8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t77);
|
|
/* 02515CCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 02515CD0 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515CD0 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02515CD0 */ if (_t79) goto L_02515CD4; else goto L_02515CB8;
|
|
L_02515CD4: ; // 0x2515cd4
|
|
/* 02515CD4 */ goto L_02515CDC;
|
|
L_02515CD8: ; // 0x2515cd8
|
|
/* 02515CD8 */ cpu->r[31] = 0x00000000u;
|
|
L_02515CDC: ; // 0x2515cdc
|
|
/* 02515CDC */ _t80 = cpu->r[1] + 0x00000054u;
|
|
/* 02515CDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02515CE0 */ _t81 = cpu->r[10] + 0x00000014u;
|
|
/* 02515CE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02515CE4 */ cpu->ctr = cpu->r[11];
|
|
/* 02515CE8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02515CEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515CF0 */ _t82 = cpu->r[1] + 0x00000050u;
|
|
/* 02515CF0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02515CF4 */ _t83 = cpu->r[7] + 0x00000000u;
|
|
/* 02515CF4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02515CF8 */ cpu->r[30] = 0x00000000u;
|
|
/* 02515CFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 02515D00 */ cpu->r[8] = 0x00080000u;
|
|
/* 02515D04 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515D04 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02515D04 */ if (_t85) goto L_02515D2C; else goto L_02515D08;
|
|
L_02515D08: ; // 0x2515d08
|
|
/* 02515D08 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02515D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02515D10 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02515D14 */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515D14 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02515D14 */ if (_t87) goto L_02515D28; else goto L_02515D18;
|
|
L_02515D18: ; // 0x2515d18
|
|
/* 02515D18 */ _t88 = cpu->r[7] + 0x00000000u;
|
|
/* 02515D18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t88);
|
|
/* 02515D1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 02515D20 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515D20 */ _t90 = _t89 & 0x00000001u;
|
|
/* 02515D20 */ if (_t90) goto L_02515D24; else goto L_02515D08;
|
|
L_02515D24: ; // 0x2515d24
|
|
/* 02515D24 */ goto L_02515D2C;
|
|
L_02515D28: ; // 0x2515d28
|
|
/* 02515D28 */ cpu->r[30] = 0x00000000u;
|
|
L_02515D2C: ; // 0x2515d2c
|
|
/* 02515D2C */ cpu->r[31] = cpu->r[31] - cpu->r[30];
|
|
/* 02515D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02515D30 */ cpu->r[21] = 0x00000000u;
|
|
/* 02515D34 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02515D34 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02515D34 */ if (_t92) goto L_02515DFC; else goto L_02515D38;
|
|
L_02515D38: ; // 0x2515d38
|
|
/* 02515D38 */ cpu->r[22] = cpu->r[29];
|
|
L_02515D3C: ; // 0x2515d3c
|
|
/* 02515D3C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 02515D3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02515D40 */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 02515D40 */ rbrew_write32(cpu->mem, _t94, cpu->r[27]);
|
|
/* 02515D44 */ cpu->r[4] = cpu->r[5] + cpu->r[21];
|
|
/* 02515D48 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02515D4C */ _t95 = cpu->r[1] + 0x00000010u;
|
|
/* 02515D4C */ rbrew_write32(cpu->mem, _t95, cpu->r[4]);
|
|
/* 02515D50 */ Gambit_fn_02518B68(cpu);
|
|
/* 02515D54 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 02515D54 */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02515D58 */ _t97 = cpu->r[6] + 0x00000014u;
|
|
/* 02515D58 */ cpu->r[7] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02515D5C */ cpu->ctr = cpu->r[7];
|
|
/* 02515D60 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02515D64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515D68 */ _t98 = cpu->r[1] + 0x00000054u;
|
|
/* 02515D68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02515D6C */ _t99 = cpu->r[8] + 0x00000014u;
|
|
/* 02515D6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02515D70 */ cpu->ctr = cpu->r[9];
|
|
/* 02515D74 */ _t100 = cpu->r[1] + 0x00000010u;
|
|
/* 02515D74 */ cpu->r[20] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02515D78 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02515D7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515D80 */ _t101 = cpu->r[1] + 0x00000050u;
|
|
/* 02515D80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02515D84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[10]);
|
|
/* 02515D88 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515D88 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02515D88 */ if (_t103) goto L_02515DDC; else goto L_02515D8C;
|
|
L_02515D8C: ; // 0x2515d8c
|
|
/* 02515D8C */ cpu->r[0] = cpu->r[30];
|
|
/* 02515D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02515D90 */ _t104 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515D90 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02515D90 */ if (_t105) goto L_02515D94; else goto L_02515DDC;
|
|
L_02515D94: ; // 0x2515d94
|
|
/* 02515D94 */ _t106 = cpu->r[1] + 0x00000050u;
|
|
/* 02515D94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02515D98 */ cpu->ctr = cpu->r[0];
|
|
/* 02515D9C */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 02515D9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t107);
|
|
L_02515DA0: ; // 0x2515da0
|
|
/* 02515DA0 */ _t108 = cpu->r[6] + 0x00000000u;
|
|
/* 02515DA0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t108);
|
|
/* 02515DA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[22]);
|
|
/* 02515DA8 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515DA8 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02515DA8 */ if (_t110) goto L_02515DAC; else goto L_02515DBC;
|
|
L_02515DAC: ; // 0x2515dac
|
|
/* 02515DAC */ _t111 = cpu->r[5] + 0x00000000u;
|
|
/* 02515DAC */ cpu->r[11] = rbrew_read8(cpu->mem, _t111);
|
|
/* 02515DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[22]);
|
|
/* 02515DB4 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515DB4 */ _t113 = _t112 & 0x00000001u;
|
|
/* 02515DB4 */ if (_t113) goto L_02515DDC; else goto L_02515DB8;
|
|
L_02515DB8: ; // 0x2515db8
|
|
/* 02515DB8 */ goto L_02515DF0;
|
|
L_02515DBC: ; // 0x2515dbc
|
|
/* 02515DBC */ _t114 = cpu->r[5] + 0x00000000u;
|
|
/* 02515DBC */ cpu->r[7] = rbrew_read8(cpu->mem, _t114);
|
|
/* 02515DC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[22]);
|
|
/* 02515DC4 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515DC4 */ _t116 = _t115 & 0x00000001u;
|
|
/* 02515DC4 */ if (_t116) goto L_02515DF0; else goto L_02515DC8;
|
|
L_02515DC8: ; // 0x2515dc8
|
|
/* 02515DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02515DCC */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515DCC */ _t118 = _t117 & 0x00000001u;
|
|
/* 02515DCC */ if (_t118) goto L_02515DD0; else goto L_02515DF0;
|
|
L_02515DD0: ; // 0x2515dd0
|
|
/* 02515DD0 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02515DD4 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02515DD8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02515DD8 */ _t119 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02515DD8 */ _t120 = _t119 >> (0x00000002u & 31u);
|
|
/* 02515DD8 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02515DD8 */ if (_t121) goto L_02515DA0; else goto L_02515DDC;
|
|
L_02515DDC: ; // 0x2515ddc
|
|
/* 02515DDC */ _t122 = cpu->r[21] | cpu->r[21];
|
|
/* 02515DDC */ cpu->r[12] = ~_t122;
|
|
/* 02515DE0 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02515DE4 */ cpu->r[11] = cpu->r[12] - cpu->r[0];
|
|
/* 02515DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02515DE8 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515DE8 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02515DE8 */ if (_t124) goto L_02515E24; else goto L_02515DEC;
|
|
L_02515DEC: ; // 0x2515dec
|
|
/* 02515DEC */ goto L_02515E0C;
|
|
L_02515DF0: ; // 0x2515df0
|
|
/* 02515DF0 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02515DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[31]);
|
|
/* 02515DF8 */ _t125 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515DF8 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02515DF8 */ if (_t126) goto L_02515DFC; else goto L_02515D3C;
|
|
L_02515DFC: ; // 0x2515dfc
|
|
/* 02515DFC */ cpu->r[12] = 0x00000000u;
|
|
/* 02515E00 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02515E04 */ cpu->r[11] = ~cpu->r[0];
|
|
/* 02515E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02515E08 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515E08 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02515E08 */ if (_t128) goto L_02515E24; else goto L_02515E0C;
|
|
L_02515E0C: ; // 0x2515e0c
|
|
/* 02515E0C */ _t129 = cpu->r[28] + 0x000001ECu;
|
|
/* 02515E0C */ rbrew_write32(cpu->mem, _t129, cpu->r[23]);
|
|
/* 02515E10 */ _t130 = cpu->r[28] + 0x000001ECu;
|
|
/* 02515E10 */ cpu->r[4] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02515E14 */ _t131 = cpu->r[28] + 0x000001F0u;
|
|
/* 02515E14 */ rbrew_write32(cpu->mem, _t131, cpu->r[23]);
|
|
/* 02515E18 */ _t132 = cpu->r[28] + 0x000001F0u;
|
|
/* 02515E18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02515E1C */ _t133 = cpu->r[1] + 0x00000090u;
|
|
/* 02515E1C */ rbrew_write32(cpu->mem, _t133, cpu->r[8]);
|
|
/* 02515E20 */ goto L_02516848;
|
|
L_02515E24: ; // 0x2515e24
|
|
/* 02515E24 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02515E28 */ _t134 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02515E28 */ rbrew_write32(cpu->mem, _t134, cpu->r[27]);
|
|
/* 02515E2C */ cpu->r[6] = cpu->r[6] + 0x00000490u;
|
|
/* 02515E30 */ _t135 = cpu->r[26] + 0x00000004u;
|
|
/* 02515E30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02515E34 */ _t136 = cpu->r[1] + 0x00000058u;
|
|
/* 02515E34 */ rbrew_write32(cpu->mem, _t136, cpu->r[6]);
|
|
/* 02515E38 */ _t137 = cpu->r[7] + 0x00000014u;
|
|
/* 02515E38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02515E3C */ cpu->ctr = cpu->r[8];
|
|
/* 02515E40 */ cpu->r[3] = cpu->r[26];
|
|
/* 02515E44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515E48 */ _t138 = cpu->r[26] + 0x00000000u;
|
|
/* 02515E48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02515E4C */ _t139 = cpu->r[12] + 0x00000000u;
|
|
/* 02515E4C */ cpu->r[9] = rbrew_read8(cpu->mem, _t139);
|
|
/* 02515E50 */ cpu->r[31] = 0x00000000u;
|
|
/* 02515E54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]);
|
|
/* 02515E58 */ cpu->r[4] = 0x00080000u;
|
|
/* 02515E5C */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515E5C */ _t141 = _t140 & 0x00000001u;
|
|
/* 02515E5C */ if (_t141) goto L_02515E84; else goto L_02515E60;
|
|
L_02515E60: ; // 0x2515e60
|
|
/* 02515E60 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02515E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 02515E68 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02515E6C */ _t142 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515E6C */ _t143 = _t142 & 0x00000001u;
|
|
/* 02515E6C */ if (_t143) goto L_02515E80; else goto L_02515E70;
|
|
L_02515E70: ; // 0x2515e70
|
|
/* 02515E70 */ _t144 = cpu->r[12] + 0x00000000u;
|
|
/* 02515E70 */ cpu->r[10] = rbrew_read8(cpu->mem, _t144);
|
|
/* 02515E74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[29]);
|
|
/* 02515E78 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515E78 */ _t146 = _t145 & 0x00000001u;
|
|
/* 02515E78 */ if (_t146) goto L_02515E7C; else goto L_02515E60;
|
|
L_02515E7C: ; // 0x2515e7c
|
|
/* 02515E7C */ goto L_02515E84;
|
|
L_02515E80: ; // 0x2515e80
|
|
/* 02515E80 */ cpu->r[31] = 0x00000000u;
|
|
L_02515E84: ; // 0x2515e84
|
|
/* 02515E84 */ _t147 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02515E84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02515E88 */ _t148 = cpu->r[11] + 0x00000014u;
|
|
/* 02515E88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02515E8C */ cpu->ctr = cpu->r[12];
|
|
/* 02515E90 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02515E94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515E98 */ _t149 = cpu->r[1] + 0x00000058u;
|
|
/* 02515E98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02515E9C */ _t150 = cpu->r[10] + 0x00000000u;
|
|
/* 02515E9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t150);
|
|
/* 02515EA0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02515EA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 02515EA8 */ cpu->r[0] = 0x00080000u;
|
|
/* 02515EAC */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515EAC */ _t152 = _t151 & 0x00000001u;
|
|
/* 02515EAC */ if (_t152) goto L_02515ED4; else goto L_02515EB0;
|
|
L_02515EB0: ; // 0x2515eb0
|
|
/* 02515EB0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02515EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02515EB8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02515EBC */ _t153 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515EBC */ _t154 = _t153 & 0x00000001u;
|
|
/* 02515EBC */ if (_t154) goto L_02515ED0; else goto L_02515EC0;
|
|
L_02515EC0: ; // 0x2515ec0
|
|
/* 02515EC0 */ _t155 = cpu->r[10] + 0x00000000u;
|
|
/* 02515EC0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t155);
|
|
/* 02515EC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 02515EC8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515EC8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02515EC8 */ if (_t157) goto L_02515ECC; else goto L_02515EB0;
|
|
L_02515ECC: ; // 0x2515ecc
|
|
/* 02515ECC */ goto L_02515ED4;
|
|
L_02515ED0: ; // 0x2515ed0
|
|
/* 02515ED0 */ cpu->r[30] = 0x00000000u;
|
|
L_02515ED4: ; // 0x2515ed4
|
|
/* 02515ED4 */ cpu->r[31] = cpu->r[31] - cpu->r[30];
|
|
/* 02515ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02515ED8 */ cpu->r[21] = 0x00000000u;
|
|
/* 02515EDC */ _t158 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02515EDC */ _t159 = _t158 & 0x00000001u;
|
|
/* 02515EDC */ if (_t159) goto L_02515FA8; else goto L_02515EE0;
|
|
L_02515EE0: ; // 0x2515ee0
|
|
/* 02515EE0 */ cpu->r[22] = cpu->r[29];
|
|
L_02515EE4: ; // 0x2515ee4
|
|
/* 02515EE4 */ _t160 = cpu->r[26] + 0x00000000u;
|
|
/* 02515EE4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t160);
|
|
/* 02515EE8 */ cpu->r[20] = cpu->r[30];
|
|
/* 02515EEC */ _t161 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02515EEC */ rbrew_write32(cpu->mem, _t161, cpu->r[27]);
|
|
/* 02515EF0 */ cpu->r[5] = cpu->r[6] + cpu->r[21];
|
|
/* 02515EF4 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02515EF8 */ _t162 = cpu->r[1] + 0x00000018u;
|
|
/* 02515EF8 */ rbrew_write32(cpu->mem, _t162, cpu->r[5]);
|
|
/* 02515EFC */ Gambit_fn_02518B68(cpu);
|
|
/* 02515F00 */ _t163 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02515F00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02515F04 */ _t164 = cpu->r[7] + 0x00000014u;
|
|
/* 02515F04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02515F08 */ cpu->ctr = cpu->r[8];
|
|
/* 02515F0C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02515F10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515F14 */ _t165 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02515F14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02515F18 */ _t166 = cpu->r[9] + 0x00000014u;
|
|
/* 02515F18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02515F1C */ cpu->ctr = cpu->r[10];
|
|
/* 02515F20 */ _t167 = cpu->r[1] + 0x00000018u;
|
|
/* 02515F20 */ cpu->r[19] = rbrew_read32(cpu->mem, _t167);
|
|
/* 02515F24 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02515F28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515F2C */ _t168 = cpu->r[1] + 0x00000058u;
|
|
/* 02515F2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02515F30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[11]);
|
|
/* 02515F34 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515F34 */ _t170 = _t169 & 0x00000001u;
|
|
/* 02515F34 */ if (_t170) goto L_02515F88; else goto L_02515F38;
|
|
L_02515F38: ; // 0x2515f38
|
|
/* 02515F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02515F3C */ _t171 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515F3C */ _t172 = _t171 & 0x00000001u;
|
|
/* 02515F3C */ if (_t172) goto L_02515F40; else goto L_02515F88;
|
|
L_02515F40: ; // 0x2515f40
|
|
/* 02515F40 */ _t173 = cpu->r[1] + 0x00000058u;
|
|
/* 02515F40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02515F44 */ cpu->ctr = cpu->r[20];
|
|
/* 02515F48 */ _t174 = cpu->r[1] + 0x00000018u;
|
|
/* 02515F48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t174);
|
|
L_02515F4C: ; // 0x2515f4c
|
|
/* 02515F4C */ _t175 = cpu->r[8] + 0x00000000u;
|
|
/* 02515F4C */ cpu->r[10] = rbrew_read8(cpu->mem, _t175);
|
|
/* 02515F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[22]);
|
|
/* 02515F54 */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515F54 */ _t177 = _t176 & 0x00000001u;
|
|
/* 02515F54 */ if (_t177) goto L_02515F58; else goto L_02515F68;
|
|
L_02515F58: ; // 0x2515f58
|
|
/* 02515F58 */ _t178 = cpu->r[7] + 0x00000000u;
|
|
/* 02515F58 */ cpu->r[12] = rbrew_read8(cpu->mem, _t178);
|
|
/* 02515F5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[22]);
|
|
/* 02515F60 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515F60 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02515F60 */ if (_t180) goto L_02515F88; else goto L_02515F64;
|
|
L_02515F64: ; // 0x2515f64
|
|
/* 02515F64 */ goto L_02515F9C;
|
|
L_02515F68: ; // 0x2515f68
|
|
/* 02515F68 */ _t181 = cpu->r[7] + 0x00000000u;
|
|
/* 02515F68 */ cpu->r[9] = rbrew_read8(cpu->mem, _t181);
|
|
/* 02515F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[22]);
|
|
/* 02515F70 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515F70 */ _t183 = _t182 & 0x00000001u;
|
|
/* 02515F70 */ if (_t183) goto L_02515F9C; else goto L_02515F74;
|
|
L_02515F74: ; // 0x2515f74
|
|
/* 02515F74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 02515F78 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515F78 */ _t185 = _t184 & 0x00000001u;
|
|
/* 02515F78 */ if (_t185) goto L_02515F7C; else goto L_02515F9C;
|
|
L_02515F7C: ; // 0x2515f7c
|
|
/* 02515F7C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02515F80 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02515F84 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02515F84 */ _t186 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02515F84 */ _t187 = _t186 >> (0x00000002u & 31u);
|
|
/* 02515F84 */ _t188 = _t187 & 0x00000001u;
|
|
/* 02515F84 */ if (_t188) goto L_02515F4C; else goto L_02515F88;
|
|
L_02515F88: ; // 0x2515f88
|
|
/* 02515F88 */ _t189 = cpu->r[21] | cpu->r[21];
|
|
/* 02515F88 */ cpu->r[0] = ~_t189;
|
|
/* 02515F8C */ cpu->r[4] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 02515F90 */ cpu->r[5] = cpu->r[0] - cpu->r[4];
|
|
/* 02515F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02515F94 */ _t190 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515F94 */ _t191 = _t190 & 0x00000001u;
|
|
/* 02515F94 */ if (_t191) goto L_02515FD4; else goto L_02515F98;
|
|
L_02515F98: ; // 0x2515f98
|
|
/* 02515F98 */ goto L_02515FB8;
|
|
L_02515F9C: ; // 0x2515f9c
|
|
/* 02515F9C */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02515FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[31]);
|
|
/* 02515FA4 */ _t192 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02515FA4 */ _t193 = _t192 & 0x00000001u;
|
|
/* 02515FA4 */ if (_t193) goto L_02515FA8; else goto L_02515EE4;
|
|
L_02515FA8: ; // 0x2515fa8
|
|
/* 02515FA8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02515FAC */ cpu->r[4] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 02515FB0 */ cpu->r[5] = ~cpu->r[4];
|
|
/* 02515FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02515FB4 */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02515FB4 */ _t195 = _t194 & 0x00000001u;
|
|
/* 02515FB4 */ if (_t195) goto L_02515FD4; else goto L_02515FB8;
|
|
L_02515FB8: ; // 0x2515fb8
|
|
/* 02515FB8 */ _t196 = cpu->r[28] + 0x000001ECu;
|
|
/* 02515FB8 */ rbrew_write32(cpu->mem, _t196, cpu->r[23]);
|
|
/* 02515FBC */ cpu->r[6] = 0x00000001u;
|
|
/* 02515FC0 */ _t197 = cpu->r[28] + 0x000001ECu;
|
|
/* 02515FC0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t197);
|
|
/* 02515FC4 */ _t198 = cpu->r[28] + 0x000001F0u;
|
|
/* 02515FC4 */ rbrew_write32(cpu->mem, _t198, cpu->r[6]);
|
|
/* 02515FC8 */ _t199 = cpu->r[28] + 0x000001F0u;
|
|
/* 02515FC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t199);
|
|
/* 02515FCC */ _t200 = cpu->r[1] + 0x00000094u;
|
|
/* 02515FCC */ rbrew_write32(cpu->mem, _t200, cpu->r[8]);
|
|
/* 02515FD0 */ goto L_02516848;
|
|
L_02515FD4: ; // 0x2515fd4
|
|
/* 02515FD4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02515FD8 */ _t201 = cpu->r[1] + 0x00000064u;
|
|
/* 02515FD8 */ rbrew_write32(cpu->mem, _t201, cpu->r[27]);
|
|
/* 02515FDC */ cpu->r[7] = cpu->r[7] + 0x00000474u;
|
|
/* 02515FE0 */ _t202 = cpu->r[26] + 0x00000004u;
|
|
/* 02515FE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t202);
|
|
/* 02515FE4 */ _t203 = cpu->r[1] + 0x00000060u;
|
|
/* 02515FE4 */ rbrew_write32(cpu->mem, _t203, cpu->r[7]);
|
|
/* 02515FE8 */ _t204 = cpu->r[8] + 0x00000014u;
|
|
/* 02515FE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02515FEC */ cpu->ctr = cpu->r[9];
|
|
/* 02515FF0 */ cpu->r[3] = cpu->r[26];
|
|
/* 02515FF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02515FF8 */ _t205 = cpu->r[26] + 0x00000000u;
|
|
/* 02515FF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02515FFC */ _t206 = cpu->r[5] + 0x00000000u;
|
|
/* 02515FFC */ cpu->r[10] = rbrew_read8(cpu->mem, _t206);
|
|
/* 02516000 */ cpu->r[30] = 0x00000000u;
|
|
/* 02516004 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[29]);
|
|
/* 02516008 */ cpu->r[6] = 0x00080000u;
|
|
/* 0251600C */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251600C */ _t208 = _t207 & 0x00000001u;
|
|
/* 0251600C */ if (_t208) goto L_02516034; else goto L_02516010;
|
|
L_02516010: ; // 0x2516010
|
|
/* 02516010 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02516014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 02516018 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0251601C */ _t209 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251601C */ _t210 = _t209 & 0x00000001u;
|
|
/* 0251601C */ if (_t210) goto L_02516030; else goto L_02516020;
|
|
L_02516020: ; // 0x2516020
|
|
/* 02516020 */ _t211 = cpu->r[5] + 0x00000000u;
|
|
/* 02516020 */ cpu->r[11] = rbrew_read8(cpu->mem, _t211);
|
|
/* 02516024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[29]);
|
|
/* 02516028 */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516028 */ _t213 = _t212 & 0x00000001u;
|
|
/* 02516028 */ if (_t213) goto L_0251602C; else goto L_02516010;
|
|
L_0251602C: ; // 0x251602c
|
|
/* 0251602C */ goto L_02516034;
|
|
L_02516030: ; // 0x2516030
|
|
/* 02516030 */ cpu->r[30] = 0x00000000u;
|
|
L_02516034: ; // 0x2516034
|
|
/* 02516034 */ _t214 = cpu->r[1] + 0x00000064u;
|
|
/* 02516034 */ cpu->r[12] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02516038 */ _t215 = cpu->r[12] + 0x00000014u;
|
|
/* 02516038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t215);
|
|
/* 0251603C */ cpu->ctr = cpu->r[0];
|
|
/* 02516040 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02516044 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516048 */ _t216 = cpu->r[1] + 0x00000060u;
|
|
/* 02516048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t216);
|
|
/* 0251604C */ _t217 = cpu->r[12] + 0x00000000u;
|
|
/* 0251604C */ cpu->r[4] = rbrew_read8(cpu->mem, _t217);
|
|
/* 02516050 */ cpu->r[31] = 0x00000000u;
|
|
/* 02516054 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 02516058 */ cpu->r[4] = 0x00080000u;
|
|
/* 0251605C */ _t218 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251605C */ _t219 = _t218 & 0x00000001u;
|
|
/* 0251605C */ if (_t219) goto L_02516084; else goto L_02516060;
|
|
L_02516060: ; // 0x2516060
|
|
/* 02516060 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 02516068 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0251606C */ _t220 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251606C */ _t221 = _t220 & 0x00000001u;
|
|
/* 0251606C */ if (_t221) goto L_02516080; else goto L_02516070;
|
|
L_02516070: ; // 0x2516070
|
|
/* 02516070 */ _t222 = cpu->r[12] + 0x00000000u;
|
|
/* 02516070 */ cpu->r[5] = rbrew_read8(cpu->mem, _t222);
|
|
/* 02516074 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 02516078 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516078 */ _t224 = _t223 & 0x00000001u;
|
|
/* 02516078 */ if (_t224) goto L_0251607C; else goto L_02516060;
|
|
L_0251607C: ; // 0x251607c
|
|
/* 0251607C */ goto L_02516084;
|
|
L_02516080: ; // 0x2516080
|
|
/* 02516080 */ cpu->r[31] = 0x00000000u;
|
|
L_02516084: ; // 0x2516084
|
|
/* 02516084 */ cpu->r[30] = cpu->r[30] - cpu->r[31];
|
|
/* 02516084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02516088 */ cpu->r[22] = 0x00000000u;
|
|
/* 0251608C */ _t225 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251608C */ _t226 = _t225 & 0x00000001u;
|
|
/* 0251608C */ if (_t226) goto L_02516158; else goto L_02516090;
|
|
L_02516090: ; // 0x2516090
|
|
/* 02516090 */ cpu->r[21] = cpu->r[29];
|
|
L_02516094: ; // 0x2516094
|
|
/* 02516094 */ _t227 = cpu->r[26] + 0x00000000u;
|
|
/* 02516094 */ cpu->r[8] = rbrew_read32(cpu->mem, _t227);
|
|
/* 02516098 */ cpu->r[20] = cpu->r[31];
|
|
/* 0251609C */ _t228 = cpu->r[1] + 0x00000024u;
|
|
/* 0251609C */ rbrew_write32(cpu->mem, _t228, cpu->r[27]);
|
|
/* 025160A0 */ cpu->r[7] = cpu->r[8] + cpu->r[22];
|
|
/* 025160A4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 025160A8 */ _t229 = cpu->r[1] + 0x00000020u;
|
|
/* 025160A8 */ rbrew_write32(cpu->mem, _t229, cpu->r[7]);
|
|
/* 025160AC */ Gambit_fn_02518B68(cpu);
|
|
/* 025160B0 */ _t230 = cpu->r[1] + 0x00000024u;
|
|
/* 025160B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t230);
|
|
/* 025160B4 */ _t231 = cpu->r[9] + 0x00000014u;
|
|
/* 025160B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t231);
|
|
/* 025160B8 */ cpu->ctr = cpu->r[10];
|
|
/* 025160BC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 025160C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025160C4 */ _t232 = cpu->r[1] + 0x00000064u;
|
|
/* 025160C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t232);
|
|
/* 025160C8 */ _t233 = cpu->r[11] + 0x00000014u;
|
|
/* 025160C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t233);
|
|
/* 025160CC */ cpu->ctr = cpu->r[0];
|
|
/* 025160D0 */ _t234 = cpu->r[1] + 0x00000020u;
|
|
/* 025160D0 */ cpu->r[19] = rbrew_read32(cpu->mem, _t234);
|
|
/* 025160D4 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 025160D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025160DC */ _t235 = cpu->r[1] + 0x00000060u;
|
|
/* 025160DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t235);
|
|
/* 025160E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[4]);
|
|
/* 025160E4 */ _t236 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025160E4 */ _t237 = _t236 & 0x00000001u;
|
|
/* 025160E4 */ if (_t237) goto L_02516138; else goto L_025160E8;
|
|
L_025160E8: ; // 0x25160e8
|
|
/* 025160E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 025160EC */ _t238 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025160EC */ _t239 = _t238 & 0x00000001u;
|
|
/* 025160EC */ if (_t239) goto L_025160F0; else goto L_02516138;
|
|
L_025160F0: ; // 0x25160f0
|
|
/* 025160F0 */ _t240 = cpu->r[1] + 0x00000060u;
|
|
/* 025160F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t240);
|
|
/* 025160F4 */ cpu->ctr = cpu->r[20];
|
|
/* 025160F8 */ _t241 = cpu->r[1] + 0x00000020u;
|
|
/* 025160F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t241);
|
|
L_025160FC: ; // 0x25160fc
|
|
/* 025160FC */ _t242 = cpu->r[10] + 0x00000000u;
|
|
/* 025160FC */ cpu->r[12] = rbrew_read8(cpu->mem, _t242);
|
|
/* 02516100 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[21]);
|
|
/* 02516104 */ _t243 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516104 */ _t244 = _t243 & 0x00000001u;
|
|
/* 02516104 */ if (_t244) goto L_02516108; else goto L_02516118;
|
|
L_02516108: ; // 0x2516108
|
|
/* 02516108 */ _t245 = cpu->r[9] + 0x00000000u;
|
|
/* 02516108 */ cpu->r[5] = rbrew_read8(cpu->mem, _t245);
|
|
/* 0251610C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[21]);
|
|
/* 02516110 */ _t246 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516110 */ _t247 = _t246 & 0x00000001u;
|
|
/* 02516110 */ if (_t247) goto L_02516138; else goto L_02516114;
|
|
L_02516114: ; // 0x2516114
|
|
/* 02516114 */ goto L_0251614C;
|
|
L_02516118: ; // 0x2516118
|
|
/* 02516118 */ _t248 = cpu->r[9] + 0x00000000u;
|
|
/* 02516118 */ cpu->r[11] = rbrew_read8(cpu->mem, _t248);
|
|
/* 0251611C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[21]);
|
|
/* 02516120 */ _t249 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516120 */ _t250 = _t249 & 0x00000001u;
|
|
/* 02516120 */ if (_t250) goto L_0251614C; else goto L_02516124;
|
|
L_02516124: ; // 0x2516124
|
|
/* 02516124 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02516128 */ _t251 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516128 */ _t252 = _t251 & 0x00000001u;
|
|
/* 02516128 */ if (_t252) goto L_0251612C; else goto L_0251614C;
|
|
L_0251612C: ; // 0x251612c
|
|
/* 0251612C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02516130 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02516134 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02516134 */ _t253 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02516134 */ _t254 = _t253 >> (0x00000002u & 31u);
|
|
/* 02516134 */ _t255 = _t254 & 0x00000001u;
|
|
/* 02516134 */ if (_t255) goto L_025160FC; else goto L_02516138;
|
|
L_02516138: ; // 0x2516138
|
|
/* 02516138 */ _t256 = cpu->r[22] | cpu->r[22];
|
|
/* 02516138 */ cpu->r[6] = ~_t256;
|
|
/* 0251613C */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02516140 */ cpu->r[6] = cpu->r[6] - cpu->r[7];
|
|
/* 02516140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02516144 */ _t257 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516144 */ _t258 = _t257 & 0x00000001u;
|
|
/* 02516144 */ if (_t258) goto L_02516184; else goto L_02516148;
|
|
L_02516148: ; // 0x2516148
|
|
/* 02516148 */ goto L_02516168;
|
|
L_0251614C: ; // 0x251614c
|
|
/* 0251614C */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02516150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[30]);
|
|
/* 02516154 */ _t259 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516154 */ _t260 = _t259 & 0x00000001u;
|
|
/* 02516154 */ if (_t260) goto L_02516158; else goto L_02516094;
|
|
L_02516158: ; // 0x2516158
|
|
/* 02516158 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251615C */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02516160 */ cpu->r[6] = ~cpu->r[7];
|
|
/* 02516160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02516164 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516164 */ _t262 = _t261 & 0x00000001u;
|
|
/* 02516164 */ if (_t262) goto L_02516184; else goto L_02516168;
|
|
L_02516168: ; // 0x2516168
|
|
/* 02516168 */ _t263 = cpu->r[28] + 0x000001F0u;
|
|
/* 02516168 */ rbrew_write32(cpu->mem, _t263, cpu->r[23]);
|
|
/* 0251616C */ cpu->r[8] = 0x00000001u;
|
|
/* 02516170 */ _t264 = cpu->r[28] + 0x000001ECu;
|
|
/* 02516170 */ rbrew_write32(cpu->mem, _t264, cpu->r[8]);
|
|
/* 02516174 */ _t265 = cpu->r[28] + 0x000001ECu;
|
|
/* 02516174 */ cpu->r[10] = rbrew_read32(cpu->mem, _t265);
|
|
/* 02516178 */ _t266 = cpu->r[28] + 0x000001F0u;
|
|
/* 02516178 */ cpu->r[8] = rbrew_read32(cpu->mem, _t266);
|
|
/* 0251617C */ _t267 = cpu->r[1] + 0x00000098u;
|
|
/* 0251617C */ rbrew_write32(cpu->mem, _t267, cpu->r[8]);
|
|
/* 02516180 */ goto L_02516848;
|
|
L_02516184: ; // 0x2516184
|
|
/* 02516184 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02516188 */ _t268 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02516188 */ rbrew_write32(cpu->mem, _t268, cpu->r[27]);
|
|
/* 0251618C */ cpu->r[11] = cpu->r[11] + 0x00000498u;
|
|
/* 02516190 */ _t269 = cpu->r[26] + 0x00000004u;
|
|
/* 02516190 */ cpu->r[12] = rbrew_read32(cpu->mem, _t269);
|
|
/* 02516194 */ _t270 = cpu->r[1] + 0x00000068u;
|
|
/* 02516194 */ rbrew_write32(cpu->mem, _t270, cpu->r[11]);
|
|
/* 02516198 */ _t271 = cpu->r[12] + 0x00000014u;
|
|
/* 02516198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t271);
|
|
/* 0251619C */ cpu->ctr = cpu->r[0];
|
|
/* 025161A0 */ cpu->r[3] = cpu->r[26];
|
|
/* 025161A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025161A8 */ _t272 = cpu->r[26] + 0x00000000u;
|
|
/* 025161A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t272);
|
|
/* 025161AC */ _t273 = cpu->r[7] + 0x00000000u;
|
|
/* 025161AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t273);
|
|
/* 025161B0 */ cpu->r[30] = 0x00000000u;
|
|
/* 025161B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 025161B8 */ cpu->r[0] = 0x00080000u;
|
|
/* 025161BC */ _t274 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025161BC */ _t275 = _t274 & 0x00000001u;
|
|
/* 025161BC */ if (_t275) goto L_025161E4; else goto L_025161C0;
|
|
L_025161C0: ; // 0x25161c0
|
|
/* 025161C0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 025161C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 025161C8 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 025161CC */ _t276 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025161CC */ _t277 = _t276 & 0x00000001u;
|
|
/* 025161CC */ if (_t277) goto L_025161E0; else goto L_025161D0;
|
|
L_025161D0: ; // 0x25161d0
|
|
/* 025161D0 */ _t278 = cpu->r[7] + 0x00000000u;
|
|
/* 025161D0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t278);
|
|
/* 025161D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 025161D8 */ _t279 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025161D8 */ _t280 = _t279 & 0x00000001u;
|
|
/* 025161D8 */ if (_t280) goto L_025161DC; else goto L_025161C0;
|
|
L_025161DC: ; // 0x25161dc
|
|
/* 025161DC */ goto L_025161E4;
|
|
L_025161E0: ; // 0x25161e0
|
|
/* 025161E0 */ cpu->r[30] = 0x00000000u;
|
|
L_025161E4: ; // 0x25161e4
|
|
/* 025161E4 */ _t281 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025161E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t281);
|
|
/* 025161E8 */ _t282 = cpu->r[6] + 0x00000014u;
|
|
/* 025161E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t282);
|
|
/* 025161EC */ cpu->ctr = cpu->r[7];
|
|
/* 025161F0 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 025161F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025161F8 */ _t283 = cpu->r[1] + 0x00000068u;
|
|
/* 025161F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t283);
|
|
/* 025161FC */ _t284 = cpu->r[5] + 0x00000000u;
|
|
/* 025161FC */ cpu->r[8] = rbrew_read8(cpu->mem, _t284);
|
|
/* 02516200 */ cpu->r[31] = 0x00000000u;
|
|
/* 02516204 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 02516208 */ cpu->r[6] = 0x00080000u;
|
|
/* 0251620C */ _t285 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251620C */ _t286 = _t285 & 0x00000001u;
|
|
/* 0251620C */ if (_t286) goto L_02516234; else goto L_02516210;
|
|
L_02516210: ; // 0x2516210
|
|
/* 02516210 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02516218 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0251621C */ _t287 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251621C */ _t288 = _t287 & 0x00000001u;
|
|
/* 0251621C */ if (_t288) goto L_02516230; else goto L_02516220;
|
|
L_02516220: ; // 0x2516220
|
|
/* 02516220 */ _t289 = cpu->r[5] + 0x00000000u;
|
|
/* 02516220 */ cpu->r[9] = rbrew_read8(cpu->mem, _t289);
|
|
/* 02516224 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]);
|
|
/* 02516228 */ _t290 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516228 */ _t291 = _t290 & 0x00000001u;
|
|
/* 02516228 */ if (_t291) goto L_0251622C; else goto L_02516210;
|
|
L_0251622C: ; // 0x251622c
|
|
/* 0251622C */ goto L_02516234;
|
|
L_02516230: ; // 0x2516230
|
|
/* 02516230 */ cpu->r[31] = 0x00000000u;
|
|
L_02516234: ; // 0x2516234
|
|
/* 02516234 */ cpu->r[30] = cpu->r[30] - cpu->r[31];
|
|
/* 02516234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02516238 */ cpu->r[23] = 0x00000000u;
|
|
/* 0251623C */ _t292 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251623C */ _t293 = _t292 & 0x00000001u;
|
|
/* 0251623C */ if (_t293) goto L_02516308; else goto L_02516240;
|
|
L_02516240: ; // 0x2516240
|
|
/* 02516240 */ cpu->r[22] = cpu->r[29];
|
|
L_02516244: ; // 0x2516244
|
|
/* 02516244 */ _t294 = cpu->r[26] + 0x00000000u;
|
|
/* 02516244 */ cpu->r[11] = rbrew_read32(cpu->mem, _t294);
|
|
/* 02516248 */ cpu->r[21] = cpu->r[31];
|
|
/* 0251624C */ _t295 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251624C */ rbrew_write32(cpu->mem, _t295, cpu->r[27]);
|
|
/* 02516250 */ cpu->r[10] = cpu->r[11] + cpu->r[23];
|
|
/* 02516254 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02516258 */ _t296 = cpu->r[1] + 0x00000028u;
|
|
/* 02516258 */ rbrew_write32(cpu->mem, _t296, cpu->r[10]);
|
|
/* 0251625C */ Gambit_fn_02518B68(cpu);
|
|
/* 02516260 */ _t297 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02516260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t297);
|
|
/* 02516264 */ _t298 = cpu->r[12] + 0x00000014u;
|
|
/* 02516264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t298);
|
|
/* 02516268 */ cpu->ctr = cpu->r[0];
|
|
/* 0251626C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02516270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516274 */ _t299 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02516274 */ cpu->r[4] = rbrew_read32(cpu->mem, _t299);
|
|
/* 02516278 */ _t300 = cpu->r[4] + 0x00000014u;
|
|
/* 02516278 */ cpu->r[5] = rbrew_read32(cpu->mem, _t300);
|
|
/* 0251627C */ cpu->ctr = cpu->r[5];
|
|
/* 02516280 */ _t301 = cpu->r[1] + 0x00000028u;
|
|
/* 02516280 */ cpu->r[20] = rbrew_read32(cpu->mem, _t301);
|
|
/* 02516284 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02516288 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251628C */ _t302 = cpu->r[1] + 0x00000068u;
|
|
/* 0251628C */ cpu->r[6] = rbrew_read32(cpu->mem, _t302);
|
|
/* 02516290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[6]);
|
|
/* 02516294 */ _t303 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516294 */ _t304 = _t303 & 0x00000001u;
|
|
/* 02516294 */ if (_t304) goto L_025162E8; else goto L_02516298;
|
|
L_02516298: ; // 0x2516298
|
|
/* 02516298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0251629C */ _t305 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251629C */ _t306 = _t305 & 0x00000001u;
|
|
/* 0251629C */ if (_t306) goto L_025162A0; else goto L_025162E8;
|
|
L_025162A0: ; // 0x25162a0
|
|
/* 025162A0 */ _t307 = cpu->r[1] + 0x00000068u;
|
|
/* 025162A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t307);
|
|
/* 025162A4 */ cpu->ctr = cpu->r[21];
|
|
/* 025162A8 */ _t308 = cpu->r[1] + 0x00000028u;
|
|
/* 025162A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t308);
|
|
L_025162AC: ; // 0x25162ac
|
|
/* 025162AC */ _t309 = cpu->r[12] + 0x00000000u;
|
|
/* 025162AC */ cpu->r[4] = rbrew_read8(cpu->mem, _t309);
|
|
/* 025162B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]);
|
|
/* 025162B4 */ _t310 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025162B4 */ _t311 = _t310 & 0x00000001u;
|
|
/* 025162B4 */ if (_t311) goto L_025162B8; else goto L_025162C8;
|
|
L_025162B8: ; // 0x25162b8
|
|
/* 025162B8 */ _t312 = cpu->r[11] + 0x00000000u;
|
|
/* 025162B8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t312);
|
|
/* 025162BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[22]);
|
|
/* 025162C0 */ _t313 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025162C0 */ _t314 = _t313 & 0x00000001u;
|
|
/* 025162C0 */ if (_t314) goto L_025162E8; else goto L_025162C4;
|
|
L_025162C4: ; // 0x25162c4
|
|
/* 025162C4 */ goto L_025162FC;
|
|
L_025162C8: ; // 0x25162c8
|
|
/* 025162C8 */ _t315 = cpu->r[11] + 0x00000000u;
|
|
/* 025162C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t315);
|
|
/* 025162CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[22]);
|
|
/* 025162D0 */ _t316 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025162D0 */ _t317 = _t316 & 0x00000001u;
|
|
/* 025162D0 */ if (_t317) goto L_025162FC; else goto L_025162D4;
|
|
L_025162D4: ; // 0x25162d4
|
|
/* 025162D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 025162D8 */ _t318 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025162D8 */ _t319 = _t318 & 0x00000001u;
|
|
/* 025162D8 */ if (_t319) goto L_025162DC; else goto L_025162FC;
|
|
L_025162DC: ; // 0x25162dc
|
|
/* 025162DC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 025162E0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 025162E4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025162E4 */ _t320 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025162E4 */ _t321 = _t320 >> (0x00000002u & 31u);
|
|
/* 025162E4 */ _t322 = _t321 & 0x00000001u;
|
|
/* 025162E4 */ if (_t322) goto L_025162AC; else goto L_025162E8;
|
|
L_025162E8: ; // 0x25162e8
|
|
/* 025162E8 */ _t323 = cpu->r[23] | cpu->r[23];
|
|
/* 025162E8 */ cpu->r[8] = ~_t323;
|
|
/* 025162EC */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 025162F0 */ cpu->r[9] = cpu->r[8] - cpu->r[10];
|
|
/* 025162F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025162F4 */ _t324 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025162F4 */ _t325 = _t324 & 0x00000001u;
|
|
/* 025162F4 */ if (_t325) goto L_025164C4; else goto L_025162F8;
|
|
L_025162F8: ; // 0x25162f8
|
|
/* 025162F8 */ goto L_02516318;
|
|
L_025162FC: ; // 0x25162fc
|
|
/* 025162FC */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02516300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[30]);
|
|
/* 02516304 */ _t326 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516304 */ _t327 = _t326 & 0x00000001u;
|
|
/* 02516304 */ if (_t327) goto L_02516308; else goto L_02516244;
|
|
L_02516308: ; // 0x2516308
|
|
/* 02516308 */ cpu->r[8] = 0x00000000u;
|
|
/* 0251630C */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02516310 */ cpu->r[9] = ~cpu->r[10];
|
|
/* 02516310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02516314 */ _t328 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516314 */ _t329 = _t328 & 0x00000001u;
|
|
/* 02516314 */ if (_t329) goto L_025164C4; else goto L_02516318;
|
|
L_02516318: ; // 0x2516318
|
|
/* 02516318 */ cpu->r[11] = 0x00000001u;
|
|
/* 0251631C */ _t330 = cpu->r[28] + 0x000001ECu;
|
|
/* 0251631C */ rbrew_write32(cpu->mem, _t330, cpu->r[11]);
|
|
/* 02516320 */ _t331 = cpu->r[28] + 0x000001ECu;
|
|
/* 02516320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t331);
|
|
/* 02516324 */ _t332 = cpu->r[28] + 0x000001F0u;
|
|
/* 02516324 */ rbrew_write32(cpu->mem, _t332, cpu->r[11]);
|
|
/* 02516328 */ _t333 = cpu->r[28] + 0x000001F0u;
|
|
/* 02516328 */ cpu->r[8] = rbrew_read32(cpu->mem, _t333);
|
|
/* 0251632C */ _t334 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0251632C */ rbrew_write32(cpu->mem, _t334, cpu->r[8]);
|
|
/* 02516330 */ goto L_02516848;
|
|
L_02516334: ; // 0x2516334
|
|
/* 02516334 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02516338 */ _t335 = cpu->r[1] + 0x00000074u;
|
|
/* 02516338 */ rbrew_write32(cpu->mem, _t335, cpu->r[27]);
|
|
/* 0251633C */ cpu->r[4] = cpu->r[4] + 0x000004A0u;
|
|
/* 02516340 */ _t336 = cpu->r[26] + 0x00000004u;
|
|
/* 02516340 */ cpu->r[5] = rbrew_read32(cpu->mem, _t336);
|
|
/* 02516344 */ _t337 = cpu->r[1] + 0x00000070u;
|
|
/* 02516344 */ rbrew_write32(cpu->mem, _t337, cpu->r[4]);
|
|
/* 02516348 */ _t338 = cpu->r[5] + 0x00000014u;
|
|
/* 02516348 */ cpu->r[6] = rbrew_read32(cpu->mem, _t338);
|
|
/* 0251634C */ cpu->ctr = cpu->r[6];
|
|
/* 02516350 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516354 */ _t339 = cpu->r[26] + 0x00000000u;
|
|
/* 02516354 */ cpu->r[9] = rbrew_read32(cpu->mem, _t339);
|
|
/* 02516358 */ _t340 = cpu->r[9] + 0x00000000u;
|
|
/* 02516358 */ cpu->r[7] = rbrew_read8(cpu->mem, _t340);
|
|
/* 0251635C */ cpu->r[30] = 0x00000000u;
|
|
/* 02516360 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]);
|
|
/* 02516364 */ cpu->r[0] = 0x00080000u;
|
|
/* 02516368 */ _t341 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516368 */ _t342 = _t341 & 0x00000001u;
|
|
/* 02516368 */ if (_t342) goto L_02516390; else goto L_0251636C;
|
|
L_0251636C: ; // 0x251636c
|
|
/* 0251636C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02516370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02516374 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02516378 */ _t343 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516378 */ _t344 = _t343 & 0x00000001u;
|
|
/* 02516378 */ if (_t344) goto L_0251638C; else goto L_0251637C;
|
|
L_0251637C: ; // 0x251637c
|
|
/* 0251637C */ _t345 = cpu->r[9] + 0x00000000u;
|
|
/* 0251637C */ cpu->r[8] = rbrew_read8(cpu->mem, _t345);
|
|
/* 02516380 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 02516384 */ _t346 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516384 */ _t347 = _t346 & 0x00000001u;
|
|
/* 02516384 */ if (_t347) goto L_02516388; else goto L_0251636C;
|
|
L_02516388: ; // 0x2516388
|
|
/* 02516388 */ goto L_02516390;
|
|
L_0251638C: ; // 0x251638c
|
|
/* 0251638C */ cpu->r[30] = 0x00000000u;
|
|
L_02516390: ; // 0x2516390
|
|
/* 02516390 */ _t348 = cpu->r[1] + 0x00000074u;
|
|
/* 02516390 */ cpu->r[9] = rbrew_read32(cpu->mem, _t348);
|
|
/* 02516394 */ _t349 = cpu->r[9] + 0x00000014u;
|
|
/* 02516394 */ cpu->r[10] = rbrew_read32(cpu->mem, _t349);
|
|
/* 02516398 */ cpu->ctr = cpu->r[10];
|
|
/* 0251639C */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 025163A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025163A4 */ _t350 = cpu->r[1] + 0x00000070u;
|
|
/* 025163A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t350);
|
|
/* 025163A8 */ _t351 = cpu->r[7] + 0x00000000u;
|
|
/* 025163A8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t351);
|
|
/* 025163AC */ cpu->r[31] = 0x00000000u;
|
|
/* 025163B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[29]);
|
|
/* 025163B4 */ cpu->r[8] = 0x00080000u;
|
|
/* 025163B8 */ _t352 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025163B8 */ _t353 = _t352 & 0x00000001u;
|
|
/* 025163B8 */ if (_t353) goto L_025163E0; else goto L_025163BC;
|
|
L_025163BC: ; // 0x25163bc
|
|
/* 025163BC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 025163C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 025163C4 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 025163C8 */ _t354 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025163C8 */ _t355 = _t354 & 0x00000001u;
|
|
/* 025163C8 */ if (_t355) goto L_025163DC; else goto L_025163CC;
|
|
L_025163CC: ; // 0x25163cc
|
|
/* 025163CC */ _t356 = cpu->r[7] + 0x00000000u;
|
|
/* 025163CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t356);
|
|
/* 025163D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]);
|
|
/* 025163D4 */ _t357 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025163D4 */ _t358 = _t357 & 0x00000001u;
|
|
/* 025163D4 */ if (_t358) goto L_025163D8; else goto L_025163BC;
|
|
L_025163D8: ; // 0x25163d8
|
|
/* 025163D8 */ goto L_025163E0;
|
|
L_025163DC: ; // 0x25163dc
|
|
/* 025163DC */ cpu->r[31] = 0x00000000u;
|
|
L_025163E0: ; // 0x25163e0
|
|
/* 025163E0 */ cpu->r[30] = cpu->r[30] - cpu->r[31];
|
|
/* 025163E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025163E4 */ cpu->r[22] = 0x00000000u;
|
|
/* 025163E8 */ _t359 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025163E8 */ _t360 = _t359 & 0x00000001u;
|
|
/* 025163E8 */ if (_t360) goto L_025164B4; else goto L_025163EC;
|
|
L_025163EC: ; // 0x25163ec
|
|
/* 025163EC */ cpu->r[21] = cpu->r[29];
|
|
L_025163F0: ; // 0x25163f0
|
|
/* 025163F0 */ _t361 = cpu->r[26] + 0x00000000u;
|
|
/* 025163F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t361);
|
|
/* 025163F4 */ cpu->r[20] = cpu->r[31];
|
|
/* 025163F8 */ _t362 = cpu->r[1] + 0x00000034u;
|
|
/* 025163F8 */ rbrew_write32(cpu->mem, _t362, cpu->r[27]);
|
|
/* 025163FC */ cpu->r[0] = cpu->r[4] + cpu->r[22];
|
|
/* 02516400 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02516404 */ _t363 = cpu->r[1] + 0x00000030u;
|
|
/* 02516404 */ rbrew_write32(cpu->mem, _t363, cpu->r[0]);
|
|
/* 02516408 */ Gambit_fn_02518B68(cpu);
|
|
/* 0251640C */ _t364 = cpu->r[1] + 0x00000034u;
|
|
/* 0251640C */ cpu->r[5] = rbrew_read32(cpu->mem, _t364);
|
|
/* 02516410 */ _t365 = cpu->r[5] + 0x00000014u;
|
|
/* 02516410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t365);
|
|
/* 02516414 */ cpu->ctr = cpu->r[0];
|
|
/* 02516418 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0251641C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516420 */ _t366 = cpu->r[1] + 0x00000074u;
|
|
/* 02516420 */ cpu->r[7] = rbrew_read32(cpu->mem, _t366);
|
|
/* 02516424 */ _t367 = cpu->r[7] + 0x00000014u;
|
|
/* 02516424 */ cpu->r[8] = rbrew_read32(cpu->mem, _t367);
|
|
/* 02516428 */ cpu->ctr = cpu->r[8];
|
|
/* 0251642C */ _t368 = cpu->r[1] + 0x00000030u;
|
|
/* 0251642C */ cpu->r[19] = rbrew_read32(cpu->mem, _t368);
|
|
/* 02516430 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 02516434 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516438 */ _t369 = cpu->r[1] + 0x00000070u;
|
|
/* 02516438 */ cpu->r[9] = rbrew_read32(cpu->mem, _t369);
|
|
/* 0251643C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[9]);
|
|
/* 02516440 */ _t370 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516440 */ _t371 = _t370 & 0x00000001u;
|
|
/* 02516440 */ if (_t371) goto L_02516494; else goto L_02516444;
|
|
L_02516444: ; // 0x2516444
|
|
/* 02516444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02516448 */ _t372 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516448 */ _t373 = _t372 & 0x00000001u;
|
|
/* 02516448 */ if (_t373) goto L_0251644C; else goto L_02516494;
|
|
L_0251644C: ; // 0x251644c
|
|
/* 0251644C */ _t374 = cpu->r[1] + 0x00000070u;
|
|
/* 0251644C */ cpu->r[5] = rbrew_read32(cpu->mem, _t374);
|
|
/* 02516450 */ cpu->ctr = cpu->r[20];
|
|
/* 02516454 */ _t375 = cpu->r[1] + 0x00000030u;
|
|
/* 02516454 */ cpu->r[6] = rbrew_read32(cpu->mem, _t375);
|
|
L_02516458: ; // 0x2516458
|
|
/* 02516458 */ _t376 = cpu->r[6] + 0x00000000u;
|
|
/* 02516458 */ cpu->r[12] = rbrew_read8(cpu->mem, _t376);
|
|
/* 0251645C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[21]);
|
|
/* 02516460 */ _t377 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516460 */ _t378 = _t377 & 0x00000001u;
|
|
/* 02516460 */ if (_t378) goto L_02516464; else goto L_02516474;
|
|
L_02516464: ; // 0x2516464
|
|
/* 02516464 */ _t379 = cpu->r[5] + 0x00000000u;
|
|
/* 02516464 */ cpu->r[10] = rbrew_read8(cpu->mem, _t379);
|
|
/* 02516468 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[21]);
|
|
/* 0251646C */ _t380 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251646C */ _t381 = _t380 & 0x00000001u;
|
|
/* 0251646C */ if (_t381) goto L_02516494; else goto L_02516470;
|
|
L_02516470: ; // 0x2516470
|
|
/* 02516470 */ goto L_025164A8;
|
|
L_02516474: ; // 0x2516474
|
|
/* 02516474 */ _t382 = cpu->r[5] + 0x00000000u;
|
|
/* 02516474 */ cpu->r[11] = rbrew_read8(cpu->mem, _t382);
|
|
/* 02516478 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[21]);
|
|
/* 0251647C */ _t383 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251647C */ _t384 = _t383 & 0x00000001u;
|
|
/* 0251647C */ if (_t384) goto L_025164A8; else goto L_02516480;
|
|
L_02516480: ; // 0x2516480
|
|
/* 02516480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02516484 */ _t385 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516484 */ _t386 = _t385 & 0x00000001u;
|
|
/* 02516484 */ if (_t386) goto L_02516488; else goto L_025164A8;
|
|
L_02516488: ; // 0x2516488
|
|
/* 02516488 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0251648C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02516490 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02516490 */ _t387 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02516490 */ _t388 = _t387 >> (0x00000002u & 31u);
|
|
/* 02516490 */ _t389 = _t388 & 0x00000001u;
|
|
/* 02516490 */ if (_t389) goto L_02516458; else goto L_02516494;
|
|
L_02516494: ; // 0x2516494
|
|
/* 02516494 */ _t390 = cpu->r[22] | cpu->r[22];
|
|
/* 02516494 */ cpu->r[11] = ~_t390;
|
|
/* 02516498 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0251649C */ cpu->r[10] = cpu->r[11] - cpu->r[12];
|
|
/* 0251649C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 025164A0 */ _t391 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025164A0 */ _t392 = _t391 & 0x00000001u;
|
|
/* 025164A0 */ if (_t392) goto L_025164C4; else goto L_025164A4;
|
|
L_025164A4: ; // 0x25164a4
|
|
/* 025164A4 */ goto L_025164FC;
|
|
L_025164A8: ; // 0x25164a8
|
|
/* 025164A8 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 025164AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[30]);
|
|
/* 025164B0 */ _t393 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025164B0 */ _t394 = _t393 & 0x00000001u;
|
|
/* 025164B0 */ if (_t394) goto L_025164B4; else goto L_025163F0;
|
|
L_025164B4: ; // 0x25164b4
|
|
/* 025164B4 */ cpu->r[11] = 0x00000000u;
|
|
/* 025164B8 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 025164BC */ cpu->r[10] = ~cpu->r[12];
|
|
/* 025164BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 025164C0 */ _t395 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025164C0 */ _t396 = _t395 & 0x00000001u;
|
|
/* 025164C0 */ if (_t396) goto L_025164C4; else goto L_025164FC;
|
|
L_025164C4: ; // 0x25164c4
|
|
/* 025164C4 */ _t397 = cpu->r[28] + 0x00000224u;
|
|
/* 025164C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t397);
|
|
/* 025164C8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025164CC */ _t398 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025164CC */ rbrew_write32(cpu->mem, _t398, cpu->r[27]);
|
|
/* 025164D0 */ cpu->r[9] = cpu->r[9] + 0x00000484u;
|
|
/* 025164D4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 025164D8 */ _t399 = cpu->r[1] + 0x00000048u;
|
|
/* 025164D8 */ rbrew_write32(cpu->mem, _t399, cpu->r[9]);
|
|
/* 025164DC */ Gambit_fn_02518B68(cpu);
|
|
/* 025164E0 */ _t400 = cpu->r[1] + 0x00000048u;
|
|
/* 025164E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t400);
|
|
/* 025164E4 */ _t401 = cpu->r[9] + 0x00000000u;
|
|
/* 025164E4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t401);
|
|
/* 025164E8 */ cpu->r[31] = 0x00000000u;
|
|
/* 025164EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[29]);
|
|
/* 025164F0 */ cpu->r[0] = 0x00080000u;
|
|
/* 025164F4 */ _t402 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025164F4 */ _t403 = _t402 & 0x00000001u;
|
|
/* 025164F4 */ if (_t403) goto L_025164F8; else goto L_0251687C;
|
|
L_025164F8: ; // 0x25164f8
|
|
/* 025164F8 */ goto L_025168A0;
|
|
L_025164FC: ; // 0x25164fc
|
|
/* 025164FC */ _t404 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025164FC */ rbrew_write32(cpu->mem, _t404, cpu->r[27]);
|
|
/* 02516500 */ cpu->r[0] = 0x00000001u;
|
|
/* 02516504 */ _t405 = cpu->r[28] + 0x000001ECu;
|
|
/* 02516504 */ rbrew_write32(cpu->mem, _t405, cpu->r[23]);
|
|
/* 02516508 */ _t406 = cpu->r[28] + 0x000001E8u;
|
|
/* 02516508 */ rbrew_write32(cpu->mem, _t406, cpu->r[0]);
|
|
/* 0251650C */ _t407 = cpu->r[26] + 0x00000004u;
|
|
/* 0251650C */ cpu->r[6] = rbrew_read32(cpu->mem, _t407);
|
|
/* 02516510 */ _t408 = cpu->r[1] + 0x00000078u;
|
|
/* 02516510 */ rbrew_write32(cpu->mem, _t408, cpu->r[25]);
|
|
/* 02516514 */ _t409 = cpu->r[6] + 0x00000014u;
|
|
/* 02516514 */ cpu->r[7] = rbrew_read32(cpu->mem, _t409);
|
|
/* 02516518 */ _t410 = cpu->r[28] + 0x000001E8u;
|
|
/* 02516518 */ cpu->r[4] = rbrew_read32(cpu->mem, _t410);
|
|
/* 0251651C */ cpu->ctr = cpu->r[7];
|
|
/* 02516520 */ _t411 = cpu->r[28] + 0x000001ECu;
|
|
/* 02516520 */ cpu->r[5] = rbrew_read32(cpu->mem, _t411);
|
|
/* 02516524 */ cpu->r[3] = cpu->r[26];
|
|
/* 02516528 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251652C */ _t412 = cpu->r[26] + 0x00000000u;
|
|
/* 0251652C */ cpu->r[12] = rbrew_read32(cpu->mem, _t412);
|
|
/* 02516530 */ _t413 = cpu->r[12] + 0x00000000u;
|
|
/* 02516530 */ cpu->r[8] = rbrew_read8(cpu->mem, _t413);
|
|
/* 02516534 */ cpu->r[30] = 0x00000000u;
|
|
/* 02516538 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 0251653C */ cpu->r[4] = 0x00080000u;
|
|
/* 02516540 */ _t414 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516540 */ _t415 = _t414 & 0x00000001u;
|
|
/* 02516540 */ if (_t415) goto L_02516568; else goto L_02516544;
|
|
L_02516544: ; // 0x2516544
|
|
/* 02516544 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02516548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[4]);
|
|
/* 0251654C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02516550 */ _t416 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516550 */ _t417 = _t416 & 0x00000001u;
|
|
/* 02516550 */ if (_t417) goto L_02516564; else goto L_02516554;
|
|
L_02516554: ; // 0x2516554
|
|
/* 02516554 */ _t418 = cpu->r[12] + 0x00000000u;
|
|
/* 02516554 */ cpu->r[9] = rbrew_read8(cpu->mem, _t418);
|
|
/* 02516558 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]);
|
|
/* 0251655C */ _t419 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251655C */ _t420 = _t419 & 0x00000001u;
|
|
/* 0251655C */ if (_t420) goto L_02516560; else goto L_02516544;
|
|
L_02516560: ; // 0x2516560
|
|
/* 02516560 */ goto L_02516568;
|
|
L_02516564: ; // 0x2516564
|
|
/* 02516564 */ cpu->r[30] = 0x00000000u;
|
|
L_02516568: ; // 0x2516568
|
|
/* 02516568 */ _t421 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02516568 */ cpu->r[11] = rbrew_read32(cpu->mem, _t421);
|
|
/* 0251656C */ _t422 = cpu->r[11] + 0x00000014u;
|
|
/* 0251656C */ cpu->r[12] = rbrew_read32(cpu->mem, _t422);
|
|
/* 02516570 */ cpu->ctr = cpu->r[12];
|
|
/* 02516574 */ cpu->r[3] = cpu->r[1] + 0x00000078u;
|
|
/* 02516578 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251657C */ _t423 = cpu->r[1] + 0x00000078u;
|
|
/* 0251657C */ cpu->r[10] = rbrew_read32(cpu->mem, _t423);
|
|
/* 02516580 */ _t424 = cpu->r[10] + 0x00000000u;
|
|
/* 02516580 */ cpu->r[0] = rbrew_read8(cpu->mem, _t424);
|
|
/* 02516584 */ cpu->r[31] = 0x00000000u;
|
|
/* 02516588 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0251658C */ cpu->r[0] = 0x00080000u;
|
|
/* 02516590 */ _t425 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516590 */ _t426 = _t425 & 0x00000001u;
|
|
/* 02516590 */ if (_t426) goto L_025165B8; else goto L_02516594;
|
|
L_02516594: ; // 0x2516594
|
|
/* 02516594 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0251659C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 025165A0 */ _t427 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025165A0 */ _t428 = _t427 & 0x00000001u;
|
|
/* 025165A0 */ if (_t428) goto L_025165B4; else goto L_025165A4;
|
|
L_025165A4: ; // 0x25165a4
|
|
/* 025165A4 */ _t429 = cpu->r[10] + 0x00000000u;
|
|
/* 025165A4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t429);
|
|
/* 025165A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 025165AC */ _t430 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025165AC */ _t431 = _t430 & 0x00000001u;
|
|
/* 025165AC */ if (_t431) goto L_025165B0; else goto L_02516594;
|
|
L_025165B0: ; // 0x25165b0
|
|
/* 025165B0 */ goto L_025165B8;
|
|
L_025165B4: ; // 0x25165b4
|
|
/* 025165B4 */ cpu->r[31] = 0x00000000u;
|
|
L_025165B8: ; // 0x25165b8
|
|
/* 025165B8 */ cpu->r[30] = cpu->r[30] - cpu->r[31];
|
|
/* 025165B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025165BC */ cpu->r[22] = 0x00000000u;
|
|
/* 025165C0 */ _t432 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025165C0 */ _t433 = _t432 & 0x00000001u;
|
|
/* 025165C0 */ if (_t433) goto L_0251668C; else goto L_025165C4;
|
|
L_025165C4: ; // 0x25165c4
|
|
/* 025165C4 */ cpu->r[21] = cpu->r[29];
|
|
L_025165C8: ; // 0x25165c8
|
|
/* 025165C8 */ _t434 = cpu->r[26] + 0x00000000u;
|
|
/* 025165C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t434);
|
|
/* 025165CC */ cpu->r[20] = cpu->r[31];
|
|
/* 025165D0 */ _t435 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025165D0 */ rbrew_write32(cpu->mem, _t435, cpu->r[27]);
|
|
/* 025165D4 */ cpu->r[5] = cpu->r[6] + cpu->r[22];
|
|
/* 025165D8 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 025165DC */ _t436 = cpu->r[1] + 0x00000038u;
|
|
/* 025165DC */ rbrew_write32(cpu->mem, _t436, cpu->r[5]);
|
|
/* 025165E0 */ Gambit_fn_02518B68(cpu);
|
|
/* 025165E4 */ _t437 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025165E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t437);
|
|
/* 025165E8 */ _t438 = cpu->r[7] + 0x00000014u;
|
|
/* 025165E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t438);
|
|
/* 025165EC */ cpu->ctr = cpu->r[8];
|
|
/* 025165F0 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 025165F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025165F8 */ _t439 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025165F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t439);
|
|
/* 025165FC */ _t440 = cpu->r[9] + 0x00000014u;
|
|
/* 025165FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t440);
|
|
/* 02516600 */ cpu->ctr = cpu->r[10];
|
|
/* 02516604 */ _t441 = cpu->r[1] + 0x00000038u;
|
|
/* 02516604 */ cpu->r[19] = rbrew_read32(cpu->mem, _t441);
|
|
/* 02516608 */ cpu->r[3] = cpu->r[1] + 0x00000078u;
|
|
/* 0251660C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516610 */ _t442 = cpu->r[1] + 0x00000078u;
|
|
/* 02516610 */ cpu->r[11] = rbrew_read32(cpu->mem, _t442);
|
|
/* 02516614 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[11]);
|
|
/* 02516618 */ _t443 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516618 */ _t444 = _t443 & 0x00000001u;
|
|
/* 02516618 */ if (_t444) goto L_0251666C; else goto L_0251661C;
|
|
L_0251661C: ; // 0x251661c
|
|
/* 0251661C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02516620 */ _t445 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516620 */ _t446 = _t445 & 0x00000001u;
|
|
/* 02516620 */ if (_t446) goto L_02516624; else goto L_0251666C;
|
|
L_02516624: ; // 0x2516624
|
|
/* 02516624 */ _t447 = cpu->r[1] + 0x00000078u;
|
|
/* 02516624 */ cpu->r[8] = rbrew_read32(cpu->mem, _t447);
|
|
/* 02516628 */ cpu->ctr = cpu->r[20];
|
|
/* 0251662C */ _t448 = cpu->r[1] + 0x00000038u;
|
|
/* 0251662C */ cpu->r[9] = rbrew_read32(cpu->mem, _t448);
|
|
L_02516630: ; // 0x2516630
|
|
/* 02516630 */ _t449 = cpu->r[9] + 0x00000000u;
|
|
/* 02516630 */ cpu->r[4] = rbrew_read8(cpu->mem, _t449);
|
|
/* 02516634 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[21]);
|
|
/* 02516638 */ _t450 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516638 */ _t451 = _t450 & 0x00000001u;
|
|
/* 02516638 */ if (_t451) goto L_0251663C; else goto L_0251664C;
|
|
L_0251663C: ; // 0x251663c
|
|
/* 0251663C */ _t452 = cpu->r[8] + 0x00000000u;
|
|
/* 0251663C */ cpu->r[0] = rbrew_read8(cpu->mem, _t452);
|
|
/* 02516640 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[21]);
|
|
/* 02516644 */ _t453 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516644 */ _t454 = _t453 & 0x00000001u;
|
|
/* 02516644 */ if (_t454) goto L_0251666C; else goto L_02516648;
|
|
L_02516648: ; // 0x2516648
|
|
/* 02516648 */ goto L_02516680;
|
|
L_0251664C: ; // 0x251664c
|
|
/* 0251664C */ _t455 = cpu->r[8] + 0x00000000u;
|
|
/* 0251664C */ cpu->r[0] = rbrew_read8(cpu->mem, _t455);
|
|
/* 02516650 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[21]);
|
|
/* 02516654 */ _t456 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516654 */ _t457 = _t456 & 0x00000001u;
|
|
/* 02516654 */ if (_t457) goto L_02516680; else goto L_02516658;
|
|
L_02516658: ; // 0x2516658
|
|
/* 02516658 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0251665C */ _t458 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251665C */ _t459 = _t458 & 0x00000001u;
|
|
/* 0251665C */ if (_t459) goto L_02516660; else goto L_02516680;
|
|
L_02516660: ; // 0x2516660
|
|
/* 02516660 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02516664 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02516668 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02516668 */ _t460 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02516668 */ _t461 = _t460 >> (0x00000002u & 31u);
|
|
/* 02516668 */ _t462 = _t461 & 0x00000001u;
|
|
/* 02516668 */ if (_t462) goto L_02516630; else goto L_0251666C;
|
|
L_0251666C: ; // 0x251666c
|
|
/* 0251666C */ _t463 = cpu->r[22] | cpu->r[22];
|
|
/* 0251666C */ cpu->r[4] = ~_t463;
|
|
/* 02516670 */ cpu->r[5] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02516674 */ cpu->r[10] = cpu->r[4] - cpu->r[5];
|
|
/* 02516674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02516678 */ _t464 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516678 */ _t465 = _t464 & 0x00000001u;
|
|
/* 02516678 */ if (_t465) goto L_025166AC; else goto L_0251667C;
|
|
L_0251667C: ; // 0x251667c
|
|
/* 0251667C */ goto L_0251669C;
|
|
L_02516680: ; // 0x2516680
|
|
/* 02516680 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02516684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[30]);
|
|
/* 02516688 */ _t466 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516688 */ _t467 = _t466 & 0x00000001u;
|
|
/* 02516688 */ if (_t467) goto L_0251668C; else goto L_025165C8;
|
|
L_0251668C: ; // 0x251668c
|
|
/* 0251668C */ cpu->r[4] = 0x00000000u;
|
|
/* 02516690 */ cpu->r[5] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02516694 */ cpu->r[10] = ~cpu->r[5];
|
|
/* 02516694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02516698 */ _t468 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516698 */ _t469 = _t468 & 0x00000001u;
|
|
/* 02516698 */ if (_t469) goto L_025166AC; else goto L_0251669C;
|
|
L_0251669C: ; // 0x251669c
|
|
/* 0251669C */ _t470 = cpu->r[28] + 0x000001F0u;
|
|
/* 0251669C */ rbrew_write32(cpu->mem, _t470, cpu->r[23]);
|
|
/* 025166A0 */ _t471 = cpu->r[28] + 0x000001F0u;
|
|
/* 025166A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t471);
|
|
/* 025166A4 */ _t472 = cpu->r[1] + 0x000000A0u;
|
|
/* 025166A4 */ rbrew_write32(cpu->mem, _t472, cpu->r[8]);
|
|
/* 025166A8 */ goto L_02516848;
|
|
L_025166AC: ; // 0x25166ac
|
|
/* 025166AC */ _t473 = cpu->r[26] + 0x00000004u;
|
|
/* 025166AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t473);
|
|
/* 025166B0 */ _t474 = cpu->r[1] + 0x00000080u;
|
|
/* 025166B0 */ rbrew_write32(cpu->mem, _t474, cpu->r[24]);
|
|
/* 025166B4 */ _t475 = cpu->r[1] + 0x00000084u;
|
|
/* 025166B4 */ rbrew_write32(cpu->mem, _t475, cpu->r[27]);
|
|
/* 025166B8 */ _t476 = cpu->r[6] + 0x00000014u;
|
|
/* 025166B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t476);
|
|
/* 025166BC */ cpu->ctr = cpu->r[7];
|
|
/* 025166C0 */ cpu->r[3] = cpu->r[26];
|
|
/* 025166C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025166C8 */ _t477 = cpu->r[26] + 0x00000000u;
|
|
/* 025166C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t477);
|
|
/* 025166CC */ _t478 = cpu->r[6] + 0x00000000u;
|
|
/* 025166CC */ cpu->r[8] = rbrew_read8(cpu->mem, _t478);
|
|
/* 025166D0 */ cpu->r[30] = 0x00000000u;
|
|
/* 025166D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 025166D8 */ cpu->r[7] = 0x00080000u;
|
|
/* 025166DC */ _t479 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025166DC */ _t480 = _t479 & 0x00000001u;
|
|
/* 025166DC */ if (_t480) goto L_02516704; else goto L_025166E0;
|
|
L_025166E0: ; // 0x25166e0
|
|
/* 025166E0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 025166E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 025166E8 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 025166EC */ _t481 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025166EC */ _t482 = _t481 & 0x00000001u;
|
|
/* 025166EC */ if (_t482) goto L_02516700; else goto L_025166F0;
|
|
L_025166F0: ; // 0x25166f0
|
|
/* 025166F0 */ _t483 = cpu->r[6] + 0x00000000u;
|
|
/* 025166F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t483);
|
|
/* 025166F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 025166F8 */ _t484 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025166F8 */ _t485 = _t484 & 0x00000001u;
|
|
/* 025166F8 */ if (_t485) goto L_025166FC; else goto L_025166E0;
|
|
L_025166FC: ; // 0x25166fc
|
|
/* 025166FC */ goto L_02516704;
|
|
L_02516700: ; // 0x2516700
|
|
/* 02516700 */ cpu->r[30] = 0x00000000u;
|
|
L_02516704: ; // 0x2516704
|
|
/* 02516704 */ _t486 = cpu->r[1] + 0x00000084u;
|
|
/* 02516704 */ cpu->r[10] = rbrew_read32(cpu->mem, _t486);
|
|
/* 02516708 */ _t487 = cpu->r[10] + 0x00000014u;
|
|
/* 02516708 */ cpu->r[11] = rbrew_read32(cpu->mem, _t487);
|
|
/* 0251670C */ cpu->ctr = cpu->r[11];
|
|
/* 02516710 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 02516714 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516718 */ _t488 = cpu->r[1] + 0x00000080u;
|
|
/* 02516718 */ cpu->r[4] = rbrew_read32(cpu->mem, _t488);
|
|
/* 0251671C */ _t489 = cpu->r[4] + 0x00000000u;
|
|
/* 0251671C */ cpu->r[12] = rbrew_read8(cpu->mem, _t489);
|
|
/* 02516720 */ cpu->r[31] = 0x00000000u;
|
|
/* 02516724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]);
|
|
/* 02516728 */ cpu->r[5] = 0x00080000u;
|
|
/* 0251672C */ _t490 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251672C */ _t491 = _t490 & 0x00000001u;
|
|
/* 0251672C */ if (_t491) goto L_02516754; else goto L_02516730;
|
|
L_02516730: ; // 0x2516730
|
|
/* 02516730 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 02516738 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 0251673C */ _t492 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251673C */ _t493 = _t492 & 0x00000001u;
|
|
/* 0251673C */ if (_t493) goto L_02516750; else goto L_02516740;
|
|
L_02516740: ; // 0x2516740
|
|
/* 02516740 */ _t494 = cpu->r[4] + 0x00000000u;
|
|
/* 02516740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t494);
|
|
/* 02516744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 02516748 */ _t495 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516748 */ _t496 = _t495 & 0x00000001u;
|
|
/* 02516748 */ if (_t496) goto L_0251674C; else goto L_02516730;
|
|
L_0251674C: ; // 0x251674c
|
|
/* 0251674C */ goto L_02516754;
|
|
L_02516750: ; // 0x2516750
|
|
/* 02516750 */ cpu->r[31] = 0x00000000u;
|
|
L_02516754: ; // 0x2516754
|
|
/* 02516754 */ cpu->r[30] = cpu->r[30] - cpu->r[31];
|
|
/* 02516754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02516758 */ cpu->r[23] = 0x00000000u;
|
|
/* 0251675C */ _t497 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251675C */ _t498 = _t497 & 0x00000001u;
|
|
/* 0251675C */ if (_t498) goto L_02516828; else goto L_02516760;
|
|
L_02516760: ; // 0x2516760
|
|
/* 02516760 */ cpu->r[22] = cpu->r[29];
|
|
L_02516764: ; // 0x2516764
|
|
/* 02516764 */ _t499 = cpu->r[26] + 0x00000000u;
|
|
/* 02516764 */ cpu->r[7] = rbrew_read32(cpu->mem, _t499);
|
|
/* 02516768 */ cpu->r[21] = cpu->r[31];
|
|
/* 0251676C */ _t500 = cpu->r[1] + 0x00000044u;
|
|
/* 0251676C */ rbrew_write32(cpu->mem, _t500, cpu->r[27]);
|
|
/* 02516770 */ cpu->r[6] = cpu->r[7] + cpu->r[23];
|
|
/* 02516774 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02516778 */ _t501 = cpu->r[1] + 0x00000040u;
|
|
/* 02516778 */ rbrew_write32(cpu->mem, _t501, cpu->r[6]);
|
|
/* 0251677C */ Gambit_fn_02518B68(cpu);
|
|
/* 02516780 */ _t502 = cpu->r[1] + 0x00000044u;
|
|
/* 02516780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t502);
|
|
/* 02516784 */ _t503 = cpu->r[8] + 0x00000014u;
|
|
/* 02516784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t503);
|
|
/* 02516788 */ cpu->ctr = cpu->r[9];
|
|
/* 0251678C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02516790 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516794 */ _t504 = cpu->r[1] + 0x00000084u;
|
|
/* 02516794 */ cpu->r[11] = rbrew_read32(cpu->mem, _t504);
|
|
/* 02516798 */ _t505 = cpu->r[11] + 0x00000014u;
|
|
/* 02516798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t505);
|
|
/* 0251679C */ cpu->ctr = cpu->r[12];
|
|
/* 025167A0 */ _t506 = cpu->r[1] + 0x00000040u;
|
|
/* 025167A0 */ cpu->r[20] = rbrew_read32(cpu->mem, _t506);
|
|
/* 025167A4 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 025167A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025167AC */ _t507 = cpu->r[1] + 0x00000080u;
|
|
/* 025167AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t507);
|
|
/* 025167B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[0]);
|
|
/* 025167B4 */ _t508 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025167B4 */ _t509 = _t508 & 0x00000001u;
|
|
/* 025167B4 */ if (_t509) goto L_02516808; else goto L_025167B8;
|
|
L_025167B8: ; // 0x25167b8
|
|
/* 025167B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 025167BC */ _t510 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025167BC */ _t511 = _t510 & 0x00000001u;
|
|
/* 025167BC */ if (_t511) goto L_025167C0; else goto L_02516808;
|
|
L_025167C0: ; // 0x25167c0
|
|
/* 025167C0 */ _t512 = cpu->r[1] + 0x00000080u;
|
|
/* 025167C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t512);
|
|
/* 025167C4 */ cpu->ctr = cpu->r[21];
|
|
/* 025167C8 */ _t513 = cpu->r[1] + 0x00000040u;
|
|
/* 025167C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t513);
|
|
L_025167CC: ; // 0x25167cc
|
|
/* 025167CC */ _t514 = cpu->r[12] + 0x00000000u;
|
|
/* 025167CC */ cpu->r[6] = rbrew_read8(cpu->mem, _t514);
|
|
/* 025167D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[22]);
|
|
/* 025167D4 */ _t515 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025167D4 */ _t516 = _t515 & 0x00000001u;
|
|
/* 025167D4 */ if (_t516) goto L_025167D8; else goto L_025167E8;
|
|
L_025167D8: ; // 0x25167d8
|
|
/* 025167D8 */ _t517 = cpu->r[11] + 0x00000000u;
|
|
/* 025167D8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t517);
|
|
/* 025167DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]);
|
|
/* 025167E0 */ _t518 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025167E0 */ _t519 = _t518 & 0x00000001u;
|
|
/* 025167E0 */ if (_t519) goto L_02516808; else goto L_025167E4;
|
|
L_025167E4: ; // 0x25167e4
|
|
/* 025167E4 */ goto L_0251681C;
|
|
L_025167E8: ; // 0x25167e8
|
|
/* 025167E8 */ _t520 = cpu->r[11] + 0x00000000u;
|
|
/* 025167E8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t520);
|
|
/* 025167EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[22]);
|
|
/* 025167F0 */ _t521 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025167F0 */ _t522 = _t521 & 0x00000001u;
|
|
/* 025167F0 */ if (_t522) goto L_0251681C; else goto L_025167F4;
|
|
L_025167F4: ; // 0x25167f4
|
|
/* 025167F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 025167F8 */ _t523 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025167F8 */ _t524 = _t523 & 0x00000001u;
|
|
/* 025167F8 */ if (_t524) goto L_025167FC; else goto L_0251681C;
|
|
L_025167FC: ; // 0x25167fc
|
|
/* 025167FC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02516800 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02516804 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02516804 */ _t525 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02516804 */ _t526 = _t525 >> (0x00000002u & 31u);
|
|
/* 02516804 */ _t527 = _t526 & 0x00000001u;
|
|
/* 02516804 */ if (_t527) goto L_025167CC; else goto L_02516808;
|
|
L_02516808: ; // 0x2516808
|
|
/* 02516808 */ _t528 = cpu->r[23] | cpu->r[23];
|
|
/* 02516808 */ cpu->r[5] = ~_t528;
|
|
/* 0251680C */ cpu->r[6] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02516810 */ cpu->r[8] = cpu->r[5] - cpu->r[6];
|
|
/* 02516810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02516814 */ _t529 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516814 */ _t530 = _t529 & 0x00000001u;
|
|
/* 02516814 */ if (_t530) goto L_02516848; else goto L_02516818;
|
|
L_02516818: ; // 0x2516818
|
|
/* 02516818 */ goto L_02516838;
|
|
L_0251681C: ; // 0x251681c
|
|
/* 0251681C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02516820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[30]);
|
|
/* 02516824 */ _t531 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516824 */ _t532 = _t531 & 0x00000001u;
|
|
/* 02516824 */ if (_t532) goto L_02516828; else goto L_02516764;
|
|
L_02516828: ; // 0x2516828
|
|
/* 02516828 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251682C */ cpu->r[6] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02516830 */ cpu->r[8] = ~cpu->r[6];
|
|
/* 02516830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02516834 */ _t533 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516834 */ _t534 = _t533 & 0x00000001u;
|
|
/* 02516834 */ if (_t534) goto L_02516848; else goto L_02516838;
|
|
L_02516838: ; // 0x2516838
|
|
/* 02516838 */ cpu->r[7] = 0x00000001u;
|
|
/* 0251683C */ _t535 = cpu->r[28] + 0x000001F0u;
|
|
/* 0251683C */ rbrew_write32(cpu->mem, _t535, cpu->r[7]);
|
|
/* 02516840 */ _t536 = cpu->r[28] + 0x000001F0u;
|
|
/* 02516840 */ cpu->r[8] = rbrew_read32(cpu->mem, _t536);
|
|
/* 02516844 */ _t537 = cpu->r[1] + 0x000000A4u;
|
|
/* 02516844 */ rbrew_write32(cpu->mem, _t537, cpu->r[8]);
|
|
L_02516848: ; // 0x2516848
|
|
/* 02516848 */ _t538 = cpu->r[28] + 0x00000224u;
|
|
/* 02516848 */ cpu->r[30] = rbrew_read32(cpu->mem, _t538);
|
|
/* 0251684C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02516850 */ _t539 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516850 */ rbrew_write32(cpu->mem, _t539, cpu->r[27]);
|
|
/* 02516854 */ cpu->r[9] = cpu->r[9] + 0x00000484u;
|
|
/* 02516858 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0251685C */ _t540 = cpu->r[1] + 0x00000048u;
|
|
/* 0251685C */ rbrew_write32(cpu->mem, _t540, cpu->r[9]);
|
|
/* 02516860 */ Gambit_fn_02518B68(cpu);
|
|
/* 02516864 */ _t541 = cpu->r[1] + 0x00000048u;
|
|
/* 02516864 */ cpu->r[9] = rbrew_read32(cpu->mem, _t541);
|
|
/* 02516868 */ _t542 = cpu->r[9] + 0x00000000u;
|
|
/* 02516868 */ cpu->r[10] = rbrew_read8(cpu->mem, _t542);
|
|
/* 0251686C */ cpu->r[31] = 0x00000000u;
|
|
/* 02516870 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[29]);
|
|
/* 02516874 */ cpu->r[0] = 0x00080000u;
|
|
/* 02516878 */ _t543 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516878 */ _t544 = _t543 & 0x00000001u;
|
|
/* 02516878 */ if (_t544) goto L_025168A0; else goto L_0251687C;
|
|
L_0251687C: ; // 0x251687c
|
|
/* 0251687C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02516884 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02516888 */ _t545 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516888 */ _t546 = _t545 & 0x00000001u;
|
|
/* 02516888 */ if (_t546) goto L_0251689C; else goto L_0251688C;
|
|
L_0251688C: ; // 0x251688c
|
|
/* 0251688C */ _t547 = cpu->r[9] + 0x00000000u;
|
|
/* 0251688C */ cpu->r[11] = rbrew_read8(cpu->mem, _t547);
|
|
/* 02516890 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[29]);
|
|
/* 02516894 */ _t548 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516894 */ _t549 = _t548 & 0x00000001u;
|
|
/* 02516894 */ if (_t549) goto L_02516898; else goto L_0251687C;
|
|
L_02516898: ; // 0x2516898
|
|
/* 02516898 */ goto L_025168A0;
|
|
L_0251689C: ; // 0x251689c
|
|
/* 0251689C */ cpu->r[31] = 0x00000000u;
|
|
L_025168A0: ; // 0x25168a0
|
|
/* 025168A0 */ _t550 = cpu->r[28] + 0x0000022Cu;
|
|
/* 025168A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t550);
|
|
/* 025168A4 */ _t551 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025168A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t551);
|
|
/* 025168A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 025168AC */ _t552 = cpu->r[12] + 0x00000014u;
|
|
/* 025168AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t552);
|
|
/* 025168B0 */ _t553 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025168B0 */ _t554 = _t553 & 0x00000001u;
|
|
/* 025168B0 */ if (_t554) goto L_025168B8; else goto L_025168B4;
|
|
L_025168B4: ; // 0x25168b4
|
|
/* 025168B4 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_025168B8: ; // 0x25168b8
|
|
/* 025168B8 */ cpu->ctr = cpu->r[0];
|
|
/* 025168BC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 025168C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025168C4 */ _t555 = cpu->r[1] + 0x00000048u;
|
|
/* 025168C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t555);
|
|
/* 025168C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 025168CC */ cpu->r[5] = cpu->r[31];
|
|
/* 025168D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 025168D4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 025168D8 */ _t556 = cpu->r[30] + cpu->r[31];
|
|
/* 025168D8 */ rbrew_write8(cpu->mem, _t556, (uint8_t)cpu->r[29]);
|
|
/* 025168DC */ _t557 = cpu->r[28] + 0x000001E8u;
|
|
/* 025168DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t557);
|
|
/* 025168E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 025168E4 */ _t558 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025168E4 */ _t559 = _t558 & 0x00000001u;
|
|
/* 025168E4 */ if (_t559) goto L_025168E8; else goto L_02516A00;
|
|
L_025168E8: ; // 0x25168e8
|
|
/* 025168E8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025168EC */ _t560 = cpu->r[1] + 0x0000008Cu;
|
|
/* 025168EC */ rbrew_write32(cpu->mem, _t560, cpu->r[27]);
|
|
/* 025168F0 */ cpu->r[5] = cpu->r[5] + 0x0000048Cu;
|
|
/* 025168F4 */ _t561 = cpu->r[28] + 0x00000228u;
|
|
/* 025168F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t561);
|
|
/* 025168F8 */ _t562 = cpu->r[1] + 0x00000088u;
|
|
/* 025168F8 */ rbrew_write32(cpu->mem, _t562, cpu->r[5]);
|
|
/* 025168FC */ _t563 = cpu->r[6] + 0x00000014u;
|
|
/* 025168FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t563);
|
|
/* 02516900 */ cpu->ctr = cpu->r[7];
|
|
/* 02516904 */ _t564 = cpu->r[28] + 0x00000224u;
|
|
/* 02516904 */ cpu->r[26] = rbrew_read32(cpu->mem, _t564);
|
|
/* 02516908 */ cpu->r[3] = cpu->r[28] + 0x00000224u;
|
|
/* 0251690C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516910 */ _t565 = cpu->r[28] + 0x00000224u;
|
|
/* 02516910 */ cpu->r[7] = rbrew_read32(cpu->mem, _t565);
|
|
/* 02516914 */ _t566 = cpu->r[7] + 0x00000000u;
|
|
/* 02516914 */ cpu->r[0] = rbrew_read8(cpu->mem, _t566);
|
|
/* 02516918 */ cpu->r[30] = 0x00000000u;
|
|
/* 0251691C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 02516920 */ cpu->r[8] = 0x00080000u;
|
|
/* 02516924 */ _t567 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516924 */ _t568 = _t567 & 0x00000001u;
|
|
/* 02516924 */ if (_t568) goto L_0251694C; else goto L_02516928;
|
|
L_02516928: ; // 0x2516928
|
|
/* 02516928 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0251692C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02516930 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02516934 */ _t569 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516934 */ _t570 = _t569 & 0x00000001u;
|
|
/* 02516934 */ if (_t570) goto L_02516948; else goto L_02516938;
|
|
L_02516938: ; // 0x2516938
|
|
/* 02516938 */ _t571 = cpu->r[7] + 0x00000000u;
|
|
/* 02516938 */ cpu->r[9] = rbrew_read8(cpu->mem, _t571);
|
|
/* 0251693C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]);
|
|
/* 02516940 */ _t572 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516940 */ _t573 = _t572 & 0x00000001u;
|
|
/* 02516940 */ if (_t573) goto L_02516944; else goto L_02516928;
|
|
L_02516944: ; // 0x2516944
|
|
/* 02516944 */ goto L_0251694C;
|
|
L_02516948: ; // 0x2516948
|
|
/* 02516948 */ cpu->r[30] = 0x00000000u;
|
|
L_0251694C: ; // 0x251694c
|
|
/* 0251694C */ _t574 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0251694C */ cpu->r[10] = rbrew_read32(cpu->mem, _t574);
|
|
/* 02516950 */ cpu->r[22] = cpu->r[30];
|
|
/* 02516950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02516954 */ _t575 = cpu->r[10] + 0x00000014u;
|
|
/* 02516954 */ cpu->r[11] = rbrew_read32(cpu->mem, _t575);
|
|
/* 02516958 */ _t576 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516958 */ _t577 = _t576 & 0x00000001u;
|
|
/* 02516958 */ if (_t577) goto L_0251695C; else goto L_02516960;
|
|
L_0251695C: ; // 0x251695c
|
|
/* 0251695C */ cpu->r[22] = 0x00000000u;
|
|
L_02516960: ; // 0x2516960
|
|
/* 02516960 */ cpu->ctr = cpu->r[11];
|
|
/* 02516964 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 02516968 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251696C */ _t578 = cpu->r[1] + 0x00000088u;
|
|
/* 0251696C */ cpu->r[5] = rbrew_read32(cpu->mem, _t578);
|
|
/* 02516970 */ _t579 = cpu->r[5] + 0x00000000u;
|
|
/* 02516970 */ cpu->r[12] = rbrew_read8(cpu->mem, _t579);
|
|
/* 02516974 */ cpu->r[31] = 0x00000000u;
|
|
/* 02516978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]);
|
|
/* 0251697C */ cpu->r[6] = 0x00080000u;
|
|
/* 02516980 */ _t580 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516980 */ _t581 = _t580 & 0x00000001u;
|
|
/* 02516980 */ if (_t581) goto L_025169A8; else goto L_02516984;
|
|
L_02516984: ; // 0x2516984
|
|
/* 02516984 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0251698C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02516990 */ _t582 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516990 */ _t583 = _t582 & 0x00000001u;
|
|
/* 02516990 */ if (_t583) goto L_025169A4; else goto L_02516994;
|
|
L_02516994: ; // 0x2516994
|
|
/* 02516994 */ _t584 = cpu->r[5] + 0x00000000u;
|
|
/* 02516994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t584);
|
|
/* 02516998 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0251699C */ _t585 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251699C */ _t586 = _t585 & 0x00000001u;
|
|
/* 0251699C */ if (_t586) goto L_025169A0; else goto L_02516984;
|
|
L_025169A0: ; // 0x25169a0
|
|
/* 025169A0 */ goto L_025169A8;
|
|
L_025169A4: ; // 0x25169a4
|
|
/* 025169A4 */ cpu->r[31] = 0x00000000u;
|
|
L_025169A8: ; // 0x25169a8
|
|
/* 025169A8 */ _t587 = cpu->r[28] + 0x0000022Cu;
|
|
/* 025169A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t587);
|
|
/* 025169AC */ cpu->r[5] = cpu->r[8] - cpu->r[22];
|
|
/* 025169B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 025169B4 */ _t588 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025169B4 */ _t589 = _t588 & 0x00000001u;
|
|
/* 025169B4 */ if (_t589) goto L_025169BC; else goto L_025169B8;
|
|
L_025169B8: ; // 0x25169b8
|
|
/* 025169B8 */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_025169BC: ; // 0x25169bc
|
|
/* 025169BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025169C0 */ _t590 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025169C0 */ _t591 = _t590 & 0x00000001u;
|
|
/* 025169C0 */ if (_t591) goto L_025169C4; else goto L_02516A00;
|
|
L_025169C4: ; // 0x25169c4
|
|
/* 025169C4 */ _t592 = cpu->r[1] + 0x0000008Cu;
|
|
/* 025169C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t592);
|
|
/* 025169C8 */ _t593 = cpu->r[4] + 0x00000014u;
|
|
/* 025169C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t593);
|
|
/* 025169CC */ cpu->ctr = cpu->r[5];
|
|
/* 025169D0 */ cpu->r[23] = cpu->r[26] + cpu->r[22];
|
|
/* 025169D4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 025169D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025169DC */ _t594 = cpu->r[1] + 0x00000088u;
|
|
/* 025169DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t594);
|
|
/* 025169E0 */ cpu->r[6] = 0x00000000u;
|
|
/* 025169E4 */ cpu->r[5] = cpu->r[31];
|
|
/* 025169E8 */ cpu->r[3] = cpu->r[23];
|
|
/* 025169EC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 025169F0 */ cpu->r[7] = cpu->r[22] + cpu->r[31];
|
|
/* 025169F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[30]);
|
|
/* 025169F8 */ _t595 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025169F8 */ _t596 = _t595 & 0x00000001u;
|
|
/* 025169F8 */ if (_t596) goto L_025169FC; else goto L_02516A00;
|
|
L_025169FC: ; // 0x25169fc
|
|
/* 025169FC */ _t597 = cpu->r[26] + cpu->r[7];
|
|
/* 025169FC */ rbrew_write8(cpu->mem, _t597, (uint8_t)cpu->r[29]);
|
|
L_02516A00: ; // 0x2516a00
|
|
/* 02516A00 */ _t598 = cpu->r[28] + 0x000001F0u;
|
|
/* 02516A00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t598);
|
|
/* 02516A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02516A08 */ _t599 = cpu->r[28] + 0x00000228u;
|
|
/* 02516A08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t599);
|
|
/* 02516A0C */ _t600 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516A0C */ _t601 = _t600 & 0x00000001u;
|
|
/* 02516A0C */ if (_t601) goto L_02516A10; else goto L_02516A14;
|
|
L_02516A10: ; // 0x2516a10
|
|
/* 02516A10 */ cpu->r[24] = cpu->r[25];
|
|
L_02516A14: ; // 0x2516a14
|
|
/* 02516A14 */ _t602 = cpu->r[1] + 0x00000048u;
|
|
/* 02516A14 */ rbrew_write32(cpu->mem, _t602, cpu->r[24]);
|
|
/* 02516A18 */ _t603 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516A18 */ rbrew_write32(cpu->mem, _t603, cpu->r[27]);
|
|
/* 02516A1C */ _t604 = cpu->r[7] + 0x00000014u;
|
|
/* 02516A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t604);
|
|
/* 02516A20 */ cpu->ctr = cpu->r[9];
|
|
/* 02516A24 */ _t605 = cpu->r[28] + 0x00000224u;
|
|
/* 02516A24 */ cpu->r[27] = rbrew_read32(cpu->mem, _t605);
|
|
/* 02516A28 */ cpu->r[3] = cpu->r[28] + 0x00000224u;
|
|
/* 02516A2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516A30 */ _t606 = cpu->r[28] + 0x00000224u;
|
|
/* 02516A30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t606);
|
|
/* 02516A34 */ _t607 = cpu->r[12] + 0x00000000u;
|
|
/* 02516A34 */ cpu->r[0] = rbrew_read8(cpu->mem, _t607);
|
|
/* 02516A38 */ cpu->r[31] = 0x00000000u;
|
|
/* 02516A3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 02516A40 */ cpu->r[0] = 0x00080000u;
|
|
/* 02516A44 */ _t608 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516A44 */ _t609 = _t608 & 0x00000001u;
|
|
/* 02516A44 */ if (_t609) goto L_02516A6C; else goto L_02516A48;
|
|
L_02516A48: ; // 0x2516a48
|
|
/* 02516A48 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02516A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02516A50 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02516A54 */ _t610 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516A54 */ _t611 = _t610 & 0x00000001u;
|
|
/* 02516A54 */ if (_t611) goto L_02516A68; else goto L_02516A58;
|
|
L_02516A58: ; // 0x2516a58
|
|
/* 02516A58 */ _t612 = cpu->r[12] + 0x00000000u;
|
|
/* 02516A58 */ cpu->r[11] = rbrew_read8(cpu->mem, _t612);
|
|
/* 02516A5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[29]);
|
|
/* 02516A60 */ _t613 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516A60 */ _t614 = _t613 & 0x00000001u;
|
|
/* 02516A60 */ if (_t614) goto L_02516A64; else goto L_02516A48;
|
|
L_02516A64: ; // 0x2516a64
|
|
/* 02516A64 */ goto L_02516A6C;
|
|
L_02516A68: ; // 0x2516a68
|
|
/* 02516A68 */ cpu->r[31] = 0x00000000u;
|
|
L_02516A6C: ; // 0x2516a6c
|
|
/* 02516A6C */ _t615 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516A6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t615);
|
|
/* 02516A70 */ cpu->r[26] = cpu->r[31];
|
|
/* 02516A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02516A74 */ _t616 = cpu->r[12] + 0x00000014u;
|
|
/* 02516A74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t616);
|
|
/* 02516A78 */ _t617 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516A78 */ _t618 = _t617 & 0x00000001u;
|
|
/* 02516A78 */ if (_t618) goto L_02516A7C; else goto L_02516A80;
|
|
L_02516A7C: ; // 0x2516a7c
|
|
/* 02516A7C */ cpu->r[26] = 0x00000000u;
|
|
L_02516A80: ; // 0x2516a80
|
|
/* 02516A80 */ cpu->ctr = cpu->r[4];
|
|
/* 02516A84 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02516A88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516A8C */ _t619 = cpu->r[1] + 0x00000048u;
|
|
/* 02516A8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t619);
|
|
/* 02516A90 */ _t620 = cpu->r[10] + 0x00000000u;
|
|
/* 02516A90 */ cpu->r[5] = rbrew_read8(cpu->mem, _t620);
|
|
/* 02516A94 */ cpu->r[30] = 0x00000000u;
|
|
/* 02516A98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 02516A9C */ cpu->r[0] = 0x00080000u;
|
|
/* 02516AA0 */ _t621 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516AA0 */ _t622 = _t621 & 0x00000001u;
|
|
/* 02516AA0 */ if (_t622) goto L_02516AC8; else goto L_02516AA4;
|
|
L_02516AA4: ; // 0x2516aa4
|
|
/* 02516AA4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02516AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02516AAC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02516AB0 */ _t623 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516AB0 */ _t624 = _t623 & 0x00000001u;
|
|
/* 02516AB0 */ if (_t624) goto L_02516AC4; else goto L_02516AB4;
|
|
L_02516AB4: ; // 0x2516ab4
|
|
/* 02516AB4 */ _t625 = cpu->r[10] + 0x00000000u;
|
|
/* 02516AB4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t625);
|
|
/* 02516AB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]);
|
|
/* 02516ABC */ _t626 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516ABC */ _t627 = _t626 & 0x00000001u;
|
|
/* 02516ABC */ if (_t627) goto L_02516AC0; else goto L_02516AA4;
|
|
L_02516AC0: ; // 0x2516ac0
|
|
/* 02516AC0 */ goto L_02516AC8;
|
|
L_02516AC4: ; // 0x2516ac4
|
|
/* 02516AC4 */ cpu->r[30] = 0x00000000u;
|
|
L_02516AC8: ; // 0x2516ac8
|
|
/* 02516AC8 */ _t628 = cpu->r[28] + 0x0000022Cu;
|
|
/* 02516AC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t628);
|
|
/* 02516ACC */ cpu->r[6] = cpu->r[8] - cpu->r[26];
|
|
/* 02516AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 02516AD4 */ _t629 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516AD4 */ _t630 = _t629 & 0x00000001u;
|
|
/* 02516AD4 */ if (_t630) goto L_02516ADC; else goto L_02516AD8;
|
|
L_02516AD8: ; // 0x2516ad8
|
|
/* 02516AD8 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02516ADC: ; // 0x2516adc
|
|
/* 02516ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02516AE0 */ _t631 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516AE0 */ _t632 = _t631 & 0x00000001u;
|
|
/* 02516AE0 */ if (_t632) goto L_02516AE4; else goto L_02516B20;
|
|
L_02516AE4: ; // 0x2516ae4
|
|
/* 02516AE4 */ _t633 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516AE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t633);
|
|
/* 02516AE8 */ _t634 = cpu->r[7] + 0x00000014u;
|
|
/* 02516AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t634);
|
|
/* 02516AEC */ cpu->ctr = cpu->r[0];
|
|
/* 02516AF0 */ cpu->r[28] = cpu->r[27] + cpu->r[26];
|
|
/* 02516AF4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02516AF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516AFC */ _t635 = cpu->r[1] + 0x00000048u;
|
|
/* 02516AFC */ cpu->r[4] = rbrew_read32(cpu->mem, _t635);
|
|
/* 02516B00 */ cpu->r[6] = 0x00000000u;
|
|
/* 02516B04 */ cpu->r[5] = cpu->r[30];
|
|
/* 02516B08 */ cpu->r[3] = cpu->r[28];
|
|
/* 02516B0C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02516B10 */ cpu->r[8] = cpu->r[26] + cpu->r[30];
|
|
/* 02516B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[31]);
|
|
/* 02516B18 */ _t636 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516B18 */ _t637 = _t636 & 0x00000001u;
|
|
/* 02516B18 */ if (_t637) goto L_02516B1C; else goto L_02516B20;
|
|
L_02516B1C: ; // 0x2516b1c
|
|
/* 02516B1C */ _t638 = cpu->r[27] + cpu->r[8];
|
|
/* 02516B1C */ rbrew_write8(cpu->mem, _t638, (uint8_t)cpu->r[29]);
|
|
L_02516B20: ; // 0x2516b20
|
|
/* 02516B20 */ /* nop */
|
|
/* 02516B24 */ _t639 = cpu->r[1] + 0x000000E4u;
|
|
/* 02516B24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t639);
|
|
/* 02516B28 */ cpu->lr = cpu->r[0];
|
|
/* 02516B2C */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 02516B30 */ return;
|
|
}
|
|
|
|
// fn_02516B34 @ 0x2516b34
|
|
void Gambit_fn_02516B34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95;
|
|
|
|
L_02516B34: ; // 0x2516b34
|
|
/* 02516B34 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 02516B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02516B34 */ cpu->r[1] = _t0;
|
|
/* 02516B38 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02516B38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02516B3C */ cpu->r[0] = cpu->lr;
|
|
/* 02516B40 */ /* nop */
|
|
/* 02516B44 */ _t2 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02516B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02516B48 */ /* nop */
|
|
/* 02516B4C */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 02516B4C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02516B50 */ cpu->r[29] = cpu->r[3];
|
|
/* 02516B54 */ cpu->r[3] = cpu->r[1] + 0x00000009u;
|
|
/* 02516B58 */ cpu->r[30] = cpu->r[4];
|
|
/* 02516B5C */ Gambit_fn_024F6710(cpu);
|
|
/* 02516B60 */ cpu->r[5] = cpu->r[3];
|
|
/* 02516B64 */ cpu->r[3] = cpu->r[29];
|
|
/* 02516B68 */ cpu->r[4] = cpu->r[30];
|
|
/* 02516B6C */ Gambit_fn_024F4798(cpu);
|
|
/* 02516B70 */ cpu->r[31] = 0x100C0000u;
|
|
/* 02516B74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02516B78 */ cpu->r[31] = cpu->r[31] + 0x000002BCu;
|
|
/* 02516B7C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02516B80 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516B80 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02516B84 */ cpu->r[7] = cpu->r[7] + 0x000004D0u;
|
|
/* 02516B88 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 02516B8C */ _t5 = cpu->r[1] + 0x00000048u;
|
|
/* 02516B8C */ rbrew_write32(cpu->mem, _t5, cpu->r[7]);
|
|
/* 02516B90 */ Gambit_fn_020F08E8(cpu);
|
|
/* 02516B94 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 02516B98 */ _t6 = cpu->r[29] + 0x00000050u;
|
|
/* 02516B98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02516B9C */ cpu->r[0] = cpu->r[3] - cpu->r[0];
|
|
/* 02516BA0 */ cpu->r[4] = cpu->r[9] + 0x00000030u;
|
|
/* 02516BA4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02516BA8 */ _t7 = cpu->r[29] + 0x00000218u;
|
|
/* 02516BA8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 02516BAC */ Gambit_fn_02515A94(cpu);
|
|
/* 02516BB0 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02516BB4 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02516BB4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02516BB8 */ _t9 = cpu->r[5] + 0x0000046Cu;
|
|
/* 02516BB8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02516BBC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516BC0 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02516BC4 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02516BC4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 02516BC8 */ cpu->r[3] = cpu->r[27];
|
|
/* 02516BCC */ cpu->r[5] = cpu->r[5] + 0x000004B8u;
|
|
/* 02516BD0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516BD0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[31]);
|
|
/* 02516BD4 */ cpu->r[28] = cpu->r[1] + 0x00000010u;
|
|
/* 02516BD8 */ cpu->r[30] = cpu->r[1] + 0x00000014u;
|
|
/* 02516BDC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02516BDC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 02516BE0 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 02516BE4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02516BE8 */ cpu->r[4] = cpu->r[28];
|
|
/* 02516BEC */ cpu->r[3] = cpu->r[27];
|
|
/* 02516BF0 */ cpu->r[5] = cpu->r[5] + 0x000004C0u;
|
|
/* 02516BF4 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 02516BF8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02516BFC */ cpu->r[4] = cpu->r[30];
|
|
/* 02516C00 */ cpu->r[3] = cpu->r[27];
|
|
/* 02516C04 */ cpu->r[5] = cpu->r[5] + 0x000004C8u;
|
|
/* 02516C08 */ Gambit_fn_027DBBEC(cpu);
|
|
/* 02516C0C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516C10 */ Gambit_fn_02C69350(cpu);
|
|
/* 02516C14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 02516C18 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516C18 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02516C18 */ if (_t14) goto L_02516CC8; else goto L_02516C1C;
|
|
L_02516C1C: ; // 0x2516c1c
|
|
/* 02516C1C */ cpu->r[10] = 0x00000003u;
|
|
/* 02516C20 */ cpu->r[6] = 0x00000000u;
|
|
/* 02516C24 */ cpu->r[0] = 0x00000001u;
|
|
/* 02516C28 */ cpu->ctr = cpu->r[10];
|
|
/* 02516C2C */ _t15 = cpu->r[29] + 0x000001F8u;
|
|
/* 02516C2C */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
L_02516C30: ; // 0x2516c30
|
|
/* 02516C30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000001u);
|
|
/* 02516C34 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516C34 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02516C34 */ if (_t17) goto L_02516C44; else goto L_02516C38;
|
|
L_02516C38: ; // 0x2516c38
|
|
/* 02516C38 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516C38 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02516C38 */ if (_t19) goto L_02516C58; else goto L_02516C3C;
|
|
L_02516C3C: ; // 0x2516c3c
|
|
/* 02516C3C */ cpu->r[11] = cpu->r[29] + 0x00000204u;
|
|
/* 02516C40 */ goto L_02516C5C;
|
|
L_02516C44: ; // 0x2516c44
|
|
/* 02516C44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000001u);
|
|
/* 02516C48 */ cpu->r[11] = cpu->r[29] + 0x000001FCu;
|
|
/* 02516C4C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516C4C */ _t21 = _t20 & 0x00000001u;
|
|
/* 02516C4C */ if (_t21) goto L_02516C70; else goto L_02516C50;
|
|
L_02516C50: ; // 0x2516c50
|
|
/* 02516C50 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516C50 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02516C50 */ if (_t23) goto L_02516C9C; else goto L_02516C54;
|
|
L_02516C54: ; // 0x2516c54
|
|
/* 02516C54 */ goto L_02516C68;
|
|
L_02516C58: ; // 0x2516c58
|
|
/* 02516C58 */ cpu->r[11] = cpu->r[29] + 0x00000200u;
|
|
L_02516C5C: ; // 0x2516c5c
|
|
/* 02516C5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000001u);
|
|
/* 02516C60 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516C60 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02516C60 */ if (_t25) goto L_02516C70; else goto L_02516C64;
|
|
L_02516C64: ; // 0x2516c64
|
|
/* 02516C64 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516C64 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02516C64 */ if (_t27) goto L_02516C9C; else goto L_02516C68;
|
|
L_02516C68: ; // 0x2516c68
|
|
/* 02516C68 */ cpu->r[5] = cpu->r[30];
|
|
/* 02516C6C */ goto L_02516CA0;
|
|
L_02516C70: ; // 0x2516c70
|
|
/* 02516C70 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02516C74 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516C74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02516C78 */ _t29 = cpu->r[12] + 0x000004ACu;
|
|
/* 02516C78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02516C7C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02516C80 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02516C84 */ _t30 = cpu->r[10] + 0x000004B0u;
|
|
/* 02516C84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02516C88 */ cpu->f[0] = cpu->f[12] / cpu->f[0];
|
|
/* 02516C8C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02516C90 */ _t31 = cpu->r[11] + 0x00000000u;
|
|
/* 02516C90 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 02516C94 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02516C94 */ _t32 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02516C94 */ _t33 = _t32 >> (0x00000002u & 31u);
|
|
/* 02516C94 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02516C94 */ if (_t34) goto L_02516C30; else goto L_02516C98;
|
|
L_02516C98: ; // 0x2516c98
|
|
/* 02516C98 */ goto L_02516CC8;
|
|
L_02516C9C: ; // 0x2516c9c
|
|
/* 02516C9C */ cpu->r[5] = cpu->r[28];
|
|
L_02516CA0: ; // 0x2516ca0
|
|
/* 02516CA0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02516CA4 */ _t35 = cpu->r[5] + 0x00000000u;
|
|
/* 02516CA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02516CA8 */ _t36 = cpu->r[12] + 0x000004ACu;
|
|
/* 02516CA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02516CAC */ cpu->r[10] = 0x100C0000u;
|
|
/* 02516CB0 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02516CB4 */ _t37 = cpu->r[10] + 0x000004B0u;
|
|
/* 02516CB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02516CB8 */ cpu->f[0] = cpu->f[12] / cpu->f[0];
|
|
/* 02516CBC */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02516CC0 */ _t38 = cpu->r[11] + 0x00000000u;
|
|
/* 02516CC0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 02516CC4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02516CC4 */ _t39 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02516CC4 */ _t40 = _t39 >> (0x00000002u & 31u);
|
|
/* 02516CC4 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02516CC4 */ if (_t41) goto L_02516C30; else goto L_02516CC8;
|
|
L_02516CC8: ; // 0x2516cc8
|
|
/* 02516CC8 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02516CCC */ Gambit_fn_025054E0(cpu);
|
|
/* 02516CD0 */ _t42 = cpu->r[29] + 0x000001F8u;
|
|
/* 02516CD0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02516CD4 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02516CD8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02516CDC */ _t43 = cpu->r[1] + 0x00000038u;
|
|
/* 02516CDC */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
/* 02516CE0 */ cpu->r[12] = cpu->r[7] ^ 0x00000001u;
|
|
/* 02516CE4 */ _t44 = cpu->r[1] + 0x00000041u;
|
|
/* 02516CE4 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[0]);
|
|
/* 02516CE8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02516CEC */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 02516CEC */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[12]);
|
|
/* 02516CF0 */ Gambit_fn_02503A94(cpu);
|
|
/* 02516CF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02516CF8 */ _t46 = cpu->r[29] + 0x000001F4u;
|
|
/* 02516CF8 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 02516CFC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516CFC */ _t48 = _t47 & 0x00000001u;
|
|
/* 02516CFC */ if (_t48) goto L_02516D50; else goto L_02516D00;
|
|
L_02516D00: ; // 0x2516d00
|
|
/* 02516D00 */ cpu->r[4] = cpu->r[3] + 0x00000008u;
|
|
/* 02516D04 */ cpu->r[3] = cpu->r[29];
|
|
/* 02516D08 */ Gambit_fn_02000834(cpu);
|
|
/* 02516D0C */ _t49 = cpu->r[29] + 0x000001ECu;
|
|
/* 02516D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02516D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02516D14 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516D14 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02516D14 */ if (_t51) goto L_02516D18; else goto L_02516D50;
|
|
L_02516D18: ; // 0x2516d18
|
|
/* 02516D18 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02516D1C */ _t52 = cpu->r[9] + 0x000004B4u;
|
|
/* 02516D1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02516D20 */ cpu->f[1] = cpu->f[31];
|
|
/* 02516D24 */ cpu->r[3] = cpu->r[29] + 0x00000054u;
|
|
/* 02516D28 */ Gambit_fn_0204E43C(cpu);
|
|
/* 02516D2C */ cpu->f[1] = cpu->f[31];
|
|
/* 02516D30 */ cpu->r[3] = cpu->r[29] + 0x00000054u;
|
|
/* 02516D34 */ Gambit_fn_0204E4D0(cpu);
|
|
/* 02516D38 */ cpu->f[1] = cpu->f[31];
|
|
/* 02516D3C */ cpu->r[3] = cpu->r[29] + 0x000000B4u;
|
|
/* 02516D40 */ Gambit_fn_0204E43C(cpu);
|
|
/* 02516D44 */ cpu->f[1] = cpu->f[31];
|
|
/* 02516D48 */ cpu->r[3] = cpu->r[29] + 0x000000B4u;
|
|
/* 02516D4C */ Gambit_fn_0204E4D0(cpu);
|
|
L_02516D50: ; // 0x2516d50
|
|
/* 02516D50 */ _t53 = cpu->r[29] + 0x00000050u;
|
|
/* 02516D50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02516D54 */ _t54 = cpu->r[12] + 0x000046C4u;
|
|
/* 02516D54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02516D58 */ cpu->r[7] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02516D5C */ _t55 = cpu->r[29] + 0x000001F4u;
|
|
/* 02516D5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02516D60 */ cpu->r[8] = rbrew_clz32(cpu->r[7]);
|
|
/* 02516D64 */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02516D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02516D6C */ _t56 = cpu->r[29] + 0x0000033Du;
|
|
/* 02516D6C */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[6]);
|
|
/* 02516D70 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516D70 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02516D70 */ if (_t58) goto L_02516D74; else goto L_02516E94;
|
|
L_02516D74: ; // 0x2516d74
|
|
/* 02516D74 */ cpu->r[0] = 0x00000001u;
|
|
/* 02516D78 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02516D7C */ cpu->r[4] = cpu->r[29];
|
|
/* 02516D80 */ cpu->r[6] = 0x00000000u;
|
|
/* 02516D84 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02516D88 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02516D88 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[0]);
|
|
/* 02516D8C */ Gambit_fn_025190A4(cpu);
|
|
/* 02516D90 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02516D94 */ _t60 = cpu->r[29] + 0x000001C8u;
|
|
/* 02516D94 */ cpu->r[27] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02516D98 */ cpu->r[0] = cpu->r[0] + 0x000004E0u;
|
|
/* 02516D9C */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02516D9C */ rbrew_write32(cpu->mem, _t61, cpu->r[31]);
|
|
/* 02516DA0 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02516DA4 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 02516DA4 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 02516DA8 */ _t63 = cpu->r[27] + 0x00000000u;
|
|
/* 02516DA8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02516DAC */ Gambit_fn_02518B68(cpu);
|
|
/* 02516DB0 */ cpu->r[31] = 0x10110000u;
|
|
/* 02516DB4 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 02516DB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02516DB8 */ _t65 = cpu->r[31] + 0x00007399u;
|
|
/* 02516DB8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t65);
|
|
/* 02516DBC */ _t66 = cpu->r[5] + 0x00000000u;
|
|
/* 02516DBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t66);
|
|
/* 02516DC0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02516DC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02516DC8 */ cpu->r[7] = 0x00080000u;
|
|
/* 02516DCC */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516DCC */ _t68 = _t67 & 0x00000001u;
|
|
/* 02516DCC */ if (_t68) goto L_02516DF4; else goto L_02516DD0;
|
|
L_02516DD0: ; // 0x2516dd0
|
|
/* 02516DD0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02516DD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02516DD8 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02516DDC */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02516DDC */ _t70 = _t69 & 0x00000001u;
|
|
/* 02516DDC */ if (_t70) goto L_02516DF0; else goto L_02516DE0;
|
|
L_02516DE0: ; // 0x2516de0
|
|
/* 02516DE0 */ _t71 = cpu->r[5] + 0x00000000u;
|
|
/* 02516DE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02516DE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02516DE8 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02516DE8 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02516DE8 */ if (_t73) goto L_02516DEC; else goto L_02516DD0;
|
|
L_02516DEC: ; // 0x2516dec
|
|
/* 02516DEC */ goto L_02516DF4;
|
|
L_02516DF0: ; // 0x2516df0
|
|
/* 02516DF0 */ cpu->r[30] = 0x00000000u;
|
|
L_02516DF4: ; // 0x2516df4
|
|
/* 02516DF4 */ _t74 = cpu->r[27] + 0x00000008u;
|
|
/* 02516DF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02516DF8 */ _t75 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02516DF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02516DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 02516E00 */ _t76 = cpu->r[12] + 0x00000014u;
|
|
/* 02516E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02516E04 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516E04 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02516E04 */ if (_t78) goto L_02516E0C; else goto L_02516E08;
|
|
L_02516E08: ; // 0x2516e08
|
|
/* 02516E08 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02516E0C: ; // 0x2516e0c
|
|
/* 02516E0C */ cpu->ctr = cpu->r[0];
|
|
/* 02516E10 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02516E14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516E18 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 02516E18 */ cpu->r[4] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02516E1C */ cpu->r[3] = cpu->r[28];
|
|
/* 02516E20 */ cpu->r[5] = cpu->r[30];
|
|
/* 02516E24 */ cpu->r[6] = 0x00000000u;
|
|
/* 02516E28 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02516E2C */ cpu->r[9] = 0x00000000u;
|
|
/* 02516E30 */ _t80 = cpu->r[28] + cpu->r[30];
|
|
/* 02516E30 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[31]);
|
|
/* 02516E34 */ cpu->r[6] = 0x02520000u;
|
|
/* 02516E38 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 02516E38 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[9]);
|
|
/* 02516E3C */ cpu->r[6] = cpu->r[6] + 0xFFFF8F88u;
|
|
/* 02516E40 */ _t82 = cpu->r[1] + 0x00000032u;
|
|
/* 02516E40 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[9]);
|
|
/* 02516E44 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02516E48 */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 02516E48 */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[9]);
|
|
/* 02516E4C */ cpu->r[12] = 0x02520000u;
|
|
/* 02516E50 */ _t84 = cpu->r[1] + 0x00000022u;
|
|
/* 02516E50 */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[8]);
|
|
/* 02516E54 */ cpu->r[12] = cpu->r[12] + 0xFFFF8F8Cu;
|
|
/* 02516E58 */ _t85 = cpu->r[1] + 0x00000024u;
|
|
/* 02516E58 */ rbrew_write32(cpu->mem, _t85, cpu->r[6]);
|
|
/* 02516E5C */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 02516E60 */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 02516E60 */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[9]);
|
|
/* 02516E64 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02516E68 */ _t87 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02516E68 */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 02516E6C */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02516E70 */ _t88 = cpu->r[1] + 0x00000034u;
|
|
/* 02516E70 */ rbrew_write32(cpu->mem, _t88, cpu->r[9]);
|
|
/* 02516E74 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02516E78 */ _t89 = cpu->r[1] + 0x0000002Au;
|
|
/* 02516E78 */ rbrew_write16(cpu->mem, _t89, (uint16_t)cpu->r[8]);
|
|
/* 02516E7C */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 02516E80 */ _t90 = cpu->r[1] + 0x00000020u;
|
|
/* 02516E80 */ rbrew_write16(cpu->mem, _t90, (uint16_t)cpu->r[9]);
|
|
/* 02516E84 */ Gambit_fn_02519354(cpu);
|
|
/* 02516E88 */ cpu->r[3] = cpu->r[29];
|
|
/* 02516E8C */ cpu->r[4] = cpu->r[29] + 0x000001B0u;
|
|
/* 02516E90 */ Gambit_fn_02000834(cpu);
|
|
L_02516E94: ; // 0x2516e94
|
|
/* 02516E94 */ /* nop */
|
|
/* 02516E98 */ _t91 = cpu->r[1] + 0x00000070u;
|
|
/* 02516E98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02516E9C */ _t92 = cpu->r[1] + 0x00000068u;
|
|
/* 02516E9C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 02516EA0 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02516EA0 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02516EA0 */ if (_t94) goto L_02516EA4; // else: addr-0 trap, fall-through
|
|
L_02516EA4: ; // 0x2516ea4
|
|
/* 02516EA4 */ _t95 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02516EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02516EA8 */ cpu->lr = cpu->r[0];
|
|
/* 02516EAC */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 02516EB0 */ return;
|
|
}
|
|
|
|
// fn_02516EB4 @ 0x2516eb4
|
|
void Gambit_fn_02516EB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74;
|
|
|
|
L_02516EB4: ; // 0x2516eb4
|
|
/* 02516EB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02516EB8 */ _t0 = cpu->r[1] + 0xFFFFFE70u;
|
|
/* 02516EB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02516EB8 */ cpu->r[1] = _t0;
|
|
/* 02516EBC */ _t1 = cpu->r[1] + 0x00000184u;
|
|
/* 02516EBC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02516EC0 */ _t2 = cpu->r[1] + 0x00000188u;
|
|
/* 02516EC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02516EC4 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 02516EC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02516EC8 */ _t4 = cpu->r[1] + 0x0000018Cu;
|
|
/* 02516EC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02516ECC */ _t5 = cpu->r[1] + 0x00000194u;
|
|
/* 02516ECC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02516ED0 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02516ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02516ED4 */ _t7 = cpu->r[12] + 0x00000234u;
|
|
/* 02516ED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02516ED8 */ cpu->ctr = cpu->r[0];
|
|
/* 02516EDC */ cpu->r[29] = cpu->r[3];
|
|
/* 02516EE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516EE4 */ cpu->r[31] = 0x100C0000u;
|
|
/* 02516EE8 */ cpu->r[5] = 0x00000000u;
|
|
/* 02516EEC */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02516EEC */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02516EF0 */ cpu->r[31] = cpu->r[31] + 0x000002BCu;
|
|
/* 02516EF4 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02516EF8 */ cpu->r[6] = cpu->r[5];
|
|
/* 02516EFC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02516F00 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02516F00 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02516F04 */ Gambit_fn_027C6980(cpu);
|
|
/* 02516F08 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516F0C */ Gambit_fn_02982574(cpu);
|
|
/* 02516F10 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02516F14 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02516F18 */ _t10 = cpu->r[12] + 0xFFFF97D0u;
|
|
/* 02516F18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02516F1C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02516F20 */ _t11 = cpu->r[11] + 0xFFFF97D4u;
|
|
/* 02516F20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02516F24 */ cpu->r[5] = 0x101D0000u;
|
|
/* 02516F28 */ _t12 = cpu->r[8] + 0xFFFF97D9u;
|
|
/* 02516F28 */ cpu->r[9] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02516F2C */ _t13 = cpu->r[5] + 0xFFFF97D8u;
|
|
/* 02516F2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02516F30 */ _t14 = cpu->r[1] + 0x00000065u;
|
|
/* 02516F30 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[9]);
|
|
/* 02516F34 */ _t15 = cpu->r[1] + 0x00000060u;
|
|
/* 02516F34 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02516F38 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02516F3C */ _t16 = cpu->r[1] + 0x00000064u;
|
|
/* 02516F3C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
/* 02516F40 */ _t17 = cpu->r[1] + 0x00000050u;
|
|
/* 02516F40 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02516F44 */ Gambit_fn_02984F3C(cpu);
|
|
/* 02516F48 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02516F4C */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02516F4C */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02516F50 */ cpu->r[11] = cpu->r[11] + 0x000004F0u;
|
|
/* 02516F54 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02516F54 */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 02516F58 */ cpu->r[30] = 0x00000000u;
|
|
/* 02516F5C */ _t20 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02516F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02516F60 */ cpu->r[10] = cpu->r[30];
|
|
/* 02516F64 */ cpu->r[7] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516F68 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02516F68 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02516F6C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02516F70 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02516F74 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 02516F74 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 02516F78 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02516F7C */ cpu->r[5] = cpu->r[6];
|
|
/* 02516F80 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02516F80 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02516F84 */ cpu->r[0] = 0x00000006u;
|
|
/* 02516F88 */ cpu->r[8] = cpu->r[1] + 0x00000068u;
|
|
/* 02516F8C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02516F8C */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02516F90 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 02516F94 */ _t25 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02516F94 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02516F98 */ Gambit_fn_023C982C(cpu);
|
|
/* 02516F9C */ cpu->r[8] = 0x101C0000u;
|
|
/* 02516FA0 */ _t26 = cpu->r[29] + 0x00000334u;
|
|
/* 02516FA0 */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02516FA4 */ _t27 = cpu->r[8] + 0x00006000u;
|
|
/* 02516FA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02516FA8 */ _t28 = cpu->r[8] + 0x0000025Cu;
|
|
/* 02516FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02516FAC */ _t29 = cpu->r[12] + 0x00000008u;
|
|
/* 02516FAC */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02516FB0 */ Gambit_fn_0297FD44(cpu);
|
|
/* 02516FB4 */ cpu->r[4] = cpu->r[29];
|
|
/* 02516FB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02516FBC */ Gambit_fn_024F7A74(cpu);
|
|
/* 02516FC0 */ cpu->r[28] = cpu->r[1] + 0x00000080u;
|
|
/* 02516FC4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02516FC8 */ _t30 = cpu->r[1] + 0x00000074u;
|
|
/* 02516FC8 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02516FCC */ cpu->r[7] = cpu->r[7] + 0x000002ECu;
|
|
/* 02516FD0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02516FD0 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 02516FD4 */ cpu->r[31] = 0x10110000u;
|
|
/* 02516FD8 */ cpu->r[6] = 0x00000100u;
|
|
/* 02516FDC */ _t32 = cpu->r[29] + 0x00000338u;
|
|
/* 02516FDC */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 02516FE0 */ _t33 = cpu->r[31] + 0x00007399u;
|
|
/* 02516FE0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t33);
|
|
/* 02516FE4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02516FE8 */ _t34 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02516FE8 */ rbrew_write32(cpu->mem, _t34, cpu->r[6]);
|
|
/* 02516FEC */ _t35 = cpu->r[1] + 0x00000078u;
|
|
/* 02516FEC */ rbrew_write32(cpu->mem, _t35, cpu->r[7]);
|
|
/* 02516FF0 */ cpu->r[5] = cpu->r[5] + 0x00000504u;
|
|
/* 02516FF4 */ _t36 = cpu->r[1] + 0x0000017Fu;
|
|
/* 02516FF4 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[31]);
|
|
/* 02516FF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516FFC */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516FFC */ rbrew_write32(cpu->mem, _t37, cpu->r[5]);
|
|
/* 02517000 */ Gambit_fn_02518B68(cpu);
|
|
/* 02517004 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517004 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02517008 */ _t39 = cpu->r[7] + 0x00000000u;
|
|
/* 02517008 */ cpu->r[9] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251700C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02517010 */ cpu->r[9] = 0x00080000u;
|
|
/* 02517014 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517014 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02517014 */ if (_t41) goto L_0251703C; else goto L_02517018;
|
|
L_02517018: ; // 0x2517018
|
|
/* 02517018 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0251701C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02517020 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02517024 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02517024 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02517024 */ if (_t43) goto L_02517038; else goto L_02517028;
|
|
L_02517028: ; // 0x2517028
|
|
/* 02517028 */ _t44 = cpu->r[7] + 0x00000000u;
|
|
/* 02517028 */ cpu->r[10] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0251702C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02517030 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517030 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02517030 */ if (_t46) goto L_02517034; else goto L_02517018;
|
|
L_02517034: ; // 0x2517034
|
|
/* 02517034 */ goto L_0251703C;
|
|
L_02517038: ; // 0x2517038
|
|
/* 02517038 */ cpu->r[30] = 0x00000000u;
|
|
L_0251703C: ; // 0x251703c
|
|
/* 0251703C */ _t47 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251703C */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02517040 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 02517040 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02517044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02517048 */ _t49 = cpu->r[11] + 0x00000014u;
|
|
/* 02517048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0251704C */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251704C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0251704C */ if (_t51) goto L_02517054; else goto L_02517050;
|
|
L_02517050: ; // 0x2517050
|
|
/* 02517050 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02517054: ; // 0x2517054
|
|
/* 02517054 */ cpu->ctr = cpu->r[12];
|
|
/* 02517058 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251705C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517060 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517060 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02517064 */ cpu->r[3] = cpu->r[28];
|
|
/* 02517068 */ cpu->r[5] = cpu->r[30];
|
|
/* 0251706C */ cpu->r[6] = 0x00000000u;
|
|
/* 02517070 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02517074 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02517078 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 0251707C */ _t53 = cpu->r[28] + cpu->r[30];
|
|
/* 0251707C */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[31]);
|
|
/* 02517080 */ cpu->r[0] = cpu->r[0] + 0x00000304u;
|
|
/* 02517084 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02517088 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251708C */ _t54 = cpu->r[1] + 0x00000078u;
|
|
/* 0251708C */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02517090 */ Gambit_fn_027C6C00(cpu);
|
|
/* 02517094 */ _t55 = cpu->r[1] + 0x00000078u;
|
|
/* 02517094 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02517098 */ _t56 = cpu->r[7] + 0x00000014u;
|
|
/* 02517098 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0251709C */ cpu->r[31] = cpu->r[3];
|
|
/* 025170A0 */ cpu->ctr = cpu->r[5];
|
|
/* 025170A4 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 025170A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025170AC */ _t57 = cpu->r[1] + 0x00000074u;
|
|
/* 025170AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 025170B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 025170B4 */ _t58 = cpu->r[29] + 0x00000338u;
|
|
/* 025170B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 025170B8 */ Gambit_fn_0204049C(cpu);
|
|
/* 025170BC */ _t59 = cpu->r[29] + 0x00000338u;
|
|
/* 025170BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 025170C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025170C4 */ Gambit_fn_0203F288(cpu);
|
|
/* 025170C8 */ cpu->r[8] = 0x00000001u;
|
|
/* 025170CC */ cpu->r[3] = 0x101C0000u;
|
|
/* 025170D0 */ _t60 = cpu->r[31] + 0x000001E8u;
|
|
/* 025170D0 */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[8]);
|
|
/* 025170D4 */ _t61 = cpu->r[29] + 0x00000334u;
|
|
/* 025170D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025170D8 */ _t62 = cpu->r[3] + 0x000060F4u;
|
|
/* 025170D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 025170DC */ cpu->r[10] = cpu->r[29] + 0x00000054u;
|
|
/* 025170E0 */ _t63 = cpu->r[1] + 0x00000038u;
|
|
/* 025170E0 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 025170E4 */ _t64 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025170E4 */ rbrew_write32(cpu->mem, _t64, cpu->r[10]);
|
|
/* 025170E8 */ cpu->r[0] = cpu->r[29] + 0x00000084u;
|
|
/* 025170EC */ _t65 = cpu->r[29] + 0x00000338u;
|
|
/* 025170EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025170F0 */ cpu->r[6] = cpu->r[29] + 0x000000E4u;
|
|
/* 025170F4 */ _t66 = cpu->r[1] + 0x00000040u;
|
|
/* 025170F4 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 025170F8 */ cpu->r[0] = cpu->r[10] + 0x00000004u;
|
|
/* 025170FC */ _t67 = cpu->r[1] + 0x00000044u;
|
|
/* 025170FC */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 02517100 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02517104 */ _t68 = cpu->r[1] + 0x00000048u;
|
|
/* 02517104 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 02517108 */ Gambit_fn_023F472C(cpu);
|
|
/* 0251710C */ _t69 = cpu->r[29] + 0x0000033Cu;
|
|
/* 0251710C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[3]);
|
|
/* 02517110 */ _t70 = cpu->r[1] + 0x00000180u;
|
|
/* 02517110 */ cpu->r[28] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02517114 */ _t71 = cpu->r[1] + 0x00000184u;
|
|
/* 02517114 */ cpu->r[29] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02517118 */ _t72 = cpu->r[1] + 0x00000194u;
|
|
/* 02517118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251711C */ _t73 = cpu->r[1] + 0x00000188u;
|
|
/* 0251711C */ cpu->r[30] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02517120 */ cpu->lr = cpu->r[0];
|
|
/* 02517124 */ _t74 = cpu->r[1] + 0x0000018Cu;
|
|
/* 02517124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02517128 */ cpu->r[1] = cpu->r[1] + 0x00000190u;
|
|
/* 0251712C */ return;
|
|
}
|
|
|
|
// fn_02516EB8 @ 0x2516eb8
|
|
void Gambit_fn_02516EB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74;
|
|
|
|
L_02516EB8: ; // 0x2516eb8
|
|
/* 02516EB8 */ _t0 = cpu->r[1] + 0xFFFFFE70u;
|
|
/* 02516EB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02516EB8 */ cpu->r[1] = _t0;
|
|
/* 02516EBC */ _t1 = cpu->r[1] + 0x00000184u;
|
|
/* 02516EBC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02516EC0 */ _t2 = cpu->r[1] + 0x00000188u;
|
|
/* 02516EC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02516EC4 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 02516EC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02516EC8 */ _t4 = cpu->r[1] + 0x0000018Cu;
|
|
/* 02516EC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02516ECC */ _t5 = cpu->r[1] + 0x00000194u;
|
|
/* 02516ECC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02516ED0 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02516ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02516ED4 */ _t7 = cpu->r[12] + 0x00000234u;
|
|
/* 02516ED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02516ED8 */ cpu->ctr = cpu->r[0];
|
|
/* 02516EDC */ cpu->r[29] = cpu->r[3];
|
|
/* 02516EE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02516EE4 */ cpu->r[31] = 0x100C0000u;
|
|
/* 02516EE8 */ cpu->r[5] = 0x00000000u;
|
|
/* 02516EEC */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02516EEC */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02516EF0 */ cpu->r[31] = cpu->r[31] + 0x000002BCu;
|
|
/* 02516EF4 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02516EF8 */ cpu->r[6] = cpu->r[5];
|
|
/* 02516EFC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02516F00 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02516F00 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02516F04 */ Gambit_fn_027C6980(cpu);
|
|
/* 02516F08 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516F0C */ Gambit_fn_02982574(cpu);
|
|
/* 02516F10 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02516F14 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02516F18 */ _t10 = cpu->r[12] + 0xFFFF97D0u;
|
|
/* 02516F18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02516F1C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02516F20 */ _t11 = cpu->r[11] + 0xFFFF97D4u;
|
|
/* 02516F20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02516F24 */ cpu->r[5] = 0x101D0000u;
|
|
/* 02516F28 */ _t12 = cpu->r[8] + 0xFFFF97D9u;
|
|
/* 02516F28 */ cpu->r[9] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02516F2C */ _t13 = cpu->r[5] + 0xFFFF97D8u;
|
|
/* 02516F2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02516F30 */ _t14 = cpu->r[1] + 0x00000065u;
|
|
/* 02516F30 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[9]);
|
|
/* 02516F34 */ _t15 = cpu->r[1] + 0x00000060u;
|
|
/* 02516F34 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02516F38 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02516F3C */ _t16 = cpu->r[1] + 0x00000064u;
|
|
/* 02516F3C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
/* 02516F40 */ _t17 = cpu->r[1] + 0x00000050u;
|
|
/* 02516F40 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02516F44 */ Gambit_fn_02984F3C(cpu);
|
|
/* 02516F48 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02516F4C */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02516F4C */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02516F50 */ cpu->r[11] = cpu->r[11] + 0x000004F0u;
|
|
/* 02516F54 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02516F54 */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 02516F58 */ cpu->r[30] = 0x00000000u;
|
|
/* 02516F5C */ _t20 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02516F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02516F60 */ cpu->r[10] = cpu->r[30];
|
|
/* 02516F64 */ cpu->r[7] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02516F68 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02516F68 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02516F6C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02516F70 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02516F74 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 02516F74 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 02516F78 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02516F7C */ cpu->r[5] = cpu->r[6];
|
|
/* 02516F80 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02516F80 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02516F84 */ cpu->r[0] = 0x00000006u;
|
|
/* 02516F88 */ cpu->r[8] = cpu->r[1] + 0x00000068u;
|
|
/* 02516F8C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02516F8C */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02516F90 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 02516F94 */ _t25 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02516F94 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02516F98 */ Gambit_fn_023C982C(cpu);
|
|
/* 02516F9C */ cpu->r[8] = 0x101C0000u;
|
|
/* 02516FA0 */ _t26 = cpu->r[29] + 0x00000334u;
|
|
/* 02516FA0 */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02516FA4 */ _t27 = cpu->r[8] + 0x00006000u;
|
|
/* 02516FA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02516FA8 */ _t28 = cpu->r[8] + 0x0000025Cu;
|
|
/* 02516FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02516FAC */ _t29 = cpu->r[12] + 0x00000008u;
|
|
/* 02516FAC */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02516FB0 */ Gambit_fn_0297FD44(cpu);
|
|
/* 02516FB4 */ cpu->r[4] = cpu->r[29];
|
|
/* 02516FB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02516FBC */ Gambit_fn_024F7A74(cpu);
|
|
/* 02516FC0 */ cpu->r[28] = cpu->r[1] + 0x00000080u;
|
|
/* 02516FC4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02516FC8 */ _t30 = cpu->r[1] + 0x00000074u;
|
|
/* 02516FC8 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02516FCC */ cpu->r[7] = cpu->r[7] + 0x000002ECu;
|
|
/* 02516FD0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02516FD0 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 02516FD4 */ cpu->r[31] = 0x10110000u;
|
|
/* 02516FD8 */ cpu->r[6] = 0x00000100u;
|
|
/* 02516FDC */ _t32 = cpu->r[29] + 0x00000338u;
|
|
/* 02516FDC */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 02516FE0 */ _t33 = cpu->r[31] + 0x00007399u;
|
|
/* 02516FE0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t33);
|
|
/* 02516FE4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02516FE8 */ _t34 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02516FE8 */ rbrew_write32(cpu->mem, _t34, cpu->r[6]);
|
|
/* 02516FEC */ _t35 = cpu->r[1] + 0x00000078u;
|
|
/* 02516FEC */ rbrew_write32(cpu->mem, _t35, cpu->r[7]);
|
|
/* 02516FF0 */ cpu->r[5] = cpu->r[5] + 0x00000504u;
|
|
/* 02516FF4 */ _t36 = cpu->r[1] + 0x0000017Fu;
|
|
/* 02516FF4 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[31]);
|
|
/* 02516FF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516FFC */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02516FFC */ rbrew_write32(cpu->mem, _t37, cpu->r[5]);
|
|
/* 02517000 */ Gambit_fn_02518B68(cpu);
|
|
/* 02517004 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517004 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02517008 */ _t39 = cpu->r[7] + 0x00000000u;
|
|
/* 02517008 */ cpu->r[9] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251700C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02517010 */ cpu->r[9] = 0x00080000u;
|
|
/* 02517014 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517014 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02517014 */ if (_t41) goto L_0251703C; else goto L_02517018;
|
|
L_02517018: ; // 0x2517018
|
|
/* 02517018 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0251701C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02517020 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02517024 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02517024 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02517024 */ if (_t43) goto L_02517038; else goto L_02517028;
|
|
L_02517028: ; // 0x2517028
|
|
/* 02517028 */ _t44 = cpu->r[7] + 0x00000000u;
|
|
/* 02517028 */ cpu->r[10] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0251702C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02517030 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517030 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02517030 */ if (_t46) goto L_02517034; else goto L_02517018;
|
|
L_02517034: ; // 0x2517034
|
|
/* 02517034 */ goto L_0251703C;
|
|
L_02517038: ; // 0x2517038
|
|
/* 02517038 */ cpu->r[30] = 0x00000000u;
|
|
L_0251703C: ; // 0x251703c
|
|
/* 0251703C */ _t47 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251703C */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02517040 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 02517040 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02517044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02517048 */ _t49 = cpu->r[11] + 0x00000014u;
|
|
/* 02517048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0251704C */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251704C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0251704C */ if (_t51) goto L_02517054; else goto L_02517050;
|
|
L_02517050: ; // 0x2517050
|
|
/* 02517050 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02517054: ; // 0x2517054
|
|
/* 02517054 */ cpu->ctr = cpu->r[12];
|
|
/* 02517058 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251705C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517060 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517060 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02517064 */ cpu->r[3] = cpu->r[28];
|
|
/* 02517068 */ cpu->r[5] = cpu->r[30];
|
|
/* 0251706C */ cpu->r[6] = 0x00000000u;
|
|
/* 02517070 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02517074 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02517078 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 0251707C */ _t53 = cpu->r[28] + cpu->r[30];
|
|
/* 0251707C */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[31]);
|
|
/* 02517080 */ cpu->r[0] = cpu->r[0] + 0x00000304u;
|
|
/* 02517084 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02517088 */ cpu->r[5] = 0x00000000u;
|
|
/* 0251708C */ _t54 = cpu->r[1] + 0x00000078u;
|
|
/* 0251708C */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02517090 */ Gambit_fn_027C6C00(cpu);
|
|
/* 02517094 */ _t55 = cpu->r[1] + 0x00000078u;
|
|
/* 02517094 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02517098 */ _t56 = cpu->r[7] + 0x00000014u;
|
|
/* 02517098 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0251709C */ cpu->r[31] = cpu->r[3];
|
|
/* 025170A0 */ cpu->ctr = cpu->r[5];
|
|
/* 025170A4 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 025170A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025170AC */ _t57 = cpu->r[1] + 0x00000074u;
|
|
/* 025170AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 025170B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 025170B4 */ _t58 = cpu->r[29] + 0x00000338u;
|
|
/* 025170B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 025170B8 */ Gambit_fn_0204049C(cpu);
|
|
/* 025170BC */ _t59 = cpu->r[29] + 0x00000338u;
|
|
/* 025170BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 025170C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025170C4 */ Gambit_fn_0203F288(cpu);
|
|
/* 025170C8 */ cpu->r[8] = 0x00000001u;
|
|
/* 025170CC */ cpu->r[3] = 0x101C0000u;
|
|
/* 025170D0 */ _t60 = cpu->r[31] + 0x000001E8u;
|
|
/* 025170D0 */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[8]);
|
|
/* 025170D4 */ _t61 = cpu->r[29] + 0x00000334u;
|
|
/* 025170D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025170D8 */ _t62 = cpu->r[3] + 0x000060F4u;
|
|
/* 025170D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 025170DC */ cpu->r[10] = cpu->r[29] + 0x00000054u;
|
|
/* 025170E0 */ _t63 = cpu->r[1] + 0x00000038u;
|
|
/* 025170E0 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 025170E4 */ _t64 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025170E4 */ rbrew_write32(cpu->mem, _t64, cpu->r[10]);
|
|
/* 025170E8 */ cpu->r[0] = cpu->r[29] + 0x00000084u;
|
|
/* 025170EC */ _t65 = cpu->r[29] + 0x00000338u;
|
|
/* 025170EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025170F0 */ cpu->r[6] = cpu->r[29] + 0x000000E4u;
|
|
/* 025170F4 */ _t66 = cpu->r[1] + 0x00000040u;
|
|
/* 025170F4 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 025170F8 */ cpu->r[0] = cpu->r[10] + 0x00000004u;
|
|
/* 025170FC */ _t67 = cpu->r[1] + 0x00000044u;
|
|
/* 025170FC */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 02517100 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02517104 */ _t68 = cpu->r[1] + 0x00000048u;
|
|
/* 02517104 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 02517108 */ Gambit_fn_023F472C(cpu);
|
|
/* 0251710C */ _t69 = cpu->r[29] + 0x0000033Cu;
|
|
/* 0251710C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[3]);
|
|
/* 02517110 */ _t70 = cpu->r[1] + 0x00000180u;
|
|
/* 02517110 */ cpu->r[28] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02517114 */ _t71 = cpu->r[1] + 0x00000184u;
|
|
/* 02517114 */ cpu->r[29] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02517118 */ _t72 = cpu->r[1] + 0x00000194u;
|
|
/* 02517118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251711C */ _t73 = cpu->r[1] + 0x00000188u;
|
|
/* 0251711C */ cpu->r[30] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02517120 */ cpu->lr = cpu->r[0];
|
|
/* 02517124 */ _t74 = cpu->r[1] + 0x0000018Cu;
|
|
/* 02517124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02517128 */ cpu->r[1] = cpu->r[1] + 0x00000190u;
|
|
/* 0251712C */ return;
|
|
}
|
|
|
|
// fn_02517130 @ 0x2517130
|
|
void Gambit_fn_02517130(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47;
|
|
|
|
L_02517130: ; // 0x2517130
|
|
/* 02517130 */ cpu->r[0] = cpu->lr;
|
|
/* 02517134 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02517134 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517134 */ cpu->r[1] = _t0;
|
|
/* 02517138 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02517138 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0251713C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251713C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02517140 */ cpu->r[28] = cpu->r[3];
|
|
/* 02517144 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02517144 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02517148 */ cpu->r[3] = 0x00000000u;
|
|
/* 0251714C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251714C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02517150 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02517150 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02517154 */ Gambit_fn_02043B8C(cpu);
|
|
/* 02517158 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0251715C */ _t6 = cpu->r[28] + 0x00000208u;
|
|
/* 0251715C */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02517160 */ cpu->r[6] = cpu->r[6] + 0x000002BCu;
|
|
/* 02517164 */ _t7 = cpu->r[28] + 0x00000008u;
|
|
/* 02517164 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02517168 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251716C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251716C */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02517170 */ cpu->r[0] = cpu->r[0] + 0x0000051Cu;
|
|
/* 02517174 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02517178 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02517178 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0251717C */ Gambit_fn_029807A8(cpu);
|
|
/* 02517180 */ cpu->r[29] = cpu->r[3];
|
|
/* 02517184 */ _t10 = cpu->r[28] + 0x00000008u;
|
|
/* 02517184 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02517188 */ /* nop */
|
|
/* 0251718C */ cpu->r[4] = cpu->r[31];
|
|
/* 02517190 */ cpu->r[3] = cpu->r[30];
|
|
/* 02517194 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02517198 */ _t11 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02517198 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0251719C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 025171A0 */ cpu->r[12] = 0x00000000u;
|
|
/* 025171A4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025171A4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 025171A4 */ if (_t13) goto L_025171A8; else goto L_025171B4;
|
|
L_025171A8: ; // 0x25171a8
|
|
/* 025171A8 */ _t14 = cpu->r[30] + 0x00000024u;
|
|
/* 025171A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025171AC */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 025171B0 */ _t15 = cpu->r[9] + cpu->r[0];
|
|
/* 025171B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
L_025171B4: ; // 0x25171b4
|
|
/* 025171B4 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 025171B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025171B8 */ _t17 = cpu->r[3] + 0x00000088u;
|
|
/* 025171B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025171BC */ _t18 = cpu->r[11] + 0x0000007Cu;
|
|
/* 025171BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025171C0 */ cpu->ctr = cpu->r[5];
|
|
/* 025171C4 */ /* nop */
|
|
/* 025171C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025171CC */ _t19 = cpu->r[28] + 0x000001F4u;
|
|
/* 025171CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025171D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025171D4 */ _t20 = cpu->r[28] + 0x0000020Cu;
|
|
/* 025171D4 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 025171D8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025171D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 025171D8 */ if (_t22) goto L_02517220; else goto L_025171DC;
|
|
L_025171DC: ; // 0x25171dc
|
|
/* 025171DC */ _t23 = cpu->r[12] + 0x00000048u;
|
|
/* 025171DC */ cpu->r[7] = rbrew_read8(cpu->mem, _t23);
|
|
/* 025171E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025171E4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025171E4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025171E4 */ if (_t25) goto L_02517220; else goto L_025171E8;
|
|
L_025171E8: ; // 0x25171e8
|
|
/* 025171E8 */ _t26 = cpu->r[28] + 0x000001ECu;
|
|
/* 025171E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025171EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 025171F0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025171F0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 025171F0 */ if (_t28) goto L_025171F4; else goto L_02517220;
|
|
L_025171F4: ; // 0x25171f4
|
|
/* 025171F4 */ cpu->r[3] = 0x00000008u;
|
|
/* 025171F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025171FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517200 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517200 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02517200 */ if (_t30) goto L_02517214; else goto L_02517204;
|
|
L_02517204: ; // 0x2517204
|
|
/* 02517204 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02517208 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 02517208 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
/* 0251720C */ cpu->r[9] = cpu->r[9] + 0x000009CCu;
|
|
/* 02517210 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 02517210 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02517214: ; // 0x2517214
|
|
/* 02517214 */ _t33 = cpu->r[28] + 0x000001F4u;
|
|
/* 02517214 */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02517218 */ _t34 = cpu->r[28] + 0x00000330u;
|
|
/* 02517218 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 0251721C */ _t35 = cpu->r[6] + 0x00000178u;
|
|
/* 0251721C */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
L_02517220: ; // 0x2517220
|
|
/* 02517220 */ _t36 = cpu->r[28] + 0x000001E8u;
|
|
/* 02517220 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02517224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02517228 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517228 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02517228 */ if (_t38) goto L_0251722C; else goto L_02517244;
|
|
L_0251722C: ; // 0x251722c
|
|
/* 0251722C */ _t39 = cpu->r[28] + 0x00000050u;
|
|
/* 0251722C */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02517230 */ _t40 = cpu->r[5] + 0x000046C0u;
|
|
/* 02517230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02517234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02517238 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517238 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02517238 */ if (_t42) goto L_02517244; else goto L_0251723C;
|
|
L_0251723C: ; // 0x251723c
|
|
/* 0251723C */ cpu->r[3] = cpu->r[28];
|
|
/* 02517240 */ Gambit_fn_02516EB4(cpu);
|
|
L_02517244: ; // 0x2517244
|
|
/* 02517244 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02517244 */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02517248 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02517248 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0251724C */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 0251724C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02517250 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 02517250 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02517254 */ cpu->lr = cpu->r[0];
|
|
/* 02517258 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517258 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0251725C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02517260 */ return;
|
|
}
|
|
|
|
// fn_02517134 @ 0x2517134
|
|
void Gambit_fn_02517134(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47;
|
|
|
|
L_02517134: ; // 0x2517134
|
|
/* 02517134 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02517134 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517134 */ cpu->r[1] = _t0;
|
|
/* 02517138 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02517138 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0251713C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251713C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02517140 */ cpu->r[28] = cpu->r[3];
|
|
/* 02517144 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02517144 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02517148 */ cpu->r[3] = 0x00000000u;
|
|
/* 0251714C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251714C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02517150 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02517150 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02517154 */ Gambit_fn_02043B8C(cpu);
|
|
/* 02517158 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0251715C */ _t6 = cpu->r[28] + 0x00000208u;
|
|
/* 0251715C */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02517160 */ cpu->r[6] = cpu->r[6] + 0x000002BCu;
|
|
/* 02517164 */ _t7 = cpu->r[28] + 0x00000008u;
|
|
/* 02517164 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02517168 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251716C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251716C */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02517170 */ cpu->r[0] = cpu->r[0] + 0x0000051Cu;
|
|
/* 02517174 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02517178 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02517178 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0251717C */ Gambit_fn_029807A8(cpu);
|
|
/* 02517180 */ cpu->r[29] = cpu->r[3];
|
|
/* 02517184 */ _t10 = cpu->r[28] + 0x00000008u;
|
|
/* 02517184 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02517188 */ /* nop */
|
|
/* 0251718C */ cpu->r[4] = cpu->r[31];
|
|
/* 02517190 */ cpu->r[3] = cpu->r[30];
|
|
/* 02517194 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02517198 */ _t11 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02517198 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0251719C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 025171A0 */ cpu->r[12] = 0x00000000u;
|
|
/* 025171A4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025171A4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 025171A4 */ if (_t13) goto L_025171A8; else goto L_025171B4;
|
|
L_025171A8: ; // 0x25171a8
|
|
/* 025171A8 */ _t14 = cpu->r[30] + 0x00000024u;
|
|
/* 025171A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025171AC */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 025171B0 */ _t15 = cpu->r[9] + cpu->r[0];
|
|
/* 025171B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
L_025171B4: ; // 0x25171b4
|
|
/* 025171B4 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 025171B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025171B8 */ _t17 = cpu->r[3] + 0x00000088u;
|
|
/* 025171B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025171BC */ _t18 = cpu->r[11] + 0x0000007Cu;
|
|
/* 025171BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025171C0 */ cpu->ctr = cpu->r[5];
|
|
/* 025171C4 */ /* nop */
|
|
/* 025171C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025171CC */ _t19 = cpu->r[28] + 0x000001F4u;
|
|
/* 025171CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025171D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025171D4 */ _t20 = cpu->r[28] + 0x0000020Cu;
|
|
/* 025171D4 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 025171D8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025171D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 025171D8 */ if (_t22) goto L_02517220; else goto L_025171DC;
|
|
L_025171DC: ; // 0x25171dc
|
|
/* 025171DC */ _t23 = cpu->r[12] + 0x00000048u;
|
|
/* 025171DC */ cpu->r[7] = rbrew_read8(cpu->mem, _t23);
|
|
/* 025171E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025171E4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025171E4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025171E4 */ if (_t25) goto L_02517220; else goto L_025171E8;
|
|
L_025171E8: ; // 0x25171e8
|
|
/* 025171E8 */ _t26 = cpu->r[28] + 0x000001ECu;
|
|
/* 025171E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025171EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 025171F0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025171F0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 025171F0 */ if (_t28) goto L_025171F4; else goto L_02517220;
|
|
L_025171F4: ; // 0x25171f4
|
|
/* 025171F4 */ cpu->r[3] = 0x00000008u;
|
|
/* 025171F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025171FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517200 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517200 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02517200 */ if (_t30) goto L_02517214; else goto L_02517204;
|
|
L_02517204: ; // 0x2517204
|
|
/* 02517204 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02517208 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 02517208 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
/* 0251720C */ cpu->r[9] = cpu->r[9] + 0x000009CCu;
|
|
/* 02517210 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 02517210 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02517214: ; // 0x2517214
|
|
/* 02517214 */ _t33 = cpu->r[28] + 0x000001F4u;
|
|
/* 02517214 */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02517218 */ _t34 = cpu->r[28] + 0x00000330u;
|
|
/* 02517218 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 0251721C */ _t35 = cpu->r[6] + 0x00000178u;
|
|
/* 0251721C */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
L_02517220: ; // 0x2517220
|
|
/* 02517220 */ _t36 = cpu->r[28] + 0x000001E8u;
|
|
/* 02517220 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02517224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02517228 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517228 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02517228 */ if (_t38) goto L_0251722C; else goto L_02517244;
|
|
L_0251722C: ; // 0x251722c
|
|
/* 0251722C */ _t39 = cpu->r[28] + 0x00000050u;
|
|
/* 0251722C */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02517230 */ _t40 = cpu->r[5] + 0x000046C0u;
|
|
/* 02517230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02517234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02517238 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517238 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02517238 */ if (_t42) goto L_02517244; else goto L_0251723C;
|
|
L_0251723C: ; // 0x251723c
|
|
/* 0251723C */ cpu->r[3] = cpu->r[28];
|
|
/* 02517240 */ Gambit_fn_02516EB4(cpu);
|
|
L_02517244: ; // 0x2517244
|
|
/* 02517244 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02517244 */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02517248 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02517248 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0251724C */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 0251724C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02517250 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 02517250 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02517254 */ cpu->lr = cpu->r[0];
|
|
/* 02517258 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517258 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0251725C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02517260 */ return;
|
|
}
|
|
|
|
// fn_02517264 @ 0x2517264
|
|
void Gambit_fn_02517264(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_02517264: ; // 0x2517264
|
|
/* 02517264 */ cpu->r[12] = cpu->r[3];
|
|
/* 02517268 */ _t0 = cpu->r[12] + 0x000001F4u;
|
|
/* 02517268 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251726C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02517270 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517270 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02517270 */ if (_t2) goto L_0251727C; else goto L_02517274;
|
|
L_02517274: ; // 0x2517274
|
|
/* 02517274 */ cpu->r[11] = 0x00000001u;
|
|
/* 02517278 */ _t3 = cpu->r[10] + 0x00000124u;
|
|
/* 02517278 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[11]);
|
|
L_0251727C: ; // 0x251727c
|
|
/* 0251727C */ cpu->r[5] = 0x00000001u;
|
|
/* 02517280 */ _t4 = cpu->r[12] + 0x00000030u;
|
|
/* 02517280 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02517284 */ cpu->r[4] = 0x00000004u;
|
|
/* 02517288 */ _t5 = cpu->r[12] + 0x00000219u;
|
|
/* 02517288 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[5]);
|
|
/* 0251728C */ goto L_027B8224;
|
|
L_027B8224: ; // 0x27b8224
|
|
/* 027B8224 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 027B8224 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027B8228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027B822C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027B822C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027B822C */ if (_t8) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027B822C */ goto L_027B8230;
|
|
L_027B8230: ; // 0x27b8230
|
|
/* 027B8230 */ goto L_027DA698;
|
|
L_027DA698: ; // 0x27da698
|
|
/* 027DA698 */ cpu->r[0] = cpu->lr;
|
|
/* 027DA69C */ _t9 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027DA69C */ rbrew_write32(cpu->mem, _t9, cpu->r[1]);
|
|
/* 027DA69C */ cpu->r[1] = _t9;
|
|
/* 027DA6A0 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027DA6A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 027DA6A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027DA6A4 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 027DA6A8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027DA6A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 027DA6AC */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027DA6AC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027DA6B0 */ cpu->r[29] = cpu->r[3];
|
|
/* 027DA6B4 */ _t14 = cpu->r[29] + 0x00000014u;
|
|
/* 027DA6B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027DA6B8 */ cpu->r[31] = cpu->r[5];
|
|
/* 027DA6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027DA6C0 */ cpu->r[30] = cpu->r[4];
|
|
/* 027DA6C4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027DA6C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027DA6C4 */ if (_t16) goto L_027DA6D4; else goto L_027DA6C8;
|
|
L_027DA6C8: ; // 0x27da6c8
|
|
/* 027DA6C8 */ cpu->r[5] = cpu->r[31];
|
|
/* 027DA6CC */ cpu->r[4] = cpu->r[30];
|
|
/* 027DA6D0 */ Gambit_fn_028AC3E4(cpu);
|
|
L_027DA6D4: ; // 0x27da6d4
|
|
/* 027DA6D4 */ _t17 = cpu->r[29] + 0x00000018u;
|
|
/* 027DA6D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027DA6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027DA6DC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027DA6DC */ _t19 = _t18 & 0x00000001u;
|
|
/* 027DA6DC */ if (_t19) goto L_027DA6EC; else goto L_027DA6E0;
|
|
L_027DA6E0: ; // 0x27da6e0
|
|
/* 027DA6E0 */ cpu->r[5] = cpu->r[31];
|
|
/* 027DA6E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 027DA6E8 */ Gambit_fn_028AC3E4(cpu);
|
|
L_027DA6EC: ; // 0x27da6ec
|
|
/* 027DA6EC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027DA6EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027DA6F0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027DA6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027DA6F4 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 027DA6F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027DA6F8 */ cpu->lr = cpu->r[0];
|
|
/* 027DA6FC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 027DA6FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027DA700 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027DA704 */ return;
|
|
}
|
|
|
|
// fn_02517290 @ 0x2517290
|
|
void Gambit_fn_02517290(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_02517290: ; // 0x2517290
|
|
/* 02517290 */ cpu->r[0] = cpu->lr;
|
|
/* 02517294 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02517294 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517294 */ cpu->r[1] = _t0;
|
|
/* 02517298 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517298 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251729C */ cpu->r[31] = cpu->r[3];
|
|
/* 025172A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025172A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025172A4 */ _t3 = cpu->r[31] + 0x00000030u;
|
|
/* 025172A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025172A8 */ _t4 = cpu->r[31] + 0x000001F0u;
|
|
/* 025172A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025172AC */ cpu->r[4] = 0x00000003u;
|
|
/* 025172B0 */ Gambit_fn_027B8224(cpu);
|
|
/* 025172B4 */ _t5 = cpu->r[31] + 0x00000030u;
|
|
/* 025172B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025172B8 */ cpu->r[5] = 0x00000000u;
|
|
/* 025172BC */ cpu->r[4] = 0x00000004u;
|
|
/* 025172C0 */ Gambit_fn_027B8224(cpu);
|
|
/* 025172C4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025172C8 */ _t6 = cpu->r[12] + 0x00000524u;
|
|
/* 025172C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 025172CC */ cpu->r[12] = 0x100C0000u;
|
|
/* 025172D0 */ _t7 = cpu->r[12] + 0x00000528u;
|
|
/* 025172D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025172D4 */ _t8 = cpu->r[31] + 0x00000134u;
|
|
/* 025172D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025172D8 */ _t9 = cpu->r[12] + 0x00000294u;
|
|
/* 025172D8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 025172DC */ cpu->r[12] = 0x0000001Bu;
|
|
/* 025172E0 */ _t10 = cpu->r[31] + 0x000001F4u;
|
|
/* 025172E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025172E4 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 025172E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 025172E8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025172EC */ _t12 = cpu->r[12] + 0x0000046Cu;
|
|
/* 025172EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025172F0 */ cpu->r[12] = 0x00000000u;
|
|
/* 025172F4 */ _t13 = cpu->r[31] + 0x00000214u;
|
|
/* 025172F4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 025172F8 */ _t14 = cpu->r[31] + 0x00000220u;
|
|
/* 025172F8 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[12]);
|
|
/* 025172FC */ _t15 = cpu->r[31] + 0x00000340u;
|
|
/* 025172FC */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02517300 */ _t16 = cpu->r[31] + 0x00000210u;
|
|
/* 02517300 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]);
|
|
/* 02517304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517308 */ _t17 = cpu->r[31] + 0x00000219u;
|
|
/* 02517308 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[12]);
|
|
/* 0251730C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251730C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251730C */ if (_t19) goto L_02517314; else goto L_02517310;
|
|
L_02517310: ; // 0x2517310
|
|
/* 02517310 */ Gambit_fn_02503D00(cpu);
|
|
L_02517314: ; // 0x2517314
|
|
/* 02517314 */ _t20 = cpu->r[31] + 0x00000218u;
|
|
/* 02517314 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02517318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0251731C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251731C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0251731C */ if (_t22) goto L_02517320; else goto L_02517328;
|
|
L_02517320: ; // 0x2517320
|
|
/* 02517320 */ cpu->r[3] = cpu->r[31];
|
|
/* 02517324 */ Gambit_fn_02517264(cpu);
|
|
L_02517328: ; // 0x2517328
|
|
/* 02517328 */ _t23 = cpu->r[31] + 0x00000228u;
|
|
/* 02517328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0251732C */ _t24 = cpu->r[12] + 0x00000014u;
|
|
/* 0251732C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02517330 */ cpu->ctr = cpu->r[0];
|
|
/* 02517334 */ cpu->r[3] = cpu->r[31] + 0x00000224u;
|
|
/* 02517338 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251733C */ _t25 = cpu->r[31] + 0x00000224u;
|
|
/* 0251733C */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02517340 */ cpu->r[5] = 0x00000001u;
|
|
/* 02517344 */ _t26 = cpu->r[31] + 0x00000130u;
|
|
/* 02517344 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02517348 */ Gambit_fn_02398850(cpu);
|
|
/* 0251734C */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0251734C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02517350 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517350 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02517354 */ cpu->lr = cpu->r[0];
|
|
/* 02517358 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251735C */ return;
|
|
}
|
|
|
|
// fn_02517294 @ 0x2517294
|
|
void Gambit_fn_02517294(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_02517294: ; // 0x2517294
|
|
/* 02517294 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02517294 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517294 */ cpu->r[1] = _t0;
|
|
/* 02517298 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517298 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251729C */ cpu->r[31] = cpu->r[3];
|
|
/* 025172A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025172A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025172A4 */ _t3 = cpu->r[31] + 0x00000030u;
|
|
/* 025172A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025172A8 */ _t4 = cpu->r[31] + 0x000001F0u;
|
|
/* 025172A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025172AC */ cpu->r[4] = 0x00000003u;
|
|
/* 025172B0 */ Gambit_fn_027B8224(cpu);
|
|
/* 025172B4 */ _t5 = cpu->r[31] + 0x00000030u;
|
|
/* 025172B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025172B8 */ cpu->r[5] = 0x00000000u;
|
|
/* 025172BC */ cpu->r[4] = 0x00000004u;
|
|
/* 025172C0 */ Gambit_fn_027B8224(cpu);
|
|
/* 025172C4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025172C8 */ _t6 = cpu->r[12] + 0x00000524u;
|
|
/* 025172C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 025172CC */ cpu->r[12] = 0x100C0000u;
|
|
/* 025172D0 */ _t7 = cpu->r[12] + 0x00000528u;
|
|
/* 025172D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025172D4 */ _t8 = cpu->r[31] + 0x00000134u;
|
|
/* 025172D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025172D8 */ _t9 = cpu->r[12] + 0x00000294u;
|
|
/* 025172D8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 025172DC */ cpu->r[12] = 0x0000001Bu;
|
|
/* 025172E0 */ _t10 = cpu->r[31] + 0x000001F4u;
|
|
/* 025172E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025172E4 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 025172E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 025172E8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025172EC */ _t12 = cpu->r[12] + 0x0000046Cu;
|
|
/* 025172EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025172F0 */ cpu->r[12] = 0x00000000u;
|
|
/* 025172F4 */ _t13 = cpu->r[31] + 0x00000214u;
|
|
/* 025172F4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 025172F8 */ _t14 = cpu->r[31] + 0x00000220u;
|
|
/* 025172F8 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[12]);
|
|
/* 025172FC */ _t15 = cpu->r[31] + 0x00000340u;
|
|
/* 025172FC */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02517300 */ _t16 = cpu->r[31] + 0x00000210u;
|
|
/* 02517300 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]);
|
|
/* 02517304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517308 */ _t17 = cpu->r[31] + 0x00000219u;
|
|
/* 02517308 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[12]);
|
|
/* 0251730C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251730C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251730C */ if (_t19) goto L_02517314; else goto L_02517310;
|
|
L_02517310: ; // 0x2517310
|
|
/* 02517310 */ Gambit_fn_02503D00(cpu);
|
|
L_02517314: ; // 0x2517314
|
|
/* 02517314 */ _t20 = cpu->r[31] + 0x00000218u;
|
|
/* 02517314 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02517318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0251731C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251731C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0251731C */ if (_t22) goto L_02517320; else goto L_02517328;
|
|
L_02517320: ; // 0x2517320
|
|
/* 02517320 */ cpu->r[3] = cpu->r[31];
|
|
/* 02517324 */ Gambit_fn_02517264(cpu);
|
|
L_02517328: ; // 0x2517328
|
|
/* 02517328 */ _t23 = cpu->r[31] + 0x00000228u;
|
|
/* 02517328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0251732C */ _t24 = cpu->r[12] + 0x00000014u;
|
|
/* 0251732C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02517330 */ cpu->ctr = cpu->r[0];
|
|
/* 02517334 */ cpu->r[3] = cpu->r[31] + 0x00000224u;
|
|
/* 02517338 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251733C */ _t25 = cpu->r[31] + 0x00000224u;
|
|
/* 0251733C */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02517340 */ cpu->r[5] = 0x00000001u;
|
|
/* 02517344 */ _t26 = cpu->r[31] + 0x00000130u;
|
|
/* 02517344 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02517348 */ Gambit_fn_02398850(cpu);
|
|
/* 0251734C */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0251734C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02517350 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517350 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02517354 */ cpu->lr = cpu->r[0];
|
|
/* 02517358 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251735C */ return;
|
|
}
|
|
|
|
// fn_02517360 @ 0x2517360
|
|
void Gambit_fn_02517360(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02517360: ; // 0x2517360
|
|
/* 02517360 */ cpu->r[0] = cpu->lr;
|
|
/* 02517364 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02517364 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517364 */ cpu->r[1] = _t0;
|
|
/* 02517368 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517368 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251736C */ cpu->r[31] = cpu->r[3];
|
|
/* 02517370 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02517370 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02517374 */ _t3 = cpu->r[31] + 0x000001FCu;
|
|
/* 02517374 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02517378 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 0251737C */ Gambit_fn_0204E3A8(cpu);
|
|
/* 02517380 */ _t4 = cpu->r[31] + 0x00000200u;
|
|
/* 02517380 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02517384 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 02517388 */ Gambit_fn_0204E43C(cpu);
|
|
/* 0251738C */ _t5 = cpu->r[31] + 0x00000204u;
|
|
/* 0251738C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02517390 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 02517394 */ Gambit_fn_0204E4D0(cpu);
|
|
/* 02517398 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 0251739C */ Gambit_fn_0204CAC0(cpu);
|
|
/* 025173A0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 025173A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025173A4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025173A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025173A8 */ cpu->lr = cpu->r[0];
|
|
/* 025173AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025173B0 */ return;
|
|
}
|
|
|
|
// fn_02517364 @ 0x2517364
|
|
void Gambit_fn_02517364(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02517364: ; // 0x2517364
|
|
/* 02517364 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02517364 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517364 */ cpu->r[1] = _t0;
|
|
/* 02517368 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517368 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251736C */ cpu->r[31] = cpu->r[3];
|
|
/* 02517370 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02517370 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02517374 */ _t3 = cpu->r[31] + 0x000001FCu;
|
|
/* 02517374 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02517378 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 0251737C */ Gambit_fn_0204E3A8(cpu);
|
|
/* 02517380 */ _t4 = cpu->r[31] + 0x00000200u;
|
|
/* 02517380 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02517384 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 02517388 */ Gambit_fn_0204E43C(cpu);
|
|
/* 0251738C */ _t5 = cpu->r[31] + 0x00000204u;
|
|
/* 0251738C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02517390 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 02517394 */ Gambit_fn_0204E4D0(cpu);
|
|
/* 02517398 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 0251739C */ Gambit_fn_0204CAC0(cpu);
|
|
/* 025173A0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 025173A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025173A4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025173A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025173A8 */ cpu->lr = cpu->r[0];
|
|
/* 025173AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025173B0 */ return;
|
|
}
|
|
|
|
// fn_025173B4 @ 0x25173b4
|
|
void Gambit_fn_025173B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_025173B4: ; // 0x25173b4
|
|
/* 025173B4 */ cpu->r[0] = cpu->lr;
|
|
/* 025173B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025173B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025173B8 */ cpu->r[1] = _t0;
|
|
/* 025173BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025173BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025173C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025173C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025173C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025173C8 */ Gambit_fn_024F7158(cpu);
|
|
/* 025173CC */ _t3 = cpu->r[31] + 0x00000338u;
|
|
/* 025173CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025173D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025173D4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025173D4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025173D4 */ if (_t5) goto L_025174C4; else goto L_025173D8;
|
|
L_025173D8: ; // 0x25173d8
|
|
/* 025173D8 */ _t6 = cpu->r[3] + 0x000001CCu;
|
|
/* 025173D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025173DC */ _t7 = cpu->r[12] + 0x0000002Cu;
|
|
/* 025173DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025173E0 */ cpu->ctr = cpu->r[0];
|
|
/* 025173E4 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 025173E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025173EC */ _t8 = cpu->r[31] + 0x00000338u;
|
|
/* 025173EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025173F0 */ _t9 = cpu->r[3] + 0x000001CCu;
|
|
/* 025173F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025173F4 */ _t10 = cpu->r[9] + 0x00000024u;
|
|
/* 025173F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025173F8 */ cpu->ctr = cpu->r[10];
|
|
/* 025173FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517400 */ _t11 = cpu->r[31] + 0x00000338u;
|
|
/* 02517400 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02517404 */ _t12 = cpu->r[31] + 0x00000054u;
|
|
/* 02517404 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02517408 */ _t13 = cpu->r[11] + 0x000001ECu;
|
|
/* 02517408 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 0251740C */ _t14 = cpu->r[31] + 0x00000058u;
|
|
/* 0251740C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02517410 */ _t15 = cpu->r[11] + 0x000001F0u;
|
|
/* 02517410 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02517414 */ _t16 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02517414 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02517418 */ _t17 = cpu->r[11] + 0x000001F4u;
|
|
/* 02517418 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 0251741C */ _t18 = cpu->r[31] + 0x00000060u;
|
|
/* 0251741C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02517420 */ _t19 = cpu->r[11] + 0x000001F8u;
|
|
/* 02517420 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02517424 */ _t20 = cpu->r[31] + 0x00000064u;
|
|
/* 02517424 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02517428 */ _t21 = cpu->r[11] + 0x000001FCu;
|
|
/* 02517428 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0251742C */ _t22 = cpu->r[31] + 0x00000068u;
|
|
/* 0251742C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02517430 */ _t23 = cpu->r[11] + 0x00000200u;
|
|
/* 02517430 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 02517434 */ _t24 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02517434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02517438 */ _t25 = cpu->r[11] + 0x00000204u;
|
|
/* 02517438 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0251743C */ _t26 = cpu->r[31] + 0x00000070u;
|
|
/* 0251743C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02517440 */ _t27 = cpu->r[11] + 0x00000208u;
|
|
/* 02517440 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02517444 */ _t28 = cpu->r[31] + 0x00000074u;
|
|
/* 02517444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02517448 */ _t29 = cpu->r[11] + 0x0000020Cu;
|
|
/* 02517448 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 0251744C */ _t30 = cpu->r[31] + 0x00000078u;
|
|
/* 0251744C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02517450 */ _t31 = cpu->r[11] + 0x00000210u;
|
|
/* 02517450 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 02517454 */ _t32 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02517454 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02517458 */ _t33 = cpu->r[11] + 0x00000214u;
|
|
/* 02517458 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0251745C */ _t34 = cpu->r[31] + 0x00000080u;
|
|
/* 0251745C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02517460 */ _t35 = cpu->r[11] + 0x00000218u;
|
|
/* 02517460 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 02517464 */ _t36 = cpu->r[31] + 0x00000084u;
|
|
/* 02517464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02517468 */ _t37 = cpu->r[11] + 0x0000021Cu;
|
|
/* 02517468 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 0251746C */ _t38 = cpu->r[31] + 0x00000088u;
|
|
/* 0251746C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02517470 */ _t39 = cpu->r[11] + 0x00000220u;
|
|
/* 02517470 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 02517474 */ _t40 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02517474 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02517478 */ _t41 = cpu->r[11] + 0x00000224u;
|
|
/* 02517478 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0251747C */ _t42 = cpu->r[31] + 0x00000090u;
|
|
/* 0251747C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02517480 */ _t43 = cpu->r[11] + 0x00000228u;
|
|
/* 02517480 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 02517484 */ _t44 = cpu->r[31] + 0x00000094u;
|
|
/* 02517484 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02517488 */ _t45 = cpu->r[11] + 0x0000022Cu;
|
|
/* 02517488 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 0251748C */ _t46 = cpu->r[31] + 0x00000098u;
|
|
/* 0251748C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02517490 */ _t47 = cpu->r[11] + 0x00000230u;
|
|
/* 02517490 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 02517494 */ _t48 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02517494 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02517498 */ _t49 = cpu->r[11] + 0x00000234u;
|
|
/* 02517498 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 0251749C */ _t50 = cpu->r[31] + 0x000000A0u;
|
|
/* 0251749C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 025174A0 */ _t51 = cpu->r[11] + 0x00000238u;
|
|
/* 025174A0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 025174A4 */ _t52 = cpu->r[31] + 0x000000A4u;
|
|
/* 025174A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 025174A8 */ _t53 = cpu->r[11] + 0x0000023Cu;
|
|
/* 025174A8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 025174AC */ _t54 = cpu->r[31] + 0x000000A8u;
|
|
/* 025174AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 025174B0 */ _t55 = cpu->r[11] + 0x00000240u;
|
|
/* 025174B0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 025174B4 */ _t56 = cpu->r[31] + 0x000000ACu;
|
|
/* 025174B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 025174B8 */ _t57 = cpu->r[11] + 0x00000244u;
|
|
/* 025174B8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 025174BC */ _t58 = cpu->r[31] + 0x000000B0u;
|
|
/* 025174BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 025174C0 */ _t59 = cpu->r[11] + 0x00000248u;
|
|
/* 025174C0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
L_025174C4: ; // 0x25174c4
|
|
/* 025174C4 */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 025174C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025174C8 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025174C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025174CC */ cpu->lr = cpu->r[0];
|
|
/* 025174D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025174D4 */ return;
|
|
}
|
|
|
|
// fn_025173B8 @ 0x25173b8
|
|
void Gambit_fn_025173B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_025173B8: ; // 0x25173b8
|
|
/* 025173B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025173B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025173B8 */ cpu->r[1] = _t0;
|
|
/* 025173BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025173BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025173C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025173C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025173C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025173C8 */ Gambit_fn_024F7158(cpu);
|
|
/* 025173CC */ _t3 = cpu->r[31] + 0x00000338u;
|
|
/* 025173CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025173D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025173D4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025173D4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025173D4 */ if (_t5) goto L_025174C4; else goto L_025173D8;
|
|
L_025173D8: ; // 0x25173d8
|
|
/* 025173D8 */ _t6 = cpu->r[3] + 0x000001CCu;
|
|
/* 025173D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025173DC */ _t7 = cpu->r[12] + 0x0000002Cu;
|
|
/* 025173DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025173E0 */ cpu->ctr = cpu->r[0];
|
|
/* 025173E4 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 025173E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025173EC */ _t8 = cpu->r[31] + 0x00000338u;
|
|
/* 025173EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025173F0 */ _t9 = cpu->r[3] + 0x000001CCu;
|
|
/* 025173F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025173F4 */ _t10 = cpu->r[9] + 0x00000024u;
|
|
/* 025173F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025173F8 */ cpu->ctr = cpu->r[10];
|
|
/* 025173FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517400 */ _t11 = cpu->r[31] + 0x00000338u;
|
|
/* 02517400 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02517404 */ _t12 = cpu->r[31] + 0x00000054u;
|
|
/* 02517404 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02517408 */ _t13 = cpu->r[11] + 0x000001ECu;
|
|
/* 02517408 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 0251740C */ _t14 = cpu->r[31] + 0x00000058u;
|
|
/* 0251740C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02517410 */ _t15 = cpu->r[11] + 0x000001F0u;
|
|
/* 02517410 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02517414 */ _t16 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02517414 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02517418 */ _t17 = cpu->r[11] + 0x000001F4u;
|
|
/* 02517418 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 0251741C */ _t18 = cpu->r[31] + 0x00000060u;
|
|
/* 0251741C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02517420 */ _t19 = cpu->r[11] + 0x000001F8u;
|
|
/* 02517420 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02517424 */ _t20 = cpu->r[31] + 0x00000064u;
|
|
/* 02517424 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02517428 */ _t21 = cpu->r[11] + 0x000001FCu;
|
|
/* 02517428 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0251742C */ _t22 = cpu->r[31] + 0x00000068u;
|
|
/* 0251742C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02517430 */ _t23 = cpu->r[11] + 0x00000200u;
|
|
/* 02517430 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 02517434 */ _t24 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02517434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02517438 */ _t25 = cpu->r[11] + 0x00000204u;
|
|
/* 02517438 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0251743C */ _t26 = cpu->r[31] + 0x00000070u;
|
|
/* 0251743C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02517440 */ _t27 = cpu->r[11] + 0x00000208u;
|
|
/* 02517440 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02517444 */ _t28 = cpu->r[31] + 0x00000074u;
|
|
/* 02517444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02517448 */ _t29 = cpu->r[11] + 0x0000020Cu;
|
|
/* 02517448 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 0251744C */ _t30 = cpu->r[31] + 0x00000078u;
|
|
/* 0251744C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02517450 */ _t31 = cpu->r[11] + 0x00000210u;
|
|
/* 02517450 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 02517454 */ _t32 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02517454 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02517458 */ _t33 = cpu->r[11] + 0x00000214u;
|
|
/* 02517458 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0251745C */ _t34 = cpu->r[31] + 0x00000080u;
|
|
/* 0251745C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02517460 */ _t35 = cpu->r[11] + 0x00000218u;
|
|
/* 02517460 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 02517464 */ _t36 = cpu->r[31] + 0x00000084u;
|
|
/* 02517464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02517468 */ _t37 = cpu->r[11] + 0x0000021Cu;
|
|
/* 02517468 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 0251746C */ _t38 = cpu->r[31] + 0x00000088u;
|
|
/* 0251746C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02517470 */ _t39 = cpu->r[11] + 0x00000220u;
|
|
/* 02517470 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 02517474 */ _t40 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02517474 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02517478 */ _t41 = cpu->r[11] + 0x00000224u;
|
|
/* 02517478 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0251747C */ _t42 = cpu->r[31] + 0x00000090u;
|
|
/* 0251747C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02517480 */ _t43 = cpu->r[11] + 0x00000228u;
|
|
/* 02517480 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 02517484 */ _t44 = cpu->r[31] + 0x00000094u;
|
|
/* 02517484 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02517488 */ _t45 = cpu->r[11] + 0x0000022Cu;
|
|
/* 02517488 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 0251748C */ _t46 = cpu->r[31] + 0x00000098u;
|
|
/* 0251748C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02517490 */ _t47 = cpu->r[11] + 0x00000230u;
|
|
/* 02517490 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 02517494 */ _t48 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02517494 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02517498 */ _t49 = cpu->r[11] + 0x00000234u;
|
|
/* 02517498 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 0251749C */ _t50 = cpu->r[31] + 0x000000A0u;
|
|
/* 0251749C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 025174A0 */ _t51 = cpu->r[11] + 0x00000238u;
|
|
/* 025174A0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 025174A4 */ _t52 = cpu->r[31] + 0x000000A4u;
|
|
/* 025174A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 025174A8 */ _t53 = cpu->r[11] + 0x0000023Cu;
|
|
/* 025174A8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 025174AC */ _t54 = cpu->r[31] + 0x000000A8u;
|
|
/* 025174AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 025174B0 */ _t55 = cpu->r[11] + 0x00000240u;
|
|
/* 025174B0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 025174B4 */ _t56 = cpu->r[31] + 0x000000ACu;
|
|
/* 025174B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 025174B8 */ _t57 = cpu->r[11] + 0x00000244u;
|
|
/* 025174B8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 025174BC */ _t58 = cpu->r[31] + 0x000000B0u;
|
|
/* 025174BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 025174C0 */ _t59 = cpu->r[11] + 0x00000248u;
|
|
/* 025174C0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
L_025174C4: ; // 0x25174c4
|
|
/* 025174C4 */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 025174C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025174C8 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025174C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 025174CC */ cpu->lr = cpu->r[0];
|
|
/* 025174D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025174D4 */ return;
|
|
}
|
|
|
|
// fn_025174D8 @ 0x25174d8
|
|
void Gambit_fn_025174D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376;
|
|
|
|
L_025174D8: ; // 0x25174d8
|
|
/* 025174D8 */ _t0 = cpu->r[1] + 0xFFFFFDD8u;
|
|
/* 025174D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025174D8 */ cpu->r[1] = _t0;
|
|
/* 025174DC */ /* nop */
|
|
/* 025174E0 */ _t1 = cpu->r[1] + 0x000001E8u;
|
|
/* 025174E0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 025174E4 */ _t2 = cpu->r[1] + 0x000001F8u;
|
|
/* 025174E4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 025174E8 */ _t3 = cpu->r[1] + 0x00000208u;
|
|
/* 025174E8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 025174EC */ /* nop */
|
|
/* 025174F0 */ _t4 = cpu->r[1] + 0x00000218u;
|
|
/* 025174F0 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 025174F4 */ /* nop */
|
|
/* 025174F8 */ /* nop */
|
|
/* 025174FC */ _t5 = cpu->r[1] + 0x000001F0u;
|
|
/* 025174FC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[28]);
|
|
/* 02517500 */ _t6 = cpu->r[1] + 0x00000200u;
|
|
/* 02517500 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 02517504 */ _t7 = cpu->r[1] + 0x00000210u;
|
|
/* 02517504 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 02517508 */ /* nop */
|
|
/* 0251750C */ cpu->r[0] = cpu->lr;
|
|
/* 02517510 */ _t8 = cpu->r[1] + 0x0000022Cu;
|
|
/* 02517510 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02517514 */ _t9 = cpu->r[1] + 0x00000220u;
|
|
/* 02517514 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 02517518 */ cpu->r[29] = cpu->r[3];
|
|
/* 0251751C */ Gambit_fn_024F65FC(cpu);
|
|
/* 02517520 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02517524 */ _t10 = cpu->r[9] + 0xFFFFE864u;
|
|
/* 02517524 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02517524 */ cpu->r[9] = _t10;
|
|
/* 02517528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251752C */ cpu->r[4] = 0x101D0000u;
|
|
/* 02517530 */ cpu->r[31] = cpu->r[3];
|
|
/* 02517534 */ cpu->r[4] = cpu->r[4] + 0x000009B8u;
|
|
/* 02517538 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517538 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02517538 */ if (_t12) goto L_0251753C; else goto L_02517550;
|
|
L_0251753C: ; // 0x251753c
|
|
/* 0251753C */ cpu->r[8] = 0x100C0000u;
|
|
/* 02517540 */ cpu->r[6] = 0x00000001u;
|
|
/* 02517544 */ cpu->r[8] = cpu->r[8] + 0x0000038Cu;
|
|
/* 02517548 */ _t13 = cpu->r[9] + 0x00000000u;
|
|
/* 02517548 */ rbrew_write32(cpu->mem, _t13, cpu->r[6]);
|
|
/* 0251754C */ _t14 = cpu->r[4] + 0x00000000u;
|
|
/* 0251754C */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
L_02517550: ; // 0x2517550
|
|
/* 02517550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02517554 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517554 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02517554 */ if (_t16) goto L_02517574; else goto L_02517558;
|
|
L_02517558: ; // 0x2517558
|
|
/* 02517558 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 02517558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251755C */ _t18 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0251755C */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02517560 */ cpu->ctr = cpu->r[8];
|
|
/* 02517564 */ cpu->r[3] = cpu->r[31];
|
|
/* 02517568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251756C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517570 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517570 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02517570 */ if (_t20) goto L_02517574; else goto L_02517578;
|
|
L_02517574: ; // 0x2517574
|
|
/* 02517574 */ cpu->r[31] = 0x00000000u;
|
|
L_02517578: ; // 0x2517578
|
|
/* 02517578 */ _t21 = cpu->r[31] + 0x000001DCu;
|
|
/* 02517578 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0251757C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02517580 */ cpu->r[9] = 0x43300000u;
|
|
/* 02517584 */ _t22 = cpu->r[7] + 0x00000530u;
|
|
/* 02517584 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 02517588 */ cpu->r[11] = cpu->r[5] ^ 0x80000000u;
|
|
/* 0251758C */ _t23 = cpu->r[1] + 0x00000160u;
|
|
/* 0251758C */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 02517590 */ _t24 = cpu->r[1] + 0x00000164u;
|
|
/* 02517590 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02517594 */ _t25 = cpu->r[1] + 0x00000160u;
|
|
/* 02517594 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 02517598 */ cpu->f[13] = cpu->f[11] - cpu->f[12];
|
|
/* 0251759C */ cpu->r[6] = 0x100C0000u;
|
|
/* 025175A0 */ cpu->f[9] = (double)(float)cpu->f[13];
|
|
/* 025175A4 */ _t26 = cpu->r[6] + 0x00000528u;
|
|
/* 025175A4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 025175A8 */ cpu->f[0] = cpu->f[29] / cpu->f[9];
|
|
/* 025175AC */ _t27 = cpu->r[29] + 0x00000214u;
|
|
/* 025175AC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 025175B0 */ cpu->f[0] = cpu->f[6] + cpu->f[0];
|
|
/* 025175B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[29]);
|
|
/* 025175B8 */ cpu->f[12] = cpu->f[0];
|
|
/* 025175BC */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025175BC */ _t29 = _t28 & 0x00000001u;
|
|
/* 025175BC */ if (_t29) goto L_025175C0; else goto L_025175FC;
|
|
L_025175C0: ; // 0x25175c0
|
|
/* 025175C0 */ _t30 = cpu->r[29] + 0x00000214u;
|
|
/* 025175C0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 025175C4 */ /* nop */
|
|
/* 025175C8 */ _t31 = cpu->r[1] + 0x00000200u;
|
|
/* 025175C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 025175CC */ _t32 = cpu->r[1] + 0x00000210u;
|
|
/* 025175CC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 025175D0 */ _t33 = cpu->r[1] + 0x000001F8u;
|
|
/* 025175D0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 025175D4 */ _t34 = cpu->r[1] + 0x00000208u;
|
|
/* 025175D4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 025175D8 */ _t35 = cpu->r[1] + 0x000001F0u;
|
|
/* 025175D8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 025175DC */ _t36 = cpu->r[1] + 0x00000220u;
|
|
/* 025175DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 025175E0 */ _t37 = cpu->r[1] + 0x000001E8u;
|
|
/* 025175E0 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 025175E4 */ _t38 = cpu->r[1] + 0x00000218u;
|
|
/* 025175E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 025175E8 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025175E8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 025175E8 */ if (_t40) goto L_025175EC; // else: addr-0 trap, fall-through
|
|
L_025175EC: ; // 0x25175ec
|
|
/* 025175EC */ _t41 = cpu->r[1] + 0x0000022Cu;
|
|
/* 025175EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025175F0 */ cpu->lr = cpu->r[0];
|
|
/* 025175F4 */ cpu->r[1] = cpu->r[1] + 0x00000228u;
|
|
/* 025175F8 */ return;
|
|
L_025175FC: ; // 0x25175fc
|
|
/* 025175FC */ cpu->f[7] = cpu->f[0] - cpu->f[29];
|
|
/* 02517600 */ cpu->r[4] = 0x00000000u;
|
|
/* 02517604 */ _t42 = cpu->r[29] + 0x00000134u;
|
|
/* 02517604 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02517608 */ _t43 = cpu->r[29] + 0x00000214u;
|
|
/* 02517608 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[7]);
|
|
/* 0251760C */ _t44 = cpu->r[7] + 0x000001C8u;
|
|
/* 0251760C */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[4]);
|
|
/* 02517610 */ _t45 = cpu->r[29] + 0x0000020Cu;
|
|
/* 02517610 */ cpu->r[12] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02517614 */ _t46 = cpu->r[12] + 0x00000010u;
|
|
/* 02517614 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02517618 */ _t47 = cpu->r[12] + 0x00000000u;
|
|
/* 02517618 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0251761C */ _t48 = cpu->r[12] + 0x00000020u;
|
|
/* 0251761C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02517620 */ _t49 = cpu->r[1] + 0x00000094u;
|
|
/* 02517620 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02517624 */ _t50 = cpu->r[1] + 0x00000098u;
|
|
/* 02517624 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 02517628 */ _t51 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02517628 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[6]);
|
|
/* 0251762C */ _t52 = cpu->r[12] + 0x00000004u;
|
|
/* 0251762C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02517630 */ _t53 = cpu->r[12] + 0x00000014u;
|
|
/* 02517630 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02517634 */ _t54 = cpu->r[12] + 0x00000024u;
|
|
/* 02517634 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02517638 */ _t55 = cpu->r[1] + 0x000000A4u;
|
|
/* 02517638 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[8]);
|
|
/* 0251763C */ _t56 = cpu->r[1] + 0x000000A8u;
|
|
/* 0251763C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 02517640 */ _t57 = cpu->r[1] + 0x000000A8u;
|
|
/* 02517640 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02517644 */ _t58 = cpu->r[1] + 0x000000A0u;
|
|
/* 02517644 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[7]);
|
|
/* 02517648 */ _t59 = cpu->r[12] + 0x00000028u;
|
|
/* 02517648 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0251764C */ _t60 = cpu->r[12] + 0x00000018u;
|
|
/* 0251764C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02517650 */ _t61 = cpu->r[12] + 0x00000008u;
|
|
/* 02517650 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02517654 */ _t62 = cpu->r[1] + 0x000000B0u;
|
|
/* 02517654 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[12]);
|
|
/* 02517658 */ _t63 = cpu->r[1] + 0x000000B4u;
|
|
/* 02517658 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0251765C */ _t64 = cpu->r[1] + 0x000000ACu;
|
|
/* 0251765C */ rbrew_write_f32(cpu->mem, _t64, cpu->f[10]);
|
|
/* 02517660 */ _t65 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02517660 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02517664 */ _t66 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02517664 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02517668 */ _t67 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02517668 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0251766C */ _t68 = cpu->r[1] + 0x000000A0u;
|
|
/* 0251766C */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02517670 */ _t69 = cpu->r[1] + 0x000000A4u;
|
|
/* 02517670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02517674 */ _t70 = cpu->r[1] + 0x00000174u;
|
|
/* 02517674 */ rbrew_write32(cpu->mem, _t70, cpu->r[4]);
|
|
/* 02517678 */ _t71 = cpu->r[1] + 0x00000178u;
|
|
/* 02517678 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0251767C */ /* nop */
|
|
/* 02517680 */ _t72 = cpu->r[1] + 0x0000017Cu;
|
|
/* 02517680 */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 02517684 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02517688 */ _t73 = cpu->r[1] + 0x0000017Cu;
|
|
/* 02517688 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0251768C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02517690 */ _t74 = cpu->r[5] + 0x00000538u;
|
|
/* 02517690 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02517694 */ _t75 = cpu->r[1] + 0x000000BCu;
|
|
/* 02517694 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[6]);
|
|
/* 02517698 */ cpu->f[12] = cpu->f[13] * cpu->f[11];
|
|
/* 0251769C */ _t76 = cpu->r[1] + 0x000000B8u;
|
|
/* 0251769C */ rbrew_write_f32(cpu->mem, _t76, cpu->f[0]);
|
|
/* 025176A0 */ /* nop */
|
|
/* 025176A4 */ _t77 = cpu->r[12] + 0x000004B0u;
|
|
/* 025176A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 025176A8 */ /* nop */
|
|
/* 025176AC */ _t78 = cpu->r[1] + 0x0000012Cu;
|
|
/* 025176AC */ rbrew_write_f32(cpu->mem, _t78, cpu->f[12]);
|
|
/* 025176B0 */ /* nop */
|
|
/* 025176B4 */ _t79 = cpu->r[1] + 0x00000124u;
|
|
/* 025176B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 025176B8 */ _t80 = cpu->r[1] + 0x00000128u;
|
|
/* 025176B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 025176BC */ _t81 = cpu->r[1] + 0x000000D0u;
|
|
/* 025176BC */ rbrew_write32(cpu->mem, _t81, cpu->r[11]);
|
|
/* 025176C0 */ _t82 = cpu->r[1] + 0x0000012Cu;
|
|
/* 025176C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 025176C4 */ _t83 = cpu->r[1] + 0x000000D4u;
|
|
/* 025176C4 */ rbrew_write32(cpu->mem, _t83, cpu->r[12]);
|
|
/* 025176C8 */ _t84 = cpu->r[1] + 0x000000D8u;
|
|
/* 025176C8 */ rbrew_write32(cpu->mem, _t84, cpu->r[0]);
|
|
/* 025176CC */ _t85 = cpu->r[1] + 0x000000D8u;
|
|
/* 025176CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 025176D0 */ /* nop */
|
|
/* 025176D4 */ cpu->f[8] = cpu->f[7] + cpu->f[13];
|
|
/* 025176D8 */ _t86 = cpu->r[1] + 0x000000C0u;
|
|
/* 025176D8 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[7]);
|
|
/* 025176DC */ /* nop */
|
|
/* 025176E0 */ /* nop */
|
|
/* 025176E4 */ _t87 = cpu->r[1] + 0x00000118u;
|
|
/* 025176E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 025176E8 */ _t88 = cpu->r[1] + 0x00000120u;
|
|
/* 025176E8 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[8]);
|
|
/* 025176EC */ _t89 = cpu->r[1] + 0x00000120u;
|
|
/* 025176EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 025176F0 */ _t90 = cpu->r[1] + 0x00000180u;
|
|
/* 025176F0 */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 025176F4 */ _t91 = cpu->r[1] + 0x00000168u;
|
|
/* 025176F4 */ rbrew_write32(cpu->mem, _t91, cpu->r[11]);
|
|
/* 025176F8 */ _t92 = cpu->r[1] + 0x0000011Cu;
|
|
/* 025176F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t92);
|
|
/* 025176FC */ _t93 = cpu->r[29] + 0x000001F0u;
|
|
/* 025176FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02517700 */ _t94 = cpu->r[1] + 0x0000016Cu;
|
|
/* 02517700 */ rbrew_write32(cpu->mem, _t94, cpu->r[12]);
|
|
/* 02517704 */ _t95 = cpu->r[1] + 0x00000184u;
|
|
/* 02517704 */ rbrew_write32(cpu->mem, _t95, cpu->r[12]);
|
|
/* 02517708 */ _t96 = cpu->r[1] + 0x00000170u;
|
|
/* 02517708 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 0251770C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02517710 */ _t97 = cpu->r[1] + 0x00000188u;
|
|
/* 02517710 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 02517714 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517714 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02517714 */ if (_t99) goto L_02517718; else goto L_025177A4;
|
|
L_02517718: ; // 0x2517718
|
|
/* 02517718 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251771C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02517720 */ _t100 = cpu->r[5] + 0x00000524u;
|
|
/* 02517720 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02517724 */ _t101 = cpu->r[12] + 0x00000540u;
|
|
/* 02517724 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02517728 */ /* nop */
|
|
/* 0251772C */ cpu->f[7] = fma(cpu->f[0], cpu->f[13], -(cpu->f[31]));
|
|
/* 02517730 */ /* nop */
|
|
/* 02517734 */ _t102 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02517734 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02517738 */ /* nop */
|
|
/* 0251773C */ /* nop */
|
|
/* 02517740 */ _t103 = cpu->r[1] + 0x00000130u;
|
|
/* 02517740 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02517744 */ _t104 = cpu->r[1] + 0x00000134u;
|
|
/* 02517744 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02517748 */ cpu->f[7] = cpu->f[8] * cpu->f[7];
|
|
/* 0251774C */ _t105 = cpu->r[1] + 0x000000D0u;
|
|
/* 0251774C */ rbrew_write32(cpu->mem, _t105, cpu->r[9]);
|
|
/* 02517750 */ _t106 = cpu->r[1] + 0x000000D4u;
|
|
/* 02517750 */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 02517754 */ /* nop */
|
|
/* 02517758 */ _t107 = cpu->r[1] + 0x00000138u;
|
|
/* 02517758 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[7]);
|
|
/* 0251775C */ _t108 = cpu->r[1] + 0x00000138u;
|
|
/* 0251775C */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02517760 */ _t109 = cpu->r[1] + 0x00000170u;
|
|
/* 02517760 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02517764 */ _t110 = cpu->r[1] + 0x000000D8u;
|
|
/* 02517764 */ rbrew_write32(cpu->mem, _t110, cpu->r[4]);
|
|
/* 02517768 */ /* nop */
|
|
/* 0251776C */ _t111 = cpu->r[1] + 0x000000D8u;
|
|
/* 0251776C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 02517770 */ /* nop */
|
|
/* 02517774 */ _t112 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02517774 */ cpu->r[10] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02517778 */ cpu->f[10] = cpu->f[9] + cpu->f[10];
|
|
/* 0251777C */ _t113 = cpu->r[1] + 0x00000140u;
|
|
/* 0251777C */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02517780 */ _t114 = cpu->r[1] + 0x0000018Cu;
|
|
/* 02517780 */ rbrew_write32(cpu->mem, _t114, cpu->r[10]);
|
|
/* 02517784 */ _t115 = cpu->r[1] + 0x00000144u;
|
|
/* 02517784 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[10]);
|
|
/* 02517788 */ _t116 = cpu->r[1] + 0x00000144u;
|
|
/* 02517788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0251778C */ _t117 = cpu->r[1] + 0x00000190u;
|
|
/* 0251778C */ rbrew_write32(cpu->mem, _t117, cpu->r[12]);
|
|
/* 02517790 */ _t118 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02517790 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02517794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02517798 */ _t119 = cpu->r[1] + 0x00000194u;
|
|
/* 02517798 */ rbrew_write32(cpu->mem, _t119, cpu->r[0]);
|
|
/* 0251779C */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251779C */ _t121 = _t120 & 0x00000001u;
|
|
/* 0251779C */ if (_t121) goto L_0251783C; else goto L_025177A0;
|
|
L_025177A0: ; // 0x25177a0
|
|
/* 025177A0 */ goto L_02517834;
|
|
L_025177A4: ; // 0x25177a4
|
|
/* 025177A4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025177A8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025177AC */ _t122 = cpu->r[8] + 0x0000053Cu;
|
|
/* 025177AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 025177B0 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025177B4 */ _t123 = cpu->r[12] + 0x00000540u;
|
|
/* 025177B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 025177B8 */ _t124 = cpu->r[5] + 0x00000524u;
|
|
/* 025177B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 025177BC */ /* nop */
|
|
/* 025177C0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[13], -(cpu->f[31]));
|
|
/* 025177C4 */ /* nop */
|
|
/* 025177C8 */ _t125 = cpu->r[1] + 0x0000009Cu;
|
|
/* 025177C8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 025177CC */ /* nop */
|
|
/* 025177D0 */ _t126 = cpu->r[1] + 0x00000170u;
|
|
/* 025177D0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 025177D4 */ cpu->f[7] = cpu->f[8] * cpu->f[7];
|
|
/* 025177D8 */ /* nop */
|
|
/* 025177DC */ _t127 = cpu->r[1] + 0x00000134u;
|
|
/* 025177DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 025177E0 */ _t128 = cpu->r[1] + 0x00000130u;
|
|
/* 025177E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t128);
|
|
/* 025177E4 */ _t129 = cpu->r[1] + 0x00000138u;
|
|
/* 025177E4 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[7]);
|
|
/* 025177E8 */ _t130 = cpu->r[1] + 0x00000138u;
|
|
/* 025177E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t130);
|
|
/* 025177EC */ _t131 = cpu->r[1] + 0x000000D0u;
|
|
/* 025177EC */ rbrew_write32(cpu->mem, _t131, cpu->r[9]);
|
|
/* 025177F0 */ _t132 = cpu->r[1] + 0x000000D4u;
|
|
/* 025177F0 */ rbrew_write32(cpu->mem, _t132, cpu->r[0]);
|
|
/* 025177F4 */ _t133 = cpu->r[1] + 0x000000D8u;
|
|
/* 025177F4 */ rbrew_write32(cpu->mem, _t133, cpu->r[4]);
|
|
/* 025177F8 */ _t134 = cpu->r[1] + 0x000000D8u;
|
|
/* 025177F8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 025177FC */ /* nop */
|
|
/* 02517800 */ cpu->f[10] = cpu->f[9] + cpu->f[10];
|
|
/* 02517804 */ /* nop */
|
|
/* 02517808 */ _t135 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02517808 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0251780C */ _t136 = cpu->r[1] + 0x00000144u;
|
|
/* 0251780C */ rbrew_write_f32(cpu->mem, _t136, cpu->f[10]);
|
|
/* 02517810 */ _t137 = cpu->r[1] + 0x00000144u;
|
|
/* 02517810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02517814 */ /* nop */
|
|
/* 02517818 */ _t138 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02517818 */ cpu->r[10] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0251781C */ _t139 = cpu->r[1] + 0x00000140u;
|
|
/* 0251781C */ cpu->r[12] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02517820 */ _t140 = cpu->r[1] + 0x0000018Cu;
|
|
/* 02517820 */ rbrew_write32(cpu->mem, _t140, cpu->r[10]);
|
|
/* 02517824 */ _t141 = cpu->r[1] + 0x00000190u;
|
|
/* 02517824 */ rbrew_write32(cpu->mem, _t141, cpu->r[12]);
|
|
/* 02517828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251782C */ _t142 = cpu->r[1] + 0x00000194u;
|
|
/* 0251782C */ rbrew_write32(cpu->mem, _t142, cpu->r[0]);
|
|
/* 02517830 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517830 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02517830 */ if (_t144) goto L_0251783C; else goto L_02517834;
|
|
L_02517834: ; // 0x2517834
|
|
/* 02517834 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02517838 */ _t145 = cpu->r[9] + 0x0000053Cu;
|
|
/* 02517838 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t145);
|
|
L_0251783C: ; // 0x251783c
|
|
/* 0251783C */ cpu->f[10] = fma(cpu->f[0], cpu->f[13], -(cpu->f[31]));
|
|
/* 02517840 */ /* nop */
|
|
/* 02517844 */ /* nop */
|
|
/* 02517848 */ _t146 = cpu->r[1] + 0x00000148u;
|
|
/* 02517848 */ cpu->r[7] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0251784C */ _t147 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0251784C */ cpu->r[9] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02517850 */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 02517854 */ _t148 = cpu->r[1] + 0x000000D0u;
|
|
/* 02517854 */ rbrew_write32(cpu->mem, _t148, cpu->r[7]);
|
|
/* 02517858 */ _t149 = cpu->r[1] + 0x000000D4u;
|
|
/* 02517858 */ rbrew_write32(cpu->mem, _t149, cpu->r[9]);
|
|
/* 0251785C */ /* nop */
|
|
/* 02517860 */ _t150 = cpu->r[1] + 0x00000150u;
|
|
/* 02517860 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[0]);
|
|
/* 02517864 */ _t151 = cpu->r[1] + 0x00000150u;
|
|
/* 02517864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02517868 */ /* nop */
|
|
/* 0251786C */ _t152 = cpu->r[1] + 0x000000D8u;
|
|
/* 0251786C */ rbrew_write32(cpu->mem, _t152, cpu->r[0]);
|
|
/* 02517870 */ _t153 = cpu->r[1] + 0x000000D8u;
|
|
/* 02517870 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 02517874 */ /* nop */
|
|
/* 02517878 */ _t154 = cpu->r[1] + 0x00000154u;
|
|
/* 02517878 */ cpu->r[6] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0251787C */ cpu->f[8] = cpu->f[9] - cpu->f[11];
|
|
/* 02517880 */ _t155 = cpu->r[1] + 0x00000158u;
|
|
/* 02517880 */ cpu->r[7] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02517884 */ cpu->r[31] = cpu->r[1] + 0x000001A4u;
|
|
/* 02517888 */ _t156 = cpu->r[1] + 0x00000198u;
|
|
/* 02517888 */ rbrew_write32(cpu->mem, _t156, cpu->r[6]);
|
|
/* 0251788C */ cpu->r[30] = cpu->r[1] + 0x00000180u;
|
|
/* 02517890 */ _t157 = cpu->r[1] + 0x0000015Cu;
|
|
/* 02517890 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[8]);
|
|
/* 02517894 */ _t158 = cpu->r[1] + 0x0000015Cu;
|
|
/* 02517894 */ cpu->r[9] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02517898 */ cpu->r[24] = 0x00000000u;
|
|
/* 0251789C */ _t159 = cpu->r[1] + 0x0000019Cu;
|
|
/* 0251789C */ rbrew_write32(cpu->mem, _t159, cpu->r[7]);
|
|
/* 025178A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 025178A4 */ _t160 = cpu->r[1] + 0x000001A0u;
|
|
/* 025178A4 */ rbrew_write32(cpu->mem, _t160, cpu->r[9]);
|
|
/* 025178A8 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025178A8 */ _t162 = _t161 & 0x00000001u;
|
|
/* 025178A8 */ if (_t162) goto L_02517994; else goto L_025178AC;
|
|
L_025178AC: ; // 0x25178ac
|
|
/* 025178AC */ cpu->r[5] = 0x101E0000u;
|
|
/* 025178B0 */ cpu->r[25] = 0x00040000u;
|
|
/* 025178B4 */ _t163 = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 025178B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 025178B8 */ cpu->r[25] = cpu->r[25] + 0x00000088u;
|
|
/* 025178BC */ cpu->r[26] = 0x101C0000u;
|
|
/* 025178C0 */ _t164 = cpu->r[29] + 0x00000208u;
|
|
/* 025178C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t164);
|
|
/* 025178C4 */ cpu->r[27] = 0x00000000u;
|
|
L_025178C8: ; // 0x25178c8
|
|
/* 025178C8 */ _t165 = cpu->r[26] + 0x00001EF8u;
|
|
/* 025178C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t165);
|
|
/* 025178CC */ cpu->r[4] = cpu->r[30];
|
|
/* 025178D0 */ cpu->f[2] = cpu->f[30];
|
|
/* 025178D4 */ _t166 = cpu->r[28] + 0x00000004u;
|
|
/* 025178D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t166);
|
|
/* 025178D8 */ cpu->r[5] = 0x00000000u;
|
|
/* 025178DC */ cpu->f[1] = cpu->f[31];
|
|
/* 025178E0 */ _t167 = cpu->r[1] + 0x00000008u;
|
|
/* 025178E0 */ rbrew_write32(cpu->mem, _t167, cpu->r[28]);
|
|
/* 025178E4 */ cpu->r[8] = 0x000000FFu;
|
|
/* 025178E8 */ cpu->r[7] = cpu->r[25];
|
|
/* 025178EC */ cpu->r[6] = cpu->r[5];
|
|
/* 025178F0 */ cpu->r[10] = cpu->r[27];
|
|
/* 025178F4 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 025178F8 */ _t168 = cpu->r[28] + 0x00000000u;
|
|
/* 025178F8 */ rbrew_write32(cpu->mem, _t168, cpu->r[3]);
|
|
/* 025178FC */ _t169 = cpu->r[29] + 0x00000208u;
|
|
/* 025178FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02517900 */ _t170 = cpu->r[28] + 0x00000000u;
|
|
/* 02517900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02517904 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02517904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02517908 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517908 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02517908 */ if (_t172) goto L_02517988; else goto L_0251790C;
|
|
L_0251790C: ; // 0x251790c
|
|
/* 0251790C */ _t173 = cpu->r[28] + 0x00000004u;
|
|
/* 0251790C */ cpu->r[6] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02517910 */ _t174 = cpu->r[6] + 0x0000015Cu;
|
|
/* 02517910 */ cpu->r[10] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02517914 */ cpu->r[7] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 02517914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02517918 */ _t175 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517918 */ _t176 = _t175 & 0x00000001u;
|
|
/* 02517918 */ if (_t176) goto L_0251791C; else goto L_0251792C;
|
|
L_0251791C: ; // 0x251791c
|
|
/* 0251791C */ _t177 = cpu->r[28] + 0x00000004u;
|
|
/* 0251791C */ cpu->r[10] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02517920 */ _t178 = cpu->r[10] + 0x0000015Cu;
|
|
/* 02517920 */ cpu->r[5] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02517924 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 02517924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02517928 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517928 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02517928 */ if (_t180) goto L_02517988; else goto L_0251792C;
|
|
L_0251792C: ; // 0x251792c
|
|
/* 0251792C */ _t181 = cpu->r[29] + 0x00000134u;
|
|
/* 0251792C */ cpu->r[10] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02517930 */ cpu->r[6] = 0x00000000u;
|
|
/* 02517934 */ cpu->r[24] = 0x00000001u;
|
|
/* 02517938 */ _t182 = cpu->r[29] + 0x00000220u;
|
|
/* 02517938 */ rbrew_write8(cpu->mem, _t182, (uint8_t)cpu->r[6]);
|
|
/* 0251793C */ cpu->r[31] = 0x101C0000u;
|
|
/* 02517940 */ _t183 = cpu->r[10] + 0x000001C8u;
|
|
/* 02517940 */ rbrew_write8(cpu->mem, _t183, (uint8_t)cpu->r[24]);
|
|
/* 02517944 */ _t184 = cpu->r[31] + 0x00006000u;
|
|
/* 02517944 */ cpu->r[3] = rbrew_read32(cpu->mem, _t184);
|
|
/* 02517944 */ cpu->r[31] = _t184;
|
|
/* 02517948 */ _t185 = cpu->r[3] + 0x00000004u;
|
|
/* 02517948 */ cpu->r[12] = rbrew_read32(cpu->mem, _t185);
|
|
/* 0251794C */ _t186 = cpu->r[12] + 0x00000134u;
|
|
/* 0251794C */ cpu->r[7] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02517950 */ _t187 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02517950 */ cpu->r[8] = rbrew_read32(cpu->mem, _t187);
|
|
/* 02517954 */ cpu->ctr = cpu->r[7];
|
|
/* 02517958 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0251795C */ cpu->r[17] = cpu->r[8] - cpu->r[10];
|
|
/* 02517960 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517964 */ _t188 = cpu->r[29] + 0x00000208u;
|
|
/* 02517964 */ cpu->r[28] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02517968 */ _t189 = cpu->r[29] + 0x000001F0u;
|
|
/* 02517968 */ cpu->r[8] = rbrew_read32(cpu->mem, _t189);
|
|
/* 0251796C */ _t190 = cpu->r[28] + 0x00000004u;
|
|
/* 0251796C */ cpu->r[10] = rbrew_read32(cpu->mem, _t190);
|
|
/* 02517970 */ cpu->r[18] = cpu->r[3];
|
|
/* 02517974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02517978 */ cpu->r[19] = 0x0000000Fu;
|
|
/* 0251797C */ _t191 = cpu->r[10] + 0x00000164u;
|
|
/* 0251797C */ cpu->r[12] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02517980 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517980 */ _t193 = _t192 & 0x00000001u;
|
|
/* 02517980 */ if (_t193) goto L_02517984; else goto L_025179F8;
|
|
L_02517984: ; // 0x2517984
|
|
/* 02517984 */ goto L_025179F4;
|
|
L_02517988: ; // 0x2517988
|
|
/* 02517988 */ cpu->r[30] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0251798C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02517990 */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517990 */ _t195 = _t194 & 0x00000001u;
|
|
/* 02517990 */ if (_t195) goto L_02517994; else goto L_025178C8;
|
|
L_02517994: ; // 0x2517994
|
|
/* 02517994 */ _t196 = cpu->r[29] + 0x00000134u;
|
|
/* 02517994 */ cpu->r[10] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02517998 */ cpu->r[6] = cpu->r[24] ^ 0x00000001u;
|
|
/* 0251799C */ cpu->r[9] = 0x00000001u;
|
|
/* 025179A0 */ _t197 = cpu->r[29] + 0x00000220u;
|
|
/* 025179A0 */ rbrew_write8(cpu->mem, _t197, (uint8_t)cpu->r[6]);
|
|
/* 025179A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 025179A8 */ _t198 = cpu->r[10] + 0x000001C8u;
|
|
/* 025179A8 */ rbrew_write8(cpu->mem, _t198, (uint8_t)cpu->r[9]);
|
|
/* 025179AC */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025179AC */ _t200 = _t199 & 0x00000001u;
|
|
/* 025179AC */ if (_t200) goto L_02517F24; else goto L_025179B0;
|
|
L_025179B0: ; // 0x25179b0
|
|
/* 025179B0 */ cpu->r[31] = 0x101C0000u;
|
|
/* 025179B4 */ _t201 = cpu->r[31] + 0x00006000u;
|
|
/* 025179B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t201);
|
|
/* 025179B4 */ cpu->r[31] = _t201;
|
|
/* 025179B8 */ _t202 = cpu->r[3] + 0x00000004u;
|
|
/* 025179B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t202);
|
|
/* 025179BC */ _t203 = cpu->r[12] + 0x00000134u;
|
|
/* 025179BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t203);
|
|
/* 025179C0 */ _t204 = cpu->r[29] + 0x0000002Cu;
|
|
/* 025179C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t204);
|
|
/* 025179C4 */ cpu->ctr = cpu->r[7];
|
|
/* 025179C8 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 025179CC */ cpu->r[17] = cpu->r[8] - cpu->r[10];
|
|
/* 025179D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025179D4 */ _t205 = cpu->r[29] + 0x00000208u;
|
|
/* 025179D4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t205);
|
|
/* 025179D8 */ _t206 = cpu->r[29] + 0x000001F0u;
|
|
/* 025179D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t206);
|
|
/* 025179DC */ _t207 = cpu->r[28] + 0x00000004u;
|
|
/* 025179DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t207);
|
|
/* 025179E0 */ cpu->r[18] = cpu->r[3];
|
|
/* 025179E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 025179E8 */ cpu->r[19] = 0x0000000Fu;
|
|
/* 025179EC */ _t208 = cpu->r[10] + 0x00000164u;
|
|
/* 025179EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
/* 025179F0 */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025179F0 */ _t210 = _t209 & 0x00000001u;
|
|
/* 025179F0 */ if (_t210) goto L_025179F4; else goto L_025179F8;
|
|
L_025179F4: ; // 0x25179f4
|
|
/* 025179F4 */ cpu->r[19] = 0x00000010u;
|
|
L_025179F8: ; // 0x25179f8
|
|
/* 025179F8 */ cpu->r[0] = 0x101E0000u;
|
|
/* 025179FC */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02517A00 */ cpu->r[0] = cpu->r[0] + 0xFFFF9484u;
|
|
/* 02517A04 */ _t211 = cpu->r[10] + cpu->r[0];
|
|
/* 02517A04 */ cpu->r[15] = rbrew_read32(cpu->mem, _t211);
|
|
/* 02517A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[15], 0x00000000u);
|
|
/* 02517A0C */ cpu->r[27] = 0x00000000u;
|
|
/* 02517A10 */ _t212 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02517A10 */ _t213 = _t212 & 0x00000001u;
|
|
/* 02517A10 */ if (_t213) goto L_02517A14; else goto L_02517EC4;
|
|
L_02517A14: ; // 0x2517a14
|
|
/* 02517A14 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02517A18 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02517A1C */ cpu->r[16] = 0x00000000u;
|
|
/* 02517A20 */ _t214 = cpu->r[11] + 0x00000544u;
|
|
/* 02517A20 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t214);
|
|
/* 02517A24 */ cpu->r[24] = cpu->r[1] + 0x00000078u;
|
|
/* 02517A28 */ cpu->r[25] = 0x00000003u;
|
|
/* 02517A2C */ cpu->r[26] = 0x000000FEu;
|
|
/* 02517A30 */ _t215 = cpu->r[1] + 0x00000014u;
|
|
/* 02517A30 */ rbrew_write8(cpu->mem, _t215, (uint8_t)cpu->r[26]);
|
|
/* 02517A34 */ cpu->r[7] = cpu->r[1] + 0x00000058u;
|
|
/* 02517A38 */ cpu->r[8] = cpu->r[1] + 0x00000068u;
|
|
/* 02517A3C */ _t216 = cpu->r[1] + 0x00000068u;
|
|
/* 02517A3C */ rbrew_write32(cpu->mem, _t216, cpu->r[16]);
|
|
/* 02517A40 */ cpu->r[10] = cpu->r[1] + 0x00000048u;
|
|
/* 02517A44 */ _t217 = cpu->r[28] + 0x00000004u;
|
|
/* 02517A44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t217);
|
|
/* 02517A48 */ cpu->r[9] = 0x00000000u;
|
|
/* 02517A4C */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02517A50 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02517A54 */ cpu->r[4] = cpu->r[27];
|
|
/* 02517A58 */ Gambit_fn_02040F70(cpu);
|
|
/* 02517A5C */ _t218 = cpu->r[1] + 0x00000048u;
|
|
/* 02517A5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t218);
|
|
/* 02517A60 */ _t219 = cpu->r[7] + 0x00000000u;
|
|
/* 02517A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t219);
|
|
/* 02517A64 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02517A64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02517A68 */ /* nop */
|
|
/* 02517A6C */ _t220 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517A6C */ _t221 = _t220 & 0x00000001u;
|
|
/* 02517A6C */ if (_t221) goto L_02517B50; else goto L_02517A70;
|
|
L_02517A70: ; // 0x2517a70
|
|
/* 02517A70 */ _t222 = cpu->r[1] + 0x000000C0u;
|
|
/* 02517A70 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 02517A74 */ _t223 = cpu->r[7] + 0x00000030u;
|
|
/* 02517A74 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 02517A78 */ cpu->f[10] = cpu->f[10] - cpu->f[11];
|
|
/* 02517A7C */ /* nop */
|
|
/* 02517A80 */ _t224 = cpu->r[1] + 0x000000CCu;
|
|
/* 02517A80 */ rbrew_write_f32(cpu->mem, _t224, cpu->f[10]);
|
|
/* 02517A84 */ /* nop */
|
|
/* 02517A88 */ /* nop */
|
|
/* 02517A8C */ /* nop */
|
|
/* 02517A90 */ /* nop */
|
|
/* 02517A94 */ /* nop */
|
|
/* 02517A98 */ cpu->f[5] = cpu->f[0];
|
|
/* 02517A9C */ _t225 = cpu->r[7] + 0x00000018u;
|
|
/* 02517A9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 02517AA0 */ /* nop */
|
|
/* 02517AA4 */ _t226 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02517AA4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 02517AA8 */ cpu->f[12] = cpu->f[11];
|
|
/* 02517AAC */ /* nop */
|
|
/* 02517AB0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[6], cpu->f[5]);
|
|
/* 02517AB4 */ /* nop */
|
|
/* 02517AB8 */ /* nop */
|
|
/* 02517ABC */ _t227 = cpu->r[7] + 0x00000024u;
|
|
/* 02517ABC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 02517AC0 */ cpu->f[8] = fma(cpu->f[10], cpu->f[0], cpu->f[12]);
|
|
/* 02517AC4 */ _t228 = cpu->r[1] + 0x00000018u;
|
|
/* 02517AC4 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[7]);
|
|
/* 02517AC8 */ cpu->f[0] = fma(cpu->f[10], cpu->f[6], cpu->f[11]);
|
|
/* 02517ACC */ _t229 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517ACC */ rbrew_write_f32(cpu->mem, _t229, cpu->f[8]);
|
|
/* 02517AD0 */ _t230 = cpu->r[1] + 0x00000020u;
|
|
/* 02517AD0 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[0]);
|
|
/* 02517AD4 */ _t231 = cpu->r[7] + 0x00000034u;
|
|
/* 02517AD4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 02517AD8 */ cpu->f[13] = cpu->f[29] / cpu->f[6];
|
|
/* 02517ADC */ cpu->f[9] = cpu->f[7] * cpu->f[13];
|
|
/* 02517AE0 */ cpu->f[11] = cpu->f[8] * cpu->f[13];
|
|
/* 02517AE4 */ _t232 = cpu->r[1] + 0x00000018u;
|
|
/* 02517AE4 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[9]);
|
|
/* 02517AE8 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 02517AEC */ _t233 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517AEC */ rbrew_write_f32(cpu->mem, _t233, cpu->f[11]);
|
|
/* 02517AF0 */ _t234 = cpu->r[1] + 0x00000020u;
|
|
/* 02517AF0 */ rbrew_write_f32(cpu->mem, _t234, cpu->f[0]);
|
|
/* 02517AF4 */ cpu->r[5] = cpu->r[1] + 0x00000088u;
|
|
/* 02517AF8 */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02517AFC */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02517B00 */ Gambit_fn_02228A24(cpu);
|
|
/* 02517B04 */ _t235 = cpu->r[1] + 0x000000ACu;
|
|
/* 02517B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02517B08 */ _t236 = cpu->r[1] + 0x00000048u;
|
|
/* 02517B08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02517B0C */ _t237 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02517B0C */ rbrew_write32(cpu->mem, _t237, cpu->r[0]);
|
|
/* 02517B10 */ _t238 = cpu->r[1] + 0x000000B0u;
|
|
/* 02517B10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02517B14 */ _t239 = cpu->r[1] + 0x000000B4u;
|
|
/* 02517B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t239);
|
|
/* 02517B18 */ _t240 = cpu->r[1] + 0x00000070u;
|
|
/* 02517B18 */ rbrew_write32(cpu->mem, _t240, cpu->r[5]);
|
|
/* 02517B1C */ _t241 = cpu->r[1] + 0x00000074u;
|
|
/* 02517B1C */ rbrew_write32(cpu->mem, _t241, cpu->r[0]);
|
|
/* 02517B20 */ _t242 = cpu->r[3] + 0x000001CCu;
|
|
/* 02517B20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02517B24 */ _t243 = cpu->r[9] + 0x000000ACu;
|
|
/* 02517B24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t243);
|
|
/* 02517B28 */ cpu->ctr = cpu->r[4];
|
|
/* 02517B2C */ _t244 = cpu->r[30] + 0x000060F4u;
|
|
/* 02517B2C */ cpu->r[28] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02517B30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517B34 */ cpu->r[8] = cpu->r[28] + 0x00080000u;
|
|
/* 02517B38 */ cpu->r[4] = cpu->r[3];
|
|
/* 02517B3C */ _t245 = cpu->r[8] + 0xFFFFCEDCu;
|
|
/* 02517B3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t245);
|
|
/* 02517B40 */ Gambit_fn_023E43BC(cpu);
|
|
/* 02517B44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517B48 */ _t246 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517B48 */ _t247 = _t246 & 0x00000001u;
|
|
/* 02517B48 */ if (_t247) goto L_02517CE0; else goto L_02517B4C;
|
|
L_02517B4C: ; // 0x2517b4c
|
|
/* 02517B4C */ goto L_02517BE8;
|
|
L_02517B50: ; // 0x2517b50
|
|
/* 02517B50 */ _t248 = cpu->r[1] + 0x000000C0u;
|
|
/* 02517B50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t248);
|
|
/* 02517B54 */ /* nop */
|
|
/* 02517B58 */ /* nop */
|
|
/* 02517B5C */ _t249 = cpu->r[7] + 0x00000030u;
|
|
/* 02517B5C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 02517B60 */ cpu->f[0] = cpu->f[11] - cpu->f[10];
|
|
/* 02517B64 */ _t250 = cpu->r[1] + 0x00000020u;
|
|
/* 02517B64 */ rbrew_write_f32(cpu->mem, _t250, cpu->f[0]);
|
|
/* 02517B68 */ _t251 = cpu->r[7] + 0x00000034u;
|
|
/* 02517B68 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 02517B6C */ _t252 = cpu->r[1] + 0x00000018u;
|
|
/* 02517B6C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t252);
|
|
/* 02517B70 */ cpu->f[13] = cpu->f[29] / cpu->f[6];
|
|
/* 02517B74 */ _t253 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517B74 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 02517B78 */ cpu->f[9] = cpu->f[7] * cpu->f[13];
|
|
/* 02517B7C */ cpu->f[11] = cpu->f[8] * cpu->f[13];
|
|
/* 02517B80 */ _t254 = cpu->r[1] + 0x00000018u;
|
|
/* 02517B80 */ rbrew_write_f32(cpu->mem, _t254, cpu->f[9]);
|
|
/* 02517B84 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 02517B88 */ _t255 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517B88 */ rbrew_write_f32(cpu->mem, _t255, cpu->f[11]);
|
|
/* 02517B8C */ cpu->r[5] = cpu->r[1] + 0x00000088u;
|
|
/* 02517B90 */ _t256 = cpu->r[1] + 0x00000020u;
|
|
/* 02517B90 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[0]);
|
|
/* 02517B94 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02517B98 */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02517B9C */ Gambit_fn_02228A24(cpu);
|
|
/* 02517BA0 */ _t257 = cpu->r[1] + 0x000000ACu;
|
|
/* 02517BA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t257);
|
|
/* 02517BA4 */ _t258 = cpu->r[1] + 0x00000048u;
|
|
/* 02517BA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02517BA8 */ _t259 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02517BA8 */ rbrew_write32(cpu->mem, _t259, cpu->r[0]);
|
|
/* 02517BAC */ _t260 = cpu->r[1] + 0x000000B0u;
|
|
/* 02517BAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t260);
|
|
/* 02517BB0 */ _t261 = cpu->r[1] + 0x000000B4u;
|
|
/* 02517BB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t261);
|
|
/* 02517BB4 */ _t262 = cpu->r[1] + 0x00000070u;
|
|
/* 02517BB4 */ rbrew_write32(cpu->mem, _t262, cpu->r[5]);
|
|
/* 02517BB8 */ _t263 = cpu->r[1] + 0x00000074u;
|
|
/* 02517BB8 */ rbrew_write32(cpu->mem, _t263, cpu->r[0]);
|
|
/* 02517BBC */ _t264 = cpu->r[3] + 0x000001CCu;
|
|
/* 02517BBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t264);
|
|
/* 02517BC0 */ _t265 = cpu->r[9] + 0x000000ACu;
|
|
/* 02517BC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t265);
|
|
/* 02517BC4 */ cpu->ctr = cpu->r[4];
|
|
/* 02517BC8 */ _t266 = cpu->r[30] + 0x000060F4u;
|
|
/* 02517BC8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t266);
|
|
/* 02517BCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517BD0 */ cpu->r[8] = cpu->r[28] + 0x00080000u;
|
|
/* 02517BD4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02517BD8 */ _t267 = cpu->r[8] + 0xFFFFCEDCu;
|
|
/* 02517BD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t267);
|
|
/* 02517BDC */ Gambit_fn_023E43BC(cpu);
|
|
/* 02517BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02517BE4 */ _t268 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517BE4 */ _t269 = _t268 & 0x00000001u;
|
|
/* 02517BE4 */ if (_t269) goto L_02517CE0; else goto L_02517BE8;
|
|
L_02517BE8: ; // 0x2517be8
|
|
/* 02517BE8 */ _t270 = cpu->r[3] + 0x00000EF0u;
|
|
/* 02517BE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t270);
|
|
/* 02517BEC */ _t271 = cpu->r[8] + 0x00000004u;
|
|
/* 02517BEC */ cpu->r[6] = rbrew_read32(cpu->mem, _t271);
|
|
/* 02517BF0 */ /* nop */
|
|
/* 02517BF4 */ /* nop */
|
|
/* 02517BF8 */ /* nop */
|
|
/* 02517BFC */ /* nop */
|
|
/* 02517C00 */ /* nop */
|
|
/* 02517C04 */ /* nop */
|
|
/* 02517C08 */ /* nop */
|
|
/* 02517C0C */ /* nop */
|
|
/* 02517C10 */ /* nop */
|
|
/* 02517C14 */ _t272 = cpu->r[6] + 0x00000008u;
|
|
/* 02517C14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t272);
|
|
/* 02517C18 */ /* nop */
|
|
/* 02517C1C */ _t273 = cpu->r[1] + 0x00000074u;
|
|
/* 02517C1C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t273);
|
|
/* 02517C20 */ cpu->f[11] = cpu->f[9];
|
|
/* 02517C24 */ _t274 = cpu->r[30] + 0x000060F4u;
|
|
/* 02517C24 */ cpu->r[23] = rbrew_read32(cpu->mem, _t274);
|
|
/* 02517C28 */ cpu->f[8] = fma(cpu->f[12], cpu->f[8], cpu->f[6]);
|
|
/* 02517C2C */ _t275 = cpu->r[6] + 0x00000014u;
|
|
/* 02517C2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t275);
|
|
/* 02517C30 */ cpu->f[6] = cpu->f[0];
|
|
/* 02517C34 */ _t276 = cpu->r[6] + 0x00000020u;
|
|
/* 02517C34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t276);
|
|
/* 02517C38 */ cpu->f[13] = fma(cpu->f[12], cpu->f[9], cpu->f[11]);
|
|
/* 02517C3C */ _t277 = cpu->r[1] + 0x00000034u;
|
|
/* 02517C3C */ rbrew_write_f32(cpu->mem, _t277, cpu->f[8]);
|
|
/* 02517C40 */ cpu->f[6] = fma(cpu->f[12], cpu->f[7], cpu->f[6]);
|
|
/* 02517C44 */ /* nop */
|
|
/* 02517C48 */ _t278 = cpu->r[1] + 0x00000038u;
|
|
/* 02517C48 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[13]);
|
|
/* 02517C4C */ /* nop */
|
|
/* 02517C50 */ /* nop */
|
|
/* 02517C54 */ /* nop */
|
|
/* 02517C58 */ _t279 = cpu->r[1] + 0x00000084u;
|
|
/* 02517C58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t279);
|
|
/* 02517C5C */ /* nop */
|
|
/* 02517C60 */ _t280 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02517C60 */ rbrew_write_f32(cpu->mem, _t280, cpu->f[6]);
|
|
/* 02517C64 */ _t281 = cpu->r[1] + 0x00000078u;
|
|
/* 02517C64 */ rbrew_write32(cpu->mem, _t281, cpu->r[25]);
|
|
/* 02517C68 */ /* nop */
|
|
/* 02517C6C */ _t282 = cpu->r[24] + 0x00000000u;
|
|
/* 02517C6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t282);
|
|
/* 02517C70 */ /* nop */
|
|
/* 02517C74 */ _t283 = cpu->r[1] + 0x00000014u;
|
|
/* 02517C74 */ cpu->r[28] = rbrew_read8(cpu->mem, _t283);
|
|
/* 02517C78 */ cpu->f[7] = cpu->f[0];
|
|
/* 02517C7C */ _t284 = cpu->r[1] + 0x00000090u;
|
|
/* 02517C7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t284);
|
|
/* 02517C80 */ cpu->f[0] = fma(cpu->f[6], cpu->f[13], cpu->f[11]);
|
|
/* 02517C84 */ _t285 = cpu->r[1] + 0x00000064u;
|
|
/* 02517C84 */ rbrew_write32(cpu->mem, _t285, cpu->r[4]);
|
|
/* 02517C88 */ cpu->f[12] = fma(cpu->f[6], cpu->f[10], cpu->f[7]);
|
|
/* 02517C8C */ _t286 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02517C8C */ rbrew_write_f32(cpu->mem, _t286, cpu->f[0]);
|
|
/* 02517C90 */ cpu->r[4] = cpu->r[28];
|
|
/* 02517C94 */ cpu->r[3] = cpu->r[23];
|
|
/* 02517C98 */ _t287 = cpu->r[1] + 0x00000030u;
|
|
/* 02517C98 */ rbrew_write_f32(cpu->mem, _t287, cpu->f[12]);
|
|
/* 02517C9C */ Gambit_fn_023F600C(cpu);
|
|
/* 02517CA0 */ cpu->r[3] = cpu->r[23];
|
|
/* 02517CA4 */ cpu->r[4] = cpu->r[28];
|
|
/* 02517CA8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02517CAC */ cpu->r[6] = cpu->r[1] + 0x00000058u;
|
|
/* 02517CB0 */ cpu->r[7] = cpu->r[1] + 0x00000064u;
|
|
/* 02517CB4 */ Gambit_fn_023F4B7C(cpu);
|
|
/* 02517CB8 */ cpu->r[23] = 0x00000001u;
|
|
/* 02517CBC */ cpu->r[20] = 0x00000000u;
|
|
/* 02517CC0 */ cpu->r[28] = cpu->r[3];
|
|
/* 02517CC4 */ /* nop */
|
|
/* 02517CC8 */ cpu->f[30] = cpu->f[31];
|
|
/* 02517CCC */ cpu->r[10] = cpu->r[28] & cpu->r[8];
|
|
/* 02517CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02517CD0 */ cpu->r[22] = cpu->r[20];
|
|
/* 02517CD4 */ cpu->r[21] = 0x00000006u;
|
|
/* 02517CD8 */ _t288 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517CD8 */ _t289 = _t288 & 0x00000001u;
|
|
/* 02517CD8 */ if (_t289) goto L_02517CDC; else goto L_02517D8C;
|
|
L_02517CDC: ; // 0x2517cdc
|
|
/* 02517CDC */ goto L_02517E64;
|
|
L_02517CE0: ; // 0x2517ce0
|
|
/* 02517CE0 */ _t290 = cpu->r[1] + 0x00000070u;
|
|
/* 02517CE0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t290);
|
|
/* 02517CE4 */ /* nop */
|
|
/* 02517CE8 */ _t291 = cpu->r[1] + 0x00000038u;
|
|
/* 02517CE8 */ rbrew_write_f32(cpu->mem, _t291, cpu->f[10]);
|
|
/* 02517CEC */ _t292 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02517CEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t292);
|
|
/* 02517CF0 */ _t293 = cpu->r[1] + 0x00000084u;
|
|
/* 02517CF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t293);
|
|
/* 02517CF4 */ _t294 = cpu->r[1] + 0x00000034u;
|
|
/* 02517CF4 */ rbrew_write_f32(cpu->mem, _t294, cpu->f[9]);
|
|
/* 02517CF8 */ /* nop */
|
|
/* 02517CFC */ /* nop */
|
|
/* 02517D00 */ /* nop */
|
|
/* 02517D04 */ _t295 = cpu->r[1] + 0x00000074u;
|
|
/* 02517D04 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t295);
|
|
/* 02517D08 */ /* nop */
|
|
/* 02517D0C */ _t296 = cpu->r[1] + 0x00000078u;
|
|
/* 02517D0C */ rbrew_write32(cpu->mem, _t296, cpu->r[25]);
|
|
/* 02517D10 */ _t297 = cpu->r[24] + 0x00000000u;
|
|
/* 02517D10 */ cpu->r[4] = rbrew_read32(cpu->mem, _t297);
|
|
/* 02517D14 */ /* nop */
|
|
/* 02517D18 */ _t298 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02517D18 */ rbrew_write_f32(cpu->mem, _t298, cpu->f[6]);
|
|
/* 02517D1C */ /* nop */
|
|
/* 02517D20 */ _t299 = cpu->r[1] + 0x00000090u;
|
|
/* 02517D20 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 02517D24 */ cpu->f[7] = cpu->f[0];
|
|
/* 02517D28 */ _t300 = cpu->r[30] + 0x000060F4u;
|
|
/* 02517D28 */ cpu->r[23] = rbrew_read32(cpu->mem, _t300);
|
|
/* 02517D2C */ cpu->f[0] = fma(cpu->f[6], cpu->f[13], cpu->f[11]);
|
|
/* 02517D30 */ _t301 = cpu->r[1] + 0x00000014u;
|
|
/* 02517D30 */ cpu->r[28] = rbrew_read8(cpu->mem, _t301);
|
|
/* 02517D34 */ cpu->f[12] = fma(cpu->f[6], cpu->f[10], cpu->f[7]);
|
|
/* 02517D38 */ _t302 = cpu->r[1] + 0x00000064u;
|
|
/* 02517D38 */ rbrew_write32(cpu->mem, _t302, cpu->r[4]);
|
|
/* 02517D3C */ cpu->r[3] = cpu->r[23];
|
|
/* 02517D40 */ _t303 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02517D40 */ rbrew_write_f32(cpu->mem, _t303, cpu->f[0]);
|
|
/* 02517D44 */ cpu->r[4] = cpu->r[28];
|
|
/* 02517D48 */ _t304 = cpu->r[1] + 0x00000030u;
|
|
/* 02517D48 */ rbrew_write_f32(cpu->mem, _t304, cpu->f[12]);
|
|
/* 02517D4C */ Gambit_fn_023F600C(cpu);
|
|
/* 02517D50 */ cpu->r[7] = cpu->r[1] + 0x00000064u;
|
|
/* 02517D54 */ cpu->r[6] = cpu->r[1] + 0x00000058u;
|
|
/* 02517D58 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02517D5C */ cpu->r[4] = cpu->r[28];
|
|
/* 02517D60 */ cpu->r[3] = cpu->r[23];
|
|
/* 02517D64 */ Gambit_fn_023F4B7C(cpu);
|
|
/* 02517D68 */ cpu->r[20] = 0x00000000u;
|
|
/* 02517D6C */ cpu->f[30] = cpu->f[31];
|
|
/* 02517D70 */ cpu->r[23] = 0x00000001u;
|
|
/* 02517D74 */ cpu->r[22] = cpu->r[20];
|
|
/* 02517D78 */ cpu->r[21] = 0x00000006u;
|
|
/* 02517D7C */ cpu->r[28] = cpu->r[3];
|
|
L_02517D80: ; // 0x2517d80
|
|
/* 02517D80 */ /* nop */
|
|
/* 02517D84 */ cpu->r[10] = cpu->r[28] & cpu->r[8];
|
|
/* 02517D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02517D88 */ _t305 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517D88 */ _t306 = _t305 & 0x00000001u;
|
|
/* 02517D88 */ if (_t306) goto L_02517E64; else goto L_02517D8C;
|
|
L_02517D8C: ; // 0x2517d8c
|
|
/* 02517D8C */ _t307 = cpu->r[31] + 0x00000000u;
|
|
/* 02517D8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t307);
|
|
/* 02517D90 */ _t308 = cpu->r[3] + 0x00000004u;
|
|
/* 02517D90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t308);
|
|
/* 02517D94 */ _t309 = cpu->r[11] + 0x0000012Cu;
|
|
/* 02517D94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t309);
|
|
/* 02517D98 */ cpu->ctr = cpu->r[12];
|
|
/* 02517D9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02517DA0 */ _t310 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02517DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t310);
|
|
/* 02517DA4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02517DA8 */ cpu->r[9] = cpu->r[20];
|
|
/* 02517DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02517DB0 */ cpu->f[1] = cpu->f[30];
|
|
/* 02517DB4 */ _t311 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517DB4 */ _t312 = _t311 & 0x00000001u;
|
|
/* 02517DB4 */ if (_t312) goto L_02517DB8; else goto L_02517DEC;
|
|
L_02517DB8: ; // 0x2517db8
|
|
/* 02517DB8 */ cpu->r[7] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02517DBC */ _t313 = cpu->r[1] + 0x00000014u;
|
|
/* 02517DBC */ cpu->r[10] = rbrew_read8(cpu->mem, _t313);
|
|
/* 02517DC0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02517DC4 */ cpu->r[4] = cpu->r[18];
|
|
/* 02517DC8 */ _t314 = cpu->r[30] + 0x000060F4u;
|
|
/* 02517DC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t314);
|
|
/* 02517DCC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02517DD0 */ cpu->r[8] = cpu->r[19];
|
|
/* 02517DD4 */ _t315 = cpu->r[1] + 0x00000024u;
|
|
/* 02517DD4 */ rbrew_write32(cpu->mem, _t315, cpu->r[22]);
|
|
/* 02517DD8 */ Gambit_fn_023EFE50(cpu);
|
|
/* 02517DDC */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 02517DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02517DE0 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02517DE4 */ _t316 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517DE4 */ _t317 = _t316 & 0x00000001u;
|
|
/* 02517DE4 */ if (_t317) goto L_02517DE8; else goto L_02517D80;
|
|
L_02517DE8: ; // 0x2517de8
|
|
/* 02517DE8 */ goto L_02517E70;
|
|
L_02517DEC: ; // 0x2517dec
|
|
/* 02517DEC */ _t318 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02517DEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t318);
|
|
/* 02517DF0 */ _t319 = cpu->r[1] + 0x00000018u;
|
|
/* 02517DF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t319);
|
|
/* 02517DF4 */ _t320 = cpu->r[1] + 0x00000040u;
|
|
/* 02517DF4 */ rbrew_write32(cpu->mem, _t320, cpu->r[11]);
|
|
/* 02517DF8 */ _t321 = cpu->r[1] + 0x00000030u;
|
|
/* 02517DF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t321);
|
|
/* 02517DFC */ _t322 = cpu->r[1] + 0x00000014u;
|
|
/* 02517DFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t322);
|
|
/* 02517E00 */ _t323 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02517E00 */ rbrew_write32(cpu->mem, _t323, cpu->r[6]);
|
|
/* 02517E04 */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02517E08 */ _t324 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02517E08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t324);
|
|
/* 02517E0C */ cpu->r[10] = cpu->r[1] + 0x00000040u;
|
|
/* 02517E10 */ _t325 = cpu->r[1] + 0x00000044u;
|
|
/* 02517E10 */ rbrew_write32(cpu->mem, _t325, cpu->r[12]);
|
|
/* 02517E14 */ cpu->r[6] = cpu->r[4];
|
|
/* 02517E18 */ _t326 = cpu->r[1] + 0x00000050u;
|
|
/* 02517E18 */ rbrew_write32(cpu->mem, _t326, cpu->r[7]);
|
|
/* 02517E1C */ cpu->r[7] = cpu->r[10];
|
|
/* 02517E20 */ _t327 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02517E20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t327);
|
|
/* 02517E24 */ _t328 = cpu->r[1] + 0x00000020u;
|
|
/* 02517E24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t328);
|
|
/* 02517E28 */ _t329 = cpu->r[1] + 0x00000028u;
|
|
/* 02517E28 */ rbrew_write32(cpu->mem, _t329, cpu->r[3]);
|
|
/* 02517E2C */ cpu->r[3] = cpu->r[1] + 0x000000DCu;
|
|
/* 02517E30 */ _t330 = cpu->r[1] + 0x00000054u;
|
|
/* 02517E30 */ rbrew_write32(cpu->mem, _t330, cpu->r[8]);
|
|
/* 02517E34 */ cpu->r[8] = cpu->r[1] + 0x00000028u;
|
|
/* 02517E38 */ cpu->r[4] = cpu->r[17];
|
|
/* 02517E3C */ _t331 = cpu->r[1] + 0x00000008u;
|
|
/* 02517E3C */ rbrew_write32(cpu->mem, _t331, cpu->r[0]);
|
|
/* 02517E40 */ /* nop */
|
|
/* 02517E44 */ cpu->r[10] = cpu->r[1] + 0x00000058u;
|
|
/* 02517E48 */ _t332 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02517E48 */ rbrew_write32(cpu->mem, _t332, cpu->r[19]);
|
|
/* 02517E4C */ cpu->r[5] = cpu->r[18];
|
|
/* 02517E50 */ _t333 = cpu->r[1] + 0x00000010u;
|
|
/* 02517E50 */ rbrew_write32(cpu->mem, _t333, cpu->r[0]);
|
|
/* 02517E54 */ Gambit_fn_023F6488(cpu);
|
|
/* 02517E58 */ _t334 = cpu->r[30] + 0x000060F4u;
|
|
/* 02517E58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t334);
|
|
/* 02517E5C */ cpu->r[4] = cpu->r[1] + 0x000000DCu;
|
|
/* 02517E60 */ Gambit_fn_023EF3B4(cpu);
|
|
L_02517E64: ; // 0x2517e64
|
|
/* 02517E64 */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 02517E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02517E68 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02517E6C */ _t335 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517E6C */ _t336 = _t335 & 0x00000001u;
|
|
/* 02517E6C */ if (_t336) goto L_02517E70; else goto L_02517D80;
|
|
L_02517E70: ; // 0x2517e70
|
|
/* 02517E70 */ cpu->r[15] = cpu->r[15] + 0xFFFFFFFFu;
|
|
/* 02517E70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[15], 0x00000000u);
|
|
/* 02517E74 */ _t337 = cpu->r[29] + 0x00000208u;
|
|
/* 02517E74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t337);
|
|
/* 02517E78 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02517E7C */ _t338 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517E7C */ _t339 = _t338 & 0x00000001u;
|
|
/* 02517E7C */ if (_t339) goto L_02517EC4; else goto L_02517E80;
|
|
L_02517E80: ; // 0x2517e80
|
|
/* 02517E80 */ _t340 = cpu->r[1] + 0x00000014u;
|
|
/* 02517E80 */ rbrew_write8(cpu->mem, _t340, (uint8_t)cpu->r[26]);
|
|
/* 02517E84 */ cpu->r[7] = cpu->r[1] + 0x00000058u;
|
|
/* 02517E88 */ cpu->r[8] = cpu->r[1] + 0x00000068u;
|
|
/* 02517E8C */ _t341 = cpu->r[1] + 0x00000068u;
|
|
/* 02517E8C */ rbrew_write32(cpu->mem, _t341, cpu->r[16]);
|
|
/* 02517E90 */ cpu->r[10] = cpu->r[1] + 0x00000048u;
|
|
/* 02517E94 */ _t342 = cpu->r[28] + 0x00000004u;
|
|
/* 02517E94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t342);
|
|
/* 02517E98 */ cpu->r[9] = 0x00000000u;
|
|
/* 02517E9C */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02517EA0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02517EA4 */ cpu->r[4] = cpu->r[27];
|
|
/* 02517EA8 */ Gambit_fn_02040F70(cpu);
|
|
/* 02517EAC */ _t343 = cpu->r[1] + 0x00000048u;
|
|
/* 02517EAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t343);
|
|
/* 02517EB0 */ _t344 = cpu->r[7] + 0x00000000u;
|
|
/* 02517EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t344);
|
|
/* 02517EB4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02517EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02517EB8 */ /* nop */
|
|
/* 02517EBC */ _t345 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517EBC */ _t346 = _t345 & 0x00000001u;
|
|
/* 02517EBC */ if (_t346) goto L_02517EC0; else goto L_02517A70;
|
|
L_02517EC0: ; // 0x2517ec0
|
|
/* 02517EC0 */ goto L_02517B50;
|
|
L_02517EC4: ; // 0x2517ec4
|
|
/* 02517EC4 */ _t347 = cpu->r[28] + 0x00000004u;
|
|
/* 02517EC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t347);
|
|
/* 02517EC8 */ _t348 = cpu->r[7] + 0x0000015Cu;
|
|
/* 02517EC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t348);
|
|
/* 02517ECC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 02517ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02517ED0 */ _t349 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517ED0 */ _t350 = _t349 & 0x00000001u;
|
|
/* 02517ED0 */ if (_t350) goto L_02517F18; else goto L_02517ED4;
|
|
L_02517ED4: ; // 0x2517ed4
|
|
/* 02517ED4 */ _t351 = cpu->r[7] + 0x0000008Cu;
|
|
/* 02517ED4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t351);
|
|
/* 02517ED8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02517EDC */ _t352 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02517EDC */ rbrew_write32(cpu->mem, _t352, cpu->r[6]);
|
|
/* 02517EE0 */ /* nop */
|
|
/* 02517EE4 */ _t353 = cpu->r[1] + 0x00000200u;
|
|
/* 02517EE4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t353);
|
|
/* 02517EE8 */ _t354 = cpu->r[1] + 0x00000210u;
|
|
/* 02517EE8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t354);
|
|
/* 02517EEC */ _t355 = cpu->r[1] + 0x000001F8u;
|
|
/* 02517EEC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t355);
|
|
/* 02517EF0 */ _t356 = cpu->r[1] + 0x00000208u;
|
|
/* 02517EF0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t356);
|
|
/* 02517EF4 */ _t357 = cpu->r[1] + 0x000001F0u;
|
|
/* 02517EF4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t357);
|
|
/* 02517EF8 */ _t358 = cpu->r[1] + 0x00000220u;
|
|
/* 02517EF8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t358);
|
|
/* 02517EFC */ _t359 = cpu->r[1] + 0x000001E8u;
|
|
/* 02517EFC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t359);
|
|
/* 02517F00 */ _t360 = cpu->r[1] + 0x00000218u;
|
|
/* 02517F00 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t360);
|
|
/* 02517F04 */ _t361 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02517F04 */ _t362 = _t361 & 0x00000001u;
|
|
/* 02517F04 */ if (_t362) goto L_02517F08; // else: addr-0 trap, fall-through
|
|
L_02517F08: ; // 0x2517f08
|
|
/* 02517F08 */ _t363 = cpu->r[1] + 0x0000022Cu;
|
|
/* 02517F08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t363);
|
|
/* 02517F0C */ cpu->lr = cpu->r[0];
|
|
/* 02517F10 */ cpu->r[1] = cpu->r[1] + 0x00000228u;
|
|
/* 02517F14 */ return;
|
|
L_02517F18: ; // 0x2517f18
|
|
/* 02517F18 */ _t364 = cpu->r[7] + 0x000000D8u;
|
|
/* 02517F18 */ cpu->r[0] = rbrew_read16(cpu->mem, _t364);
|
|
/* 02517F1C */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02517F20 */ _t365 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02517F20 */ rbrew_write32(cpu->mem, _t365, cpu->r[6]);
|
|
L_02517F24: ; // 0x2517f24
|
|
/* 02517F24 */ /* nop */
|
|
/* 02517F28 */ _t366 = cpu->r[1] + 0x00000200u;
|
|
/* 02517F28 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t366);
|
|
/* 02517F2C */ _t367 = cpu->r[1] + 0x00000210u;
|
|
/* 02517F2C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t367);
|
|
/* 02517F30 */ _t368 = cpu->r[1] + 0x000001F8u;
|
|
/* 02517F30 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t368);
|
|
/* 02517F34 */ _t369 = cpu->r[1] + 0x00000208u;
|
|
/* 02517F34 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t369);
|
|
/* 02517F38 */ _t370 = cpu->r[1] + 0x000001F0u;
|
|
/* 02517F38 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t370);
|
|
/* 02517F3C */ _t371 = cpu->r[1] + 0x00000220u;
|
|
/* 02517F3C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t371);
|
|
/* 02517F40 */ _t372 = cpu->r[1] + 0x000001E8u;
|
|
/* 02517F40 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t372);
|
|
/* 02517F44 */ _t373 = cpu->r[1] + 0x00000218u;
|
|
/* 02517F44 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t373);
|
|
/* 02517F48 */ _t374 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02517F48 */ _t375 = _t374 & 0x00000001u;
|
|
/* 02517F48 */ if (_t375) goto L_02517F4C; // else: addr-0 trap, fall-through
|
|
L_02517F4C: ; // 0x2517f4c
|
|
/* 02517F4C */ _t376 = cpu->r[1] + 0x0000022Cu;
|
|
/* 02517F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t376);
|
|
/* 02517F50 */ cpu->lr = cpu->r[0];
|
|
/* 02517F54 */ cpu->r[1] = cpu->r[1] + 0x00000228u;
|
|
/* 02517F58 */ return;
|
|
}
|
|
|
|
// fn_02517F5C @ 0x2517f5c
|
|
void Gambit_fn_02517F5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184;
|
|
|
|
L_02517F5C: ; // 0x2517f5c
|
|
/* 02517F5C */ _t0 = cpu->r[1] + 0xFFFFFEB8u;
|
|
/* 02517F5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02517F5C */ cpu->r[1] = _t0;
|
|
/* 02517F60 */ _t1 = cpu->r[1] + 0x000000A8u;
|
|
/* 02517F60 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[22]);
|
|
/* 02517F64 */ _t2 = cpu->r[1] + 0x000000B8u;
|
|
/* 02517F64 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[23]);
|
|
/* 02517F68 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 02517F68 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[24]);
|
|
/* 02517F6C */ /* nop */
|
|
/* 02517F70 */ _t4 = cpu->r[1] + 0x000000D8u;
|
|
/* 02517F70 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[25]);
|
|
/* 02517F74 */ /* nop */
|
|
/* 02517F78 */ _t5 = cpu->r[1] + 0x000000E8u;
|
|
/* 02517F78 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[26]);
|
|
/* 02517F7C */ /* nop */
|
|
/* 02517F80 */ _t6 = cpu->r[1] + 0x000000F8u;
|
|
/* 02517F80 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[27]);
|
|
/* 02517F84 */ /* nop */
|
|
/* 02517F88 */ _t7 = cpu->r[1] + 0x00000108u;
|
|
/* 02517F88 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 02517F8C */ /* nop */
|
|
/* 02517F90 */ _t8 = cpu->r[1] + 0x00000118u;
|
|
/* 02517F90 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[29]);
|
|
/* 02517F94 */ /* nop */
|
|
/* 02517F98 */ _t9 = cpu->r[1] + 0x00000128u;
|
|
/* 02517F98 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02517F9C */ /* nop */
|
|
/* 02517FA0 */ _t10 = cpu->r[1] + 0x00000138u;
|
|
/* 02517FA0 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[31]);
|
|
/* 02517FA4 */ /* nop */
|
|
/* 02517FA8 */ _t11 = cpu->r[1] + 0x000000B0u;
|
|
/* 02517FA8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[22]);
|
|
/* 02517FAC */ _t12 = cpu->r[1] + 0x000000C0u;
|
|
/* 02517FAC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[23]);
|
|
/* 02517FB0 */ _t13 = cpu->r[1] + 0x000000D0u;
|
|
/* 02517FB0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[24]);
|
|
/* 02517FB4 */ /* nop */
|
|
/* 02517FB8 */ _t14 = cpu->r[1] + 0x000000E0u;
|
|
/* 02517FB8 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[25]);
|
|
/* 02517FBC */ _t15 = cpu->r[1] + 0x000000F0u;
|
|
/* 02517FBC */ rbrew_write_f32(cpu->mem, _t15, cpu->f[26]);
|
|
/* 02517FC0 */ _t16 = cpu->r[1] + 0x00000100u;
|
|
/* 02517FC0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[27]);
|
|
/* 02517FC4 */ /* nop */
|
|
/* 02517FC8 */ _t17 = cpu->r[1] + 0x00000110u;
|
|
/* 02517FC8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[28]);
|
|
/* 02517FCC */ _t18 = cpu->r[1] + 0x00000120u;
|
|
/* 02517FCC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[29]);
|
|
/* 02517FD0 */ _t19 = cpu->r[1] + 0x00000130u;
|
|
/* 02517FD0 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[30]);
|
|
/* 02517FD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02517FD8 */ _t20 = cpu->r[1] + 0x00000140u;
|
|
/* 02517FD8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[31]);
|
|
/* 02517FDC */ _t21 = cpu->r[1] + 0x0000014Cu;
|
|
/* 02517FDC */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02517FE0 */ /* nop */
|
|
/* 02517FE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02517FE8 */ Gambit_fn_024F65FC(cpu);
|
|
/* 02517FEC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02517FF0 */ _t22 = cpu->r[9] + 0xFFFFE864u;
|
|
/* 02517FF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02517FF0 */ cpu->r[9] = _t22;
|
|
/* 02517FF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02517FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02517FFC */ cpu->r[4] = 0x101D0000u;
|
|
/* 02518000 */ cpu->r[4] = cpu->r[4] + 0x000009B8u;
|
|
/* 02518004 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518004 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02518004 */ if (_t24) goto L_02518008; else goto L_0251801C;
|
|
L_02518008: ; // 0x2518008
|
|
/* 02518008 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251800C */ cpu->r[5] = 0x00000001u;
|
|
/* 02518010 */ cpu->r[0] = cpu->r[0] + 0x0000038Cu;
|
|
/* 02518014 */ _t25 = cpu->r[9] + 0x00000000u;
|
|
/* 02518014 */ rbrew_write32(cpu->mem, _t25, cpu->r[5]);
|
|
/* 02518018 */ _t26 = cpu->r[4] + 0x00000000u;
|
|
/* 02518018 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
L_0251801C: ; // 0x251801c
|
|
/* 0251801C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02518020 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518020 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02518020 */ if (_t28) goto L_02518040; else goto L_02518024;
|
|
L_02518024: ; // 0x2518024
|
|
/* 02518024 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 02518024 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02518028 */ _t30 = cpu->r[9] + 0x0000006Cu;
|
|
/* 02518028 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0251802C */ cpu->ctr = cpu->r[12];
|
|
/* 02518030 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518034 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02518038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251803C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251803C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0251803C */ if (_t32) goto L_02518040; else goto L_02518044;
|
|
L_02518040: ; // 0x2518040
|
|
/* 02518040 */ cpu->r[31] = 0x00000000u;
|
|
L_02518044: ; // 0x2518044
|
|
/* 02518044 */ _t33 = cpu->r[31] + 0x000001DCu;
|
|
/* 02518044 */ cpu->r[4] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02518048 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251804C */ cpu->r[5] = 0x43300000u;
|
|
/* 02518050 */ _t34 = cpu->r[12] + 0x00000530u;
|
|
/* 02518050 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 02518054 */ cpu->r[6] = cpu->r[4] ^ 0x80000000u;
|
|
/* 02518058 */ _t35 = cpu->r[1] + 0x00000078u;
|
|
/* 02518058 */ rbrew_write32(cpu->mem, _t35, cpu->r[5]);
|
|
/* 0251805C */ _t36 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251805C */ rbrew_write32(cpu->mem, _t36, cpu->r[6]);
|
|
/* 02518060 */ _t37 = cpu->r[1] + 0x00000078u;
|
|
/* 02518060 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 02518064 */ cpu->f[9] = cpu->f[8] - cpu->f[11];
|
|
/* 02518068 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251806C */ cpu->f[12] = (double)(float)cpu->f[9];
|
|
/* 02518070 */ _t38 = cpu->r[11] + 0x00000528u;
|
|
/* 02518070 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02518074 */ cpu->f[11] = cpu->f[10] / cpu->f[12];
|
|
/* 02518078 */ _t39 = cpu->r[30] + 0x00000340u;
|
|
/* 02518078 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0251807C */ cpu->f[8] = cpu->f[13] + cpu->f[11];
|
|
/* 02518080 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]);
|
|
/* 02518084 */ cpu->f[9] = cpu->f[8];
|
|
/* 02518088 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02518088 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02518088 */ if (_t41) goto L_0251808C; else goto L_025180F8;
|
|
L_0251808C: ; // 0x251808c
|
|
/* 0251808C */ _t42 = cpu->r[30] + 0x00000340u;
|
|
/* 0251808C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[9]);
|
|
/* 02518090 */ /* nop */
|
|
/* 02518094 */ _t43 = cpu->r[1] + 0x000000F0u;
|
|
/* 02518094 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02518098 */ _t44 = cpu->r[1] + 0x000000D0u;
|
|
/* 02518098 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0251809C */ _t45 = cpu->r[1] + 0x000000E8u;
|
|
/* 0251809C */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t45);
|
|
/* 025180A0 */ _t46 = cpu->r[1] + 0x000000C8u;
|
|
/* 025180A0 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 025180A4 */ _t47 = cpu->r[1] + 0x00000110u;
|
|
/* 025180A4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 025180A8 */ _t48 = cpu->r[1] + 0x000000E0u;
|
|
/* 025180A8 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 025180AC */ _t49 = cpu->r[1] + 0x00000108u;
|
|
/* 025180AC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 025180B0 */ _t50 = cpu->r[1] + 0x000000D8u;
|
|
/* 025180B0 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t50);
|
|
/* 025180B4 */ _t51 = cpu->r[1] + 0x00000130u;
|
|
/* 025180B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 025180B8 */ _t52 = cpu->r[1] + 0x00000100u;
|
|
/* 025180B8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 025180BC */ _t53 = cpu->r[1] + 0x00000128u;
|
|
/* 025180BC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 025180C0 */ _t54 = cpu->r[1] + 0x000000F8u;
|
|
/* 025180C0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t54);
|
|
/* 025180C4 */ _t55 = cpu->r[1] + 0x000000C0u;
|
|
/* 025180C4 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 025180C8 */ _t56 = cpu->r[1] + 0x00000120u;
|
|
/* 025180C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 025180CC */ _t57 = cpu->r[1] + 0x000000B8u;
|
|
/* 025180CC */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 025180D0 */ _t58 = cpu->r[1] + 0x00000118u;
|
|
/* 025180D0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 025180D4 */ _t59 = cpu->r[1] + 0x000000B0u;
|
|
/* 025180D4 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 025180D8 */ _t60 = cpu->r[1] + 0x00000140u;
|
|
/* 025180D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 025180DC */ _t61 = cpu->r[1] + 0x000000A8u;
|
|
/* 025180DC */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t61);
|
|
/* 025180E0 */ _t62 = cpu->r[1] + 0x00000138u;
|
|
/* 025180E0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 025180E4 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025180E4 */ _t64 = _t63 & 0x00000001u;
|
|
/* 025180E4 */ if (_t64) goto L_025180E8; // else: addr-0 trap, fall-through
|
|
L_025180E8: ; // 0x25180e8
|
|
/* 025180E8 */ _t65 = cpu->r[1] + 0x0000014Cu;
|
|
/* 025180E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 025180EC */ cpu->lr = cpu->r[0];
|
|
/* 025180F0 */ cpu->r[1] = cpu->r[1] + 0x00000148u;
|
|
/* 025180F4 */ return;
|
|
L_025180F8: ; // 0x25180f8
|
|
/* 025180F8 */ cpu->f[6] = cpu->f[8] - cpu->f[10];
|
|
/* 025180FC */ cpu->r[8] = 0x00000000u;
|
|
/* 02518100 */ _t66 = cpu->r[30] + 0x00000134u;
|
|
/* 02518100 */ cpu->r[4] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02518104 */ _t67 = cpu->r[30] + 0x00000340u;
|
|
/* 02518104 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[6]);
|
|
/* 02518108 */ _t68 = cpu->r[4] + 0x000001C8u;
|
|
/* 02518108 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[8]);
|
|
/* 0251810C */ _t69 = cpu->r[30] + 0x000001F0u;
|
|
/* 0251810C */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02518110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518114 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518114 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02518114 */ if (_t71) goto L_02518118; else goto L_02518160;
|
|
L_02518118: ; // 0x2518118
|
|
/* 02518118 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0251811C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02518120 */ _t72 = cpu->r[6] + 0x000004B0u;
|
|
/* 02518120 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02518124 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02518128 */ _t73 = cpu->r[11] + 0x00000540u;
|
|
/* 02518128 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0251812C */ cpu->r[11] = 0x101E0000u;
|
|
/* 02518130 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02518134 */ _t74 = cpu->r[9] + 0x00000524u;
|
|
/* 02518134 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02518138 */ cpu->r[29] = 0x00000001u;
|
|
/* 0251813C */ cpu->r[6] = 0x100C0000u;
|
|
/* 02518140 */ _t75 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 02518140 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02518144 */ cpu->r[31] = 0x101C0000u;
|
|
/* 02518148 */ cpu->f[27] = fma(cpu->f[12], cpu->f[13], -(cpu->f[28]));
|
|
/* 0251814C */ _t76 = cpu->r[10] + 0x0000046Cu;
|
|
/* 0251814C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02518150 */ cpu->r[28] = 0x00000002u;
|
|
/* 02518154 */ cpu->r[31] = cpu->r[31] + 0x00001EF8u;
|
|
/* 02518158 */ _t77 = cpu->r[6] + 0x00000548u;
|
|
/* 02518158 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0251815C */ goto L_025181A4;
|
|
L_02518160: ; // 0x2518160
|
|
/* 02518160 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02518164 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02518168 */ _t78 = cpu->r[11] + 0x0000053Cu;
|
|
/* 02518168 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0251816C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02518170 */ _t79 = cpu->r[9] + 0x00000524u;
|
|
/* 02518170 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02518174 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02518178 */ _t80 = cpu->r[11] + 0x00000540u;
|
|
/* 02518178 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0251817C */ cpu->r[29] = 0x00000001u;
|
|
/* 02518180 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02518184 */ _t81 = cpu->r[10] + 0x0000046Cu;
|
|
/* 02518184 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02518188 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0251818C */ cpu->r[31] = 0x101C0000u;
|
|
/* 02518190 */ _t82 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 02518190 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02518194 */ cpu->f[27] = fma(cpu->f[12], cpu->f[13], -(cpu->f[28]));
|
|
/* 02518198 */ cpu->r[28] = 0x00000002u;
|
|
/* 0251819C */ _t83 = cpu->r[6] + 0x00000548u;
|
|
/* 0251819C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 025181A0 */ cpu->r[31] = cpu->r[31] + 0x00001EF8u;
|
|
L_025181A4: ; // 0x25181a4
|
|
/* 025181A4 */ cpu->f[26] = cpu->f[30];
|
|
/* 025181A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[27]);
|
|
/* 025181AC */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025181AC */ _t85 = _t84 & 0x00000001u;
|
|
/* 025181AC */ if (_t85) goto L_02518358; else goto L_025181B0;
|
|
L_025181B0: ; // 0x25181b0
|
|
/* 025181B0 */ cpu->r[7] = 0x100C0000u;
|
|
/* 025181B4 */ cpu->r[12] = 0x43300000u;
|
|
/* 025181B8 */ _t86 = cpu->r[7] + 0x00000530u;
|
|
/* 025181B8 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 025181BC */ cpu->r[0] = cpu->r[29] ^ 0x80000000u;
|
|
/* 025181C0 */ _t87 = cpu->r[1] + 0x00000078u;
|
|
/* 025181C0 */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 025181C4 */ cpu->f[24] = cpu->f[29];
|
|
/* 025181C8 */ _t88 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025181C8 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 025181CC */ _t89 = cpu->r[1] + 0x00000078u;
|
|
/* 025181CC */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 025181D0 */ cpu->f[25] = cpu->f[31];
|
|
/* 025181D4 */ cpu->f[8] = cpu->f[7] - cpu->f[9];
|
|
/* 025181D8 */ cpu->f[23] = cpu->f[28];
|
|
/* 025181DC */ cpu->f[22] = (double)(float)cpu->f[8];
|
|
/* 025181E0 */ cpu->r[27] = 0x00000000u;
|
|
L_025181E4: ; // 0x25181e4
|
|
/* 025181E4 */ _t90 = cpu->r[30] + 0x0000020Cu;
|
|
/* 025181E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t90);
|
|
/* 025181E8 */ _t91 = cpu->r[11] + 0x00000010u;
|
|
/* 025181E8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 025181EC */ _t92 = cpu->r[11] + 0x00000000u;
|
|
/* 025181EC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 025181F0 */ _t93 = cpu->r[11] + 0x00000020u;
|
|
/* 025181F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 025181F4 */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025181F4 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[7]);
|
|
/* 025181F8 */ _t95 = cpu->r[1] + 0x00000010u;
|
|
/* 025181F8 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[8]);
|
|
/* 025181FC */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 025181FC */ rbrew_write_f32(cpu->mem, _t96, cpu->f[9]);
|
|
/* 02518200 */ _t97 = cpu->r[11] + 0x00000014u;
|
|
/* 02518200 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02518204 */ _t98 = cpu->r[11] + 0x00000004u;
|
|
/* 02518204 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02518208 */ _t99 = cpu->r[11] + 0x00000024u;
|
|
/* 02518208 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0251820C */ _t100 = cpu->r[1] + 0x00000018u;
|
|
/* 0251820C */ rbrew_write_f32(cpu->mem, _t100, cpu->f[10]);
|
|
/* 02518210 */ _t101 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518210 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[11]);
|
|
/* 02518214 */ _t102 = cpu->r[1] + 0x00000020u;
|
|
/* 02518214 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[13]);
|
|
/* 02518218 */ _t103 = cpu->r[11] + 0x00000008u;
|
|
/* 02518218 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0251821C */ _t104 = cpu->r[11] + 0x00000028u;
|
|
/* 0251821C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02518220 */ _t105 = cpu->r[11] + 0x00000018u;
|
|
/* 02518220 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02518224 */ _t106 = cpu->r[1] + 0x00000024u;
|
|
/* 02518224 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[0]);
|
|
/* 02518228 */ _t107 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518228 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[7]);
|
|
/* 0251822C */ cpu->f[11] = cpu->f[9] * cpu->f[22];
|
|
/* 02518230 */ /* nop */
|
|
/* 02518234 */ _t108 = cpu->r[1] + 0x00000028u;
|
|
/* 02518234 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[6]);
|
|
/* 02518238 */ _t109 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02518238 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0251823C */ /* nop */
|
|
/* 02518240 */ _t110 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02518240 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02518244 */ _t111 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02518244 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 02518248 */ _t112 = cpu->r[1] + 0x00000044u;
|
|
/* 02518248 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[11]);
|
|
/* 0251824C */ _t113 = cpu->r[1] + 0x00000044u;
|
|
/* 0251824C */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02518250 */ /* nop */
|
|
/* 02518254 */ _t114 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02518254 */ cpu->r[6] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02518258 */ _t115 = cpu->r[1] + 0x00000040u;
|
|
/* 02518258 */ cpu->r[7] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0251825C */ _t116 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0251825C */ rbrew_write32(cpu->mem, _t116, cpu->r[6]);
|
|
/* 02518260 */ _t117 = cpu->r[1] + 0x00000070u;
|
|
/* 02518260 */ rbrew_write32(cpu->mem, _t117, cpu->r[7]);
|
|
/* 02518264 */ /* nop */
|
|
/* 02518268 */ _t118 = cpu->r[1] + 0x00000034u;
|
|
/* 02518268 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[12]);
|
|
/* 0251826C */ /* nop */
|
|
/* 02518270 */ _t119 = cpu->r[1] + 0x00000074u;
|
|
/* 02518270 */ rbrew_write32(cpu->mem, _t119, cpu->r[0]);
|
|
/* 02518274 */ _t120 = cpu->r[1] + 0x00000074u;
|
|
/* 02518274 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02518278 */ /* nop */
|
|
/* 0251827C */ _t121 = cpu->r[1] + 0x00000048u;
|
|
/* 0251827C */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02518280 */ _t122 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02518280 */ cpu->r[6] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02518284 */ _t123 = cpu->r[1] + 0x00000060u;
|
|
/* 02518284 */ rbrew_write32(cpu->mem, _t123, cpu->r[5]);
|
|
/* 02518288 */ _t124 = cpu->r[1] + 0x00000064u;
|
|
/* 02518288 */ rbrew_write32(cpu->mem, _t124, cpu->r[6]);
|
|
/* 0251828C */ /* nop */
|
|
/* 02518290 */ cpu->f[6] = cpu->f[7] * cpu->f[26];
|
|
/* 02518294 */ _t125 = cpu->r[1] + 0x00000030u;
|
|
/* 02518294 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[10]);
|
|
/* 02518298 */ /* nop */
|
|
/* 0251829C */ _t126 = cpu->r[31] + 0x00000000u;
|
|
/* 0251829C */ cpu->r[3] = rbrew_read32(cpu->mem, _t126);
|
|
/* 025182A0 */ /* nop */
|
|
/* 025182A4 */ _t127 = cpu->r[1] + 0x00000050u;
|
|
/* 025182A4 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[6]);
|
|
/* 025182A8 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 025182A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 025182AC */ /* nop */
|
|
/* 025182B0 */ _t129 = cpu->r[1] + 0x00000054u;
|
|
/* 025182B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t129);
|
|
/* 025182B4 */ _t130 = cpu->r[1] + 0x00000068u;
|
|
/* 025182B4 */ rbrew_write32(cpu->mem, _t130, cpu->r[0]);
|
|
/* 025182B8 */ _t131 = cpu->r[1] + 0x00000068u;
|
|
/* 025182B8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 025182BC */ _t132 = cpu->r[1] + 0x00000058u;
|
|
/* 025182BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t132);
|
|
/* 025182C0 */ _t133 = cpu->r[1] + 0x00000038u;
|
|
/* 025182C0 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[0]);
|
|
/* 025182C4 */ cpu->f[0] = cpu->f[0] + cpu->f[6];
|
|
/* 025182C8 */ _t134 = cpu->r[1] + 0x00000080u;
|
|
/* 025182C8 */ rbrew_write32(cpu->mem, _t134, cpu->r[10]);
|
|
/* 025182CC */ cpu->r[5] = 0x00000000u;
|
|
/* 025182D0 */ _t135 = cpu->r[1] + 0x00000084u;
|
|
/* 025182D0 */ rbrew_write32(cpu->mem, _t135, cpu->r[0]);
|
|
/* 025182D4 */ cpu->r[7] = 0x00000100u;
|
|
/* 025182D8 */ _t136 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025182D8 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[0]);
|
|
/* 025182DC */ _t137 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025182DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 025182E0 */ cpu->f[2] = cpu->f[24];
|
|
/* 025182E4 */ _t138 = cpu->r[30] + 0x00000208u;
|
|
/* 025182E4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t138);
|
|
/* 025182E8 */ cpu->f[1] = cpu->f[23];
|
|
/* 025182EC */ cpu->r[8] = 0x000000FFu;
|
|
/* 025182F0 */ _t139 = cpu->r[1] + 0x00000088u;
|
|
/* 025182F0 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 025182F4 */ cpu->r[6] = cpu->r[5];
|
|
/* 025182F8 */ _t140 = cpu->r[26] + 0x00000004u;
|
|
/* 025182F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t140);
|
|
/* 025182FC */ cpu->r[10] = cpu->r[27];
|
|
/* 02518300 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 02518304 */ _t141 = cpu->r[1] + 0x00000008u;
|
|
/* 02518304 */ rbrew_write32(cpu->mem, _t141, cpu->r[26]);
|
|
/* 02518308 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0251830C */ _t142 = cpu->r[26] + 0x00000000u;
|
|
/* 0251830C */ rbrew_write32(cpu->mem, _t142, cpu->r[3]);
|
|
/* 02518310 */ _t143 = cpu->r[30] + 0x00000208u;
|
|
/* 02518310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02518314 */ _t144 = cpu->r[11] + 0x00000000u;
|
|
/* 02518314 */ cpu->r[5] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02518318 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251831C */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251831C */ _t146 = _t145 & 0x00000001u;
|
|
/* 0251831C */ if (_t146) goto L_0251834C; else goto L_02518320;
|
|
L_02518320: ; // 0x2518320
|
|
/* 02518320 */ _t147 = cpu->r[11] + 0x00000004u;
|
|
/* 02518320 */ cpu->r[4] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02518324 */ _t148 = cpu->r[4] + 0x0000015Cu;
|
|
/* 02518324 */ cpu->r[8] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02518328 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 02518328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0251832C */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251832C */ _t150 = _t149 & 0x00000001u;
|
|
/* 0251832C */ if (_t150) goto L_02518330; else goto L_02518340;
|
|
L_02518330: ; // 0x2518330
|
|
/* 02518330 */ _t151 = cpu->r[11] + 0x00000004u;
|
|
/* 02518330 */ cpu->r[8] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02518334 */ _t152 = cpu->r[8] + 0x0000015Cu;
|
|
/* 02518334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02518338 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 02518338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0251833C */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251833C */ _t154 = _t153 & 0x00000001u;
|
|
/* 0251833C */ if (_t154) goto L_0251834C; else goto L_02518340;
|
|
L_02518340: ; // 0x2518340
|
|
/* 02518340 */ _t155 = cpu->r[11] + 0x00000004u;
|
|
/* 02518340 */ cpu->r[3] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02518344 */ cpu->r[4] = cpu->r[30];
|
|
/* 02518348 */ Gambit_fn_02040DBC(cpu);
|
|
L_0251834C: ; // 0x251834c
|
|
/* 0251834C */ cpu->f[26] = cpu->f[26] + cpu->f[25];
|
|
/* 02518350 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[27]);
|
|
/* 02518354 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02518354 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02518354 */ if (_t157) goto L_02518358; else goto L_025181E4;
|
|
L_02518358: ; // 0x2518358
|
|
/* 02518358 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02518358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0251835C */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFEu;
|
|
/* 02518360 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518360 */ _t159 = _t158 & 0x00000001u;
|
|
/* 02518360 */ if (_t159) goto L_02518364; else goto L_025181A4;
|
|
L_02518364: ; // 0x2518364
|
|
/* 02518364 */ _t160 = cpu->r[30] + 0x00000134u;
|
|
/* 02518364 */ cpu->r[7] = rbrew_read32(cpu->mem, _t160);
|
|
/* 02518368 */ cpu->r[0] = 0x00000001u;
|
|
/* 0251836C */ _t161 = cpu->r[7] + 0x000001C8u;
|
|
/* 0251836C */ rbrew_write8(cpu->mem, _t161, (uint8_t)cpu->r[0]);
|
|
/* 02518370 */ /* nop */
|
|
/* 02518374 */ _t162 = cpu->r[1] + 0x000000F0u;
|
|
/* 02518374 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 02518378 */ _t163 = cpu->r[1] + 0x000000D0u;
|
|
/* 02518378 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 0251837C */ _t164 = cpu->r[1] + 0x000000E8u;
|
|
/* 0251837C */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 02518380 */ _t165 = cpu->r[1] + 0x000000C8u;
|
|
/* 02518380 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t165);
|
|
/* 02518384 */ _t166 = cpu->r[1] + 0x00000110u;
|
|
/* 02518384 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 02518388 */ _t167 = cpu->r[1] + 0x000000E0u;
|
|
/* 02518388 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0251838C */ _t168 = cpu->r[1] + 0x00000108u;
|
|
/* 0251838C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t168);
|
|
/* 02518390 */ _t169 = cpu->r[1] + 0x000000D8u;
|
|
/* 02518390 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t169);
|
|
/* 02518394 */ _t170 = cpu->r[1] + 0x00000130u;
|
|
/* 02518394 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 02518398 */ _t171 = cpu->r[1] + 0x00000100u;
|
|
/* 02518398 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0251839C */ _t172 = cpu->r[1] + 0x00000128u;
|
|
/* 0251839C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t172);
|
|
/* 025183A0 */ _t173 = cpu->r[1] + 0x000000F8u;
|
|
/* 025183A0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t173);
|
|
/* 025183A4 */ _t174 = cpu->r[1] + 0x000000C0u;
|
|
/* 025183A4 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 025183A8 */ _t175 = cpu->r[1] + 0x00000120u;
|
|
/* 025183A8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 025183AC */ _t176 = cpu->r[1] + 0x000000B8u;
|
|
/* 025183AC */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t176);
|
|
/* 025183B0 */ _t177 = cpu->r[1] + 0x00000118u;
|
|
/* 025183B0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t177);
|
|
/* 025183B4 */ _t178 = cpu->r[1] + 0x000000B0u;
|
|
/* 025183B4 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 025183B8 */ _t179 = cpu->r[1] + 0x00000140u;
|
|
/* 025183B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 025183BC */ _t180 = cpu->r[1] + 0x000000A8u;
|
|
/* 025183BC */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t180);
|
|
/* 025183C0 */ _t181 = cpu->r[1] + 0x00000138u;
|
|
/* 025183C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t181);
|
|
/* 025183C4 */ _t182 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025183C4 */ _t183 = _t182 & 0x00000001u;
|
|
/* 025183C4 */ if (_t183) goto L_025183C8; // else: addr-0 trap, fall-through
|
|
L_025183C8: ; // 0x25183c8
|
|
/* 025183C8 */ _t184 = cpu->r[1] + 0x0000014Cu;
|
|
/* 025183C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t184);
|
|
/* 025183CC */ cpu->lr = cpu->r[0];
|
|
/* 025183D0 */ cpu->r[1] = cpu->r[1] + 0x00000148u;
|
|
/* 025183D4 */ return;
|
|
}
|
|
|
|
// fn_025183D8 @ 0x25183d8
|
|
void Gambit_fn_025183D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_025183D8: ; // 0x25183d8
|
|
/* 025183D8 */ cpu->r[0] = cpu->lr;
|
|
/* 025183DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025183DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025183DC */ cpu->r[1] = _t0;
|
|
/* 025183E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025183E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025183E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025183E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025183E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025183EC */ _t3 = cpu->r[31] + 0x000001F4u;
|
|
/* 025183EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025183F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025183F4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025183F4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025183F4 */ if (_t5) goto L_025183FC; else goto L_025183F8;
|
|
L_025183F8: ; // 0x25183f8
|
|
/* 025183F8 */ Gambit_fn_02503EC8(cpu);
|
|
L_025183FC: ; // 0x25183fc
|
|
/* 025183FC */ _t6 = cpu->r[31] + 0x000001F8u;
|
|
/* 025183FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02518400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518404 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518404 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02518404 */ if (_t8) goto L_0251841C; else goto L_02518408;
|
|
L_02518408: ; // 0x2518408
|
|
/* 02518408 */ _t9 = cpu->r[31] + 0x00000219u;
|
|
/* 02518408 */ cpu->r[12] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0251840C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518410 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518410 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02518410 */ if (_t11) goto L_0251841C; else goto L_02518414;
|
|
L_02518414: ; // 0x2518414
|
|
/* 02518414 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518418 */ Gambit_fn_02517360(cpu);
|
|
L_0251841C: ; // 0x251841c
|
|
/* 0251841C */ cpu->r[3] = cpu->r[31];
|
|
/* 02518420 */ Gambit_fn_025173B4(cpu);
|
|
/* 02518424 */ _t12 = cpu->r[31] + 0x00000210u;
|
|
/* 02518424 */ cpu->r[10] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02518428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0251842C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251842C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0251842C */ if (_t14) goto L_02518458; else goto L_02518430;
|
|
L_02518430: ; // 0x2518430
|
|
/* 02518430 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518434 */ Gambit_fn_025174D8(cpu);
|
|
/* 02518438 */ _t15 = cpu->r[31] + 0x00000210u;
|
|
/* 02518438 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0251843C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518440 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518440 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02518440 */ if (_t17) goto L_02518458; else goto L_02518444;
|
|
L_02518444: ; // 0x2518444
|
|
/* 02518444 */ _t18 = cpu->r[31] + 0x0000033Du;
|
|
/* 02518444 */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02518448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251844C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251844C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0251844C */ if (_t20) goto L_02518458; else goto L_02518450;
|
|
L_02518450: ; // 0x2518450
|
|
/* 02518450 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518454 */ Gambit_fn_02517F5C(cpu);
|
|
L_02518458: ; // 0x2518458
|
|
/* 02518458 */ _t21 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02518458 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0251845C */ cpu->r[4] = 0x00000002u;
|
|
/* 02518460 */ _t22 = cpu->r[31] + 0x00000030u;
|
|
/* 02518460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02518464 */ Gambit_fn_027B8224(cpu);
|
|
/* 02518468 */ _t23 = cpu->r[31] + 0x00000220u;
|
|
/* 02518468 */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 0251846C */ _t24 = cpu->r[31] + 0x00000030u;
|
|
/* 0251846C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02518470 */ cpu->r[5] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02518474 */ cpu->r[4] = 0x00000005u;
|
|
/* 02518478 */ Gambit_fn_027B8224(cpu);
|
|
/* 0251847C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0251847C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02518480 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02518484 */ cpu->lr = cpu->r[0];
|
|
/* 02518488 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251848C */ return;
|
|
}
|
|
|
|
// fn_025183DC @ 0x25183dc
|
|
void Gambit_fn_025183DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_025183DC: ; // 0x25183dc
|
|
/* 025183DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025183DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025183DC */ cpu->r[1] = _t0;
|
|
/* 025183E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025183E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025183E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025183E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025183E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025183EC */ _t3 = cpu->r[31] + 0x000001F4u;
|
|
/* 025183EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025183F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025183F4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025183F4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025183F4 */ if (_t5) goto L_025183FC; else goto L_025183F8;
|
|
L_025183F8: ; // 0x25183f8
|
|
/* 025183F8 */ Gambit_fn_02503EC8(cpu);
|
|
L_025183FC: ; // 0x25183fc
|
|
/* 025183FC */ _t6 = cpu->r[31] + 0x000001F8u;
|
|
/* 025183FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02518400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518404 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518404 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02518404 */ if (_t8) goto L_0251841C; else goto L_02518408;
|
|
L_02518408: ; // 0x2518408
|
|
/* 02518408 */ _t9 = cpu->r[31] + 0x00000219u;
|
|
/* 02518408 */ cpu->r[12] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0251840C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518410 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518410 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02518410 */ if (_t11) goto L_0251841C; else goto L_02518414;
|
|
L_02518414: ; // 0x2518414
|
|
/* 02518414 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518418 */ Gambit_fn_02517360(cpu);
|
|
L_0251841C: ; // 0x251841c
|
|
/* 0251841C */ cpu->r[3] = cpu->r[31];
|
|
/* 02518420 */ Gambit_fn_025173B4(cpu);
|
|
/* 02518424 */ _t12 = cpu->r[31] + 0x00000210u;
|
|
/* 02518424 */ cpu->r[10] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02518428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0251842C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251842C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0251842C */ if (_t14) goto L_02518458; else goto L_02518430;
|
|
L_02518430: ; // 0x2518430
|
|
/* 02518430 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518434 */ Gambit_fn_025174D8(cpu);
|
|
/* 02518438 */ _t15 = cpu->r[31] + 0x00000210u;
|
|
/* 02518438 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0251843C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518440 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518440 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02518440 */ if (_t17) goto L_02518458; else goto L_02518444;
|
|
L_02518444: ; // 0x2518444
|
|
/* 02518444 */ _t18 = cpu->r[31] + 0x0000033Du;
|
|
/* 02518444 */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02518448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251844C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251844C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0251844C */ if (_t20) goto L_02518458; else goto L_02518450;
|
|
L_02518450: ; // 0x2518450
|
|
/* 02518450 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518454 */ Gambit_fn_02517F5C(cpu);
|
|
L_02518458: ; // 0x2518458
|
|
/* 02518458 */ _t21 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02518458 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0251845C */ cpu->r[4] = 0x00000002u;
|
|
/* 02518460 */ _t22 = cpu->r[31] + 0x00000030u;
|
|
/* 02518460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02518464 */ Gambit_fn_027B8224(cpu);
|
|
/* 02518468 */ _t23 = cpu->r[31] + 0x00000220u;
|
|
/* 02518468 */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 0251846C */ _t24 = cpu->r[31] + 0x00000030u;
|
|
/* 0251846C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02518470 */ cpu->r[5] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02518474 */ cpu->r[4] = 0x00000005u;
|
|
/* 02518478 */ Gambit_fn_027B8224(cpu);
|
|
/* 0251847C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0251847C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02518480 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02518484 */ cpu->lr = cpu->r[0];
|
|
/* 02518488 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0251848C */ return;
|
|
}
|
|
|
|
// fn_02518490 @ 0x2518490
|
|
void Gambit_fn_02518490(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
|
|
L_02518490: ; // 0x2518490
|
|
/* 02518490 */ cpu->r[0] = cpu->lr;
|
|
/* 02518494 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02518494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518494 */ cpu->r[1] = _t0;
|
|
/* 02518498 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02518498 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251849C */ cpu->r[31] = cpu->r[3];
|
|
/* 025184A0 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 025184A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025184A4 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 025184A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025184A8 */ Gambit_fn_024F607C(cpu);
|
|
/* 025184AC */ _t4 = cpu->r[31] + 0x00000334u;
|
|
/* 025184AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025184B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025184B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025184B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025184B4 */ if (_t6) goto L_02518544; else goto L_025184B8;
|
|
L_025184B8: ; // 0x25184b8
|
|
/* 025184B8 */ _t7 = cpu->r[31] + 0x00000060u;
|
|
/* 025184B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025184BC */ _t8 = cpu->r[31] + 0x00000058u;
|
|
/* 025184BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025184C0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025184C0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 025184C4 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 025184C4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 025184C8 */ _t11 = cpu->r[31] + 0x00000078u;
|
|
/* 025184C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 025184CC */ _t12 = cpu->r[31] + 0x00000054u;
|
|
/* 025184CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025184D0 */ _t13 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025184D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 025184D4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 025184D4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 025184D8 */ _t15 = cpu->r[31] + 0x00000080u;
|
|
/* 025184D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025184DC */ _t16 = cpu->r[31] + 0x00000070u;
|
|
/* 025184DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 025184E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 025184E0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 025184E4 */ _t18 = cpu->r[31] + 0x0000006Cu;
|
|
/* 025184E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 025184E8 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 025184E8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 025184EC */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 025184EC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 025184F0 */ _t21 = cpu->r[31] + 0x00000064u;
|
|
/* 025184F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025184F4 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 025184F4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 025184F8 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025184F8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 025184FC */ _t24 = cpu->r[31] + 0x00000068u;
|
|
/* 025184FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02518500 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 02518500 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[11]);
|
|
/* 02518504 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518504 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02518508 */ _t27 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02518508 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0251850C */ _t28 = cpu->r[31] + 0x00000074u;
|
|
/* 0251850C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02518510 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 02518510 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02518514 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 02518514 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02518518 */ _t31 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02518518 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0251851C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02518520 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02518524 */ cpu->r[4] = cpu->r[30] + 0x00000034u;
|
|
/* 02518528 */ _t32 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02518528 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 0251852C */ Gambit_fn_02C69510(cpu);
|
|
/* 02518530 */ cpu->r[3] = cpu->r[30];
|
|
/* 02518534 */ cpu->r[4] = 0x00000003u;
|
|
/* 02518538 */ Gambit_fn_02980304(cpu);
|
|
/* 0251853C */ cpu->r[3] = cpu->r[30];
|
|
/* 02518540 */ Gambit_fn_02980318(cpu);
|
|
L_02518544: ; // 0x2518544
|
|
/* 02518544 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 02518544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02518548 */ _t34 = cpu->r[1] + 0x00000038u;
|
|
/* 02518548 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0251854C */ cpu->lr = cpu->r[0];
|
|
/* 02518550 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02518550 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02518554 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02518558 */ return;
|
|
}
|
|
|
|
// fn_02518494 @ 0x2518494
|
|
void Gambit_fn_02518494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
|
|
L_02518494: ; // 0x2518494
|
|
/* 02518494 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02518494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518494 */ cpu->r[1] = _t0;
|
|
/* 02518498 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02518498 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251849C */ cpu->r[31] = cpu->r[3];
|
|
/* 025184A0 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 025184A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025184A4 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 025184A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025184A8 */ Gambit_fn_024F607C(cpu);
|
|
/* 025184AC */ _t4 = cpu->r[31] + 0x00000334u;
|
|
/* 025184AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025184B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025184B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025184B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025184B4 */ if (_t6) goto L_02518544; else goto L_025184B8;
|
|
L_025184B8: ; // 0x25184b8
|
|
/* 025184B8 */ _t7 = cpu->r[31] + 0x00000060u;
|
|
/* 025184B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025184BC */ _t8 = cpu->r[31] + 0x00000058u;
|
|
/* 025184BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025184C0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025184C0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 025184C4 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 025184C4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 025184C8 */ _t11 = cpu->r[31] + 0x00000078u;
|
|
/* 025184C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 025184CC */ _t12 = cpu->r[31] + 0x00000054u;
|
|
/* 025184CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025184D0 */ _t13 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025184D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 025184D4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 025184D4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 025184D8 */ _t15 = cpu->r[31] + 0x00000080u;
|
|
/* 025184D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025184DC */ _t16 = cpu->r[31] + 0x00000070u;
|
|
/* 025184DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 025184E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 025184E0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 025184E4 */ _t18 = cpu->r[31] + 0x0000006Cu;
|
|
/* 025184E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 025184E8 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 025184E8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 025184EC */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 025184EC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 025184F0 */ _t21 = cpu->r[31] + 0x00000064u;
|
|
/* 025184F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025184F4 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 025184F4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 025184F8 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025184F8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 025184FC */ _t24 = cpu->r[31] + 0x00000068u;
|
|
/* 025184FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02518500 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 02518500 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[11]);
|
|
/* 02518504 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518504 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02518508 */ _t27 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02518508 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0251850C */ _t28 = cpu->r[31] + 0x00000074u;
|
|
/* 0251850C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02518510 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 02518510 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02518514 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 02518514 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02518518 */ _t31 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02518518 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0251851C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02518520 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02518524 */ cpu->r[4] = cpu->r[30] + 0x00000034u;
|
|
/* 02518528 */ _t32 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02518528 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 0251852C */ Gambit_fn_02C69510(cpu);
|
|
/* 02518530 */ cpu->r[3] = cpu->r[30];
|
|
/* 02518534 */ cpu->r[4] = 0x00000003u;
|
|
/* 02518538 */ Gambit_fn_02980304(cpu);
|
|
/* 0251853C */ cpu->r[3] = cpu->r[30];
|
|
/* 02518540 */ Gambit_fn_02980318(cpu);
|
|
L_02518544: ; // 0x2518544
|
|
/* 02518544 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 02518544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02518548 */ _t34 = cpu->r[1] + 0x00000038u;
|
|
/* 02518548 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0251854C */ cpu->lr = cpu->r[0];
|
|
/* 02518550 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02518550 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02518554 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02518558 */ return;
|
|
}
|
|
|
|
// fn_0251855C @ 0x251855c
|
|
void Gambit_fn_0251855C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0251855C: ; // 0x251855c
|
|
/* 0251855C */ cpu->r[0] = cpu->lr;
|
|
/* 02518560 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02518560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518560 */ cpu->r[1] = _t0;
|
|
/* 02518564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518564 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02518568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251856C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251856C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02518570 */ Gambit_fn_024F606C(cpu);
|
|
/* 02518574 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518578 */ Gambit_fn_02518490(cpu);
|
|
/* 0251857C */ _t3 = cpu->r[31] + 0x00000210u;
|
|
/* 0251857C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02518580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518584 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518584 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02518584 */ if (_t5) goto L_02518588; else goto L_02518590;
|
|
L_02518588: ; // 0x2518588
|
|
/* 02518588 */ cpu->r[0] = 0x00000001u;
|
|
/* 0251858C */ _t6 = cpu->r[31] + 0x00000210u;
|
|
/* 0251858C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
L_02518590: ; // 0x2518590
|
|
/* 02518590 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02518590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02518594 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02518598 */ cpu->lr = cpu->r[0];
|
|
/* 0251859C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025185A0 */ return;
|
|
}
|
|
|
|
// fn_02518560 @ 0x2518560
|
|
void Gambit_fn_02518560(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02518560: ; // 0x2518560
|
|
/* 02518560 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02518560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518560 */ cpu->r[1] = _t0;
|
|
/* 02518564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518564 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02518568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251856C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251856C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02518570 */ Gambit_fn_024F606C(cpu);
|
|
/* 02518574 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518578 */ Gambit_fn_02518490(cpu);
|
|
/* 0251857C */ _t3 = cpu->r[31] + 0x00000210u;
|
|
/* 0251857C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02518580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518584 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518584 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02518584 */ if (_t5) goto L_02518588; else goto L_02518590;
|
|
L_02518588: ; // 0x2518588
|
|
/* 02518588 */ cpu->r[0] = 0x00000001u;
|
|
/* 0251858C */ _t6 = cpu->r[31] + 0x00000210u;
|
|
/* 0251858C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
L_02518590: ; // 0x2518590
|
|
/* 02518590 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02518590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02518594 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02518598 */ cpu->lr = cpu->r[0];
|
|
/* 0251859C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025185A0 */ return;
|
|
}
|
|
|
|
// fn_025185A4 @ 0x25185a4
|
|
void Gambit_fn_025185A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_025185A4: ; // 0x25185a4
|
|
/* 025185A4 */ cpu->r[0] = cpu->lr;
|
|
/* 025185A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025185A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025185A8 */ cpu->r[1] = _t0;
|
|
/* 025185AC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025185AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025185B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025185B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025185B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025185B8 */ _t3 = cpu->r[31] + 0x00000034u;
|
|
/* 025185B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025185BC */ cpu->r[12] = cpu->r[31] + 0x000001B0u;
|
|
/* 025185C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 025185C4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025185C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025185C4 */ if (_t5) goto L_025185C8; else goto L_025185E0;
|
|
L_025185C8: ; // 0x25185c8
|
|
/* 025185C8 */ _t6 = cpu->r[31] + 0x000001BEu;
|
|
/* 025185C8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t6);
|
|
/* 025185CC */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 025185D0 */ /* nop */
|
|
/* 025185D4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 025185D8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 025185DC */ Gambit_fn_0205C14C(cpu);
|
|
L_025185E0: ; // 0x25185e0
|
|
/* 025185E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025185E4 */ Gambit_fn_024F4624(cpu);
|
|
/* 025185E8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 025185E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025185EC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025185EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025185F0 */ cpu->lr = cpu->r[0];
|
|
/* 025185F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025185F8 */ return;
|
|
}
|
|
|
|
// fn_025185A8 @ 0x25185a8
|
|
void Gambit_fn_025185A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_025185A8: ; // 0x25185a8
|
|
/* 025185A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025185A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025185A8 */ cpu->r[1] = _t0;
|
|
/* 025185AC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025185AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025185B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025185B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025185B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025185B8 */ _t3 = cpu->r[31] + 0x00000034u;
|
|
/* 025185B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025185BC */ cpu->r[12] = cpu->r[31] + 0x000001B0u;
|
|
/* 025185C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 025185C4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025185C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025185C4 */ if (_t5) goto L_025185C8; else goto L_025185E0;
|
|
L_025185C8: ; // 0x25185c8
|
|
/* 025185C8 */ _t6 = cpu->r[31] + 0x000001BEu;
|
|
/* 025185C8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t6);
|
|
/* 025185CC */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 025185D0 */ /* nop */
|
|
/* 025185D4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 025185D8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 025185DC */ Gambit_fn_0205C14C(cpu);
|
|
L_025185E0: ; // 0x25185e0
|
|
/* 025185E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025185E4 */ Gambit_fn_024F4624(cpu);
|
|
/* 025185E8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 025185E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025185EC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025185EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025185F0 */ cpu->lr = cpu->r[0];
|
|
/* 025185F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025185F8 */ return;
|
|
}
|
|
|
|
// fn_025185FC @ 0x25185fc
|
|
void Gambit_fn_025185FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_025185FC: ; // 0x25185fc
|
|
/* 025185FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02518600 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518600 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518600 */ if (_t1) goto L_02518618; else goto L_02518604;
|
|
L_02518604: ; // 0x2518604
|
|
/* 02518604 */ _t2 = cpu->r[3] + 0x00000338u;
|
|
/* 02518604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02518608 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0251860C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251860C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0251860C */ if (_t4) goto L_02518610; else goto L_02518618;
|
|
L_02518610: ; // 0x2518610
|
|
/* 02518610 */ _t5 = cpu->r[3] + 0x0000033Cu;
|
|
/* 02518610 */ cpu->r[3] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02518614 */ return;
|
|
L_02518618: ; // 0x2518618
|
|
/* 02518618 */ _t6 = cpu->r[3] + 0x00000140u;
|
|
/* 02518618 */ cpu->r[3] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0251861C */ return;
|
|
}
|
|
|
|
// fn_02518620 @ 0x2518620
|
|
void Gambit_fn_02518620(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111;
|
|
|
|
L_0205B920: ; // 0x205b920
|
|
/* 0205B920 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0205B920 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0205B920 */ cpu->r[1] = _t0;
|
|
/* 0205B924 */ /* nop */
|
|
/* 0205B928 */ cpu->r[0] = cpu->lr;
|
|
/* 0205B92C */ cpu->r[28] = cpu->r[3];
|
|
/* 0205B930 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0205B930 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0205B934 */ Gambit_fn_02062AF0(cpu);
|
|
/* 0205B938 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0205B93C */ _t2 = cpu->r[12] + 0xFFFFB5A4u;
|
|
/* 0205B93C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0205B940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0205B944 */ cpu->r[27] = cpu->r[3];
|
|
/* 0205B948 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205B948 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0205B948 */ if (_t4) goto L_0205B964; else goto L_0205B94C;
|
|
L_0205B94C: ; // 0x205b94c
|
|
/* 0205B94C */ cpu->r[29] = 0x101E0000u;
|
|
/* 0205B950 */ cpu->r[29] = cpu->r[29] + 0xFFFFB454u;
|
|
/* 0205B954 */ _t5 = cpu->r[29] + 0x00000054u;
|
|
/* 0205B954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0205B958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205B95C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205B95C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0205B95C */ if (_t7) goto L_0205B960; else goto L_0205BAB8;
|
|
L_0205B960: ; // 0x205b960
|
|
/* 0205B960 */ goto L_0205B9C4;
|
|
L_0205B964: ; // 0x205b964
|
|
/* 0205B964 */ cpu->r[4] = 0x10000000u;
|
|
/* 0205B968 */ cpu->r[0] = 0x00000001u;
|
|
/* 0205B96C */ cpu->r[29] = 0x101E0000u;
|
|
/* 0205B970 */ cpu->r[4] = cpu->r[4] + 0x00006734u;
|
|
/* 0205B974 */ cpu->r[9] = 0x101E0000u;
|
|
/* 0205B978 */ cpu->r[29] = cpu->r[29] + 0xFFFFB454u;
|
|
/* 0205B97C */ cpu->r[7] = 0x00000000u;
|
|
/* 0205B980 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205B984 */ cpu->r[6] = cpu->r[29] + 0x00000060u;
|
|
/* 0205B988 */ cpu->r[3] = cpu->r[29];
|
|
/* 0205B98C */ _t8 = cpu->r[9] + 0xFFFFB5A4u;
|
|
/* 0205B98C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0205B990 */ Gambit_fn_028A6750(cpu);
|
|
/* 0205B994 */ cpu->r[6] = 0x02060000u;
|
|
/* 0205B998 */ cpu->r[3] = cpu->r[29] + 0x00000060u;
|
|
/* 0205B99C */ cpu->r[4] = 0x00000002u;
|
|
/* 0205B9A0 */ cpu->r[6] = cpu->r[6] + 0xFFFFBDBCu;
|
|
/* 0205B9A4 */ cpu->r[5] = 0x00000008u;
|
|
/* 0205B9A8 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0205B9AC */ cpu->r[3] = 0x101C0000u;
|
|
/* 0205B9B0 */ cpu->r[3] = cpu->r[3] + 0x000029C0u;
|
|
/* 0205B9B4 */ Gambit_fn_02C83090(cpu);
|
|
/* 0205B9B8 */ _t9 = cpu->r[29] + 0x00000054u;
|
|
/* 0205B9B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0205B9BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205B9C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205B9C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0205B9C0 */ if (_t11) goto L_0205B9C4; else goto L_0205BAB8;
|
|
L_0205B9C4: ; // 0x205b9c4
|
|
/* 0205B9C4 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0205B9C8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0205B9CC */ cpu->r[20] = 0x101D0000u;
|
|
/* 0205B9D0 */ cpu->r[21] = 0x101D0000u;
|
|
/* 0205B9D4 */ cpu->r[22] = 0x00000001u;
|
|
/* 0205B9D8 */ cpu->r[26] = cpu->r[31];
|
|
/* 0205B9DC */ cpu->r[24] = 0x101D0000u;
|
|
/* 0205B9E0 */ cpu->r[25] = cpu->r[25] + 0xFFFFE824u;
|
|
/* 0205B9E4 */ cpu->r[23] = 0x101D0000u;
|
|
L_0205B9E8: ; // 0x205b9e8
|
|
/* 0205B9E8 */ _t12 = cpu->r[23] + 0xFFFFE834u;
|
|
/* 0205B9E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0205B9EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205B9F0 */ cpu->r[30] = cpu->r[31];
|
|
/* 0205B9F4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205B9F4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0205B9F4 */ if (_t14) goto L_0205B9F8; else goto L_0205BA10;
|
|
L_0205B9F8: ; // 0x205b9f8
|
|
/* 0205B9F8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0205B9FC */ cpu->r[3] = cpu->r[24] + 0x00003668u;
|
|
/* 0205BA00 */ cpu->r[5] = 0x0000000Eu;
|
|
/* 0205BA04 */ cpu->r[4] = cpu->r[4] + 0x000029A0u;
|
|
/* 0205BA08 */ _t15 = cpu->r[23] + 0xFFFFE834u;
|
|
/* 0205BA08 */ rbrew_write32(cpu->mem, _t15, cpu->r[22]);
|
|
/* 0205BA0C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0205BA10: ; // 0x205ba10
|
|
/* 0205BA10 */ _t16 = cpu->r[21] + 0xFFFFE830u;
|
|
/* 0205BA10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0205BA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205BA18 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BA18 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0205BA18 */ if (_t18) goto L_0205BA1C; else goto L_0205BA24;
|
|
L_0205BA1C: ; // 0x205ba1c
|
|
/* 0205BA1C */ _t19 = cpu->r[20] + 0xFFFFE82Cu;
|
|
/* 0205BA1C */ rbrew_write32(cpu->mem, _t19, cpu->r[26]);
|
|
/* 0205BA20 */ _t20 = cpu->r[21] + 0xFFFFE830u;
|
|
/* 0205BA20 */ rbrew_write32(cpu->mem, _t20, cpu->r[22]);
|
|
L_0205BA24: ; // 0x205ba24
|
|
/* 0205BA24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 0205BA28 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BA28 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0205BA28 */ if (_t22) goto L_0205BA50; else goto L_0205BA2C;
|
|
L_0205BA2C: ; // 0x205ba2c
|
|
/* 0205BA2C */ cpu->r[4] = cpu->r[30];
|
|
/* 0205BA30 */ cpu->r[3] = cpu->r[29];
|
|
/* 0205BA34 */ cpu->r[5] = 0x00000000u;
|
|
/* 0205BA38 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205BA3C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0205BA40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000002u);
|
|
/* 0205BA44 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205BA44 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0205BA44 */ if (_t24) goto L_0205BAB8; else goto L_0205BA48;
|
|
L_0205BA48: ; // 0x205ba48
|
|
/* 0205BA48 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BA48 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0205BA48 */ if (_t26) goto L_0205B9E8; else goto L_0205BA4C;
|
|
L_0205BA4C: ; // 0x205ba4c
|
|
/* 0205BA4C */ goto L_0205BAB8;
|
|
L_0205BA50: ; // 0x205ba50
|
|
/* 0205BA50 */ _t27 = cpu->r[20] + 0xFFFFE82Cu;
|
|
/* 0205BA50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0205BA54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0205BA58 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BA58 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0205BA58 */ if (_t29) goto L_0205BA5C; else goto L_0205BA94;
|
|
L_0205BA5C: ; // 0x205ba5c
|
|
/* 0205BA5C */ Gambit_fn_0282A450(cpu);
|
|
/* 0205BA60 */ cpu->r[19] = cpu->r[3];
|
|
/* 0205BA64 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205BA68 */ _t30 = cpu->r[20] + 0xFFFFE82Cu;
|
|
/* 0205BA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0205BA6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205BA70 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BA70 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0205BA70 */ if (_t32) goto L_0205BA74; else goto L_0205BA88;
|
|
L_0205BA74: ; // 0x205ba74
|
|
/* 0205BA74 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205BA78 */ cpu->r[4] = cpu->r[24] + 0x00003668u;
|
|
/* 0205BA7C */ cpu->r[3] = cpu->r[25];
|
|
/* 0205BA80 */ Gambit_fn_0282A374(cpu);
|
|
/* 0205BA84 */ _t33 = cpu->r[20] + 0xFFFFE82Cu;
|
|
/* 0205BA84 */ rbrew_write32(cpu->mem, _t33, cpu->r[25]);
|
|
L_0205BA88: ; // 0x205ba88
|
|
/* 0205BA88 */ cpu->r[3] = cpu->r[19];
|
|
/* 0205BA8C */ Gambit_fn_02837030(cpu);
|
|
/* 0205BA90 */ _t34 = cpu->r[20] + 0xFFFFE82Cu;
|
|
/* 0205BA90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
L_0205BA94: ; // 0x205ba94
|
|
/* 0205BA94 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0205BA98 */ cpu->r[3] = cpu->r[29];
|
|
/* 0205BA9C */ _t35 = cpu->r[11] + cpu->r[6];
|
|
/* 0205BA9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0205BAA0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0205BAA4 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205BAA8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0205BAAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000002u);
|
|
/* 0205BAB0 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205BAB0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0205BAB0 */ if (_t37) goto L_0205BAB8; else goto L_0205BAB4;
|
|
L_0205BAB4: ; // 0x205bab4
|
|
/* 0205BAB4 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BAB4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0205BAB4 */ if (_t39) goto L_0205B9E8; else goto L_0205BAB8;
|
|
L_0205BAB8: ; // 0x205bab8
|
|
/* 0205BAB8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0205BABC */ cpu->r[4] = cpu->r[29];
|
|
/* 0205BAC0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 0205BAC4 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0205BAC8 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0205BACC */ _t40 = cpu->r[4] + 0xFFFFB5A8u;
|
|
/* 0205BACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0205BACC */ cpu->r[4] = _t40;
|
|
/* 0205BAD0 */ cpu->r[31] = cpu->r[31] + 0xFFFFB4C4u;
|
|
/* 0205BAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205BAD8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0205BADC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BADC */ _t42 = _t41 & 0x00000001u;
|
|
/* 0205BADC */ if (_t42) goto L_0205BAE0; else goto L_0205BB28;
|
|
L_0205BAE0: ; // 0x205bae0
|
|
/* 0205BAE0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0205BAE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205BAE8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0205BAEC */ _t43 = cpu->r[4] + 0x00000000u;
|
|
/* 0205BAEC */ rbrew_write32(cpu->mem, _t43, cpu->r[5]);
|
|
/* 0205BAF0 */ cpu->r[4] = 0x10000000u;
|
|
/* 0205BAF4 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0205BAF8 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205BAFC */ cpu->r[4] = cpu->r[4] + 0x0000673Cu;
|
|
/* 0205BB00 */ Gambit_fn_028A6750(cpu);
|
|
/* 0205BB04 */ cpu->r[6] = 0x02060000u;
|
|
/* 0205BB08 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0205BB0C */ cpu->r[4] = 0x00000002u;
|
|
/* 0205BB10 */ cpu->r[6] = cpu->r[6] + 0xFFFFBDBCu;
|
|
/* 0205BB14 */ cpu->r[5] = 0x00000008u;
|
|
/* 0205BB18 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0205BB1C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0205BB20 */ cpu->r[3] = cpu->r[3] + 0x000029CCu;
|
|
/* 0205BB24 */ Gambit_fn_02C83090(cpu);
|
|
L_0205BB28: ; // 0x205bb28
|
|
/* 0205BB28 */ _t44 = cpu->r[31] + 0x00000054u;
|
|
/* 0205BB28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0205BB2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0205BB30 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BB30 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0205BB30 */ if (_t46) goto L_0205BB34; else goto L_0205BC28;
|
|
L_0205BB34: ; // 0x205bb34
|
|
/* 0205BB34 */ cpu->r[23] = 0x101D0000u;
|
|
/* 0205BB38 */ cpu->r[29] = 0x00000000u;
|
|
/* 0205BB3C */ cpu->r[26] = 0x101D0000u;
|
|
/* 0205BB40 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0205BB44 */ cpu->r[20] = 0x00000001u;
|
|
/* 0205BB48 */ cpu->r[24] = cpu->r[29];
|
|
/* 0205BB4C */ cpu->r[22] = 0x101D0000u;
|
|
/* 0205BB50 */ cpu->r[23] = cpu->r[23] + 0xFFFFE838u;
|
|
/* 0205BB54 */ cpu->r[21] = 0x101D0000u;
|
|
L_0205BB58: ; // 0x205bb58
|
|
/* 0205BB58 */ _t47 = cpu->r[21] + 0xFFFFE848u;
|
|
/* 0205BB58 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0205BB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0205BB60 */ cpu->r[30] = cpu->r[29];
|
|
/* 0205BB64 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BB64 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0205BB64 */ if (_t49) goto L_0205BB68; else goto L_0205BB80;
|
|
L_0205BB68: ; // 0x205bb68
|
|
/* 0205BB68 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0205BB6C */ cpu->r[3] = cpu->r[22] + 0x00003676u;
|
|
/* 0205BB70 */ cpu->r[5] = 0x00000010u;
|
|
/* 0205BB74 */ cpu->r[4] = cpu->r[4] + 0x00002990u;
|
|
/* 0205BB78 */ _t50 = cpu->r[21] + 0xFFFFE848u;
|
|
/* 0205BB78 */ rbrew_write32(cpu->mem, _t50, cpu->r[20]);
|
|
/* 0205BB7C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0205BB80: ; // 0x205bb80
|
|
/* 0205BB80 */ _t51 = cpu->r[19] + 0xFFFFE844u;
|
|
/* 0205BB80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0205BB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205BB88 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BB88 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0205BB88 */ if (_t53) goto L_0205BB8C; else goto L_0205BB94;
|
|
L_0205BB8C: ; // 0x205bb8c
|
|
/* 0205BB8C */ _t54 = cpu->r[26] + 0xFFFFE840u;
|
|
/* 0205BB8C */ rbrew_write32(cpu->mem, _t54, cpu->r[24]);
|
|
/* 0205BB90 */ _t55 = cpu->r[19] + 0xFFFFE844u;
|
|
/* 0205BB90 */ rbrew_write32(cpu->mem, _t55, cpu->r[20]);
|
|
L_0205BB94: ; // 0x205bb94
|
|
/* 0205BB94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 0205BB98 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BB98 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0205BB98 */ if (_t57) goto L_0205BBC0; else goto L_0205BB9C;
|
|
L_0205BB9C: ; // 0x205bb9c
|
|
/* 0205BB9C */ cpu->r[4] = cpu->r[30];
|
|
/* 0205BBA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205BBA4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0205BBA8 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205BBAC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0205BBB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 0205BBB4 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205BBB4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0205BBB4 */ if (_t59) goto L_0205BC28; else goto L_0205BBB8;
|
|
L_0205BBB8: ; // 0x205bbb8
|
|
/* 0205BBB8 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BBB8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0205BBB8 */ if (_t61) goto L_0205BB58; else goto L_0205BBBC;
|
|
L_0205BBBC: ; // 0x205bbbc
|
|
/* 0205BBBC */ goto L_0205BC28;
|
|
L_0205BBC0: ; // 0x205bbc0
|
|
/* 0205BBC0 */ _t62 = cpu->r[26] + 0xFFFFE840u;
|
|
/* 0205BBC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0205BBC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0205BBC8 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BBC8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0205BBC8 */ if (_t64) goto L_0205BBCC; else goto L_0205BC04;
|
|
L_0205BBCC: ; // 0x205bbcc
|
|
/* 0205BBCC */ Gambit_fn_0282A450(cpu);
|
|
/* 0205BBD0 */ cpu->r[25] = cpu->r[3];
|
|
/* 0205BBD4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205BBD8 */ _t65 = cpu->r[26] + 0xFFFFE840u;
|
|
/* 0205BBD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0205BBDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0205BBE0 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BBE0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0205BBE0 */ if (_t67) goto L_0205BBE4; else goto L_0205BBF8;
|
|
L_0205BBE4: ; // 0x205bbe4
|
|
/* 0205BBE4 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205BBE8 */ cpu->r[4] = cpu->r[22] + 0x00003676u;
|
|
/* 0205BBEC */ cpu->r[3] = cpu->r[23];
|
|
/* 0205BBF0 */ Gambit_fn_0282A374(cpu);
|
|
/* 0205BBF4 */ _t68 = cpu->r[26] + 0xFFFFE840u;
|
|
/* 0205BBF4 */ rbrew_write32(cpu->mem, _t68, cpu->r[23]);
|
|
L_0205BBF8: ; // 0x205bbf8
|
|
/* 0205BBF8 */ cpu->r[3] = cpu->r[25];
|
|
/* 0205BBFC */ Gambit_fn_02837030(cpu);
|
|
/* 0205BC00 */ _t69 = cpu->r[26] + 0xFFFFE840u;
|
|
/* 0205BC00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t69);
|
|
L_0205BC04: ; // 0x205bc04
|
|
/* 0205BC04 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0205BC08 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205BC0C */ _t70 = cpu->r[12] + cpu->r[8];
|
|
/* 0205BC0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0205BC10 */ cpu->r[4] = cpu->r[30];
|
|
/* 0205BC14 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205BC18 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0205BC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 0205BC20 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205BC20 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0205BC20 */ if (_t72) goto L_0205BC28; else goto L_0205BC24;
|
|
L_0205BC24: ; // 0x205bc24
|
|
/* 0205BC24 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BC24 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0205BC24 */ if (_t74) goto L_0205BB58; else goto L_0205BC28;
|
|
L_0205BC28: ; // 0x205bc28
|
|
/* 0205BC28 */ cpu->r[3] = cpu->r[28];
|
|
/* 0205BC2C */ cpu->r[4] = cpu->r[31];
|
|
/* 0205BC30 */ Gambit_fn_027B81E4(cpu);
|
|
/* 0205BC34 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0205BC38 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0205BC3C */ _t75 = cpu->r[12] + 0xFFFFB5ACu;
|
|
/* 0205BC3C */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0205BC3C */ cpu->r[12] = _t75;
|
|
/* 0205BC40 */ cpu->r[31] = cpu->r[31] + 0xFFFFB534u;
|
|
/* 0205BC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0205BC48 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0205BC4C */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BC4C */ _t77 = _t76 & 0x00000001u;
|
|
/* 0205BC4C */ if (_t77) goto L_0205BC50; else goto L_0205BC98;
|
|
L_0205BC50: ; // 0x205bc50
|
|
/* 0205BC50 */ cpu->r[4] = 0x10000000u;
|
|
/* 0205BC54 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0205BC58 */ cpu->r[5] = 0x00000001u;
|
|
/* 0205BC5C */ cpu->r[4] = cpu->r[4] + 0x0000674Cu;
|
|
/* 0205BC60 */ cpu->r[7] = 0x00000000u;
|
|
/* 0205BC64 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0205BC64 */ rbrew_write32(cpu->mem, _t78, cpu->r[5]);
|
|
/* 0205BC68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205BC6C */ cpu->r[5] = 0x00000002u;
|
|
/* 0205BC70 */ Gambit_fn_028A6750(cpu);
|
|
/* 0205BC74 */ cpu->r[6] = 0x02060000u;
|
|
/* 0205BC78 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0205BC7C */ cpu->r[4] = 0x00000002u;
|
|
/* 0205BC80 */ cpu->r[6] = cpu->r[6] + 0xFFFFBDBCu;
|
|
/* 0205BC84 */ cpu->r[5] = 0x00000008u;
|
|
/* 0205BC88 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0205BC8C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0205BC90 */ cpu->r[3] = cpu->r[3] + 0x000029D8u;
|
|
/* 0205BC94 */ Gambit_fn_02C83090(cpu);
|
|
L_0205BC98: ; // 0x205bc98
|
|
/* 0205BC98 */ _t79 = cpu->r[31] + 0x00000054u;
|
|
/* 0205BC98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0205BC9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0205BCA0 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BCA0 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0205BCA0 */ if (_t81) goto L_0205BCA4; else goto L_0205BD98;
|
|
L_0205BCA4: ; // 0x205bca4
|
|
/* 0205BCA4 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0205BCA8 */ cpu->r[30] = 0x00000000u;
|
|
/* 0205BCAC */ cpu->r[19] = 0x101D0000u;
|
|
/* 0205BCB0 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0205BCB4 */ cpu->r[21] = 0x00000001u;
|
|
/* 0205BCB8 */ cpu->r[26] = cpu->r[30];
|
|
/* 0205BCBC */ cpu->r[24] = 0x101D0000u;
|
|
/* 0205BCC0 */ cpu->r[25] = cpu->r[25] + 0xFFFFE84Cu;
|
|
/* 0205BCC4 */ cpu->r[23] = 0x101D0000u;
|
|
L_0205BCC8: ; // 0x205bcc8
|
|
/* 0205BCC8 */ _t82 = cpu->r[23] + 0xFFFFE85Cu;
|
|
/* 0205BCC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0205BCCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0205BCD0 */ cpu->r[29] = cpu->r[30];
|
|
/* 0205BCD4 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BCD4 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0205BCD4 */ if (_t84) goto L_0205BCD8; else goto L_0205BCF0;
|
|
L_0205BCD8: ; // 0x205bcd8
|
|
/* 0205BCD8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0205BCDC */ cpu->r[3] = cpu->r[24] + 0x00003686u;
|
|
/* 0205BCE0 */ cpu->r[5] = 0x0000000Eu;
|
|
/* 0205BCE4 */ cpu->r[4] = cpu->r[4] + 0x000029B0u;
|
|
/* 0205BCE8 */ _t85 = cpu->r[23] + 0xFFFFE85Cu;
|
|
/* 0205BCE8 */ rbrew_write32(cpu->mem, _t85, cpu->r[21]);
|
|
/* 0205BCEC */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0205BCF0: ; // 0x205bcf0
|
|
/* 0205BCF0 */ _t86 = cpu->r[20] + 0xFFFFE858u;
|
|
/* 0205BCF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0205BCF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0205BCF8 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BCF8 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0205BCF8 */ if (_t88) goto L_0205BCFC; else goto L_0205BD04;
|
|
L_0205BCFC: ; // 0x205bcfc
|
|
/* 0205BCFC */ _t89 = cpu->r[19] + 0xFFFFE854u;
|
|
/* 0205BCFC */ rbrew_write32(cpu->mem, _t89, cpu->r[26]);
|
|
/* 0205BD00 */ _t90 = cpu->r[20] + 0xFFFFE858u;
|
|
/* 0205BD00 */ rbrew_write32(cpu->mem, _t90, cpu->r[21]);
|
|
L_0205BD04: ; // 0x205bd04
|
|
/* 0205BD04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 0205BD08 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BD08 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0205BD08 */ if (_t92) goto L_0205BD30; else goto L_0205BD0C;
|
|
L_0205BD0C: ; // 0x205bd0c
|
|
/* 0205BD0C */ cpu->r[4] = cpu->r[29];
|
|
/* 0205BD10 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205BD14 */ cpu->r[5] = 0x00000000u;
|
|
/* 0205BD18 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205BD1C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0205BD20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0205BD24 */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205BD24 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0205BD24 */ if (_t94) goto L_0205BD98; else goto L_0205BD28;
|
|
L_0205BD28: ; // 0x205bd28
|
|
/* 0205BD28 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BD28 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0205BD28 */ if (_t96) goto L_0205BCC8; else goto L_0205BD2C;
|
|
L_0205BD2C: ; // 0x205bd2c
|
|
/* 0205BD2C */ goto L_0205BD98;
|
|
L_0205BD30: ; // 0x205bd30
|
|
/* 0205BD30 */ _t97 = cpu->r[19] + 0xFFFFE854u;
|
|
/* 0205BD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0205BD34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205BD38 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BD38 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0205BD38 */ if (_t99) goto L_0205BD3C; else goto L_0205BD74;
|
|
L_0205BD3C: ; // 0x205bd3c
|
|
/* 0205BD3C */ Gambit_fn_0282A450(cpu);
|
|
/* 0205BD40 */ cpu->r[22] = cpu->r[3];
|
|
/* 0205BD44 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205BD48 */ _t100 = cpu->r[19] + 0xFFFFE854u;
|
|
/* 0205BD48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0205BD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205BD50 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205BD50 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0205BD50 */ if (_t102) goto L_0205BD54; else goto L_0205BD68;
|
|
L_0205BD54: ; // 0x205bd54
|
|
/* 0205BD54 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205BD58 */ cpu->r[4] = cpu->r[24] + 0x00003686u;
|
|
/* 0205BD5C */ cpu->r[3] = cpu->r[25];
|
|
/* 0205BD60 */ Gambit_fn_0282A374(cpu);
|
|
/* 0205BD64 */ _t103 = cpu->r[19] + 0xFFFFE854u;
|
|
/* 0205BD64 */ rbrew_write32(cpu->mem, _t103, cpu->r[25]);
|
|
L_0205BD68: ; // 0x205bd68
|
|
/* 0205BD68 */ cpu->r[3] = cpu->r[22];
|
|
/* 0205BD6C */ Gambit_fn_02837030(cpu);
|
|
/* 0205BD70 */ _t104 = cpu->r[19] + 0xFFFFE854u;
|
|
/* 0205BD70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
L_0205BD74: ; // 0x205bd74
|
|
/* 0205BD74 */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0205BD78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205BD7C */ _t105 = cpu->r[12] + cpu->r[0];
|
|
/* 0205BD7C */ cpu->r[5] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0205BD80 */ cpu->r[4] = cpu->r[29];
|
|
/* 0205BD84 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205BD88 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0205BD8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0205BD90 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205BD90 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0205BD90 */ if (_t107) goto L_0205BD98; else goto L_0205BD94;
|
|
L_0205BD94: ; // 0x205bd94
|
|
/* 0205BD94 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205BD94 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0205BD94 */ if (_t109) goto L_0205BCC8; else goto L_0205BD98;
|
|
L_0205BD98: ; // 0x205bd98
|
|
/* 0205BD98 */ cpu->r[3] = cpu->r[28];
|
|
/* 0205BD9C */ cpu->r[4] = cpu->r[31];
|
|
/* 0205BDA0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 0205BDA4 */ cpu->r[3] = cpu->r[27] + 0x00000001u;
|
|
/* 0205BDA8 */ /* nop */
|
|
/* 0205BDAC */ _t110 = cpu->r[1] + 0x00000044u;
|
|
/* 0205BDAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0205BDB0 */ cpu->lr = cpu->r[0];
|
|
/* 0205BDB4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0205BDB8 */ return;
|
|
L_02518620: ; // 0x2518620
|
|
/* 02518620 */ _t111 = cpu->r[3] + 0x00000030u;
|
|
/* 02518620 */ cpu->r[3] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02518624 */ cpu->r[4] = 0x00000000u;
|
|
/* 02518628 */ goto L_0205B920;
|
|
}
|
|
|
|
// fn_0251862C @ 0x251862c
|
|
void Gambit_fn_0251862C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_02517264: ; // 0x2517264
|
|
/* 02517264 */ cpu->r[12] = cpu->r[3];
|
|
/* 02517268 */ _t0 = cpu->r[12] + 0x000001F4u;
|
|
/* 02517268 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251726C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02517270 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02517270 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02517270 */ if (_t2) goto L_0251727C; else goto L_02517274;
|
|
L_02517274: ; // 0x2517274
|
|
/* 02517274 */ cpu->r[11] = 0x00000001u;
|
|
/* 02517278 */ _t3 = cpu->r[10] + 0x00000124u;
|
|
/* 02517278 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[11]);
|
|
L_0251727C: ; // 0x251727c
|
|
/* 0251727C */ cpu->r[5] = 0x00000001u;
|
|
/* 02517280 */ _t4 = cpu->r[12] + 0x00000030u;
|
|
/* 02517280 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02517284 */ cpu->r[4] = 0x00000004u;
|
|
/* 02517288 */ _t5 = cpu->r[12] + 0x00000219u;
|
|
/* 02517288 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[5]);
|
|
/* 0251728C */ goto L_027B8224;
|
|
L_0251862C: ; // 0x251862c
|
|
/* 0251862C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000000u);
|
|
/* 02518630 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518630 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02518630 */ _t8 = _t7 ^ 0x00000001u;
|
|
/* 02518630 */ if (_t8) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518630 */ goto L_02518634;
|
|
L_02518634: ; // 0x2518634
|
|
/* 02518634 */ _t9 = cpu->r[3] + 0x00000219u;
|
|
/* 02518634 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02518638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0251863C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251863C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0251863C */ _t12 = _t11 ^ 0x00000001u;
|
|
/* 0251863C */ if (_t12) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0251863C */ goto L_02518640;
|
|
L_02518640: ; // 0x2518640
|
|
/* 02518640 */ goto L_02517264;
|
|
L_027B8224: ; // 0x27b8224
|
|
/* 027B8224 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027B8224 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027B8228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027B822C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027B822C */ _t15 = _t14 & 0x00000001u;
|
|
/* 027B822C */ if (_t15) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027B822C */ goto L_027B8230;
|
|
L_027B8230: ; // 0x27b8230
|
|
/* 027B8230 */ goto L_027DA698;
|
|
L_027DA698: ; // 0x27da698
|
|
/* 027DA698 */ cpu->r[0] = cpu->lr;
|
|
/* 027DA69C */ _t16 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027DA69C */ rbrew_write32(cpu->mem, _t16, cpu->r[1]);
|
|
/* 027DA69C */ cpu->r[1] = _t16;
|
|
/* 027DA6A0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 027DA6A0 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 027DA6A4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027DA6A4 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 027DA6A8 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027DA6A8 */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 027DA6AC */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027DA6AC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027DA6B0 */ cpu->r[29] = cpu->r[3];
|
|
/* 027DA6B4 */ _t21 = cpu->r[29] + 0x00000014u;
|
|
/* 027DA6B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027DA6B8 */ cpu->r[31] = cpu->r[5];
|
|
/* 027DA6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027DA6C0 */ cpu->r[30] = cpu->r[4];
|
|
/* 027DA6C4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027DA6C4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027DA6C4 */ if (_t23) goto L_027DA6D4; else goto L_027DA6C8;
|
|
L_027DA6C8: ; // 0x27da6c8
|
|
/* 027DA6C8 */ cpu->r[5] = cpu->r[31];
|
|
/* 027DA6CC */ cpu->r[4] = cpu->r[30];
|
|
/* 027DA6D0 */ Gambit_fn_028AC3E4(cpu);
|
|
L_027DA6D4: ; // 0x27da6d4
|
|
/* 027DA6D4 */ _t24 = cpu->r[29] + 0x00000018u;
|
|
/* 027DA6D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027DA6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027DA6DC */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027DA6DC */ _t26 = _t25 & 0x00000001u;
|
|
/* 027DA6DC */ if (_t26) goto L_027DA6EC; else goto L_027DA6E0;
|
|
L_027DA6E0: ; // 0x27da6e0
|
|
/* 027DA6E0 */ cpu->r[5] = cpu->r[31];
|
|
/* 027DA6E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 027DA6E8 */ Gambit_fn_028AC3E4(cpu);
|
|
L_027DA6EC: ; // 0x27da6ec
|
|
/* 027DA6EC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027DA6EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027DA6F0 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027DA6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027DA6F4 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 027DA6F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027DA6F8 */ cpu->lr = cpu->r[0];
|
|
/* 027DA6FC */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 027DA6FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027DA700 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027DA704 */ return;
|
|
}
|
|
|
|
// fn_02518644 @ 0x2518644
|
|
void Gambit_fn_02518644(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02518644: ; // 0x2518644
|
|
/* 02518644 */ cpu->r[12] = cpu->r[3];
|
|
/* 02518648 */ cpu->r[3] = cpu->r[4];
|
|
/* 0251864C */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0251864C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518650 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518650 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518650 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518650 */ goto L_02518654;
|
|
L_02518654: ; // 0x2518654
|
|
/* 02518654 */ _t2 = cpu->r[12] + 0x00000134u;
|
|
/* 02518654 */ cpu->r[4] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02518658 */ goto L_025C6AA0;
|
|
L_025C6AA0: ; // 0x25c6aa0
|
|
/* 025C6AA0 */ _t3 = cpu->r[3] + 0x00000408u;
|
|
/* 025C6AA0 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 025C6AA4 */ cpu->r[0] = 0x00000002u;
|
|
/* 025C6AA8 */ _t4 = cpu->r[3] + 0x0000041Cu;
|
|
/* 025C6AA8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 025C6AAC */ return;
|
|
}
|
|
|
|
// fn_0251865C @ 0x251865c
|
|
void Gambit_fn_0251865C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0251865C: ; // 0x251865c
|
|
/* 0251865C */ _t0 = cpu->r[3] + 0x000001E8u;
|
|
/* 0251865C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518660 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02518664 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02518664 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518664 */ if (_t2) goto L_02518678; else goto L_02518668;
|
|
L_02518668: ; // 0x2518668
|
|
/* 02518668 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518668 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02518668 */ if (_t4) goto L_02518684; else goto L_0251866C;
|
|
L_0251866C: ; // 0x251866c
|
|
/* 0251866C */ cpu->r[3] = 0x100C0000u;
|
|
/* 02518670 */ cpu->r[3] = cpu->r[3] + 0x0000054Cu;
|
|
/* 02518674 */ return;
|
|
L_02518678: ; // 0x2518678
|
|
/* 02518678 */ cpu->r[3] = 0x100C0000u;
|
|
/* 0251867C */ cpu->r[3] = cpu->r[3] + 0x00000564u;
|
|
/* 02518680 */ return;
|
|
L_02518684: ; // 0x2518684
|
|
/* 02518684 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02518688 */ cpu->r[3] = cpu->r[3] + 0x00000550u;
|
|
/* 0251868C */ return;
|
|
}
|
|
|
|
// fn_02518690 @ 0x2518690
|
|
void Gambit_fn_02518690(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_02518690: ; // 0x2518690
|
|
/* 02518690 */ cpu->r[0] = cpu->lr;
|
|
/* 02518694 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02518694 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518694 */ cpu->r[1] = _t0;
|
|
/* 02518698 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518698 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0251869C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0251869C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 025186A0 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 025186A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 025186A4 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 025186A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025186A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025186AC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025186AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025186B0 */ _t6 = cpu->r[30] + 0x00000050u;
|
|
/* 025186B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025186B4 */ cpu->r[29] = 0x100C0000u;
|
|
/* 025186B8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025186BC */ cpu->r[29] = cpu->r[29] + 0x000002BCu;
|
|
/* 025186C0 */ cpu->r[0] = cpu->r[0] + 0x00000578u;
|
|
/* 025186C4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025186C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 025186C8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 025186C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 025186CC */ _t9 = cpu->r[28] + 0x00000034u;
|
|
/* 025186CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025186D0 */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 025186D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025186D4 */ cpu->ctr = cpu->r[6];
|
|
/* 025186D8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025186DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025186E0 */ _t11 = cpu->r[28] + 0x00000034u;
|
|
/* 025186E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025186E4 */ _t12 = cpu->r[7] + 0x00000014u;
|
|
/* 025186E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025186E8 */ cpu->ctr = cpu->r[8];
|
|
/* 025186EC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025186F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025186F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025186F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025186F8 */ _t14 = cpu->r[9] + 0x00000014u;
|
|
/* 025186F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025186FC */ cpu->ctr = cpu->r[10];
|
|
/* 02518700 */ _t15 = cpu->r[28] + 0x00000030u;
|
|
/* 02518700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02518704 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02518708 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251870C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0251870C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02518710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[11]);
|
|
/* 02518714 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518714 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02518714 */ if (_t18) goto L_0251875C; else goto L_02518718;
|
|
L_02518718: ; // 0x2518718
|
|
/* 02518718 */ cpu->r[0] = 0x00080000u;
|
|
/* 0251871C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0251871C */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02518720 */ cpu->r[31] = 0x10110000u;
|
|
/* 02518724 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02518728 */ _t20 = cpu->r[28] + 0x00000030u;
|
|
/* 02518728 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0251872C */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02518730 */ cpu->ctr = cpu->r[0];
|
|
/* 02518734 */ _t21 = cpu->r[31] + 0x00007399u;
|
|
/* 02518734 */ cpu->r[31] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02518738 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0251873C: ; // 0x251873c
|
|
/* 0251873C */ _t22 = cpu->r[8] + 0x00000001u;
|
|
/* 0251873C */ cpu->r[9] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0251873C */ cpu->r[8] = _t22;
|
|
/* 02518740 */ _t23 = cpu->r[7] + 0x00000001u;
|
|
/* 02518740 */ cpu->r[12] = rbrew_read8(cpu->mem, _t23);
|
|
/* 02518740 */ cpu->r[7] = _t23;
|
|
/* 02518744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02518748 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518748 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02518748 */ if (_t25) goto L_0251874C; else goto L_02518784;
|
|
L_0251874C: ; // 0x251874c
|
|
/* 0251874C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02518750 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518750 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02518750 */ if (_t27) goto L_0251875C; else goto L_02518754;
|
|
L_02518754: ; // 0x2518754
|
|
/* 02518754 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02518754 */ _t28 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02518754 */ _t29 = _t28 >> (0x00000002u & 31u);
|
|
/* 02518754 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02518754 */ if (_t30) goto L_0251873C; else goto L_02518758;
|
|
L_02518758: ; // 0x2518758
|
|
/* 02518758 */ goto L_02518784;
|
|
L_0251875C: ; // 0x251875c
|
|
/* 0251875C */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 0251875C */ cpu->r[28] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02518760 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518760 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02518764 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02518768 */ cpu->r[3] = 0x100C0000u;
|
|
/* 0251876C */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 0251876C */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02518770 */ cpu->lr = cpu->r[0];
|
|
/* 02518774 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02518774 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02518778 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0251877C */ cpu->r[3] = cpu->r[3] + 0x00000590u;
|
|
/* 02518780 */ return;
|
|
L_02518784: ; // 0x2518784
|
|
/* 02518784 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518788 */ _t36 = cpu->r[30] + 0x00000050u;
|
|
/* 02518788 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251878C */ cpu->r[0] = cpu->r[0] + 0x000005A8u;
|
|
/* 02518790 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02518790 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 02518794 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02518794 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02518798 */ _t39 = cpu->r[28] + 0x00000034u;
|
|
/* 02518798 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0251879C */ _t40 = cpu->r[8] + 0x00000014u;
|
|
/* 0251879C */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025187A0 */ cpu->ctr = cpu->r[0];
|
|
/* 025187A4 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025187A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025187AC */ _t41 = cpu->r[28] + 0x00000034u;
|
|
/* 025187AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025187B0 */ _t42 = cpu->r[10] + 0x00000014u;
|
|
/* 025187B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 025187B4 */ cpu->ctr = cpu->r[11];
|
|
/* 025187B8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025187BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025187C0 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 025187C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 025187C4 */ _t44 = cpu->r[12] + 0x00000014u;
|
|
/* 025187C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 025187C8 */ cpu->ctr = cpu->r[0];
|
|
/* 025187CC */ _t45 = cpu->r[28] + 0x00000030u;
|
|
/* 025187CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 025187D0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 025187D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025187D8 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 025187D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025187DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[6]);
|
|
/* 025187E0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025187E0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 025187E0 */ if (_t48) goto L_02518858; else goto L_025187E4;
|
|
L_025187E4: ; // 0x25187e4
|
|
/* 025187E4 */ cpu->r[10] = 0x00080000u;
|
|
/* 025187E8 */ _t49 = cpu->r[28] + 0x00000030u;
|
|
/* 025187E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 025187EC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 025187F0 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 025187F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 025187F4 */ cpu->ctr = cpu->r[10];
|
|
/* 025187F8 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 025187FC */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02518800: ; // 0x2518800
|
|
/* 02518800 */ _t51 = cpu->r[6] + 0x00000001u;
|
|
/* 02518800 */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 02518800 */ cpu->r[6] = _t51;
|
|
/* 02518804 */ _t52 = cpu->r[12] + 0x00000001u;
|
|
/* 02518804 */ cpu->r[7] = rbrew_read8(cpu->mem, _t52);
|
|
/* 02518804 */ cpu->r[12] = _t52;
|
|
/* 02518808 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0251880C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251880C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251880C */ if (_t54) goto L_02518810; else goto L_0251881C;
|
|
L_02518810: ; // 0x2518810
|
|
/* 02518810 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02518814 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518814 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02518814 */ if (_t56) goto L_02518858; else goto L_02518818;
|
|
L_02518818: ; // 0x2518818
|
|
/* 02518818 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02518818 */ _t57 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02518818 */ _t58 = _t57 >> (0x00000002u & 31u);
|
|
/* 02518818 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02518818 */ if (_t59) goto L_02518800; else goto L_0251881C;
|
|
L_0251881C: ; // 0x251881c
|
|
/* 0251881C */ _t60 = cpu->r[30] + 0x00000050u;
|
|
/* 0251881C */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02518820 */ _t61 = cpu->r[31] + 0x00000034u;
|
|
/* 02518820 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02518824 */ _t62 = cpu->r[8] + 0x00000014u;
|
|
/* 02518824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02518828 */ cpu->ctr = cpu->r[0];
|
|
/* 0251882C */ cpu->r[3] = cpu->r[31] + 0x00000030u;
|
|
/* 02518830 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02518834 */ _t63 = cpu->r[1] + 0x00000018u;
|
|
/* 02518834 */ cpu->r[28] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02518838 */ _t64 = cpu->r[31] + 0x00000030u;
|
|
/* 02518838 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0251883C */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251883C */ cpu->r[29] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02518840 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02518844 */ _t67 = cpu->r[1] + 0x00000020u;
|
|
/* 02518844 */ cpu->r[30] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02518848 */ cpu->lr = cpu->r[0];
|
|
/* 0251884C */ _t68 = cpu->r[1] + 0x00000024u;
|
|
/* 0251884C */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02518850 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02518854 */ return;
|
|
L_02518858: ; // 0x2518858
|
|
/* 02518858 */ _t69 = cpu->r[1] + 0x00000018u;
|
|
/* 02518858 */ cpu->r[28] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0251885C */ _t70 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251885C */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02518860 */ _t71 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02518864 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02518868 */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 02518868 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251886C */ cpu->lr = cpu->r[0];
|
|
/* 02518870 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 02518870 */ cpu->r[30] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02518874 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02518878 */ cpu->r[3] = cpu->r[3] + 0x000005C0u;
|
|
/* 0251887C */ return;
|
|
}
|
|
|
|
// fn_02518694 @ 0x2518694
|
|
void Gambit_fn_02518694(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_02518694: ; // 0x2518694
|
|
/* 02518694 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02518694 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518694 */ cpu->r[1] = _t0;
|
|
/* 02518698 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518698 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0251869C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0251869C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 025186A0 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 025186A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 025186A4 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 025186A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025186A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025186AC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025186AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025186B0 */ _t6 = cpu->r[30] + 0x00000050u;
|
|
/* 025186B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025186B4 */ cpu->r[29] = 0x100C0000u;
|
|
/* 025186B8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025186BC */ cpu->r[29] = cpu->r[29] + 0x000002BCu;
|
|
/* 025186C0 */ cpu->r[0] = cpu->r[0] + 0x00000578u;
|
|
/* 025186C4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025186C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 025186C8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 025186C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 025186CC */ _t9 = cpu->r[28] + 0x00000034u;
|
|
/* 025186CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025186D0 */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 025186D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025186D4 */ cpu->ctr = cpu->r[6];
|
|
/* 025186D8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025186DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025186E0 */ _t11 = cpu->r[28] + 0x00000034u;
|
|
/* 025186E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025186E4 */ _t12 = cpu->r[7] + 0x00000014u;
|
|
/* 025186E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025186E8 */ cpu->ctr = cpu->r[8];
|
|
/* 025186EC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025186F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025186F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025186F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025186F8 */ _t14 = cpu->r[9] + 0x00000014u;
|
|
/* 025186F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025186FC */ cpu->ctr = cpu->r[10];
|
|
/* 02518700 */ _t15 = cpu->r[28] + 0x00000030u;
|
|
/* 02518700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02518704 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02518708 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251870C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0251870C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02518710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[11]);
|
|
/* 02518714 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518714 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02518714 */ if (_t18) goto L_0251875C; else goto L_02518718;
|
|
L_02518718: ; // 0x2518718
|
|
/* 02518718 */ cpu->r[0] = 0x00080000u;
|
|
/* 0251871C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0251871C */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02518720 */ cpu->r[31] = 0x10110000u;
|
|
/* 02518724 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02518728 */ _t20 = cpu->r[28] + 0x00000030u;
|
|
/* 02518728 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0251872C */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02518730 */ cpu->ctr = cpu->r[0];
|
|
/* 02518734 */ _t21 = cpu->r[31] + 0x00007399u;
|
|
/* 02518734 */ cpu->r[31] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02518738 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0251873C: ; // 0x251873c
|
|
/* 0251873C */ _t22 = cpu->r[8] + 0x00000001u;
|
|
/* 0251873C */ cpu->r[9] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0251873C */ cpu->r[8] = _t22;
|
|
/* 02518740 */ _t23 = cpu->r[7] + 0x00000001u;
|
|
/* 02518740 */ cpu->r[12] = rbrew_read8(cpu->mem, _t23);
|
|
/* 02518740 */ cpu->r[7] = _t23;
|
|
/* 02518744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02518748 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518748 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02518748 */ if (_t25) goto L_0251874C; else goto L_02518784;
|
|
L_0251874C: ; // 0x251874c
|
|
/* 0251874C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02518750 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518750 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02518750 */ if (_t27) goto L_0251875C; else goto L_02518754;
|
|
L_02518754: ; // 0x2518754
|
|
/* 02518754 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02518754 */ _t28 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02518754 */ _t29 = _t28 >> (0x00000002u & 31u);
|
|
/* 02518754 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02518754 */ if (_t30) goto L_0251873C; else goto L_02518758;
|
|
L_02518758: ; // 0x2518758
|
|
/* 02518758 */ goto L_02518784;
|
|
L_0251875C: ; // 0x251875c
|
|
/* 0251875C */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 0251875C */ cpu->r[28] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02518760 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518760 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02518764 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02518768 */ cpu->r[3] = 0x100C0000u;
|
|
/* 0251876C */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 0251876C */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02518770 */ cpu->lr = cpu->r[0];
|
|
/* 02518774 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02518774 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02518778 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0251877C */ cpu->r[3] = cpu->r[3] + 0x00000590u;
|
|
/* 02518780 */ return;
|
|
L_02518784: ; // 0x2518784
|
|
/* 02518784 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518788 */ _t36 = cpu->r[30] + 0x00000050u;
|
|
/* 02518788 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251878C */ cpu->r[0] = cpu->r[0] + 0x000005A8u;
|
|
/* 02518790 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02518790 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 02518794 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02518794 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02518798 */ _t39 = cpu->r[28] + 0x00000034u;
|
|
/* 02518798 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0251879C */ _t40 = cpu->r[8] + 0x00000014u;
|
|
/* 0251879C */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025187A0 */ cpu->ctr = cpu->r[0];
|
|
/* 025187A4 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025187A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025187AC */ _t41 = cpu->r[28] + 0x00000034u;
|
|
/* 025187AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025187B0 */ _t42 = cpu->r[10] + 0x00000014u;
|
|
/* 025187B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 025187B4 */ cpu->ctr = cpu->r[11];
|
|
/* 025187B8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 025187BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025187C0 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 025187C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 025187C4 */ _t44 = cpu->r[12] + 0x00000014u;
|
|
/* 025187C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 025187C8 */ cpu->ctr = cpu->r[0];
|
|
/* 025187CC */ _t45 = cpu->r[28] + 0x00000030u;
|
|
/* 025187CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 025187D0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 025187D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025187D8 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 025187D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025187DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[6]);
|
|
/* 025187E0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025187E0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 025187E0 */ if (_t48) goto L_02518858; else goto L_025187E4;
|
|
L_025187E4: ; // 0x25187e4
|
|
/* 025187E4 */ cpu->r[10] = 0x00080000u;
|
|
/* 025187E8 */ _t49 = cpu->r[28] + 0x00000030u;
|
|
/* 025187E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 025187EC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 025187F0 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 025187F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 025187F4 */ cpu->ctr = cpu->r[10];
|
|
/* 025187F8 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 025187FC */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02518800: ; // 0x2518800
|
|
/* 02518800 */ _t51 = cpu->r[6] + 0x00000001u;
|
|
/* 02518800 */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 02518800 */ cpu->r[6] = _t51;
|
|
/* 02518804 */ _t52 = cpu->r[12] + 0x00000001u;
|
|
/* 02518804 */ cpu->r[7] = rbrew_read8(cpu->mem, _t52);
|
|
/* 02518804 */ cpu->r[12] = _t52;
|
|
/* 02518808 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0251880C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251880C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251880C */ if (_t54) goto L_02518810; else goto L_0251881C;
|
|
L_02518810: ; // 0x2518810
|
|
/* 02518810 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02518814 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518814 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02518814 */ if (_t56) goto L_02518858; else goto L_02518818;
|
|
L_02518818: ; // 0x2518818
|
|
/* 02518818 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02518818 */ _t57 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02518818 */ _t58 = _t57 >> (0x00000002u & 31u);
|
|
/* 02518818 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02518818 */ if (_t59) goto L_02518800; else goto L_0251881C;
|
|
L_0251881C: ; // 0x251881c
|
|
/* 0251881C */ _t60 = cpu->r[30] + 0x00000050u;
|
|
/* 0251881C */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02518820 */ _t61 = cpu->r[31] + 0x00000034u;
|
|
/* 02518820 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02518824 */ _t62 = cpu->r[8] + 0x00000014u;
|
|
/* 02518824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02518828 */ cpu->ctr = cpu->r[0];
|
|
/* 0251882C */ cpu->r[3] = cpu->r[31] + 0x00000030u;
|
|
/* 02518830 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02518834 */ _t63 = cpu->r[1] + 0x00000018u;
|
|
/* 02518834 */ cpu->r[28] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02518838 */ _t64 = cpu->r[31] + 0x00000030u;
|
|
/* 02518838 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0251883C */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251883C */ cpu->r[29] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02518840 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02518844 */ _t67 = cpu->r[1] + 0x00000020u;
|
|
/* 02518844 */ cpu->r[30] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02518848 */ cpu->lr = cpu->r[0];
|
|
/* 0251884C */ _t68 = cpu->r[1] + 0x00000024u;
|
|
/* 0251884C */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02518850 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02518854 */ return;
|
|
L_02518858: ; // 0x2518858
|
|
/* 02518858 */ _t69 = cpu->r[1] + 0x00000018u;
|
|
/* 02518858 */ cpu->r[28] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0251885C */ _t70 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251885C */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02518860 */ _t71 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02518860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02518864 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02518868 */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 02518868 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251886C */ cpu->lr = cpu->r[0];
|
|
/* 02518870 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 02518870 */ cpu->r[30] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02518874 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02518878 */ cpu->r[3] = cpu->r[3] + 0x000005C0u;
|
|
/* 0251887C */ return;
|
|
}
|
|
|
|
// fn_02518880 @ 0x2518880
|
|
void Gambit_fn_02518880(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518880: ; // 0x2518880
|
|
/* 02518880 */ cpu->r[0] = cpu->lr;
|
|
/* 02518884 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02518884 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518884 */ cpu->r[1] = _t0;
|
|
/* 02518888 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518888 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251888C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0251888C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02518890 */ cpu->r[31] = cpu->r[3];
|
|
/* 02518890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02518894 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02518894 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02518898 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518898 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02518898 */ if (_t5) goto L_0251889C; else goto L_025188AC;
|
|
L_0251889C: ; // 0x251889c
|
|
/* 0251889C */ cpu->r[3] = 0x000001E8u;
|
|
/* 025188A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025188A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025188A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025188A8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025188A8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025188A8 */ if (_t7) goto L_02518920; else goto L_025188AC;
|
|
L_025188AC: ; // 0x25188ac
|
|
/* 025188AC */ cpu->r[3] = cpu->r[31];
|
|
/* 025188B0 */ Gambit_fn_025015D0(cpu);
|
|
/* 025188B4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025188B8 */ cpu->r[0] = cpu->r[0] + 0x000003CCu;
|
|
/* 025188BC */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 025188BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025188C0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 025188C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 025188C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025188C4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 025188C4 */ if (_t10) goto L_025188C8; else goto L_025188D8;
|
|
L_025188C8: ; // 0x25188c8
|
|
/* 025188C8 */ cpu->r[3] = 0x00000060u;
|
|
/* 025188CC */ Gambit_fn_02801A78(cpu);
|
|
/* 025188D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 025188D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025188D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025188D4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025188D4 */ if (_t12) goto L_02518920; else goto L_025188D8;
|
|
L_025188D8: ; // 0x25188d8
|
|
/* 025188D8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025188DC */ cpu->r[4] = cpu->r[31];
|
|
/* 025188E0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 025188E4 */ cpu->r[5] = cpu->r[5] + 0x000005D8u;
|
|
/* 025188E8 */ cpu->r[8] = 0x00000000u;
|
|
/* 025188EC */ cpu->r[6] = cpu->r[6] + 0x000005ECu;
|
|
/* 025188F0 */ cpu->r[7] = cpu->r[5];
|
|
/* 025188F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025188F8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 025188FC */ cpu->r[10] = 0x00000005u;
|
|
/* 02518900 */ cpu->r[0] = 0x10110000u;
|
|
/* 02518904 */ _t13 = cpu->r[30] + 0x00000054u;
|
|
/* 02518904 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02518908 */ cpu->r[0] = cpu->r[0] + 0x0000095Cu;
|
|
/* 0251890C */ cpu->r[11] = 0x00000001u;
|
|
/* 02518910 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 02518910 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02518914 */ cpu->r[0] = 0x0000003Cu;
|
|
/* 02518918 */ _t15 = cpu->r[30] + 0x00000058u;
|
|
/* 02518918 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 0251891C */ _t16 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0251891C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
L_02518920: ; // 0x2518920
|
|
/* 02518920 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02518920 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02518924 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518928 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518928 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251892C */ cpu->lr = cpu->r[0];
|
|
/* 02518930 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02518930 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02518934 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02518938 */ return;
|
|
}
|
|
|
|
// fn_02518884 @ 0x2518884
|
|
void Gambit_fn_02518884(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518884: ; // 0x2518884
|
|
/* 02518884 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02518884 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518884 */ cpu->r[1] = _t0;
|
|
/* 02518888 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518888 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0251888C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0251888C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02518890 */ cpu->r[31] = cpu->r[3];
|
|
/* 02518890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02518894 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02518894 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02518898 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518898 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02518898 */ if (_t5) goto L_0251889C; else goto L_025188AC;
|
|
L_0251889C: ; // 0x251889c
|
|
/* 0251889C */ cpu->r[3] = 0x000001E8u;
|
|
/* 025188A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025188A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025188A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025188A8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025188A8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025188A8 */ if (_t7) goto L_02518920; else goto L_025188AC;
|
|
L_025188AC: ; // 0x25188ac
|
|
/* 025188AC */ cpu->r[3] = cpu->r[31];
|
|
/* 025188B0 */ Gambit_fn_025015D0(cpu);
|
|
/* 025188B4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025188B8 */ cpu->r[0] = cpu->r[0] + 0x000003CCu;
|
|
/* 025188BC */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 025188BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025188C0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 025188C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 025188C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025188C4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 025188C4 */ if (_t10) goto L_025188C8; else goto L_025188D8;
|
|
L_025188C8: ; // 0x25188c8
|
|
/* 025188C8 */ cpu->r[3] = 0x00000060u;
|
|
/* 025188CC */ Gambit_fn_02801A78(cpu);
|
|
/* 025188D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 025188D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025188D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025188D4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025188D4 */ if (_t12) goto L_02518920; else goto L_025188D8;
|
|
L_025188D8: ; // 0x25188d8
|
|
/* 025188D8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025188DC */ cpu->r[4] = cpu->r[31];
|
|
/* 025188E0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 025188E4 */ cpu->r[5] = cpu->r[5] + 0x000005D8u;
|
|
/* 025188E8 */ cpu->r[8] = 0x00000000u;
|
|
/* 025188EC */ cpu->r[6] = cpu->r[6] + 0x000005ECu;
|
|
/* 025188F0 */ cpu->r[7] = cpu->r[5];
|
|
/* 025188F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025188F8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 025188FC */ cpu->r[10] = 0x00000005u;
|
|
/* 02518900 */ cpu->r[0] = 0x10110000u;
|
|
/* 02518904 */ _t13 = cpu->r[30] + 0x00000054u;
|
|
/* 02518904 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02518908 */ cpu->r[0] = cpu->r[0] + 0x0000095Cu;
|
|
/* 0251890C */ cpu->r[11] = 0x00000001u;
|
|
/* 02518910 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 02518910 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02518914 */ cpu->r[0] = 0x0000003Cu;
|
|
/* 02518918 */ _t15 = cpu->r[30] + 0x00000058u;
|
|
/* 02518918 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 0251891C */ _t16 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0251891C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
L_02518920: ; // 0x2518920
|
|
/* 02518920 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02518920 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02518924 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518928 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518928 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251892C */ cpu->lr = cpu->r[0];
|
|
/* 02518930 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02518930 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02518934 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02518938 */ return;
|
|
}
|
|
|
|
// fn_0251893C @ 0x251893c
|
|
void Gambit_fn_0251893C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0251893C: ; // 0x251893c
|
|
/* 0251893C */ cpu->r[0] = cpu->lr;
|
|
/* 02518940 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02518940 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02518944 */ cpu->r[3] = 0x000001E8u;
|
|
/* 02518948 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02518948 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02518948 */ cpu->r[1] = _t1;
|
|
/* 0251894C */ Gambit_fn_02801A78(cpu);
|
|
/* 02518950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518954 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518954 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518954 */ if (_t3) goto L_0251895C; else goto L_02518958;
|
|
L_02518958: ; // 0x2518958
|
|
/* 02518958 */ Gambit_fn_02518880(cpu);
|
|
L_0251895C: ; // 0x251895c
|
|
/* 0251895C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251895C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02518960 */ cpu->lr = cpu->r[0];
|
|
/* 02518964 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02518968 */ return;
|
|
}
|
|
|
|
// fn_02518948 @ 0x2518948
|
|
void Gambit_fn_02518948(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02518948: ; // 0x2518948
|
|
/* 02518948 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02518948 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518948 */ cpu->r[1] = _t0;
|
|
/* 0251894C */ Gambit_fn_02801A78(cpu);
|
|
/* 02518950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518954 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518954 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518954 */ if (_t2) goto L_0251895C; else goto L_02518958;
|
|
L_02518958: ; // 0x2518958
|
|
/* 02518958 */ Gambit_fn_02518880(cpu);
|
|
L_0251895C: ; // 0x251895c
|
|
/* 0251895C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251895C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02518960 */ cpu->lr = cpu->r[0];
|
|
/* 02518964 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02518968 */ return;
|
|
}
|
|
|
|
// fn_0251896C @ 0x251896c
|
|
void Gambit_fn_0251896C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0251896C: ; // 0x251896c
|
|
/* 0251896C */ cpu->r[0] = cpu->lr;
|
|
/* 02518970 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02518970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518970 */ cpu->r[1] = _t0;
|
|
/* 02518974 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02518974 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02518978 */ /* nop */
|
|
/* 0251897C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0251897C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02518980 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518980 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02518984 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02518988 */ _t4 = cpu->r[12] + 0x000004B4u;
|
|
/* 02518988 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0251898C */ cpu->r[31] = cpu->r[3];
|
|
/* 02518990 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02518990 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02518994 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02518994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02518998 */ cpu->f[1] = cpu->f[31];
|
|
/* 0251899C */ cpu->r[3] = cpu->r[12] + 0x00000054u;
|
|
/* 025189A0 */ Gambit_fn_0204E43C(cpu);
|
|
/* 025189A4 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 025189A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025189A8 */ cpu->f[1] = cpu->f[31];
|
|
/* 025189AC */ cpu->r[3] = cpu->r[12] + 0x00000054u;
|
|
/* 025189B0 */ Gambit_fn_0204E4D0(cpu);
|
|
/* 025189B4 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 025189B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025189B8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025189B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025189BC */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 025189BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 025189C0 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025189C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025189C0 */ if (_t12) goto L_025189C4; // else: addr-0 trap, fall-through
|
|
L_025189C4: ; // 0x25189c4
|
|
/* 025189C4 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 025189C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025189C8 */ cpu->lr = cpu->r[0];
|
|
/* 025189CC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025189D0 */ return;
|
|
}
|
|
|
|
// fn_02518970 @ 0x2518970
|
|
void Gambit_fn_02518970(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02518970: ; // 0x2518970
|
|
/* 02518970 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02518970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518970 */ cpu->r[1] = _t0;
|
|
/* 02518974 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02518974 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02518978 */ /* nop */
|
|
/* 0251897C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0251897C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02518980 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518980 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02518984 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02518988 */ _t4 = cpu->r[12] + 0x000004B4u;
|
|
/* 02518988 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0251898C */ cpu->r[31] = cpu->r[3];
|
|
/* 02518990 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02518990 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02518994 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02518994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02518998 */ cpu->f[1] = cpu->f[31];
|
|
/* 0251899C */ cpu->r[3] = cpu->r[12] + 0x00000054u;
|
|
/* 025189A0 */ Gambit_fn_0204E43C(cpu);
|
|
/* 025189A4 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 025189A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025189A8 */ cpu->f[1] = cpu->f[31];
|
|
/* 025189AC */ cpu->r[3] = cpu->r[12] + 0x00000054u;
|
|
/* 025189B0 */ Gambit_fn_0204E4D0(cpu);
|
|
/* 025189B4 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 025189B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025189B8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025189B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025189BC */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 025189BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 025189C0 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025189C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025189C0 */ if (_t12) goto L_025189C4; // else: addr-0 trap, fall-through
|
|
L_025189C4: ; // 0x25189c4
|
|
/* 025189C4 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 025189C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025189C8 */ cpu->lr = cpu->r[0];
|
|
/* 025189CC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025189D0 */ return;
|
|
}
|
|
|
|
// fn_025189D4 @ 0x25189d4
|
|
void Gambit_fn_025189D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_025189D4: ; // 0x25189d4
|
|
/* 025189D4 */ cpu->r[0] = cpu->lr;
|
|
/* 025189D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025189D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025189D8 */ cpu->r[1] = _t0;
|
|
/* 025189DC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 025189DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025189E0 */ cpu->r[31] = 0x100C0000u;
|
|
/* 025189E4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025189E8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 025189E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025189EC */ cpu->r[3] = 0x101F0000u;
|
|
/* 025189F0 */ cpu->r[31] = cpu->r[31] + 0x000002BCu;
|
|
/* 025189F4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025189F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 025189F8 */ cpu->r[9] = cpu->r[9] + 0x0000060Cu;
|
|
/* 025189FC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025189FC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02518A00 */ cpu->r[29] = 0x02520000u;
|
|
/* 02518A04 */ _t5 = cpu->r[3] + 0xFFFF9824u;
|
|
/* 02518A04 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 02518A04 */ cpu->r[3] = _t5;
|
|
/* 02518A08 */ cpu->r[29] = cpu->r[29] + 0xFFFF93DCu;
|
|
/* 02518A0C */ cpu->r[30] = 0x100C0000u;
|
|
/* 02518A10 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02518A10 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 02518A14 */ _t7 = cpu->r[3] + 0x00000010u;
|
|
/* 02518A14 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02518A18 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518A18 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02518A1C */ cpu->r[30] = cpu->r[30] + 0x000003ACu;
|
|
/* 02518A20 */ _t9 = cpu->r[3] + 0x00000008u;
|
|
/* 02518A20 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02518A24 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518A28 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518A2C */ cpu->r[3] = cpu->r[3] + 0x000067C4u;
|
|
/* 02518A30 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518A34 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518A38 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02518A3C */ cpu->r[3] = cpu->r[3] + 0xFFFF9838u;
|
|
/* 02518A40 */ cpu->r[10] = cpu->r[10] + 0x0000063Cu;
|
|
/* 02518A44 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02518A44 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02518A48 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02518A48 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02518A4C */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518A4C */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02518A50 */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 02518A50 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 02518A54 */ _t14 = cpu->r[3] + 0x00000010u;
|
|
/* 02518A54 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02518A58 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518A5C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518A60 */ cpu->r[3] = cpu->r[3] + 0x000067D0u;
|
|
/* 02518A64 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518A68 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518A6C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02518A70 */ cpu->r[3] = cpu->r[3] + 0xFFFF984Cu;
|
|
/* 02518A74 */ cpu->r[11] = cpu->r[11] + 0x00000624u;
|
|
/* 02518A78 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 02518A78 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02518A7C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02518A7C */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02518A80 */ _t17 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518A80 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02518A84 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02518A84 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 02518A88 */ _t19 = cpu->r[3] + 0x00000010u;
|
|
/* 02518A88 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02518A8C */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518A90 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518A94 */ cpu->r[3] = cpu->r[3] + 0x000067DCu;
|
|
/* 02518A98 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518A9C */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518AA0 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518AA4 */ cpu->r[3] = cpu->r[3] + 0xFFFF9860u;
|
|
/* 02518AA8 */ cpu->r[0] = cpu->r[0] + 0x00000654u;
|
|
/* 02518AAC */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02518AAC */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 02518AB0 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 02518AB0 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02518AB4 */ _t22 = cpu->r[3] + 0x00000008u;
|
|
/* 02518AB4 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02518AB8 */ _t23 = cpu->r[3] + 0x00000010u;
|
|
/* 02518AB8 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02518ABC */ _t24 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518ABC */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 02518AC0 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518AC4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518AC8 */ cpu->r[3] = cpu->r[3] + 0x000067E8u;
|
|
/* 02518ACC */ Gambit_fn_02C83090(cpu);
|
|
/* 02518AD0 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518AD4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518AD8 */ cpu->r[3] = cpu->r[3] + 0xFFFF9874u;
|
|
/* 02518ADC */ _t25 = cpu->r[3] + 0x00000010u;
|
|
/* 02518ADC */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02518AE0 */ cpu->r[0] = cpu->r[0] + 0x000005F8u;
|
|
/* 02518AE4 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 02518AE4 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02518AE8 */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 02518AE8 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02518AEC */ _t28 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518AEC */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 02518AF0 */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 02518AF0 */ rbrew_write32(cpu->mem, _t29, cpu->r[31]);
|
|
/* 02518AF4 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518AF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518AFC */ cpu->r[3] = cpu->r[3] + 0x000067F4u;
|
|
/* 02518B00 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518B04 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518B08 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518B0C */ cpu->r[3] = cpu->r[3] + 0xFFFF9888u;
|
|
/* 02518B10 */ cpu->r[0] = cpu->r[0] + 0x0000066Cu;
|
|
/* 02518B14 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 02518B14 */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 02518B18 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 02518B18 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02518B1C */ _t32 = cpu->r[3] + 0x00000010u;
|
|
/* 02518B1C */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 02518B20 */ _t33 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518B20 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 02518B24 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 02518B24 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 02518B28 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518B2C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518B30 */ cpu->r[3] = cpu->r[3] + 0x00006800u;
|
|
/* 02518B34 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518B38 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518B38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02518B3C */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518B3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02518B40 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 02518B40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02518B44 */ cpu->lr = cpu->r[0];
|
|
/* 02518B48 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02518B48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02518B4C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02518B50 */ return;
|
|
}
|
|
|
|
// fn_025189D8 @ 0x25189d8
|
|
void Gambit_fn_025189D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_025189D8: ; // 0x25189d8
|
|
/* 025189D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025189D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025189D8 */ cpu->r[1] = _t0;
|
|
/* 025189DC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 025189DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025189E0 */ cpu->r[31] = 0x100C0000u;
|
|
/* 025189E4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025189E8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 025189E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025189EC */ cpu->r[3] = 0x101F0000u;
|
|
/* 025189F0 */ cpu->r[31] = cpu->r[31] + 0x000002BCu;
|
|
/* 025189F4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025189F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 025189F8 */ cpu->r[9] = cpu->r[9] + 0x0000060Cu;
|
|
/* 025189FC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025189FC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02518A00 */ cpu->r[29] = 0x02520000u;
|
|
/* 02518A04 */ _t5 = cpu->r[3] + 0xFFFF9824u;
|
|
/* 02518A04 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 02518A04 */ cpu->r[3] = _t5;
|
|
/* 02518A08 */ cpu->r[29] = cpu->r[29] + 0xFFFF93DCu;
|
|
/* 02518A0C */ cpu->r[30] = 0x100C0000u;
|
|
/* 02518A10 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02518A10 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 02518A14 */ _t7 = cpu->r[3] + 0x00000010u;
|
|
/* 02518A14 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02518A18 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518A18 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02518A1C */ cpu->r[30] = cpu->r[30] + 0x000003ACu;
|
|
/* 02518A20 */ _t9 = cpu->r[3] + 0x00000008u;
|
|
/* 02518A20 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02518A24 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518A28 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518A2C */ cpu->r[3] = cpu->r[3] + 0x000067C4u;
|
|
/* 02518A30 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518A34 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518A38 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02518A3C */ cpu->r[3] = cpu->r[3] + 0xFFFF9838u;
|
|
/* 02518A40 */ cpu->r[10] = cpu->r[10] + 0x0000063Cu;
|
|
/* 02518A44 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02518A44 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02518A48 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02518A48 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02518A4C */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518A4C */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02518A50 */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 02518A50 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 02518A54 */ _t14 = cpu->r[3] + 0x00000010u;
|
|
/* 02518A54 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02518A58 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518A5C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518A60 */ cpu->r[3] = cpu->r[3] + 0x000067D0u;
|
|
/* 02518A64 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518A68 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518A6C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02518A70 */ cpu->r[3] = cpu->r[3] + 0xFFFF984Cu;
|
|
/* 02518A74 */ cpu->r[11] = cpu->r[11] + 0x00000624u;
|
|
/* 02518A78 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 02518A78 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02518A7C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02518A7C */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02518A80 */ _t17 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518A80 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02518A84 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02518A84 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 02518A88 */ _t19 = cpu->r[3] + 0x00000010u;
|
|
/* 02518A88 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02518A8C */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518A90 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518A94 */ cpu->r[3] = cpu->r[3] + 0x000067DCu;
|
|
/* 02518A98 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518A9C */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518AA0 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518AA4 */ cpu->r[3] = cpu->r[3] + 0xFFFF9860u;
|
|
/* 02518AA8 */ cpu->r[0] = cpu->r[0] + 0x00000654u;
|
|
/* 02518AAC */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02518AAC */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 02518AB0 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 02518AB0 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02518AB4 */ _t22 = cpu->r[3] + 0x00000008u;
|
|
/* 02518AB4 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02518AB8 */ _t23 = cpu->r[3] + 0x00000010u;
|
|
/* 02518AB8 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02518ABC */ _t24 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518ABC */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 02518AC0 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518AC4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518AC8 */ cpu->r[3] = cpu->r[3] + 0x000067E8u;
|
|
/* 02518ACC */ Gambit_fn_02C83090(cpu);
|
|
/* 02518AD0 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518AD4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518AD8 */ cpu->r[3] = cpu->r[3] + 0xFFFF9874u;
|
|
/* 02518ADC */ _t25 = cpu->r[3] + 0x00000010u;
|
|
/* 02518ADC */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02518AE0 */ cpu->r[0] = cpu->r[0] + 0x000005F8u;
|
|
/* 02518AE4 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 02518AE4 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02518AE8 */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 02518AE8 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02518AEC */ _t28 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518AEC */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 02518AF0 */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 02518AF0 */ rbrew_write32(cpu->mem, _t29, cpu->r[31]);
|
|
/* 02518AF4 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518AF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518AFC */ cpu->r[3] = cpu->r[3] + 0x000067F4u;
|
|
/* 02518B00 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518B04 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02518B08 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518B0C */ cpu->r[3] = cpu->r[3] + 0xFFFF9888u;
|
|
/* 02518B10 */ cpu->r[0] = cpu->r[0] + 0x0000066Cu;
|
|
/* 02518B14 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 02518B14 */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 02518B18 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 02518B18 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02518B1C */ _t32 = cpu->r[3] + 0x00000010u;
|
|
/* 02518B1C */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 02518B20 */ _t33 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518B20 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 02518B24 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 02518B24 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 02518B28 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02518B2C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02518B30 */ cpu->r[3] = cpu->r[3] + 0x00006800u;
|
|
/* 02518B34 */ Gambit_fn_02C83090(cpu);
|
|
/* 02518B38 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518B38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02518B3C */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02518B3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02518B40 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 02518B40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02518B44 */ cpu->lr = cpu->r[0];
|
|
/* 02518B48 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02518B48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02518B4C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02518B50 */ return;
|
|
}
|
|
|
|
// fn_02518B54 @ 0x2518b54
|
|
void Gambit_fn_02518B54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518B54: ; // 0x2518b54
|
|
/* 02518B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518B58 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518B58 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518B58 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518B58 */ goto L_02518B5C;
|
|
L_02518B5C: ; // 0x2518b5c
|
|
/* 02518B5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518B60 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518B60 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518B60 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518B60 */ goto L_02518B64;
|
|
L_02518B64: ; // 0x2518b64
|
|
/* 02518B64 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518B68 @ 0x2518b68
|
|
void Gambit_fn_02518B68(CPUState* cpu) {
|
|
L_02518B68: ; // 0x2518b68
|
|
/* 02518B68 */ return;
|
|
}
|
|
|
|
// fn_02518B6C @ 0x2518b6c
|
|
void Gambit_fn_02518B6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518B6C: ; // 0x2518b6c
|
|
/* 02518B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518B70 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518B70 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518B70 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518B70 */ goto L_02518B74;
|
|
L_02518B74: ; // 0x2518b74
|
|
/* 02518B74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518B78 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518B78 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518B78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518B78 */ goto L_02518B7C;
|
|
L_02518B7C: ; // 0x2518b7c
|
|
/* 02518B7C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518B80 @ 0x2518b80
|
|
void Gambit_fn_02518B80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02518B80: ; // 0x2518b80
|
|
/* 02518B80 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02518B80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518B84 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02518B84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02518B88 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02518B8C */ cpu->r[11] = 0x10110000u;
|
|
/* 02518B90 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02518B90 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02518B94 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02518B94 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02518B98 */ return;
|
|
}
|
|
|
|
// fn_02518B9C @ 0x2518b9c
|
|
void Gambit_fn_02518B9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518B9C: ; // 0x2518b9c
|
|
/* 02518B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518BA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518BA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BA0 */ goto L_02518BA4;
|
|
L_02518BA4: ; // 0x2518ba4
|
|
/* 02518BA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518BA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518BA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BA8 */ goto L_02518BAC;
|
|
L_02518BAC: ; // 0x2518bac
|
|
/* 02518BAC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518BB0 @ 0x2518bb0
|
|
void Gambit_fn_02518BB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518BB0: ; // 0x2518bb0
|
|
/* 02518BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518BB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518BB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BB4 */ goto L_02518BB8;
|
|
L_02518BB8: ; // 0x2518bb8
|
|
/* 02518BB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518BBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518BBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BBC */ goto L_02518BC0;
|
|
L_02518BC0: ; // 0x2518bc0
|
|
/* 02518BC0 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518BC4 @ 0x2518bc4
|
|
void Gambit_fn_02518BC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518BC4: ; // 0x2518bc4
|
|
/* 02518BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518BC8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BC8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518BC8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BC8 */ goto L_02518BCC;
|
|
L_02518BCC: ; // 0x2518bcc
|
|
/* 02518BCC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518BCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518BD0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BD0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518BD0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BD0 */ goto L_02518BD4;
|
|
L_02518BD4: ; // 0x2518bd4
|
|
/* 02518BD4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518BD8 @ 0x2518bd8
|
|
void Gambit_fn_02518BD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518BD8: ; // 0x2518bd8
|
|
/* 02518BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518BDC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BDC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518BDC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BDC */ goto L_02518BE0;
|
|
L_02518BE0: ; // 0x2518be0
|
|
/* 02518BE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518BE4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518BE4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518BE4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518BE4 */ goto L_02518BE8;
|
|
L_02518BE8: ; // 0x2518be8
|
|
/* 02518BE8 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518BEC @ 0x2518bec
|
|
void Gambit_fn_02518BEC(CPUState* cpu) {
|
|
L_02518BEC: ; // 0x2518bec
|
|
/* 02518BEC */ return;
|
|
}
|
|
|
|
// fn_02518BF0 @ 0x2518bf0
|
|
void Gambit_fn_02518BF0(CPUState* cpu) {
|
|
L_02518BF0: ; // 0x2518bf0
|
|
/* 02518BF0 */ return;
|
|
}
|
|
|
|
// fn_02518BF4 @ 0x2518bf4
|
|
void Gambit_fn_02518BF4(CPUState* cpu) {
|
|
L_02518BF4: ; // 0x2518bf4
|
|
/* 02518BF4 */ return;
|
|
}
|
|
|
|
// fn_02518BF8 @ 0x2518bf8
|
|
void Gambit_fn_02518BF8(CPUState* cpu) {
|
|
L_02518BF8: ; // 0x2518bf8
|
|
/* 02518BF8 */ return;
|
|
}
|
|
|
|
// fn_02518BFC @ 0x2518bfc
|
|
void Gambit_fn_02518BFC(CPUState* cpu) {
|
|
L_02518BFC: ; // 0x2518bfc
|
|
/* 02518BFC */ return;
|
|
}
|
|
|
|
// fn_02518C00 @ 0x2518c00
|
|
void Gambit_fn_02518C00(CPUState* cpu) {
|
|
L_02518C00: ; // 0x2518c00
|
|
/* 02518C00 */ return;
|
|
}
|
|
|
|
// fn_02518C04 @ 0x2518c04
|
|
void Gambit_fn_02518C04(CPUState* cpu) {
|
|
L_02518C04: ; // 0x2518c04
|
|
/* 02518C04 */ return;
|
|
}
|
|
|
|
// fn_02518C08 @ 0x2518c08
|
|
void Gambit_fn_02518C08(CPUState* cpu) {
|
|
L_02518C08: ; // 0x2518c08
|
|
/* 02518C08 */ return;
|
|
}
|
|
|
|
// fn_02518C0C @ 0x2518c0c
|
|
void Gambit_fn_02518C0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02518C0C: ; // 0x2518c0c
|
|
/* 02518C0C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02518C0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518C14 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518C14 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518C14 */ if (_t2) goto L_02518C20; else goto L_02518C18;
|
|
L_02518C18: ; // 0x2518c18
|
|
/* 02518C18 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02518C1C */ return;
|
|
L_02518C20: ; // 0x2518c20
|
|
/* 02518C20 */ cpu->r[3] = 0x00000000u;
|
|
/* 02518C24 */ return;
|
|
}
|
|
|
|
// fn_02518C28 @ 0x2518c28
|
|
void Gambit_fn_02518C28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02518C28: ; // 0x2518c28
|
|
/* 02518C28 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02518C28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518C30 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518C30 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518C30 */ if (_t2) goto L_02518C3C; else goto L_02518C34;
|
|
L_02518C34: ; // 0x2518c34
|
|
/* 02518C34 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02518C38 */ return;
|
|
L_02518C3C: ; // 0x2518c3c
|
|
/* 02518C3C */ cpu->r[3] = 0x00000000u;
|
|
/* 02518C40 */ return;
|
|
}
|
|
|
|
// fn_02518C44 @ 0x2518c44
|
|
void Gambit_fn_02518C44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02518C44: ; // 0x2518c44
|
|
/* 02518C44 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518C48 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518C4C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518C4C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518C4C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02518C4C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518C4C */ goto L_02518C50;
|
|
L_02518C50: ; // 0x2518c50
|
|
/* 02518C50 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02518C50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02518C54 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02518C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02518C58 */ cpu->ctr = cpu->r[0];
|
|
/* 02518C5C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518C60 @ 0x2518c60
|
|
void Gambit_fn_02518C60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02518C60: ; // 0x2518c60
|
|
/* 02518C60 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518C60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518C64 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518C68 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518C68 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518C68 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02518C68 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518C68 */ goto L_02518C6C;
|
|
L_02518C6C: ; // 0x2518c6c
|
|
/* 02518C6C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02518C6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02518C70 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02518C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02518C74 */ cpu->ctr = cpu->r[0];
|
|
/* 02518C78 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518C7C @ 0x2518c7c
|
|
void Gambit_fn_02518C7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02518C7C: ; // 0x2518c7c
|
|
/* 02518C7C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02518C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518C80 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518C84 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518C84 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518C84 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02518C84 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518C84 */ goto L_02518C88;
|
|
L_02518C88: ; // 0x2518c88
|
|
/* 02518C88 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02518C88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02518C8C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02518C8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02518C90 */ cpu->ctr = cpu->r[0];
|
|
/* 02518C94 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518C98 @ 0x2518c98
|
|
void Gambit_fn_02518C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02518C98: ; // 0x2518c98
|
|
/* 02518C98 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02518C98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518C9C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02518C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02518CA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02518CA4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518CA8 @ 0x2518ca8
|
|
void Gambit_fn_02518CA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02518CA8: ; // 0x2518ca8
|
|
/* 02518CA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02518CAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02518CAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518CAC */ cpu->r[1] = _t0;
|
|
/* 02518CB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518CB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02518CB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02518CB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02518CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02518CBC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02518CBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02518CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02518CC4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518CC4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02518CC4 */ if (_t5) goto L_02518CC8; else goto L_02518CE4;
|
|
L_02518CC8: ; // 0x2518cc8
|
|
/* 02518CC8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02518CC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02518CCC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02518CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02518CD0 */ cpu->ctr = cpu->r[0];
|
|
/* 02518CD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518CD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02518CDC */ cpu->r[0] = 0x00000002u;
|
|
/* 02518CE0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02518CE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02518CE4: ; // 0x2518ce4
|
|
/* 02518CE4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02518CE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02518CE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518CE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02518CEC */ cpu->lr = cpu->r[0];
|
|
/* 02518CF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02518CF4 */ return;
|
|
}
|
|
|
|
// fn_02518CAC @ 0x2518cac
|
|
void Gambit_fn_02518CAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02518CAC: ; // 0x2518cac
|
|
/* 02518CAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02518CAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02518CAC */ cpu->r[1] = _t0;
|
|
/* 02518CB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518CB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02518CB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02518CB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02518CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02518CBC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02518CBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02518CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02518CC4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518CC4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02518CC4 */ if (_t5) goto L_02518CC8; else goto L_02518CE4;
|
|
L_02518CC8: ; // 0x2518cc8
|
|
/* 02518CC8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02518CC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02518CCC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02518CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02518CD0 */ cpu->ctr = cpu->r[0];
|
|
/* 02518CD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02518CD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02518CDC */ cpu->r[0] = 0x00000002u;
|
|
/* 02518CE0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02518CE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02518CE4: ; // 0x2518ce4
|
|
/* 02518CE4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02518CE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02518CE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02518CE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02518CEC */ cpu->lr = cpu->r[0];
|
|
/* 02518CF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02518CF4 */ return;
|
|
}
|
|
|
|
// fn_02518D00 @ 0x2518d00
|
|
void Gambit_fn_02518D00(CPUState* cpu) {
|
|
L_02518D00: ; // 0x2518d00
|
|
/* 02518D00 */ return;
|
|
}
|
|
|
|
// fn_02518D04 @ 0x2518d04
|
|
void Gambit_fn_02518D04(CPUState* cpu) {
|
|
L_02518D04: ; // 0x2518d04
|
|
/* 02518D04 */ return;
|
|
}
|
|
|
|
// fn_02518D08 @ 0x2518d08
|
|
void Gambit_fn_02518D08(CPUState* cpu) {
|
|
L_02518D08: ; // 0x2518d08
|
|
/* 02518D08 */ cpu->r[3] = 0x00000001u;
|
|
/* 02518D0C */ return;
|
|
}
|
|
|
|
// fn_02518D10 @ 0x2518d10
|
|
void Gambit_fn_02518D10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02518D10: ; // 0x2518d10
|
|
/* 02518D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02518D14 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518D14 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02518D14 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518D14 */ goto L_02518D18;
|
|
L_02518D18: ; // 0x2518d18
|
|
/* 02518D18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02518D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518D1C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518D1C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02518D1C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02518D1C */ goto L_02518D20;
|
|
L_02518D20: ; // 0x2518d20
|
|
/* 02518D20 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02518D24 @ 0x2518d24
|
|
void Gambit_fn_02518D24(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02518D24: ; // 0x2518d24
|
|
/* 02518D24 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02518D24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518D28 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02518D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02518D2C */ cpu->ctr = cpu->r[0];
|
|
/* 02518D30 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518D34 @ 0x2518d34
|
|
void Gambit_fn_02518D34(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02518D34: ; // 0x2518d34
|
|
/* 02518D34 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02518D34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518D38 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02518D38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02518D3C */ cpu->ctr = cpu->r[0];
|
|
/* 02518D40 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518D44 @ 0x2518d44
|
|
void Gambit_fn_02518D44(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02518D44: ; // 0x2518d44
|
|
/* 02518D44 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02518D44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518D48 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02518D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02518D4C */ cpu->ctr = cpu->r[0];
|
|
/* 02518D50 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518D54 @ 0x2518d54
|
|
void Gambit_fn_02518D54(CPUState* cpu) {
|
|
L_02518D54: ; // 0x2518d54
|
|
/* 02518D54 */ cpu->r[3] = 0x00000001u;
|
|
/* 02518D58 */ return;
|
|
}
|
|
|
|
// fn_02518D5C @ 0x2518d5c
|
|
void Gambit_fn_02518D5C(CPUState* cpu) {
|
|
L_02518D5C: ; // 0x2518d5c
|
|
/* 02518D5C */ return;
|
|
}
|
|
|
|
// fn_02518D60 @ 0x2518d60
|
|
void Gambit_fn_02518D60(CPUState* cpu) {
|
|
L_02518D60: ; // 0x2518d60
|
|
/* 02518D60 */ return;
|
|
}
|
|
|
|
// fn_02518D64 @ 0x2518d64
|
|
void Gambit_fn_02518D64(CPUState* cpu) {
|
|
L_02518D64: ; // 0x2518d64
|
|
/* 02518D64 */ return;
|
|
}
|
|
|
|
// fn_02518D68 @ 0x2518d68
|
|
void Gambit_fn_02518D68(CPUState* cpu) {
|
|
L_02518D68: ; // 0x2518d68
|
|
/* 02518D68 */ return;
|
|
}
|
|
|
|
// fn_02518D6C @ 0x2518d6c
|
|
void Gambit_fn_02518D6C(CPUState* cpu) {
|
|
L_02518D6C: ; // 0x2518d6c
|
|
/* 02518D6C */ return;
|
|
}
|
|
|
|
// fn_02518D70 @ 0x2518d70
|
|
void Gambit_fn_02518D70(CPUState* cpu) {
|
|
L_02518D70: ; // 0x2518d70
|
|
/* 02518D70 */ cpu->r[3] = 0x00000001u;
|
|
/* 02518D74 */ return;
|
|
}
|
|
|
|
// fn_02518D78 @ 0x2518d78
|
|
void Gambit_fn_02518D78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02518D78: ; // 0x2518d78
|
|
/* 02518D78 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02518D7C */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 02518D7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518D7C */ cpu->r[10] = _t0;
|
|
/* 02518D80 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02518D80 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02518D84 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02518D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02518D88 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02518D88 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02518D8C */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 02518D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02518D90 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02518D90 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02518D94 */ return;
|
|
}
|
|
|
|
// fn_02518D98 @ 0x2518d98
|
|
void Gambit_fn_02518D98(CPUState* cpu) {
|
|
L_02518D98: ; // 0x2518d98
|
|
/* 02518D98 */ return;
|
|
}
|
|
|
|
// fn_02518D9C @ 0x2518d9c
|
|
void Gambit_fn_02518D9C(CPUState* cpu) {
|
|
L_02518D9C: ; // 0x2518d9c
|
|
/* 02518D9C */ return;
|
|
}
|
|
|
|
// fn_02518DA0 @ 0x2518da0
|
|
void Gambit_fn_02518DA0(CPUState* cpu) {
|
|
L_02518DA0: ; // 0x2518da0
|
|
/* 02518DA0 */ return;
|
|
}
|
|
|
|
// fn_02518DA4 @ 0x2518da4
|
|
void Gambit_fn_02518DA4(CPUState* cpu) {
|
|
L_02518DA4: ; // 0x2518da4
|
|
/* 02518DA4 */ return;
|
|
}
|
|
|
|
// fn_02518DA8 @ 0x2518da8
|
|
void Gambit_fn_02518DA8(CPUState* cpu) {
|
|
L_02518DA8: ; // 0x2518da8
|
|
/* 02518DA8 */ return;
|
|
}
|
|
|
|
// fn_02518DAC @ 0x2518dac
|
|
void Gambit_fn_02518DAC(CPUState* cpu) {
|
|
L_02518DAC: ; // 0x2518dac
|
|
/* 02518DAC */ return;
|
|
}
|
|
|
|
// fn_02518DB0 @ 0x2518db0
|
|
void Gambit_fn_02518DB0(CPUState* cpu) {
|
|
L_02518DB0: ; // 0x2518db0
|
|
/* 02518DB0 */ return;
|
|
}
|
|
|
|
// fn_02518DB4 @ 0x2518db4
|
|
void Gambit_fn_02518DB4(CPUState* cpu) {
|
|
L_02518DB4: ; // 0x2518db4
|
|
/* 02518DB4 */ return;
|
|
}
|
|
|
|
// fn_02518DB8 @ 0x2518db8
|
|
void Gambit_fn_02518DB8(CPUState* cpu) {
|
|
L_02518DB8: ; // 0x2518db8
|
|
/* 02518DB8 */ return;
|
|
}
|
|
|
|
// fn_02518DBC @ 0x2518dbc
|
|
void Gambit_fn_02518DBC(CPUState* cpu) {
|
|
L_02518DBC: ; // 0x2518dbc
|
|
/* 02518DBC */ return;
|
|
}
|
|
|
|
// fn_02518DC0 @ 0x2518dc0
|
|
void Gambit_fn_02518DC0(CPUState* cpu) {
|
|
L_02518DC0: ; // 0x2518dc0
|
|
/* 02518DC0 */ return;
|
|
}
|
|
|
|
// fn_02518DC4 @ 0x2518dc4
|
|
void Gambit_fn_02518DC4(CPUState* cpu) {
|
|
L_02518DC4: ; // 0x2518dc4
|
|
/* 02518DC4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02518DC8 */ return;
|
|
}
|
|
|
|
// fn_02518DCC @ 0x2518dcc
|
|
void Gambit_fn_02518DCC(CPUState* cpu) {
|
|
L_02518DCC: ; // 0x2518dcc
|
|
/* 02518DCC */ return;
|
|
}
|
|
|
|
// fn_02518DD0 @ 0x2518dd0
|
|
void Gambit_fn_02518DD0(CPUState* cpu) {
|
|
L_02518DD0: ; // 0x2518dd0
|
|
/* 02518DD0 */ return;
|
|
}
|
|
|
|
// fn_02518DD4 @ 0x2518dd4
|
|
void Gambit_fn_02518DD4(CPUState* cpu) {
|
|
L_02518DD4: ; // 0x2518dd4
|
|
/* 02518DD4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02518DD8 */ return;
|
|
}
|
|
|
|
// fn_02518DDC @ 0x2518ddc
|
|
void Gambit_fn_02518DDC(CPUState* cpu) {
|
|
L_02518DDC: ; // 0x2518ddc
|
|
/* 02518DDC */ cpu->r[3] = 0x00000000u;
|
|
/* 02518DE0 */ return;
|
|
}
|
|
|
|
// fn_02518DE4 @ 0x2518de4
|
|
void Gambit_fn_02518DE4(CPUState* cpu) {
|
|
L_02518DE4: ; // 0x2518de4
|
|
/* 02518DE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02518DE8 */ return;
|
|
}
|
|
|
|
// fn_02518DEC @ 0x2518dec
|
|
void Gambit_fn_02518DEC(CPUState* cpu) {
|
|
L_02518DEC: ; // 0x2518dec
|
|
/* 02518DEC */ cpu->r[3] = 0x00000000u;
|
|
/* 02518DF0 */ return;
|
|
}
|
|
|
|
// fn_02518DF4 @ 0x2518df4
|
|
void Gambit_fn_02518DF4(CPUState* cpu) {
|
|
L_02518DF4: ; // 0x2518df4
|
|
/* 02518DF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02518DF8 */ return;
|
|
}
|
|
|
|
// fn_02518DFC @ 0x2518dfc
|
|
void Gambit_fn_02518DFC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02518DFC: ; // 0x2518dfc
|
|
/* 02518DFC */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02518DFC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02518E00 */ return;
|
|
}
|
|
|
|
// fn_02518E04 @ 0x2518e04
|
|
void Gambit_fn_02518E04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02518E04: ; // 0x2518e04
|
|
/* 02518E04 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 02518E04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518E08 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02518E08 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02518E0C */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02518E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02518E10 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02518E10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02518E14 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 02518E14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02518E18 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02518E18 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02518E1C */ return;
|
|
}
|
|
|
|
// fn_02518E20 @ 0x2518e20
|
|
void Gambit_fn_02518E20(CPUState* cpu) {
|
|
L_02518E20: ; // 0x2518e20
|
|
/* 02518E20 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02518E24 */ cpu->r[3] = cpu->r[3] + 0x000003BCu;
|
|
/* 02518E28 */ return;
|
|
}
|
|
|
|
// fn_02518E2C @ 0x2518e2c
|
|
void Gambit_fn_02518E2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_02518E2C: ; // 0x2518e2c
|
|
/* 02518E2C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02518E30 */ _t0 = cpu->r[10] + 0xFFFFE860u;
|
|
/* 02518E30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02518E38 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02518E3C */ cpu->r[10] = cpu->r[10] + 0x000009BCu;
|
|
/* 02518E40 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518E40 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518E40 */ if (_t2) goto L_02518E44; else goto L_02518E5C;
|
|
L_02518E44: ; // 0x2518e44
|
|
/* 02518E44 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518E48 */ cpu->r[9] = 0x00000001u;
|
|
/* 02518E4C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02518E50 */ cpu->r[0] = cpu->r[0] + 0x0000039Cu;
|
|
/* 02518E54 */ _t3 = cpu->r[11] + 0xFFFFE860u;
|
|
/* 02518E54 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02518E58 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 02518E58 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02518E5C: ; // 0x2518e5c
|
|
/* 02518E5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02518E60 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518E60 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02518E60 */ if (_t6) goto L_02518E64; else goto L_02518E6C;
|
|
L_02518E64: ; // 0x2518e64
|
|
/* 02518E64 */ cpu->r[3] = 0x00000001u;
|
|
/* 02518E68 */ return;
|
|
L_02518E6C: ; // 0x2518e6c
|
|
/* 02518E6C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02518E70 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 02518E70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02518E74 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02518E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02518E7C */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 02518E80 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518E80 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02518E80 */ if (_t9) goto L_02518E84; else goto L_02518E9C;
|
|
L_02518E84: ; // 0x2518e84
|
|
/* 02518E84 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02518E88 */ cpu->r[0] = 0x00000001u;
|
|
/* 02518E8C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02518E90 */ cpu->r[9] = cpu->r[9] + 0x0000036Cu;
|
|
/* 02518E94 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 02518E94 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02518E98 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02518E98 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_02518E9C: ; // 0x2518e9c
|
|
/* 02518E9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02518EA0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518EA0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02518EA0 */ if (_t13) goto L_02518EA4; else goto L_02518EAC;
|
|
L_02518EA4: ; // 0x2518ea4
|
|
/* 02518EA4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02518EA8 */ goto L_02518F64;
|
|
L_02518EAC: ; // 0x2518eac
|
|
/* 02518EAC */ cpu->r[11] = 0x101D0000u;
|
|
/* 02518EB0 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 02518EB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02518EB4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02518EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02518EBC */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 02518EC0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518EC0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02518EC0 */ if (_t16) goto L_02518EC4; else goto L_02518EDC;
|
|
L_02518EC4: ; // 0x2518ec4
|
|
/* 02518EC4 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02518EC8 */ cpu->r[10] = 0x00000001u;
|
|
/* 02518ECC */ cpu->r[12] = 0x101D0000u;
|
|
/* 02518ED0 */ cpu->r[11] = cpu->r[11] + 0x0000035Cu;
|
|
/* 02518ED4 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 02518ED4 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02518ED8 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02518ED8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02518EDC: ; // 0x2518edc
|
|
/* 02518EDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02518EE0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518EE0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02518EE0 */ if (_t20) goto L_02518EE4; else goto L_02518EEC;
|
|
L_02518EE4: ; // 0x2518ee4
|
|
/* 02518EE4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02518EE8 */ goto L_02518F60;
|
|
L_02518EEC: ; // 0x2518eec
|
|
/* 02518EEC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02518EF0 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02518EF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02518EF0 */ cpu->r[9] = _t21;
|
|
/* 02518EF4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02518EF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02518EFC */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02518F00 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518F00 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02518F00 */ if (_t23) goto L_02518F04; else goto L_02518F18;
|
|
L_02518F04: ; // 0x2518f04
|
|
/* 02518F04 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518F08 */ cpu->r[11] = 0x00000001u;
|
|
/* 02518F0C */ cpu->r[0] = cpu->r[0] + 0x0000034Cu;
|
|
/* 02518F10 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02518F10 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02518F14 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02518F14 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02518F18: ; // 0x2518f18
|
|
/* 02518F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02518F1C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518F1C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02518F1C */ if (_t27) goto L_02518F20; else goto L_02518F28;
|
|
L_02518F20: ; // 0x2518f20
|
|
/* 02518F20 */ cpu->r[0] = 0x00000001u;
|
|
/* 02518F24 */ goto L_02518F60;
|
|
L_02518F28: ; // 0x2518f28
|
|
/* 02518F28 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02518F2C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02518F2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02518F2C */ cpu->r[10] = _t28;
|
|
/* 02518F30 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02518F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02518F38 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02518F3C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518F3C */ _t30 = _t29 & 0x00000001u;
|
|
/* 02518F3C */ if (_t30) goto L_02518F40; else goto L_02518F54;
|
|
L_02518F40: ; // 0x2518f40
|
|
/* 02518F40 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02518F44 */ cpu->r[0] = 0x00000001u;
|
|
/* 02518F48 */ cpu->r[9] = cpu->r[9] + 0x000002ACu;
|
|
/* 02518F4C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02518F4C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02518F50 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02518F50 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02518F54: ; // 0x2518f54
|
|
/* 02518F54 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02518F58 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02518F5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02518F60: ; // 0x2518f60
|
|
/* 02518F60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02518F64: ; // 0x2518f64
|
|
/* 02518F64 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02518F68 */ return;
|
|
}
|
|
|
|
// fn_02518F6C @ 0x2518f6c
|
|
void Gambit_fn_02518F6C(CPUState* cpu) {
|
|
L_02518F6C: ; // 0x2518f6c
|
|
/* 02518F6C */ return;
|
|
}
|
|
|
|
// fn_02518F70 @ 0x2518f70
|
|
void Gambit_fn_02518F70(CPUState* cpu) {
|
|
L_02518F70: ; // 0x2518f70
|
|
/* 02518F70 */ cpu->r[3] = 0x00000000u;
|
|
/* 02518F74 */ return;
|
|
}
|
|
|
|
// fn_02518F78 @ 0x2518f78
|
|
void Gambit_fn_02518F78(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02518F78: ; // 0x2518f78
|
|
/* 02518F78 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02518F78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518F7C */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02518F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02518F80 */ cpu->ctr = cpu->r[0];
|
|
/* 02518F84 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02518F90 @ 0x2518f90
|
|
void Gambit_fn_02518F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02518F90: ; // 0x2518f90
|
|
/* 02518F90 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02518F94 */ _t0 = cpu->r[12] + 0xFFFFE864u;
|
|
/* 02518F94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02518F98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02518F9C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02518FA0 */ cpu->r[12] = cpu->r[12] + 0x000009B8u;
|
|
/* 02518FA4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518FA4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02518FA4 */ if (_t2) goto L_02518FA8; else goto L_02518FC0;
|
|
L_02518FA8: ; // 0x2518fa8
|
|
/* 02518FA8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02518FAC */ cpu->r[9] = 0x00000001u;
|
|
/* 02518FB0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02518FB4 */ cpu->r[0] = cpu->r[0] + 0x0000038Cu;
|
|
/* 02518FB8 */ _t3 = cpu->r[8] + 0xFFFFE864u;
|
|
/* 02518FB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02518FBC */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02518FBC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02518FC0: ; // 0x2518fc0
|
|
/* 02518FC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02518FC4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518FC4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02518FC4 */ if (_t6) goto L_02518FC8; else goto L_02518FD0;
|
|
L_02518FC8: ; // 0x2518fc8
|
|
/* 02518FC8 */ cpu->r[3] = 0x00000001u;
|
|
/* 02518FCC */ return;
|
|
L_02518FD0: ; // 0x2518fd0
|
|
/* 02518FD0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02518FD4 */ _t7 = cpu->r[11] + 0xFFFFE6D4u;
|
|
/* 02518FD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02518FD4 */ cpu->r[11] = _t7;
|
|
/* 02518FD8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02518FDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02518FE0 */ cpu->r[10] = cpu->r[10] + 0x000006A4u;
|
|
/* 02518FE4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02518FE4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02518FE4 */ if (_t9) goto L_02518FE8; else goto L_02518FFC;
|
|
L_02518FE8: ; // 0x2518fe8
|
|
/* 02518FE8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02518FEC */ cpu->r[9] = 0x00000001u;
|
|
/* 02518FF0 */ cpu->r[12] = cpu->r[12] + 0x0000037Cu;
|
|
/* 02518FF4 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 02518FF4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02518FF8 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02518FF8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02518FFC: ; // 0x2518ffc
|
|
/* 02518FFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02519000 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519000 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02519000 */ if (_t13) goto L_02519004; else goto L_0251900C;
|
|
L_02519004: ; // 0x2519004
|
|
/* 02519004 */ cpu->r[0] = 0x00000001u;
|
|
/* 02519008 */ goto L_02519044;
|
|
L_0251900C: ; // 0x251900c
|
|
/* 0251900C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02519010 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 02519010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02519010 */ cpu->r[8] = _t14;
|
|
/* 02519014 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02519018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0251901C */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 02519020 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519020 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02519020 */ if (_t16) goto L_02519024; else goto L_02519038;
|
|
L_02519024: ; // 0x2519024
|
|
/* 02519024 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519028 */ cpu->r[9] = 0x00000001u;
|
|
/* 0251902C */ cpu->r[10] = cpu->r[10] + 0x000002ACu;
|
|
/* 02519030 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 02519030 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02519034 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02519034 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_02519038: ; // 0x2519038
|
|
/* 02519038 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0251903C */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02519040 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02519044: ; // 0x2519044
|
|
/* 02519044 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02519048 */ return;
|
|
}
|
|
|
|
// fn_0251904C @ 0x251904c
|
|
void Gambit_fn_0251904C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0251904C: ; // 0x251904c
|
|
/* 0251904C */ cpu->r[0] = cpu->lr;
|
|
/* 02519050 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02519054 */ cpu->r[7] = 0x02520000u;
|
|
/* 02519058 */ cpu->r[6] = 0x02520000u;
|
|
/* 0251905C */ cpu->r[10] = 0x101C0000u;
|
|
/* 02519060 */ cpu->r[7] = cpu->r[7] + 0xFFFF8CF8u;
|
|
/* 02519064 */ cpu->r[6] = cpu->r[6] + 0xFFFF8CF8u;
|
|
/* 02519068 */ cpu->r[10] = cpu->r[10] + 0x00006810u;
|
|
/* 0251906C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0251906C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02519070 */ cpu->r[0] = 0x101C0000u;
|
|
/* 02519074 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02519074 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02519074 */ cpu->r[1] = _t1;
|
|
/* 02519078 */ cpu->r[0] = cpu->r[0] + 0x0000680Cu;
|
|
/* 0251907C */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0251907C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02519080 */ cpu->r[8] = 0x00000000u;
|
|
/* 02519084 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02519084 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02519088 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251908C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251908C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02519090 */ Gambit_fn_02791B10(cpu);
|
|
/* 02519094 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02519094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02519098 */ cpu->lr = cpu->r[0];
|
|
/* 0251909C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025190A0 */ return;
|
|
}
|
|
|
|
// fn_02519074 @ 0x2519074
|
|
void Gambit_fn_02519074(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02519074: ; // 0x2519074
|
|
/* 02519074 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02519074 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519074 */ cpu->r[1] = _t0;
|
|
/* 02519078 */ cpu->r[0] = cpu->r[0] + 0x0000680Cu;
|
|
/* 0251907C */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0251907C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02519080 */ cpu->r[8] = 0x00000000u;
|
|
/* 02519084 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02519084 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02519088 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251908C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251908C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02519090 */ Gambit_fn_02791B10(cpu);
|
|
/* 02519094 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02519094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02519098 */ cpu->lr = cpu->r[0];
|
|
/* 0251909C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025190A0 */ return;
|
|
}
|
|
|
|
// fn_025190A4 @ 0x25190a4
|
|
void Gambit_fn_025190A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_025190A4: ; // 0x25190a4
|
|
/* 025190A4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 025190A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025190A4 */ cpu->r[1] = _t0;
|
|
/* 025190A8 */ /* nop */
|
|
/* 025190AC */ cpu->r[0] = cpu->lr;
|
|
/* 025190B0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 025190B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025190B4 */ cpu->r[29] = cpu->r[6];
|
|
/* 025190B8 */ cpu->r[28] = cpu->r[3];
|
|
/* 025190BC */ cpu->r[30] = cpu->r[5];
|
|
/* 025190C0 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 025190C0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 025190C4 */ cpu->r[31] = 0x101D0000u;
|
|
/* 025190C8 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 025190C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 025190CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025190D0 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 025190D0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 025190D4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025190D4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025190D4 */ if (_t6) goto L_02519118; else goto L_025190D8;
|
|
L_025190D8: ; // 0x25190d8
|
|
/* 025190D8 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025190D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025190DC */ Gambit_fn_02826F20(cpu);
|
|
/* 025190E0 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025190E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025190E4 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 025190E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025190E8 */ cpu->ctr = cpu->r[0];
|
|
/* 025190EC */ cpu->r[5] = 0x00000004u;
|
|
/* 025190F0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025190F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025190F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025190FC */ cpu->r[0] = cpu->r[27];
|
|
/* 02519100 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519100 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02519100 */ if (_t11) goto L_02519108; else goto L_02519104;
|
|
L_02519104: ; // 0x2519104
|
|
/* 02519104 */ cpu->r[0] = 0x00000001u;
|
|
L_02519108: ; // 0x2519108
|
|
/* 02519108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251910C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251910C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251910C */ if (_t13) goto L_02519118; else goto L_02519110;
|
|
L_02519110: ; // 0x2519110
|
|
/* 02519110 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02519110 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02519114 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 02519114 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02519118: ; // 0x2519118
|
|
/* 02519118 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02519118 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251911C */ cpu->r[0] = 0x00000000u;
|
|
/* 02519120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02519124 */ cpu->r[12] = cpu->r[0];
|
|
/* 02519128 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519128 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02519128 */ if (_t18) goto L_0251912C; else goto L_02519150;
|
|
L_0251912C: ; // 0x251912c
|
|
/* 0251912C */ cpu->ctr = cpu->r[7];
|
|
/* 02519130 */ cpu->r[10] = 0x00000000u;
|
|
L_02519134: ; // 0x2519134
|
|
/* 02519134 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 02519134 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02519138 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02519138 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0251913C */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02519140 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02519140 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02519144 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02519148 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02519148 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0251914C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0251914C */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0251914C */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0251914C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0251914C */ if (_t25) goto L_02519134; else goto L_02519150;
|
|
L_02519150: ; // 0x2519150
|
|
/* 02519150 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02519150 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02519154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02519158 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519158 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02519158 */ if (_t28) goto L_0251919C; else goto L_0251915C;
|
|
L_0251915C: ; // 0x251915c
|
|
/* 0251915C */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0251915C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02519160 */ Gambit_fn_02826F20(cpu);
|
|
/* 02519164 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02519164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02519168 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 02519168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0251916C */ cpu->ctr = cpu->r[0];
|
|
/* 02519170 */ cpu->r[5] = 0x00000004u;
|
|
/* 02519174 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02519178 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0251917C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02519180 */ cpu->r[11] = cpu->r[27];
|
|
/* 02519184 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519184 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02519184 */ if (_t33) goto L_0251918C; else goto L_02519188;
|
|
L_02519188: ; // 0x2519188
|
|
/* 02519188 */ cpu->r[11] = 0x00000001u;
|
|
L_0251918C: ; // 0x251918c
|
|
/* 0251918C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519190 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519190 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02519190 */ if (_t35) goto L_0251919C; else goto L_02519194;
|
|
L_02519194: ; // 0x2519194
|
|
/* 02519194 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02519194 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02519198 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02519198 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0251919C: ; // 0x251919c
|
|
/* 0251919C */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0251919C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025191A0 */ cpu->r[0] = 0x00000000u;
|
|
/* 025191A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 025191A8 */ cpu->r[12] = cpu->r[0];
|
|
/* 025191AC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025191AC */ _t40 = _t39 & 0x00000001u;
|
|
/* 025191AC */ if (_t40) goto L_025191B0; else goto L_025191D4;
|
|
L_025191B0: ; // 0x25191b0
|
|
/* 025191B0 */ cpu->ctr = cpu->r[6];
|
|
/* 025191B4 */ cpu->r[9] = 0x00000000u;
|
|
L_025191B8: ; // 0x25191b8
|
|
/* 025191B8 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 025191B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025191BC */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 025191BC */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 025191C0 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 025191C4 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 025191C4 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 025191C8 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 025191CC */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 025191CC */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 025191D0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025191D0 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025191D0 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 025191D0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 025191D0 */ if (_t47) goto L_025191B8; else goto L_025191D4;
|
|
L_025191D4: ; // 0x25191d4
|
|
/* 025191D4 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 025191D4 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 025191D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025191DC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025191DC */ _t50 = _t49 & 0x00000001u;
|
|
/* 025191DC */ if (_t50) goto L_02519220; else goto L_025191E0;
|
|
L_025191E0: ; // 0x25191e0
|
|
/* 025191E0 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025191E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 025191E4 */ Gambit_fn_02826F20(cpu);
|
|
/* 025191E8 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025191E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025191EC */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 025191EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025191F0 */ cpu->ctr = cpu->r[0];
|
|
/* 025191F4 */ cpu->r[5] = 0x00000004u;
|
|
/* 025191F8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025191FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02519200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02519204 */ cpu->r[10] = cpu->r[27];
|
|
/* 02519208 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519208 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02519208 */ if (_t55) goto L_02519210; else goto L_0251920C;
|
|
L_0251920C: ; // 0x251920c
|
|
/* 0251920C */ cpu->r[10] = 0x00000001u;
|
|
L_02519210: ; // 0x2519210
|
|
/* 02519210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519214 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519214 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02519214 */ if (_t57) goto L_02519220; else goto L_02519218;
|
|
L_02519218: ; // 0x2519218
|
|
/* 02519218 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02519218 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0251921C */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0251921C */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_02519220: ; // 0x2519220
|
|
/* 02519220 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 02519220 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02519224 */ cpu->r[0] = 0x00000000u;
|
|
/* 02519228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251922C */ cpu->r[5] = cpu->r[0];
|
|
/* 02519230 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519230 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02519230 */ if (_t62) goto L_02519234; else goto L_02519258;
|
|
L_02519234: ; // 0x2519234
|
|
/* 02519234 */ cpu->ctr = cpu->r[12];
|
|
/* 02519238 */ cpu->r[8] = 0x00000000u;
|
|
L_0251923C: ; // 0x251923c
|
|
/* 0251923C */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0251923C */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02519240 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02519240 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02519244 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02519248 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02519248 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0251924C */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02519250 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02519250 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02519254 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02519254 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02519254 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02519254 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02519254 */ if (_t69) goto L_0251923C; else goto L_02519258;
|
|
L_02519258: ; // 0x2519258
|
|
/* 02519258 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02519258 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0251925C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02519260 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519260 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02519260 */ if (_t72) goto L_0251933C; else goto L_02519264;
|
|
L_02519264: ; // 0x2519264
|
|
/* 02519264 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02519264 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02519268 */ Gambit_fn_02826F20(cpu);
|
|
/* 0251926C */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0251926C */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02519270 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02519270 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02519274 */ cpu->ctr = cpu->r[12];
|
|
/* 02519278 */ cpu->r[5] = 0x00000004u;
|
|
/* 0251927C */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02519280 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02519284 */ cpu->r[24] = cpu->r[3];
|
|
/* 02519288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0251928C */ cpu->r[30] = cpu->r[25];
|
|
/* 02519290 */ cpu->r[7] = 0x00000000u;
|
|
/* 02519294 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519294 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02519294 */ if (_t77) goto L_0251929C; else goto L_02519298;
|
|
L_02519298: ; // 0x2519298
|
|
/* 02519298 */ cpu->r[30] = 0x00000001u;
|
|
L_0251929C: ; // 0x251929c
|
|
/* 0251929C */ cpu->r[31] = 0x10110000u;
|
|
/* 025192A0 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 025192A4 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 025192A4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 025192A8 */ cpu->r[23] = 0x00000018u;
|
|
L_025192AC: ; // 0x25192ac
|
|
/* 025192AC */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 025192AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025192B0 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025192B0 */ _t80 = _t79 & 0x00000001u;
|
|
/* 025192B0 */ if (_t80) goto L_02519320; else goto L_025192B4;
|
|
L_025192B4: ; // 0x25192b4
|
|
/* 025192B4 */ cpu->r[26] = cpu->r[27];
|
|
/* 025192B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 025192B8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025192B8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 025192B8 */ if (_t82) goto L_025192BC; else goto L_025192CC;
|
|
L_025192BC: ; // 0x25192bc
|
|
/* 025192BC */ cpu->r[3] = 0x00000024u;
|
|
/* 025192C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025192C4 */ cpu->r[26] = cpu->r[3];
|
|
/* 025192C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 025192C8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025192C8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 025192C8 */ if (_t84) goto L_02519314; else goto L_025192CC;
|
|
L_025192CC: ; // 0x25192cc
|
|
/* 025192CC */ cpu->r[11] = cpu->r[26];
|
|
/* 025192CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025192D0 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025192D0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 025192D0 */ if (_t86) goto L_025192D4; else goto L_025192E4;
|
|
L_025192D4: ; // 0x25192d4
|
|
/* 025192D4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025192D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025192DC */ cpu->r[11] = cpu->r[3];
|
|
/* 025192DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025192E0 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025192E0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 025192E0 */ if (_t88) goto L_02519300; else goto L_025192E4;
|
|
L_025192E4: ; // 0x25192e4
|
|
/* 025192E4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025192E8 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 025192E8 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 025192EC */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 025192F0 */ cpu->r[5] = cpu->r[5] + 0x000002D4u;
|
|
/* 025192F4 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 025192F4 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 025192F8 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 025192F8 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 025192FC */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 025192FC */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_02519300: ; // 0x2519300
|
|
/* 02519300 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02519304 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 02519304 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02519308 */ cpu->r[6] = cpu->r[6] + 0x0000031Cu;
|
|
/* 0251930C */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 0251930C */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 02519310 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 02519310 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_02519314: ; // 0x2519314
|
|
/* 02519314 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02519318 */ cpu->r[0] = cpu->r[0] + 0x00000334u;
|
|
/* 0251931C */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0251931C */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_02519320: ; // 0x2519320
|
|
/* 02519320 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02519320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02519324 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02519328 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519328 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02519328 */ if (_t98) goto L_0251932C; else goto L_025192AC;
|
|
L_0251932C: ; // 0x251932c
|
|
/* 0251932C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02519330 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519330 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02519330 */ if (_t100) goto L_0251933C; else goto L_02519334;
|
|
L_02519334: ; // 0x2519334
|
|
/* 02519334 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 02519334 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02519338 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02519338 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0251933C: ; // 0x251933c
|
|
/* 0251933C */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0251933C */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02519340 */ /* nop */
|
|
/* 02519344 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02519344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02519348 */ cpu->lr = cpu->r[0];
|
|
/* 0251934C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02519350 */ return;
|
|
}
|
|
|
|
// fn_02519354 @ 0x2519354
|
|
void Gambit_fn_02519354(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02519354: ; // 0x2519354
|
|
/* 02519354 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02519354 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02519358 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02519358 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0251935C */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0251935C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02519360 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02519364 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02519364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02519368 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519368 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02519368 */ if (_t5) goto L_0251936C; else goto L_02519374;
|
|
L_0251936C: ; // 0x251936c
|
|
/* 0251936C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02519370 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02519374: ; // 0x2519374
|
|
/* 02519374 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02519374 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02519378 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02519378 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0251937C */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0251937C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02519380 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02519380 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02519384 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02519384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02519388 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0251938C */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0251938C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02519390 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519390 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02519390 */ if (_t13) goto L_02519394; else goto L_0251939C;
|
|
L_02519394: ; // 0x2519394
|
|
/* 02519394 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02519398 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0251939C: ; // 0x251939c
|
|
/* 0251939C */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0251939C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025193A0 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 025193A0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 025193A4 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 025193A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025193A8 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 025193A8 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 025193AC */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 025193AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025193B0 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 025193B0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 025193B4 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 025193B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 025193B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 025193BC */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 025193BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025193C0 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025193C0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025193C0 */ if (_t23) goto L_025193C4; else goto L_025193CC;
|
|
L_025193C4: ; // 0x25193c4
|
|
/* 025193C4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025193C8 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_025193CC: ; // 0x25193cc
|
|
/* 025193CC */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 025193CC */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 025193D0 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 025193D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025193D4 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 025193D4 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 025193D8 */ return;
|
|
}
|
|
|
|
// fn_025193DC @ 0x25193dc
|
|
void Gambit_fn_025193DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_025193DC: ; // 0x25193dc
|
|
/* 025193DC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025193DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025193DC */ cpu->r[1] = _t0;
|
|
/* 025193E0 */ cpu->r[0] = cpu->lr;
|
|
/* 025193E4 */ /* nop */
|
|
/* 025193E8 */ cpu->r[30] = cpu->r[5];
|
|
/* 025193EC */ cpu->r[26] = cpu->r[3];
|
|
/* 025193F0 */ cpu->r[27] = cpu->r[7];
|
|
/* 025193F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025193F8 */ cpu->r[31] = cpu->r[6];
|
|
/* 025193FC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025193FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02519400 */ cpu->r[29] = cpu->r[4];
|
|
/* 02519404 */ cpu->r[4] = cpu->r[27];
|
|
/* 02519408 */ Gambit_fn_027DB318(cpu);
|
|
/* 0251940C */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 0251940C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02519410 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519410 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02519410 */ if (_t3) goto L_025194A4; else goto L_02519414;
|
|
L_02519414: ; // 0x2519414
|
|
/* 02519414 */ cpu->r[5] = cpu->r[28];
|
|
/* 02519418 */ cpu->r[4] = cpu->r[29];
|
|
/* 0251941C */ cpu->r[3] = cpu->r[26];
|
|
/* 02519420 */ Gambit_fn_0251904C(cpu);
|
|
/* 02519424 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02519424 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02519428 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 02519428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251942C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 02519430 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02519434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02519438 */ cpu->r[25] = 0x00000000u;
|
|
/* 0251943C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251943C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251943C */ if (_t7) goto L_025194A4; else goto L_02519440;
|
|
L_02519440: ; // 0x2519440
|
|
/* 02519440 */ cpu->r[24] = 0x101C0000u;
|
|
L_02519444: ; // 0x2519444
|
|
/* 02519444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02519448 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519448 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02519448 */ if (_t9) goto L_02519460; else goto L_0251944C;
|
|
L_0251944C: ; // 0x251944c
|
|
/* 0251944C */ cpu->ctr = cpu->r[27];
|
|
/* 02519450 */ cpu->r[3] = cpu->r[31];
|
|
/* 02519454 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02519458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251945C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251945C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0251945C */ if (_t11) goto L_02519490; else goto L_02519460;
|
|
L_02519460: ; // 0x2519460
|
|
/* 02519460 */ _t12 = cpu->r[24] + 0x0000680Cu;
|
|
/* 02519460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02519464 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02519468 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02519468 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0251946C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 0251946C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02519470 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02519474 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02519474 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02519478 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0251947C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 0251947C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02519480 */ cpu->r[4] = cpu->r[31];
|
|
/* 02519484 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02519484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02519488 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0251948C */ Gambit_fn_02516B34(cpu);
|
|
L_02519490: ; // 0x2519490
|
|
/* 02519490 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 02519494 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 02519494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02519498 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0251949C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 025194A0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025194A0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 025194A0 */ if (_t20) goto L_025194A4; else goto L_02519444;
|
|
L_025194A4: ; // 0x25194a4
|
|
/* 025194A4 */ cpu->r[3] = cpu->r[28];
|
|
/* 025194A8 */ /* nop */
|
|
/* 025194AC */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025194AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025194B0 */ cpu->lr = cpu->r[0];
|
|
/* 025194B4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025194B8 */ return;
|
|
}
|
|
|
|
// fn_025194BC @ 0x25194bc
|
|
void Gambit_fn_025194BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158;
|
|
|
|
L_025194BC: ; // 0x25194bc
|
|
/* 025194BC */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 025194BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025194BC */ cpu->r[1] = _t0;
|
|
/* 025194C0 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 025194C0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 025194C4 */ /* nop */
|
|
/* 025194C8 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 025194C8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 025194CC */ /* nop */
|
|
/* 025194D0 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 025194D0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 025194D4 */ /* nop */
|
|
/* 025194D8 */ cpu->r[0] = cpu->lr;
|
|
/* 025194DC */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 025194DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 025194E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025194E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025194E4 */ _t5 = cpu->r[1] + 0x00000068u;
|
|
/* 025194E4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 025194E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025194E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025194E8 */ if (_t7) goto L_025194EC; else goto L_025194FC;
|
|
L_025194EC: ; // 0x25194ec
|
|
/* 025194EC */ cpu->r[3] = 0x00000308u;
|
|
/* 025194F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025194F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025194F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025194F8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025194F8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025194F8 */ if (_t9) goto L_02519960; else goto L_025194FC;
|
|
L_025194FC: ; // 0x25194fc
|
|
/* 025194FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02519500 */ Gambit_fn_02000020(cpu);
|
|
/* 02519504 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02519508 */ cpu->r[30] = cpu->r[31] + 0x00000050u;
|
|
/* 02519508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0251950C */ cpu->r[0] = cpu->r[0] + 0x00000BF8u;
|
|
/* 02519510 */ cpu->r[28] = 0x00000000u;
|
|
/* 02519514 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02519514 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02519518 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519518 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02519518 */ if (_t12) goto L_0251951C; else goto L_0251952C;
|
|
L_0251951C: ; // 0x251951c
|
|
/* 0251951C */ cpu->r[3] = 0x00000038u;
|
|
/* 02519520 */ Gambit_fn_02801A78(cpu);
|
|
/* 02519524 */ cpu->r[30] = cpu->r[3];
|
|
/* 02519524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02519528 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519528 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02519528 */ if (_t14) goto L_0251955C; else goto L_0251952C;
|
|
L_0251952C: ; // 0x251952c
|
|
/* 0251952C */ cpu->r[3] = cpu->r[30];
|
|
/* 02519530 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02519534 */ cpu->r[5] = 0x10000000u;
|
|
/* 02519538 */ _t15 = cpu->r[30] + 0x00000030u;
|
|
/* 02519538 */ rbrew_write32(cpu->mem, _t15, cpu->r[28]);
|
|
/* 0251953C */ cpu->r[5] = cpu->r[5] + 0x000067C4u;
|
|
/* 02519540 */ _t16 = cpu->r[30] + 0x00000034u;
|
|
/* 02519540 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02519544 */ _t17 = cpu->r[30] + 0x00000004u;
|
|
/* 02519544 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 02519548 */ _t18 = cpu->r[30] + 0x00000024u;
|
|
/* 02519548 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 0251954C */ _t19 = cpu->r[30] + 0x00000028u;
|
|
/* 0251954C */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02519550 */ _t20 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02519550 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 02519554 */ _t21 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02519554 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02519558 */ _t22 = cpu->r[30] + 0x00000020u;
|
|
/* 02519558 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
L_0251955C: ; // 0x251955c
|
|
/* 0251955C */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 02519560 */ Gambit_fn_023C0104(cpu);
|
|
/* 02519564 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519568 */ cpu->r[6] = 0x00000001u;
|
|
/* 0251956C */ _t23 = cpu->r[12] + 0x00000AD4u;
|
|
/* 0251956C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02519570 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02519574 */ _t24 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519574 */ rbrew_write32(cpu->mem, _t24, cpu->r[6]);
|
|
/* 02519578 */ cpu->r[3] = cpu->r[31] + 0x00000120u;
|
|
/* 02519578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251957C */ _t25 = cpu->r[11] + 0x00000AD0u;
|
|
/* 0251957C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02519580 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519580 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02519580 */ if (_t27) goto L_02519584; else goto L_02519594;
|
|
L_02519584: ; // 0x2519584
|
|
/* 02519584 */ cpu->r[3] = 0x00000018u;
|
|
/* 02519588 */ Gambit_fn_02801A78(cpu);
|
|
/* 0251958C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519590 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519590 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02519590 */ if (_t29) goto L_025195AC; else goto L_02519594;
|
|
L_02519594: ; // 0x2519594
|
|
/* 02519594 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 02519594 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[30]);
|
|
/* 02519598 */ _t31 = cpu->r[3] + 0x00000010u;
|
|
/* 02519598 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 0251959C */ _t32 = cpu->r[3] + 0x00000014u;
|
|
/* 0251959C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 025195A0 */ _t33 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025195A0 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 025195A4 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 025195A4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[30]);
|
|
/* 025195A8 */ _t35 = cpu->r[3] + 0x00000004u;
|
|
/* 025195A8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[30]);
|
|
L_025195AC: ; // 0x25195ac
|
|
/* 025195AC */ cpu->r[12] = 0x101F0000u;
|
|
/* 025195B0 */ _t36 = cpu->r[12] + 0x00006338u;
|
|
/* 025195B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025195B0 */ cpu->r[12] = _t36;
|
|
/* 025195B4 */ _t37 = cpu->r[31] + 0x00000138u;
|
|
/* 025195B4 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 025195B8 */ _t38 = cpu->r[12] + 0x00000004u;
|
|
/* 025195B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025195BC */ _t39 = cpu->r[31] + 0x0000013Cu;
|
|
/* 025195BC */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 025195C0 */ _t40 = cpu->r[12] + 0x00000008u;
|
|
/* 025195C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025195C4 */ _t41 = cpu->r[31] + 0x00000140u;
|
|
/* 025195C4 */ rbrew_write32(cpu->mem, _t41, cpu->r[9]);
|
|
/* 025195C8 */ _t42 = cpu->r[12] + 0x00000000u;
|
|
/* 025195C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 025195CC */ _t43 = cpu->r[31] + 0x00000144u;
|
|
/* 025195CC */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 025195D0 */ _t44 = cpu->r[12] + 0x00000004u;
|
|
/* 025195D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
/* 025195D4 */ cpu->r[29] = 0x02520000u;
|
|
/* 025195D8 */ _t45 = cpu->r[31] + 0x00000148u;
|
|
/* 025195D8 */ rbrew_write32(cpu->mem, _t45, cpu->r[11]);
|
|
/* 025195DC */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 025195E0 */ _t46 = cpu->r[12] + 0x00000008u;
|
|
/* 025195E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 025195E4 */ _t47 = cpu->r[31] + 0x00000158u;
|
|
/* 025195E4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 025195E8 */ _t48 = cpu->r[31] + 0x0000014Cu;
|
|
/* 025195E8 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 025195EC */ _t49 = cpu->r[31] + 0x00000154u;
|
|
/* 025195EC */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 025195F0 */ cpu->r[5] = 0x00000030u;
|
|
/* 025195F4 */ cpu->r[3] = cpu->r[31] + 0x00000164u;
|
|
/* 025195F8 */ _t50 = cpu->r[31] + 0x00000150u;
|
|
/* 025195F8 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 025195FC */ cpu->r[7] = 0x00000028u;
|
|
/* 02519600 */ cpu->r[6] = cpu->r[29] + 0xFFFFBA7Cu;
|
|
/* 02519604 */ _t51 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02519604 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02519608 */ cpu->r[4] = 0x00000002u;
|
|
/* 0251960C */ _t52 = cpu->r[31] + 0x00000160u;
|
|
/* 0251960C */ rbrew_write32(cpu->mem, _t52, cpu->r[7]);
|
|
/* 02519610 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02519614 */ cpu->r[30] = 0x02520000u;
|
|
/* 02519618 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0251961C */ cpu->r[4] = 0x00000004u;
|
|
/* 02519620 */ cpu->r[6] = cpu->r[30] + 0xFFFFBA00u;
|
|
/* 02519624 */ cpu->r[3] = cpu->r[31] + 0x000001C4u;
|
|
/* 02519628 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0251962C */ cpu->r[5] = 0x00000030u;
|
|
/* 02519630 */ cpu->r[4] = 0x00000002u;
|
|
/* 02519634 */ cpu->r[6] = cpu->r[29] + 0xFFFFBA7Cu;
|
|
/* 02519638 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 0251963C */ Gambit_fn_02C82E00(cpu);
|
|
/* 02519640 */ cpu->r[5] = 0x00000030u;
|
|
/* 02519644 */ cpu->r[4] = 0x00000002u;
|
|
/* 02519648 */ cpu->r[3] = cpu->r[31] + 0x00000254u;
|
|
/* 0251964C */ cpu->r[6] = cpu->r[29] + 0xFFFFBA7Cu;
|
|
/* 02519650 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02519654 */ cpu->r[3] = cpu->r[31] + 0x000002B4u;
|
|
/* 02519658 */ cpu->r[6] = cpu->r[30] + 0xFFFFBA00u;
|
|
/* 0251965C */ cpu->r[4] = 0x00000004u;
|
|
/* 02519660 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 02519664 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02519668 */ cpu->r[30] = 0x100C0000u;
|
|
/* 0251966C */ cpu->r[3] = cpu->r[31] + 0x000002E4u;
|
|
/* 0251966C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519670 */ cpu->r[30] = cpu->r[30] + 0x00000A70u;
|
|
/* 02519674 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519674 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02519674 */ if (_t54) goto L_02519678; else goto L_02519688;
|
|
L_02519678: ; // 0x2519678
|
|
/* 02519678 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0251967C */ Gambit_fn_02801A78(cpu);
|
|
/* 02519680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519684 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519684 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02519684 */ if (_t56) goto L_02519694; else goto L_02519688;
|
|
L_02519688: ; // 0x2519688
|
|
/* 02519688 */ _t57 = cpu->r[3] + 0x00000000u;
|
|
/* 02519688 */ rbrew_write32(cpu->mem, _t57, cpu->r[28]);
|
|
/* 0251968C */ _t58 = cpu->r[3] + 0x00000008u;
|
|
/* 0251968C */ rbrew_write32(cpu->mem, _t58, cpu->r[30]);
|
|
/* 02519690 */ _t59 = cpu->r[3] + 0x00000004u;
|
|
/* 02519690 */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
L_02519694: ; // 0x2519694
|
|
/* 02519694 */ cpu->r[29] = 0x100C0000u;
|
|
/* 02519698 */ cpu->r[29] = cpu->r[29] + 0x00000A80u;
|
|
/* 0251969C */ cpu->r[3] = cpu->r[31] + 0x000002F0u;
|
|
/* 0251969C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025196A0 */ _t60 = cpu->r[31] + 0x000002ECu;
|
|
/* 025196A0 */ rbrew_write32(cpu->mem, _t60, cpu->r[29]);
|
|
/* 025196A4 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025196A4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 025196A4 */ if (_t62) goto L_025196A8; else goto L_025196B8;
|
|
L_025196A8: ; // 0x25196a8
|
|
/* 025196A8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025196AC */ Gambit_fn_02801A78(cpu);
|
|
/* 025196B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025196B4 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025196B4 */ _t64 = _t63 & 0x00000001u;
|
|
/* 025196B4 */ if (_t64) goto L_025196C4; else goto L_025196B8;
|
|
L_025196B8: ; // 0x25196b8
|
|
/* 025196B8 */ _t65 = cpu->r[3] + 0x00000000u;
|
|
/* 025196B8 */ rbrew_write32(cpu->mem, _t65, cpu->r[28]);
|
|
/* 025196BC */ _t66 = cpu->r[3] + 0x00000008u;
|
|
/* 025196BC */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 025196C0 */ _t67 = cpu->r[3] + 0x00000004u;
|
|
/* 025196C0 */ rbrew_write32(cpu->mem, _t67, cpu->r[28]);
|
|
L_025196C4: ; // 0x25196c4
|
|
/* 025196C4 */ cpu->r[3] = cpu->r[31] + 0x000002FCu;
|
|
/* 025196C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025196C8 */ _t68 = cpu->r[31] + 0x000002F8u;
|
|
/* 025196C8 */ rbrew_write32(cpu->mem, _t68, cpu->r[29]);
|
|
/* 025196CC */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025196CC */ _t70 = _t69 & 0x00000001u;
|
|
/* 025196CC */ if (_t70) goto L_025196D0; else goto L_025196E0;
|
|
L_025196D0: ; // 0x25196d0
|
|
/* 025196D0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025196D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 025196D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025196DC */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025196DC */ _t72 = _t71 & 0x00000001u;
|
|
/* 025196DC */ if (_t72) goto L_025196EC; else goto L_025196E0;
|
|
L_025196E0: ; // 0x25196e0
|
|
/* 025196E0 */ _t73 = cpu->r[3] + 0x00000000u;
|
|
/* 025196E0 */ rbrew_write32(cpu->mem, _t73, cpu->r[28]);
|
|
/* 025196E4 */ _t74 = cpu->r[3] + 0x00000008u;
|
|
/* 025196E4 */ rbrew_write32(cpu->mem, _t74, cpu->r[30]);
|
|
/* 025196E8 */ _t75 = cpu->r[3] + 0x00000004u;
|
|
/* 025196E8 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
L_025196EC: ; // 0x25196ec
|
|
/* 025196EC */ cpu->r[8] = 0x100C0000u;
|
|
/* 025196F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 025196F4 */ cpu->r[4] = cpu->r[31];
|
|
/* 025196F8 */ cpu->r[8] = cpu->r[8] + 0x00000A90u;
|
|
/* 025196FC */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519700 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02519704 */ _t76 = cpu->r[31] + 0x00000304u;
|
|
/* 02519704 */ rbrew_write32(cpu->mem, _t76, cpu->r[8]);
|
|
/* 02519708 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251970C */ _t77 = cpu->r[1] + 0x00000008u;
|
|
/* 0251970C */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 02519710 */ Gambit_fn_0251BE34(cpu);
|
|
/* 02519714 */ cpu->r[3] = cpu->r[31];
|
|
/* 02519718 */ cpu->r[4] = cpu->r[31] + 0x00000050u;
|
|
/* 0251971C */ Gambit_fn_02000834(cpu);
|
|
/* 02519720 */ cpu->r[25] = 0x02520000u;
|
|
/* 02519724 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02519728 */ cpu->r[24] = 0x100C0000u;
|
|
/* 0251972C */ cpu->r[25] = cpu->r[25] + 0xFFFFB894u;
|
|
/* 02519730 */ cpu->r[24] = cpu->r[24] + 0x00000A00u;
|
|
/* 02519734 */ cpu->ctr = cpu->r[25];
|
|
/* 02519738 */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 02519738 */ rbrew_write32(cpu->mem, _t78, cpu->r[24]);
|
|
/* 0251973C */ cpu->r[0] = cpu->r[0] + 0x00000AD8u;
|
|
/* 02519740 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519740 */ rbrew_write32(cpu->mem, _t79, cpu->r[0]);
|
|
/* 02519744 */ _t80 = cpu->r[31] + 0x00000068u;
|
|
/* 02519744 */ cpu->r[26] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02519748 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251974C */ _t81 = cpu->r[26] + 0x00000000u;
|
|
/* 0251974C */ cpu->r[27] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02519750 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02519754 */ cpu->r[30] = 0x10110000u;
|
|
/* 02519758 */ _t82 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519758 */ cpu->r[5] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0251975C */ _t83 = cpu->r[30] + 0x00007399u;
|
|
/* 0251975C */ cpu->r[30] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02519760 */ _t84 = cpu->r[5] + 0x00000000u;
|
|
/* 02519760 */ cpu->r[0] = rbrew_read8(cpu->mem, _t84);
|
|
/* 02519764 */ cpu->r[29] = 0x00000000u;
|
|
/* 02519768 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0251976C */ cpu->r[0] = 0x00080000u;
|
|
/* 02519770 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519770 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02519770 */ if (_t86) goto L_02519798; else goto L_02519774;
|
|
L_02519774: ; // 0x2519774
|
|
/* 02519774 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02519778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0251977C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02519780 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519780 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02519780 */ if (_t88) goto L_02519794; else goto L_02519784;
|
|
L_02519784: ; // 0x2519784
|
|
/* 02519784 */ _t89 = cpu->r[5] + 0x00000000u;
|
|
/* 02519784 */ cpu->r[7] = rbrew_read8(cpu->mem, _t89);
|
|
/* 02519788 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0251978C */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251978C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0251978C */ if (_t91) goto L_02519790; else goto L_02519774;
|
|
L_02519790: ; // 0x2519790
|
|
/* 02519790 */ goto L_02519798;
|
|
L_02519794: ; // 0x2519794
|
|
/* 02519794 */ cpu->r[29] = 0x00000000u;
|
|
L_02519798: ; // 0x2519798
|
|
/* 02519798 */ _t92 = cpu->r[26] + 0x00000008u;
|
|
/* 02519798 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0251979C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 025197A0 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025197A0 */ _t94 = _t93 & 0x00000001u;
|
|
/* 025197A0 */ if (_t94) goto L_025197A8; else goto L_025197A4;
|
|
L_025197A4: ; // 0x25197a4
|
|
/* 025197A4 */ cpu->r[29] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_025197A8: ; // 0x25197a8
|
|
/* 025197A8 */ _t95 = cpu->r[1] + 0x00000010u;
|
|
/* 025197A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t95);
|
|
/* 025197AC */ _t96 = cpu->r[9] + 0x00000014u;
|
|
/* 025197AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 025197B0 */ cpu->ctr = cpu->r[10];
|
|
/* 025197B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025197B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025197BC */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025197BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t97);
|
|
/* 025197C0 */ cpu->r[3] = cpu->r[27];
|
|
/* 025197C4 */ cpu->r[5] = cpu->r[29];
|
|
/* 025197C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 025197CC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 025197D0 */ _t98 = cpu->r[27] + cpu->r[29];
|
|
/* 025197D0 */ rbrew_write8(cpu->mem, _t98, (uint8_t)cpu->r[30]);
|
|
/* 025197D4 */ cpu->r[0] = 0x02520000u;
|
|
/* 025197D8 */ _t99 = cpu->r[1] + 0x00000028u;
|
|
/* 025197D8 */ rbrew_write32(cpu->mem, _t99, cpu->r[28]);
|
|
/* 025197DC */ cpu->r[0] = cpu->r[0] + 0xFFFFAFA8u;
|
|
/* 025197E0 */ _t100 = cpu->r[1] + 0x00000014u;
|
|
/* 025197E0 */ rbrew_write16(cpu->mem, _t100, (uint16_t)cpu->r[28]);
|
|
/* 025197E4 */ cpu->r[9] = 0x00000000u;
|
|
/* 025197E8 */ _t101 = cpu->r[1] + 0x00000024u;
|
|
/* 025197E8 */ rbrew_write16(cpu->mem, _t101, (uint16_t)cpu->r[28]);
|
|
/* 025197EC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 025197F0 */ _t102 = cpu->r[1] + 0x00000008u;
|
|
/* 025197F0 */ rbrew_write8(cpu->mem, _t102, (uint8_t)cpu->r[9]);
|
|
/* 025197F4 */ cpu->r[8] = 0x02520000u;
|
|
/* 025197F8 */ _t103 = cpu->r[1] + 0x0000001Eu;
|
|
/* 025197F8 */ rbrew_write16(cpu->mem, _t103, (uint16_t)cpu->r[11]);
|
|
/* 025197FC */ cpu->r[8] = cpu->r[8] + 0xFFFFB068u;
|
|
/* 02519800 */ _t104 = cpu->r[1] + 0x00000016u;
|
|
/* 02519800 */ rbrew_write16(cpu->mem, _t104, (uint16_t)cpu->r[11]);
|
|
/* 02519804 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519808 */ _t105 = cpu->r[1] + 0x00000018u;
|
|
/* 02519808 */ rbrew_write32(cpu->mem, _t105, cpu->r[0]);
|
|
/* 0251980C */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519810 */ _t106 = cpu->r[1] + 0x00000020u;
|
|
/* 02519810 */ rbrew_write32(cpu->mem, _t106, cpu->r[8]);
|
|
/* 02519814 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519818 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0251981C */ _t107 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251981C */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[28]);
|
|
/* 02519820 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02519824 */ _t108 = cpu->r[1] + 0x00000026u;
|
|
/* 02519824 */ rbrew_write16(cpu->mem, _t108, (uint16_t)cpu->r[28]);
|
|
/* 02519828 */ Gambit_fn_0251C0E4(cpu);
|
|
/* 0251982C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02519830 */ _t109 = cpu->r[1] + 0x00000010u;
|
|
/* 02519830 */ rbrew_write32(cpu->mem, _t109, cpu->r[24]);
|
|
/* 02519834 */ cpu->r[11] = cpu->r[11] + 0x00000AE4u;
|
|
/* 02519838 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519838 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 0251983C */ _t111 = cpu->r[31] + 0x00000064u;
|
|
/* 0251983C */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02519840 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02519844 */ _t112 = cpu->r[31] + 0x00000068u;
|
|
/* 02519844 */ cpu->r[27] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02519848 */ _t113 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519848 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02519848 */ if (_t114) goto L_0251984C; else goto L_02519850;
|
|
L_0251984C: ; // 0x251984c
|
|
/* 0251984C */ cpu->r[27] = cpu->r[27] + 0x00000024u;
|
|
L_02519850: ; // 0x2519850
|
|
/* 02519850 */ cpu->ctr = cpu->r[25];
|
|
/* 02519854 */ _t115 = cpu->r[27] + 0x00000000u;
|
|
/* 02519854 */ cpu->r[26] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02519858 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251985C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02519860 */ _t116 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02519864 */ _t117 = cpu->r[11] + 0x00000000u;
|
|
/* 02519864 */ cpu->r[6] = rbrew_read8(cpu->mem, _t117);
|
|
/* 02519868 */ cpu->r[12] = 0x00080000u;
|
|
/* 0251986C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02519870 */ cpu->r[29] = 0x00000000u;
|
|
/* 02519874 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519874 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02519874 */ if (_t119) goto L_0251989C; else goto L_02519878;
|
|
L_02519878: ; // 0x2519878
|
|
/* 02519878 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0251987C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 02519880 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02519884 */ _t120 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519884 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02519884 */ if (_t121) goto L_02519898; else goto L_02519888;
|
|
L_02519888: ; // 0x2519888
|
|
/* 02519888 */ _t122 = cpu->r[11] + 0x00000000u;
|
|
/* 02519888 */ cpu->r[0] = rbrew_read8(cpu->mem, _t122);
|
|
/* 0251988C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02519890 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519890 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02519890 */ if (_t124) goto L_02519894; else goto L_02519878;
|
|
L_02519894: ; // 0x2519894
|
|
/* 02519894 */ goto L_0251989C;
|
|
L_02519898: ; // 0x2519898
|
|
/* 02519898 */ cpu->r[29] = 0x00000000u;
|
|
L_0251989C: ; // 0x251989c
|
|
/* 0251989C */ _t125 = cpu->r[27] + 0x00000008u;
|
|
/* 0251989C */ cpu->r[10] = rbrew_read32(cpu->mem, _t125);
|
|
/* 025198A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 025198A4 */ _t126 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025198A4 */ _t127 = _t126 & 0x00000001u;
|
|
/* 025198A4 */ if (_t127) goto L_025198AC; else goto L_025198A8;
|
|
L_025198A8: ; // 0x25198a8
|
|
/* 025198A8 */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_025198AC: ; // 0x25198ac
|
|
/* 025198AC */ _t128 = cpu->r[1] + 0x00000010u;
|
|
/* 025198AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t128);
|
|
/* 025198B0 */ _t129 = cpu->r[8] + 0x00000014u;
|
|
/* 025198B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 025198B4 */ cpu->ctr = cpu->r[0];
|
|
/* 025198B8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025198BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025198C0 */ _t130 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025198C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t130);
|
|
/* 025198C4 */ cpu->r[3] = cpu->r[26];
|
|
/* 025198C8 */ cpu->r[5] = cpu->r[29];
|
|
/* 025198CC */ cpu->r[6] = 0x00000000u;
|
|
/* 025198D0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 025198D4 */ _t131 = cpu->r[26] + cpu->r[29];
|
|
/* 025198D4 */ rbrew_write8(cpu->mem, _t131, (uint8_t)cpu->r[30]);
|
|
/* 025198D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 025198DC */ _t132 = cpu->r[1] + 0x00000028u;
|
|
/* 025198DC */ rbrew_write32(cpu->mem, _t132, cpu->r[28]);
|
|
/* 025198E0 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 025198E4 */ _t133 = cpu->r[1] + 0x00000008u;
|
|
/* 025198E4 */ rbrew_write8(cpu->mem, _t133, (uint8_t)cpu->r[0]);
|
|
/* 025198E8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 025198EC */ _t134 = cpu->r[1] + 0x00000024u;
|
|
/* 025198EC */ rbrew_write16(cpu->mem, _t134, (uint16_t)cpu->r[28]);
|
|
/* 025198F0 */ cpu->r[12] = 0x02520000u;
|
|
/* 025198F4 */ _t135 = cpu->r[1] + 0x00000016u;
|
|
/* 025198F4 */ rbrew_write16(cpu->mem, _t135, (uint16_t)cpu->r[0]);
|
|
/* 025198F8 */ cpu->r[12] = cpu->r[12] + 0xFFFFB198u;
|
|
/* 025198FC */ _t136 = cpu->r[1] + 0x0000001Eu;
|
|
/* 025198FC */ rbrew_write16(cpu->mem, _t136, (uint16_t)cpu->r[0]);
|
|
/* 02519900 */ cpu->r[9] = 0x02520000u;
|
|
/* 02519904 */ _t137 = cpu->r[1] + 0x00000014u;
|
|
/* 02519904 */ rbrew_write16(cpu->mem, _t137, (uint16_t)cpu->r[28]);
|
|
/* 02519908 */ cpu->r[9] = cpu->r[9] + 0xFFFFB3BCu;
|
|
/* 0251990C */ _t138 = cpu->r[1] + 0x00000026u;
|
|
/* 0251990C */ rbrew_write16(cpu->mem, _t138, (uint16_t)cpu->r[28]);
|
|
/* 02519910 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519914 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519914 */ rbrew_write16(cpu->mem, _t139, (uint16_t)cpu->r[28]);
|
|
/* 02519918 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0251991C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02519920 */ _t140 = cpu->r[1] + 0x00000018u;
|
|
/* 02519920 */ rbrew_write32(cpu->mem, _t140, cpu->r[9]);
|
|
/* 02519924 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02519928 */ _t141 = cpu->r[1] + 0x00000020u;
|
|
/* 02519928 */ rbrew_write32(cpu->mem, _t141, cpu->r[12]);
|
|
/* 0251992C */ Gambit_fn_0251C0E4(cpu);
|
|
/* 02519930 */ cpu->r[12] = 0x00000002u;
|
|
/* 02519934 */ cpu->r[6] = cpu->r[31] + 0x00000110u;
|
|
/* 02519938 */ cpu->ctr = cpu->r[12];
|
|
/* 0251993C */ cpu->r[8] = 0x00000000u;
|
|
L_02519940: ; // 0x2519940
|
|
/* 02519940 */ _t142 = cpu->r[6] + 0x00000004u;
|
|
/* 02519940 */ rbrew_write32(cpu->mem, _t142, cpu->r[8]);
|
|
/* 02519940 */ cpu->r[6] = _t142;
|
|
/* 02519944 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02519944 */ _t143 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02519944 */ _t144 = _t143 >> (0x00000002u & 31u);
|
|
/* 02519944 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02519944 */ if (_t145) goto L_02519940; else goto L_02519948;
|
|
L_02519948: ; // 0x2519948
|
|
/* 02519948 */ _t146 = cpu->r[31] + 0x00000120u;
|
|
/* 02519948 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[30]);
|
|
/* 0251994C */ _t147 = cpu->r[31] + 0x00000130u;
|
|
/* 0251994C */ rbrew_write_f32(cpu->mem, _t147, cpu->f[31]);
|
|
/* 02519950 */ _t148 = cpu->r[31] + 0x00000134u;
|
|
/* 02519950 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[31]);
|
|
/* 02519954 */ _t149 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02519954 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[31]);
|
|
/* 02519958 */ _t150 = cpu->r[31] + 0x00000128u;
|
|
/* 02519958 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[30]);
|
|
/* 0251995C */ _t151 = cpu->r[31] + 0x00000124u;
|
|
/* 0251995C */ rbrew_write_f32(cpu->mem, _t151, cpu->f[30]);
|
|
L_02519960: ; // 0x2519960
|
|
/* 02519960 */ cpu->r[3] = cpu->r[31];
|
|
/* 02519964 */ /* nop */
|
|
/* 02519968 */ _t152 = cpu->r[1] + 0x00000058u;
|
|
/* 02519968 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 0251996C */ _t153 = cpu->r[1] + 0x00000068u;
|
|
/* 0251996C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 02519970 */ _t154 = cpu->r[1] + 0x00000050u;
|
|
/* 02519970 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t154);
|
|
/* 02519974 */ _t155 = cpu->r[1] + 0x00000060u;
|
|
/* 02519974 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t155);
|
|
/* 02519978 */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519978 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02519978 */ if (_t157) goto L_0251997C; // else: addr-0 trap, fall-through
|
|
L_0251997C: ; // 0x251997c
|
|
/* 0251997C */ _t158 = cpu->r[1] + 0x00000074u;
|
|
/* 0251997C */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02519980 */ cpu->lr = cpu->r[0];
|
|
/* 02519984 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02519988 */ return;
|
|
}
|
|
|
|
// fn_0251998C @ 0x251998c
|
|
void Gambit_fn_0251998C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0251998C: ; // 0x251998c
|
|
/* 0251998C */ cpu->r[0] = cpu->lr;
|
|
/* 02519990 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02519990 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519990 */ cpu->r[1] = _t0;
|
|
/* 02519994 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519994 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02519998 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251999C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251999C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025199A0 */ _t3 = cpu->r[31] + 0x00000158u;
|
|
/* 025199A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025199A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 025199A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025199A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025199A8 */ if (_t5) goto L_025199AC; else goto L_025199B4;
|
|
L_025199AC: ; // 0x25199ac
|
|
/* 025199AC */ _t6 = cpu->r[31] + 0x00000024u;
|
|
/* 025199AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025199B0 */ _t7 = cpu->r[31] + 0x00000158u;
|
|
/* 025199B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_025199B4: ; // 0x25199b4
|
|
/* 025199B4 */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 025199B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 025199BC */ Gambit_fn_023C0574(cpu);
|
|
/* 025199C0 */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 025199C4 */ Gambit_fn_023E4504(cpu);
|
|
/* 025199C8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 025199C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025199CC */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025199CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025199D0 */ cpu->lr = cpu->r[0];
|
|
/* 025199D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025199D8 */ return;
|
|
}
|
|
|
|
// fn_02519990 @ 0x2519990
|
|
void Gambit_fn_02519990(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02519990: ; // 0x2519990
|
|
/* 02519990 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02519990 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519990 */ cpu->r[1] = _t0;
|
|
/* 02519994 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519994 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02519998 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251999C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251999C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025199A0 */ _t3 = cpu->r[31] + 0x00000158u;
|
|
/* 025199A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025199A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 025199A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025199A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025199A8 */ if (_t5) goto L_025199AC; else goto L_025199B4;
|
|
L_025199AC: ; // 0x25199ac
|
|
/* 025199AC */ _t6 = cpu->r[31] + 0x00000024u;
|
|
/* 025199AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025199B0 */ _t7 = cpu->r[31] + 0x00000158u;
|
|
/* 025199B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_025199B4: ; // 0x25199b4
|
|
/* 025199B4 */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 025199B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 025199BC */ Gambit_fn_023C0574(cpu);
|
|
/* 025199C0 */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 025199C4 */ Gambit_fn_023E4504(cpu);
|
|
/* 025199C8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 025199C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025199CC */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025199CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025199D0 */ cpu->lr = cpu->r[0];
|
|
/* 025199D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025199D8 */ return;
|
|
}
|
|
|
|
// fn_025199DC @ 0x25199dc
|
|
void Gambit_fn_025199DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_025199DC: ; // 0x25199dc
|
|
/* 025199DC */ cpu->r[0] = cpu->lr;
|
|
/* 025199E0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 025199E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025199E0 */ cpu->r[1] = _t0;
|
|
/* 025199E4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 025199E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025199E8 */ cpu->r[7] = 0x00000000u;
|
|
/* 025199EC */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025199EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025199F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 025199F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025199F8 */ cpu->ctr = cpu->r[0];
|
|
/* 025199FC */ cpu->r[6] = cpu->r[31] + 0x00000110u;
|
|
L_02519A00: ; // 0x2519a00
|
|
/* 02519A00 */ _t3 = cpu->r[6] + 0x00000004u;
|
|
/* 02519A00 */ rbrew_write32(cpu->mem, _t3, cpu->r[7]);
|
|
/* 02519A00 */ cpu->r[6] = _t3;
|
|
/* 02519A04 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02519A04 */ _t4 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02519A04 */ _t5 = _t4 >> (0x00000002u & 31u);
|
|
/* 02519A04 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02519A04 */ if (_t6) goto L_02519A00; else goto L_02519A08;
|
|
L_02519A08: ; // 0x2519a08
|
|
/* 02519A08 */ cpu->r[9] = 0x00000001u;
|
|
/* 02519A0C */ _t7 = cpu->r[31] + 0x00000154u;
|
|
/* 02519A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02519A10 */ cpu->r[11] = 0x00000000u;
|
|
/* 02519A14 */ _t8 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519A14 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02519A18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02519A1C */ _t9 = cpu->r[31] + 0x00000150u;
|
|
/* 02519A1C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02519A20 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519A20 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02519A20 */ if (_t11) goto L_02519A2C; else goto L_02519A24;
|
|
L_02519A24: ; // 0x2519a24
|
|
/* 02519A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02519A28 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519A28 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02519A28 */ if (_t13) goto L_02519A2C; else goto L_02519AF4;
|
|
L_02519A2C: ; // 0x2519a2c
|
|
/* 02519A2C */ _t14 = cpu->r[31] + 0x00000120u;
|
|
/* 02519A2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02519A30 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519A34 */ _t15 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02519A34 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02519A38 */ _t16 = cpu->r[31] + 0x00000134u;
|
|
/* 02519A38 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02519A3C */ cpu->f[13] = cpu->f[9] + cpu->f[11];
|
|
/* 02519A40 */ _t17 = cpu->r[12] + 0x00000AF8u;
|
|
/* 02519A40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02519A44 */ cpu->f[8] = cpu->f[11] - cpu->f[9];
|
|
/* 02519A48 */ _t18 = cpu->r[31] + 0x00000128u;
|
|
/* 02519A48 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02519A4C */ cpu->f[11] = cpu->f[13] * cpu->f[0];
|
|
/* 02519A50 */ _t19 = cpu->r[31] + 0x00000130u;
|
|
/* 02519A50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02519A54 */ _t20 = cpu->r[31] + 0x00000124u;
|
|
/* 02519A54 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02519A58 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02519A58 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02519A5C */ cpu->f[13] = cpu->f[12] + cpu->f[13];
|
|
/* 02519A60 */ _t22 = cpu->r[31] + 0x00000154u;
|
|
/* 02519A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02519A64 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02519A68 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02519A6C */ _t23 = cpu->r[3] + 0x000060F4u;
|
|
/* 02519A6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02519A70 */ cpu->f[10] = cpu->f[10] - cpu->f[9];
|
|
/* 02519A74 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02519A74 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 02519A78 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02519A78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02519A7C */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02519A80 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519A80 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02519A84 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519A84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02519A88 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519A88 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 02519A8C */ cpu->f[13] = cpu->f[8] * cpu->f[0];
|
|
/* 02519A90 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02519A90 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02519A94 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02519A94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02519A98 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 02519A98 */ rbrew_write32(cpu->mem, _t31, cpu->r[10]);
|
|
/* 02519A9C */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02519AA0 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 02519AA0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 02519AA4 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02519AA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02519AA8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519AAC */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 02519AAC */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 02519AB0 */ cpu->r[8] = 0x00000004u;
|
|
/* 02519AB4 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 02519AB4 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 02519AB8 */ cpu->r[7] = 0x00000000u;
|
|
/* 02519ABC */ _t36 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02519ABC */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 02519AC0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02519AC4 */ Gambit_fn_023EF330(cpu);
|
|
/* 02519AC8 */ _t37 = cpu->r[31] + 0x00000154u;
|
|
/* 02519AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02519ACC */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519AD0 */ _t38 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02519AD0 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02519AD4 */ cpu->r[4] = 0x00000001u;
|
|
/* 02519AD8 */ _t39 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02519AD8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02519ADC */ Gambit_fn_0205C750(cpu);
|
|
/* 02519AE0 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02519AE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02519AE4 */ _t41 = cpu->r[1] + 0x00000034u;
|
|
/* 02519AE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02519AE8 */ cpu->lr = cpu->r[0];
|
|
/* 02519AEC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02519AF0 */ return;
|
|
L_02519AF4: ; // 0x2519af4
|
|
/* 02519AF4 */ _t42 = cpu->r[31] + 0x0000005Eu;
|
|
/* 02519AF4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02519AF8 */ cpu->r[10] = 0x00000002u;
|
|
/* 02519AFC */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519B00 */ _t43 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02519B00 */ rbrew_write32(cpu->mem, _t43, cpu->r[10]);
|
|
/* 02519B04 */ /* nop */
|
|
/* 02519B08 */ _t44 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02519B08 */ rbrew_write32(cpu->mem, _t44, cpu->r[10]);
|
|
/* 02519B0C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02519B10 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519B14 */ Gambit_fn_0205C548(cpu);
|
|
/* 02519B18 */ _t45 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02519B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02519B1C */ cpu->lr = cpu->r[0];
|
|
/* 02519B20 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 02519B20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02519B24 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02519B28 */ return;
|
|
}
|
|
|
|
// fn_025199E0 @ 0x25199e0
|
|
void Gambit_fn_025199E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_025199E0: ; // 0x25199e0
|
|
/* 025199E0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 025199E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025199E0 */ cpu->r[1] = _t0;
|
|
/* 025199E4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 025199E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025199E8 */ cpu->r[7] = 0x00000000u;
|
|
/* 025199EC */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025199EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025199F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 025199F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025199F8 */ cpu->ctr = cpu->r[0];
|
|
/* 025199FC */ cpu->r[6] = cpu->r[31] + 0x00000110u;
|
|
L_02519A00: ; // 0x2519a00
|
|
/* 02519A00 */ _t3 = cpu->r[6] + 0x00000004u;
|
|
/* 02519A00 */ rbrew_write32(cpu->mem, _t3, cpu->r[7]);
|
|
/* 02519A00 */ cpu->r[6] = _t3;
|
|
/* 02519A04 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02519A04 */ _t4 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02519A04 */ _t5 = _t4 >> (0x00000002u & 31u);
|
|
/* 02519A04 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02519A04 */ if (_t6) goto L_02519A00; else goto L_02519A08;
|
|
L_02519A08: ; // 0x2519a08
|
|
/* 02519A08 */ cpu->r[9] = 0x00000001u;
|
|
/* 02519A0C */ _t7 = cpu->r[31] + 0x00000154u;
|
|
/* 02519A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02519A10 */ cpu->r[11] = 0x00000000u;
|
|
/* 02519A14 */ _t8 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519A14 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02519A18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02519A1C */ _t9 = cpu->r[31] + 0x00000150u;
|
|
/* 02519A1C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02519A20 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519A20 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02519A20 */ if (_t11) goto L_02519A2C; else goto L_02519A24;
|
|
L_02519A24: ; // 0x2519a24
|
|
/* 02519A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02519A28 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519A28 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02519A28 */ if (_t13) goto L_02519A2C; else goto L_02519AF4;
|
|
L_02519A2C: ; // 0x2519a2c
|
|
/* 02519A2C */ _t14 = cpu->r[31] + 0x00000120u;
|
|
/* 02519A2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02519A30 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519A34 */ _t15 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02519A34 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02519A38 */ _t16 = cpu->r[31] + 0x00000134u;
|
|
/* 02519A38 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02519A3C */ cpu->f[13] = cpu->f[9] + cpu->f[11];
|
|
/* 02519A40 */ _t17 = cpu->r[12] + 0x00000AF8u;
|
|
/* 02519A40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02519A44 */ cpu->f[8] = cpu->f[11] - cpu->f[9];
|
|
/* 02519A48 */ _t18 = cpu->r[31] + 0x00000128u;
|
|
/* 02519A48 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02519A4C */ cpu->f[11] = cpu->f[13] * cpu->f[0];
|
|
/* 02519A50 */ _t19 = cpu->r[31] + 0x00000130u;
|
|
/* 02519A50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02519A54 */ _t20 = cpu->r[31] + 0x00000124u;
|
|
/* 02519A54 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02519A58 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02519A58 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02519A5C */ cpu->f[13] = cpu->f[12] + cpu->f[13];
|
|
/* 02519A60 */ _t22 = cpu->r[31] + 0x00000154u;
|
|
/* 02519A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02519A64 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02519A68 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02519A6C */ _t23 = cpu->r[3] + 0x000060F4u;
|
|
/* 02519A6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02519A70 */ cpu->f[10] = cpu->f[10] - cpu->f[9];
|
|
/* 02519A74 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02519A74 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 02519A78 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02519A78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02519A7C */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02519A80 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519A80 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02519A84 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519A84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02519A88 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519A88 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 02519A8C */ cpu->f[13] = cpu->f[8] * cpu->f[0];
|
|
/* 02519A90 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02519A90 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02519A94 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02519A94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02519A98 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 02519A98 */ rbrew_write32(cpu->mem, _t31, cpu->r[10]);
|
|
/* 02519A9C */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02519AA0 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 02519AA0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 02519AA4 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02519AA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02519AA8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519AAC */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 02519AAC */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 02519AB0 */ cpu->r[8] = 0x00000004u;
|
|
/* 02519AB4 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 02519AB4 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 02519AB8 */ cpu->r[7] = 0x00000000u;
|
|
/* 02519ABC */ _t36 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02519ABC */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 02519AC0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02519AC4 */ Gambit_fn_023EF330(cpu);
|
|
/* 02519AC8 */ _t37 = cpu->r[31] + 0x00000154u;
|
|
/* 02519AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02519ACC */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519AD0 */ _t38 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02519AD0 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02519AD4 */ cpu->r[4] = 0x00000001u;
|
|
/* 02519AD8 */ _t39 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02519AD8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02519ADC */ Gambit_fn_0205C750(cpu);
|
|
/* 02519AE0 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02519AE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02519AE4 */ _t41 = cpu->r[1] + 0x00000034u;
|
|
/* 02519AE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02519AE8 */ cpu->lr = cpu->r[0];
|
|
/* 02519AEC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02519AF0 */ return;
|
|
L_02519AF4: ; // 0x2519af4
|
|
/* 02519AF4 */ _t42 = cpu->r[31] + 0x0000005Eu;
|
|
/* 02519AF4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02519AF8 */ cpu->r[10] = 0x00000002u;
|
|
/* 02519AFC */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519B00 */ _t43 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02519B00 */ rbrew_write32(cpu->mem, _t43, cpu->r[10]);
|
|
/* 02519B04 */ /* nop */
|
|
/* 02519B08 */ _t44 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02519B08 */ rbrew_write32(cpu->mem, _t44, cpu->r[10]);
|
|
/* 02519B0C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02519B10 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02519B14 */ Gambit_fn_0205C548(cpu);
|
|
/* 02519B18 */ _t45 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02519B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02519B1C */ cpu->lr = cpu->r[0];
|
|
/* 02519B20 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 02519B20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02519B24 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02519B28 */ return;
|
|
}
|
|
|
|
// fn_02519B2C @ 0x2519b2c
|
|
void Gambit_fn_02519B2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02519B2C: ; // 0x2519b2c
|
|
/* 02519B2C */ cpu->r[0] = cpu->lr;
|
|
/* 02519B30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02519B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519B30 */ cpu->r[1] = _t0;
|
|
/* 02519B34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519B34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02519B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02519B3C */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 02519B40 */ cpu->r[6] = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519B44 */ cpu->r[5] = cpu->r[31] + 0x00000118u;
|
|
/* 02519B48 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 02519B4C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02519B4C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02519B50 */ Gambit_fn_023C05C8(cpu);
|
|
/* 02519B54 */ _t3 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02519B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02519B5C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519B5C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02519B5C */ if (_t5) goto L_02519B60; else goto L_02519B64;
|
|
L_02519B60: ; // 0x2519b60
|
|
/* 02519B60 */ cpu->r[0] = 0x00000001u;
|
|
L_02519B64: ; // 0x2519b64
|
|
/* 02519B64 */ _t6 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519B64 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02519B68 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02519B68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02519B6C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519B6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02519B70 */ cpu->lr = cpu->r[0];
|
|
/* 02519B74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02519B78 */ return;
|
|
}
|
|
|
|
// fn_02519B30 @ 0x2519b30
|
|
void Gambit_fn_02519B30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02519B30: ; // 0x2519b30
|
|
/* 02519B30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02519B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519B30 */ cpu->r[1] = _t0;
|
|
/* 02519B34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519B34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02519B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02519B3C */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 02519B40 */ cpu->r[6] = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519B44 */ cpu->r[5] = cpu->r[31] + 0x00000118u;
|
|
/* 02519B48 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 02519B4C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02519B4C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02519B50 */ Gambit_fn_023C05C8(cpu);
|
|
/* 02519B54 */ _t3 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02519B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02519B5C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519B5C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02519B5C */ if (_t5) goto L_02519B60; else goto L_02519B64;
|
|
L_02519B60: ; // 0x2519b60
|
|
/* 02519B60 */ cpu->r[0] = 0x00000001u;
|
|
L_02519B64: ; // 0x2519b64
|
|
/* 02519B64 */ _t6 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02519B64 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02519B68 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02519B68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02519B6C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519B6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02519B70 */ cpu->lr = cpu->r[0];
|
|
/* 02519B74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02519B78 */ return;
|
|
}
|
|
|
|
// fn_02519B7C @ 0x2519b7c
|
|
void Gambit_fn_02519B7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
double _ft54, _ft55, _ft69, _ft70;
|
|
|
|
L_02519B7C: ; // 0x2519b7c
|
|
/* 02519B7C */ cpu->r[0] = cpu->lr;
|
|
/* 02519B80 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02519B80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519B80 */ cpu->r[1] = _t0;
|
|
/* 02519B84 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02519B84 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02519B88 */ /* nop */
|
|
/* 02519B8C */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02519B8C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02519B90 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02519B90 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02519B94 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02519B94 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02519B98 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 02519B98 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02519B9C */ _t6 = cpu->r[1] + 0x00000054u;
|
|
/* 02519B9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02519BA0 */ /* nop */
|
|
/* 02519BA4 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 02519BA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02519BA8 */ _t8 = cpu->r[1] + 0x00000048u;
|
|
/* 02519BA8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 02519BAC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02519BB0 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02519BB0 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02519BB4 */ _t10 = cpu->r[12] + 0x00006000u;
|
|
/* 02519BB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02519BB8 */ cpu->r[29] = cpu->r[5];
|
|
/* 02519BBC */ cpu->r[28] = cpu->r[3];
|
|
/* 02519BC0 */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 02519BC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02519BC4 */ cpu->r[30] = cpu->r[6];
|
|
/* 02519BC8 */ cpu->r[31] = cpu->r[7];
|
|
/* 02519BCC */ Gambit_fn_0261F744(cpu);
|
|
/* 02519BD0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02519BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519BD8 */ _t12 = cpu->r[11] + 0x00000AFCu;
|
|
/* 02519BD8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02519BDC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519BDC */ _t14 = _t13 & 0x00000001u;
|
|
/* 02519BDC */ if (_t14) goto L_02519BE0; else goto L_02519BF0;
|
|
L_02519BE0: ; // 0x2519be0
|
|
/* 02519BE0 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 02519BE0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[31]);
|
|
/* 02519BE4 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 02519BE4 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 02519BE8 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 02519BE8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[31]);
|
|
/* 02519BEC */ goto L_02519D78;
|
|
L_02519BF0: ; // 0x2519bf0
|
|
/* 02519BF0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02519BF4 */ _t18 = cpu->r[28] + 0x0000014Cu;
|
|
/* 02519BF4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02519BF8 */ _t19 = cpu->r[9] + 0x00000AF8u;
|
|
/* 02519BF8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02519BFC */ _t20 = cpu->r[28] + 0x00000144u;
|
|
/* 02519BFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02519C00 */ cpu->f[7] = cpu->f[8] * cpu->f[30];
|
|
/* 02519C04 */ _t21 = cpu->r[3] + 0x00000244u;
|
|
/* 02519C04 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02519C08 */ _t22 = cpu->r[3] + 0x0000024Cu;
|
|
/* 02519C08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02519C0C */ cpu->f[0] = cpu->f[12] * cpu->f[30];
|
|
/* 02519C10 */ _t23 = cpu->r[28] + 0x00000138u;
|
|
/* 02519C10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02519C14 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519C14 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 02519C18 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02519C1C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02519C1C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 02519C20 */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 02519C24 */ _t26 = cpu->r[28] + 0x00000140u;
|
|
/* 02519C24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02519C28 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 02519C28 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 02519C2C */ cpu->f[11] = cpu->f[9] - cpu->f[7];
|
|
/* 02519C30 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02519C30 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 02519C34 */ cpu->f[13] = cpu->f[9] + cpu->f[7];
|
|
/* 02519C38 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02519C3C */ cpu->r[5] = 0x00000000u;
|
|
/* 02519C40 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02519C40 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 02519C44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02519C48 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519C48 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 02519C4C */ Gambit_fn_0281976C(cpu);
|
|
/* 02519C50 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519C54 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02519C58 */ _t31 = cpu->r[10] + 0x00000B08u;
|
|
/* 02519C58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02519C5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519C60 */ _t32 = cpu->r[8] + 0x00000B04u;
|
|
/* 02519C60 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02519C64 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02519C68 */ _t33 = cpu->r[6] + 0x00000B00u;
|
|
/* 02519C68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02519C6C */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519C6C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02519C6C */ if (_t35) goto L_02519C70; else goto L_02519C8C;
|
|
L_02519C70: ; // 0x2519c70
|
|
/* 02519C70 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519C74 */ _t36 = cpu->r[7] + 0x00000B0Cu;
|
|
/* 02519C74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02519C78 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02519C78 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 02519C7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519C80 */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 02519C80 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 02519C84 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519C84 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02519C84 */ if (_t40) goto L_02519D74; else goto L_02519C88;
|
|
L_02519C88: ; // 0x2519c88
|
|
/* 02519C88 */ goto L_02519D24;
|
|
L_02519C8C: ; // 0x2519c8c
|
|
/* 02519C8C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02519C90 */ _t41 = cpu->r[5] + 0x00000B0Cu;
|
|
/* 02519C90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02519C94 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 02519C98 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519C98 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02519C98 */ if (_t43) goto L_02519CB8; else goto L_02519C9C;
|
|
L_02519C9C: ; // 0x2519c9c
|
|
/* 02519C9C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519CA0 */ _t44 = cpu->r[7] + 0x00000B0Cu;
|
|
/* 02519CA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02519CA4 */ _t45 = cpu->r[29] + 0x00000000u;
|
|
/* 02519CA4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 02519CA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519CAC */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 02519CAC */ rbrew_write_f32(cpu->mem, _t46, cpu->f[12]);
|
|
/* 02519CB0 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519CB0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02519CB0 */ if (_t48) goto L_02519D74; else goto L_02519CB4;
|
|
L_02519CB4: ; // 0x2519cb4
|
|
/* 02519CB4 */ goto L_02519D24;
|
|
L_02519CB8: ; // 0x2519cb8
|
|
/* 02519CB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02519CBC */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519CBC */ _t50 = _t49 & 0x00000001u;
|
|
/* 02519CBC */ if (_t50) goto L_02519CE0; else goto L_02519CC0;
|
|
L_02519CC0: ; // 0x2519cc0
|
|
/* 02519CC0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519CC4 */ _t51 = cpu->r[12] + 0x00000B10u;
|
|
/* 02519CC4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02519CC8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519CCC */ cpu->f[9] = fma(cpu->f[12], cpu->f[1], -(cpu->f[10]));
|
|
/* 02519CD0 */ _t52 = cpu->r[10] + 0x00000B14u;
|
|
/* 02519CD0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02519CD4 */ cpu->f[8] = cpu->f[9] / cpu->f[11];
|
|
/* 02519CD8 */ _t53 = cpu->r[29] + 0x00000000u;
|
|
/* 02519CD8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[8]);
|
|
/* 02519CDC */ goto L_02519D10;
|
|
L_02519CE0: ; // 0x2519ce0
|
|
/* 02519CE0 */ _ft54 = sqrt(cpu->f[1]);
|
|
/* 02519CE0 */ _ft55 = (double)(int32_t)0x00000001u;
|
|
/* 02519CE0 */ cpu->f[0] = _ft55 / _ft54;
|
|
/* 02519CE4 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 02519CE8 */ cpu->f[13] = cpu->f[0] * cpu->f[30];
|
|
/* 02519CEC */ cpu->f[10] = -fma(cpu->f[10], cpu->f[1], -(cpu->f[7]));
|
|
/* 02519CF0 */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
/* 02519CF4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519CF8 */ _t56 = cpu->r[12] + 0x00000B10u;
|
|
/* 02519CF8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02519CFC */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519D00 */ cpu->f[9] = fma(cpu->f[0], cpu->f[1], -(cpu->f[10]));
|
|
/* 02519D04 */ _t57 = cpu->r[10] + 0x00000B14u;
|
|
/* 02519D04 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02519D08 */ cpu->f[8] = cpu->f[9] / cpu->f[11];
|
|
/* 02519D0C */ _t58 = cpu->r[29] + 0x00000000u;
|
|
/* 02519D0C */ rbrew_write_f32(cpu->mem, _t58, cpu->f[8]);
|
|
L_02519D10: ; // 0x2519d10
|
|
/* 02519D10 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519D14 */ _t59 = cpu->r[7] + 0x00000B0Cu;
|
|
/* 02519D14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02519D18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519D1C */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 02519D1C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 02519D20 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519D20 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02519D20 */ if (_t62) goto L_02519D74; else goto L_02519D24;
|
|
L_02519D24: ; // 0x2519d24
|
|
/* 02519D24 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02519D28 */ _t63 = cpu->r[11] + 0x00000B18u;
|
|
/* 02519D28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02519D2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02519D30 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519D30 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02519D30 */ if (_t65) goto L_02519D3C; else goto L_02519D34;
|
|
L_02519D34: ; // 0x2519d34
|
|
/* 02519D34 */ _t66 = cpu->r[31] + 0x00000000u;
|
|
/* 02519D34 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[31]);
|
|
/* 02519D38 */ goto L_02519D78;
|
|
L_02519D3C: ; // 0x2519d3c
|
|
/* 02519D3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02519D40 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519D40 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02519D40 */ if (_t68) goto L_02519D44; else goto L_02519D58;
|
|
L_02519D44: ; // 0x2519d44
|
|
/* 02519D44 */ _ft69 = sqrt(cpu->f[1]);
|
|
/* 02519D44 */ _ft70 = (double)(int32_t)0x00000001u;
|
|
/* 02519D44 */ cpu->f[12] = _ft70 / _ft69;
|
|
/* 02519D48 */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 02519D4C */ cpu->f[11] = cpu->f[12] * cpu->f[30];
|
|
/* 02519D50 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[1], -(cpu->f[7]));
|
|
/* 02519D54 */ cpu->f[12] = cpu->f[10] * cpu->f[11];
|
|
L_02519D58: ; // 0x2519d58
|
|
/* 02519D58 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02519D5C */ _t71 = cpu->r[9] + 0x00000B1Cu;
|
|
/* 02519D5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02519D60 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519D64 */ cpu->f[8] = fma(cpu->f[12], cpu->f[1], -(cpu->f[8]));
|
|
/* 02519D68 */ _t72 = cpu->r[7] + 0x00000B20u;
|
|
/* 02519D68 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02519D6C */ cpu->f[9] = cpu->f[8] / cpu->f[9];
|
|
/* 02519D70 */ cpu->f[12] = cpu->f[31] - cpu->f[9];
|
|
L_02519D74: ; // 0x2519d74
|
|
/* 02519D74 */ _t73 = cpu->r[31] + 0x00000000u;
|
|
/* 02519D74 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
L_02519D78: ; // 0x2519d78
|
|
/* 02519D78 */ _t74 = cpu->r[1] + 0x00000020u;
|
|
/* 02519D78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02519D7C */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 02519D7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02519D80 */ _t76 = cpu->r[1] + 0x00000048u;
|
|
/* 02519D80 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02519D84 */ _t77 = cpu->r[1] + 0x00000038u;
|
|
/* 02519D84 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02519D88 */ _t78 = cpu->r[1] + 0x00000040u;
|
|
/* 02519D88 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02519D8C */ _t79 = cpu->r[1] + 0x00000030u;
|
|
/* 02519D8C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t79);
|
|
/* 02519D90 */ _t80 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02519D90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02519D94 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 02519D94 */ cpu->r[30] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02519D98 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519D98 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02519D98 */ if (_t83) goto L_02519D9C; // else: addr-0 trap, fall-through
|
|
L_02519D9C: ; // 0x2519d9c
|
|
/* 02519D9C */ _t84 = cpu->r[1] + 0x00000054u;
|
|
/* 02519D9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02519DA0 */ cpu->lr = cpu->r[0];
|
|
/* 02519DA4 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02519DA8 */ return;
|
|
}
|
|
|
|
// fn_02519B80 @ 0x2519b80
|
|
void Gambit_fn_02519B80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
double _ft54, _ft55, _ft69, _ft70;
|
|
|
|
L_02519B80: ; // 0x2519b80
|
|
/* 02519B80 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02519B80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519B80 */ cpu->r[1] = _t0;
|
|
/* 02519B84 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02519B84 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02519B88 */ /* nop */
|
|
/* 02519B8C */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02519B8C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02519B90 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02519B90 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02519B94 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02519B94 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02519B98 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 02519B98 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02519B9C */ _t6 = cpu->r[1] + 0x00000054u;
|
|
/* 02519B9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02519BA0 */ /* nop */
|
|
/* 02519BA4 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 02519BA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02519BA8 */ _t8 = cpu->r[1] + 0x00000048u;
|
|
/* 02519BA8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 02519BAC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02519BB0 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02519BB0 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02519BB4 */ _t10 = cpu->r[12] + 0x00006000u;
|
|
/* 02519BB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02519BB8 */ cpu->r[29] = cpu->r[5];
|
|
/* 02519BBC */ cpu->r[28] = cpu->r[3];
|
|
/* 02519BC0 */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 02519BC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02519BC4 */ cpu->r[30] = cpu->r[6];
|
|
/* 02519BC8 */ cpu->r[31] = cpu->r[7];
|
|
/* 02519BCC */ Gambit_fn_0261F744(cpu);
|
|
/* 02519BD0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02519BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519BD8 */ _t12 = cpu->r[11] + 0x00000AFCu;
|
|
/* 02519BD8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02519BDC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519BDC */ _t14 = _t13 & 0x00000001u;
|
|
/* 02519BDC */ if (_t14) goto L_02519BE0; else goto L_02519BF0;
|
|
L_02519BE0: ; // 0x2519be0
|
|
/* 02519BE0 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 02519BE0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[31]);
|
|
/* 02519BE4 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 02519BE4 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 02519BE8 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 02519BE8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[31]);
|
|
/* 02519BEC */ goto L_02519D78;
|
|
L_02519BF0: ; // 0x2519bf0
|
|
/* 02519BF0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02519BF4 */ _t18 = cpu->r[28] + 0x0000014Cu;
|
|
/* 02519BF4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02519BF8 */ _t19 = cpu->r[9] + 0x00000AF8u;
|
|
/* 02519BF8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02519BFC */ _t20 = cpu->r[28] + 0x00000144u;
|
|
/* 02519BFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02519C00 */ cpu->f[7] = cpu->f[8] * cpu->f[30];
|
|
/* 02519C04 */ _t21 = cpu->r[3] + 0x00000244u;
|
|
/* 02519C04 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02519C08 */ _t22 = cpu->r[3] + 0x0000024Cu;
|
|
/* 02519C08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02519C0C */ cpu->f[0] = cpu->f[12] * cpu->f[30];
|
|
/* 02519C10 */ _t23 = cpu->r[28] + 0x00000138u;
|
|
/* 02519C10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02519C14 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519C14 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 02519C18 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02519C1C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02519C1C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 02519C20 */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 02519C24 */ _t26 = cpu->r[28] + 0x00000140u;
|
|
/* 02519C24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02519C28 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 02519C28 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 02519C2C */ cpu->f[11] = cpu->f[9] - cpu->f[7];
|
|
/* 02519C30 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02519C30 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 02519C34 */ cpu->f[13] = cpu->f[9] + cpu->f[7];
|
|
/* 02519C38 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02519C3C */ cpu->r[5] = 0x00000000u;
|
|
/* 02519C40 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02519C40 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 02519C44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02519C48 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519C48 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 02519C4C */ Gambit_fn_0281976C(cpu);
|
|
/* 02519C50 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519C54 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02519C58 */ _t31 = cpu->r[10] + 0x00000B08u;
|
|
/* 02519C58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02519C5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519C60 */ _t32 = cpu->r[8] + 0x00000B04u;
|
|
/* 02519C60 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02519C64 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02519C68 */ _t33 = cpu->r[6] + 0x00000B00u;
|
|
/* 02519C68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02519C6C */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519C6C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02519C6C */ if (_t35) goto L_02519C70; else goto L_02519C8C;
|
|
L_02519C70: ; // 0x2519c70
|
|
/* 02519C70 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519C74 */ _t36 = cpu->r[7] + 0x00000B0Cu;
|
|
/* 02519C74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02519C78 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02519C78 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 02519C7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519C80 */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 02519C80 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 02519C84 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519C84 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02519C84 */ if (_t40) goto L_02519D74; else goto L_02519C88;
|
|
L_02519C88: ; // 0x2519c88
|
|
/* 02519C88 */ goto L_02519D24;
|
|
L_02519C8C: ; // 0x2519c8c
|
|
/* 02519C8C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02519C90 */ _t41 = cpu->r[5] + 0x00000B0Cu;
|
|
/* 02519C90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02519C94 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 02519C98 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519C98 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02519C98 */ if (_t43) goto L_02519CB8; else goto L_02519C9C;
|
|
L_02519C9C: ; // 0x2519c9c
|
|
/* 02519C9C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519CA0 */ _t44 = cpu->r[7] + 0x00000B0Cu;
|
|
/* 02519CA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02519CA4 */ _t45 = cpu->r[29] + 0x00000000u;
|
|
/* 02519CA4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 02519CA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519CAC */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 02519CAC */ rbrew_write_f32(cpu->mem, _t46, cpu->f[12]);
|
|
/* 02519CB0 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519CB0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02519CB0 */ if (_t48) goto L_02519D74; else goto L_02519CB4;
|
|
L_02519CB4: ; // 0x2519cb4
|
|
/* 02519CB4 */ goto L_02519D24;
|
|
L_02519CB8: ; // 0x2519cb8
|
|
/* 02519CB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02519CBC */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519CBC */ _t50 = _t49 & 0x00000001u;
|
|
/* 02519CBC */ if (_t50) goto L_02519CE0; else goto L_02519CC0;
|
|
L_02519CC0: ; // 0x2519cc0
|
|
/* 02519CC0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519CC4 */ _t51 = cpu->r[12] + 0x00000B10u;
|
|
/* 02519CC4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02519CC8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519CCC */ cpu->f[9] = fma(cpu->f[12], cpu->f[1], -(cpu->f[10]));
|
|
/* 02519CD0 */ _t52 = cpu->r[10] + 0x00000B14u;
|
|
/* 02519CD0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02519CD4 */ cpu->f[8] = cpu->f[9] / cpu->f[11];
|
|
/* 02519CD8 */ _t53 = cpu->r[29] + 0x00000000u;
|
|
/* 02519CD8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[8]);
|
|
/* 02519CDC */ goto L_02519D10;
|
|
L_02519CE0: ; // 0x2519ce0
|
|
/* 02519CE0 */ _ft54 = sqrt(cpu->f[1]);
|
|
/* 02519CE0 */ _ft55 = (double)(int32_t)0x00000001u;
|
|
/* 02519CE0 */ cpu->f[0] = _ft55 / _ft54;
|
|
/* 02519CE4 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 02519CE8 */ cpu->f[13] = cpu->f[0] * cpu->f[30];
|
|
/* 02519CEC */ cpu->f[10] = -fma(cpu->f[10], cpu->f[1], -(cpu->f[7]));
|
|
/* 02519CF0 */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
/* 02519CF4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519CF8 */ _t56 = cpu->r[12] + 0x00000B10u;
|
|
/* 02519CF8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02519CFC */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519D00 */ cpu->f[9] = fma(cpu->f[0], cpu->f[1], -(cpu->f[10]));
|
|
/* 02519D04 */ _t57 = cpu->r[10] + 0x00000B14u;
|
|
/* 02519D04 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02519D08 */ cpu->f[8] = cpu->f[9] / cpu->f[11];
|
|
/* 02519D0C */ _t58 = cpu->r[29] + 0x00000000u;
|
|
/* 02519D0C */ rbrew_write_f32(cpu->mem, _t58, cpu->f[8]);
|
|
L_02519D10: ; // 0x2519d10
|
|
/* 02519D10 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519D14 */ _t59 = cpu->r[7] + 0x00000B0Cu;
|
|
/* 02519D14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02519D18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02519D1C */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 02519D1C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 02519D20 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519D20 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02519D20 */ if (_t62) goto L_02519D74; else goto L_02519D24;
|
|
L_02519D24: ; // 0x2519d24
|
|
/* 02519D24 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02519D28 */ _t63 = cpu->r[11] + 0x00000B18u;
|
|
/* 02519D28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02519D2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02519D30 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519D30 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02519D30 */ if (_t65) goto L_02519D3C; else goto L_02519D34;
|
|
L_02519D34: ; // 0x2519d34
|
|
/* 02519D34 */ _t66 = cpu->r[31] + 0x00000000u;
|
|
/* 02519D34 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[31]);
|
|
/* 02519D38 */ goto L_02519D78;
|
|
L_02519D3C: ; // 0x2519d3c
|
|
/* 02519D3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02519D40 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02519D40 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02519D40 */ if (_t68) goto L_02519D44; else goto L_02519D58;
|
|
L_02519D44: ; // 0x2519d44
|
|
/* 02519D44 */ _ft69 = sqrt(cpu->f[1]);
|
|
/* 02519D44 */ _ft70 = (double)(int32_t)0x00000001u;
|
|
/* 02519D44 */ cpu->f[12] = _ft70 / _ft69;
|
|
/* 02519D48 */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 02519D4C */ cpu->f[11] = cpu->f[12] * cpu->f[30];
|
|
/* 02519D50 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[1], -(cpu->f[7]));
|
|
/* 02519D54 */ cpu->f[12] = cpu->f[10] * cpu->f[11];
|
|
L_02519D58: ; // 0x2519d58
|
|
/* 02519D58 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02519D5C */ _t71 = cpu->r[9] + 0x00000B1Cu;
|
|
/* 02519D5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02519D60 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02519D64 */ cpu->f[8] = fma(cpu->f[12], cpu->f[1], -(cpu->f[8]));
|
|
/* 02519D68 */ _t72 = cpu->r[7] + 0x00000B20u;
|
|
/* 02519D68 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02519D6C */ cpu->f[9] = cpu->f[8] / cpu->f[9];
|
|
/* 02519D70 */ cpu->f[12] = cpu->f[31] - cpu->f[9];
|
|
L_02519D74: ; // 0x2519d74
|
|
/* 02519D74 */ _t73 = cpu->r[31] + 0x00000000u;
|
|
/* 02519D74 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
L_02519D78: ; // 0x2519d78
|
|
/* 02519D78 */ _t74 = cpu->r[1] + 0x00000020u;
|
|
/* 02519D78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02519D7C */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 02519D7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02519D80 */ _t76 = cpu->r[1] + 0x00000048u;
|
|
/* 02519D80 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02519D84 */ _t77 = cpu->r[1] + 0x00000038u;
|
|
/* 02519D84 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02519D88 */ _t78 = cpu->r[1] + 0x00000040u;
|
|
/* 02519D88 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02519D8C */ _t79 = cpu->r[1] + 0x00000030u;
|
|
/* 02519D8C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t79);
|
|
/* 02519D90 */ _t80 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02519D90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02519D94 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 02519D94 */ cpu->r[30] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02519D98 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519D98 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02519D98 */ if (_t83) goto L_02519D9C; // else: addr-0 trap, fall-through
|
|
L_02519D9C: ; // 0x2519d9c
|
|
/* 02519D9C */ _t84 = cpu->r[1] + 0x00000054u;
|
|
/* 02519D9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02519DA0 */ cpu->lr = cpu->r[0];
|
|
/* 02519DA4 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02519DA8 */ return;
|
|
}
|
|
|
|
// fn_02519DAC @ 0x2519dac
|
|
void Gambit_fn_02519DAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_02519DAC: ; // 0x2519dac
|
|
/* 02519DAC */ cpu->r[0] = cpu->lr;
|
|
/* 02519DB0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02519DB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02519DB4 */ _t1 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02519DB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02519DB4 */ cpu->r[1] = _t1;
|
|
/* 02519DB8 */ _t2 = cpu->r[3] + 0x0000013Cu;
|
|
/* 02519DB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02519DBC */ _t3 = cpu->r[3] + 0x00000138u;
|
|
/* 02519DBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02519DC0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519DC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02519DC4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519DC8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02519DC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[7]);
|
|
/* 02519DCC */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519DD0 */ _t6 = cpu->r[12] + 0x00000B24u;
|
|
/* 02519DD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02519DD4 */ _t7 = cpu->r[10] + 0x00000AFCu;
|
|
/* 02519DD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02519DD8 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02519DDC */ _t8 = cpu->r[3] + 0x00000140u;
|
|
/* 02519DDC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02519DE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 02519DE4 */ _t9 = cpu->r[6] + 0x00000AF8u;
|
|
/* 02519DE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02519DE8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02519DEC */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02519DEC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02519DF0 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519DF0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02519DF0 */ if (_t12) goto L_02519E14; else goto L_02519DF4;
|
|
L_02519DF4: ; // 0x2519df4
|
|
/* 02519DF4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519DF4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02519DF4 */ if (_t14) goto L_02519E60; else goto L_02519DF8;
|
|
L_02519DF8: ; // 0x2519df8
|
|
/* 02519DF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 02519DFC */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519DFC */ _t16 = _t15 & 0x00000001u;
|
|
/* 02519DFC */ if (_t16) goto L_02519EAC; else goto L_02519E00;
|
|
L_02519E00: ; // 0x2519e00
|
|
/* 02519E00 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519E00 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02519E00 */ if (_t18) goto L_02519EF8; else goto L_02519E04;
|
|
L_02519E04: ; // 0x2519e04
|
|
/* 02519E04 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 02519E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02519E08 */ cpu->lr = cpu->r[0];
|
|
/* 02519E0C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02519E10 */ return;
|
|
L_02519E14: ; // 0x2519e14
|
|
/* 02519E14 */ _t20 = cpu->r[3] + 0x00000144u;
|
|
/* 02519E14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02519E18 */ cpu->f[10] = cpu->f[11] / cpu->f[13];
|
|
/* 02519E1C */ _t21 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519E1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02519E20 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519E20 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]);
|
|
/* 02519E24 */ cpu->r[3] = cpu->r[4];
|
|
/* 02519E28 */ cpu->r[11] = 0x00000000u;
|
|
/* 02519E2C */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02519E2C */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 02519E30 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02519E30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02519E34 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 02519E34 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02519E38 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02519E38 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02519E3C */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 02519E3C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 02519E40 */ cpu->f[9] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02519E44 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 02519E44 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 02519E48 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519E4C */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519E50 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519E54 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 02519E54 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 02519E58 */ Gambit_fn_0251BC98(cpu);
|
|
/* 02519E5C */ goto L_02519F40;
|
|
L_02519E60: ; // 0x2519e60
|
|
/* 02519E60 */ _t30 = cpu->r[3] + 0x00000144u;
|
|
/* 02519E60 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02519E64 */ cpu->f[11] = cpu->f[11] / cpu->f[13];
|
|
/* 02519E68 */ _t31 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519E68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02519E6C */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519E6C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 02519E70 */ cpu->r[3] = cpu->r[4];
|
|
/* 02519E74 */ cpu->r[11] = 0x80000000u;
|
|
/* 02519E78 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02519E78 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 02519E7C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02519E7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02519E80 */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 02519E80 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02519E84 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 02519E84 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02519E88 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02519E88 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 02519E8C */ cpu->f[10] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[10]));
|
|
/* 02519E90 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02519E90 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 02519E94 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519E98 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519E9C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519EA0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02519EA0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[10]);
|
|
/* 02519EA4 */ Gambit_fn_0251BC98(cpu);
|
|
/* 02519EA8 */ goto L_02519F40;
|
|
L_02519EAC: ; // 0x2519eac
|
|
/* 02519EAC */ _t40 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519EAC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02519EB0 */ cpu->f[11] = cpu->f[10] / cpu->f[13];
|
|
/* 02519EB4 */ _t41 = cpu->r[3] + 0x00000144u;
|
|
/* 02519EB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02519EB8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519EB8 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 02519EBC */ cpu->r[3] = cpu->r[4];
|
|
/* 02519EC0 */ cpu->r[11] = 0x40000000u;
|
|
/* 02519EC4 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 02519EC4 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]);
|
|
/* 02519EC8 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 02519EC8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02519ECC */ _t45 = cpu->r[1] + 0x00000028u;
|
|
/* 02519ECC */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 02519ED0 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 02519ED0 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02519ED4 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 02519ED4 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[12]);
|
|
/* 02519ED8 */ cpu->f[9] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02519EDC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 02519EDC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 02519EE0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519EE4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519EE8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519EEC */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02519EEC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 02519EF0 */ Gambit_fn_0251BC98(cpu);
|
|
/* 02519EF4 */ goto L_02519F40;
|
|
L_02519EF8: ; // 0x2519ef8
|
|
/* 02519EF8 */ _t50 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519EF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02519EFC */ cpu->f[11] = cpu->f[11] / cpu->f[13];
|
|
/* 02519F00 */ _t51 = cpu->r[3] + 0x00000144u;
|
|
/* 02519F00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02519F04 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519F04 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 02519F08 */ cpu->r[3] = cpu->r[4];
|
|
/* 02519F0C */ cpu->r[11] = 0xC0000000u;
|
|
/* 02519F10 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 02519F10 */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 02519F14 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 02519F14 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02519F18 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 02519F18 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 02519F1C */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 02519F1C */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 02519F20 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 02519F20 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 02519F24 */ cpu->f[10] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[10]));
|
|
/* 02519F28 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02519F28 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[11]);
|
|
/* 02519F2C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519F30 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519F34 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519F38 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02519F38 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[10]);
|
|
/* 02519F3C */ Gambit_fn_0251BC98(cpu);
|
|
L_02519F40: ; // 0x2519f40
|
|
/* 02519F40 */ _t60 = cpu->r[1] + 0x00000034u;
|
|
/* 02519F40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02519F44 */ cpu->lr = cpu->r[0];
|
|
/* 02519F48 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02519F4C */ return;
|
|
}
|
|
|
|
// fn_02519DB4 @ 0x2519db4
|
|
void Gambit_fn_02519DB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59;
|
|
|
|
L_02519DB4: ; // 0x2519db4
|
|
/* 02519DB4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02519DB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519DB4 */ cpu->r[1] = _t0;
|
|
/* 02519DB8 */ _t1 = cpu->r[3] + 0x0000013Cu;
|
|
/* 02519DB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02519DBC */ _t2 = cpu->r[3] + 0x00000138u;
|
|
/* 02519DBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02519DC0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02519DC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02519DC4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519DC8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02519DC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
/* 02519DCC */ cpu->r[10] = 0x100C0000u;
|
|
/* 02519DD0 */ _t5 = cpu->r[12] + 0x00000B24u;
|
|
/* 02519DD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02519DD4 */ _t6 = cpu->r[10] + 0x00000AFCu;
|
|
/* 02519DD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02519DD8 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02519DDC */ _t7 = cpu->r[3] + 0x00000140u;
|
|
/* 02519DDC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02519DE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 02519DE4 */ _t8 = cpu->r[6] + 0x00000AF8u;
|
|
/* 02519DE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02519DE8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02519DEC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02519DEC */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02519DF0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519DF0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02519DF0 */ if (_t11) goto L_02519E14; else goto L_02519DF4;
|
|
L_02519DF4: ; // 0x2519df4
|
|
/* 02519DF4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519DF4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02519DF4 */ if (_t13) goto L_02519E60; else goto L_02519DF8;
|
|
L_02519DF8: ; // 0x2519df8
|
|
/* 02519DF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 02519DFC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519DFC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02519DFC */ if (_t15) goto L_02519EAC; else goto L_02519E00;
|
|
L_02519E00: ; // 0x2519e00
|
|
/* 02519E00 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519E00 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02519E00 */ if (_t17) goto L_02519EF8; else goto L_02519E04;
|
|
L_02519E04: ; // 0x2519e04
|
|
/* 02519E04 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02519E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02519E08 */ cpu->lr = cpu->r[0];
|
|
/* 02519E0C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02519E10 */ return;
|
|
L_02519E14: ; // 0x2519e14
|
|
/* 02519E14 */ _t19 = cpu->r[3] + 0x00000144u;
|
|
/* 02519E14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02519E18 */ cpu->f[10] = cpu->f[11] / cpu->f[13];
|
|
/* 02519E1C */ _t20 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519E1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02519E20 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519E20 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 02519E24 */ cpu->r[3] = cpu->r[4];
|
|
/* 02519E28 */ cpu->r[11] = 0x00000000u;
|
|
/* 02519E2C */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02519E2C */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 02519E30 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02519E30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02519E34 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 02519E34 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02519E38 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 02519E38 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02519E3C */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 02519E3C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02519E40 */ cpu->f[9] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02519E44 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02519E44 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[10]);
|
|
/* 02519E48 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519E4C */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519E50 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519E54 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02519E54 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 02519E58 */ Gambit_fn_0251BC98(cpu);
|
|
/* 02519E5C */ goto L_02519F40;
|
|
L_02519E60: ; // 0x2519e60
|
|
/* 02519E60 */ _t29 = cpu->r[3] + 0x00000144u;
|
|
/* 02519E60 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02519E64 */ cpu->f[11] = cpu->f[11] / cpu->f[13];
|
|
/* 02519E68 */ _t30 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519E68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02519E6C */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519E6C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 02519E70 */ cpu->r[3] = cpu->r[4];
|
|
/* 02519E74 */ cpu->r[11] = 0x80000000u;
|
|
/* 02519E78 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 02519E78 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 02519E7C */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02519E7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02519E80 */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 02519E80 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 02519E84 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02519E84 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02519E88 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02519E88 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 02519E8C */ cpu->f[10] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[10]));
|
|
/* 02519E90 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02519E90 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 02519E94 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519E98 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519E9C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519EA0 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02519EA0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 02519EA4 */ Gambit_fn_0251BC98(cpu);
|
|
/* 02519EA8 */ goto L_02519F40;
|
|
L_02519EAC: ; // 0x2519eac
|
|
/* 02519EAC */ _t39 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519EAC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02519EB0 */ cpu->f[11] = cpu->f[10] / cpu->f[13];
|
|
/* 02519EB4 */ _t40 = cpu->r[3] + 0x00000144u;
|
|
/* 02519EB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02519EB8 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519EB8 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 02519EBC */ cpu->r[3] = cpu->r[4];
|
|
/* 02519EC0 */ cpu->r[11] = 0x40000000u;
|
|
/* 02519EC4 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 02519EC4 */ rbrew_write32(cpu->mem, _t42, cpu->r[11]);
|
|
/* 02519EC8 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02519EC8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02519ECC */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 02519ECC */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 02519ED0 */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 02519ED0 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 02519ED4 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 02519ED4 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[12]);
|
|
/* 02519ED8 */ cpu->f[9] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02519EDC */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02519EDC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[11]);
|
|
/* 02519EE0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519EE4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519EE8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519EEC */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 02519EEC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[9]);
|
|
/* 02519EF0 */ Gambit_fn_0251BC98(cpu);
|
|
/* 02519EF4 */ goto L_02519F40;
|
|
L_02519EF8: ; // 0x2519ef8
|
|
/* 02519EF8 */ _t49 = cpu->r[3] + 0x0000014Cu;
|
|
/* 02519EF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02519EFC */ cpu->f[11] = cpu->f[11] / cpu->f[13];
|
|
/* 02519F00 */ _t50 = cpu->r[3] + 0x00000144u;
|
|
/* 02519F00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02519F04 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02519F04 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 02519F08 */ cpu->r[3] = cpu->r[4];
|
|
/* 02519F0C */ cpu->r[11] = 0xC0000000u;
|
|
/* 02519F10 */ _t52 = cpu->r[1] + 0x00000024u;
|
|
/* 02519F10 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 02519F14 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 02519F14 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02519F18 */ _t54 = cpu->r[1] + 0x00000028u;
|
|
/* 02519F18 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02519F1C */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 02519F1C */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 02519F20 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 02519F20 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[12]);
|
|
/* 02519F24 */ cpu->f[10] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[10]));
|
|
/* 02519F28 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02519F28 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[11]);
|
|
/* 02519F2C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02519F30 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02519F34 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02519F38 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 02519F38 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[10]);
|
|
/* 02519F3C */ Gambit_fn_0251BC98(cpu);
|
|
L_02519F40: ; // 0x2519f40
|
|
/* 02519F40 */ _t59 = cpu->r[1] + 0x00000034u;
|
|
/* 02519F40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02519F44 */ cpu->lr = cpu->r[0];
|
|
/* 02519F48 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02519F4C */ return;
|
|
}
|
|
|
|
// fn_02519F50 @ 0x2519f50
|
|
void Gambit_fn_02519F50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_02519F50: ; // 0x2519f50
|
|
/* 02519F50 */ cpu->r[0] = cpu->lr;
|
|
/* 02519F54 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 02519F54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519F54 */ cpu->r[1] = _t0;
|
|
/* 02519F58 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02519F58 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02519F5C */ /* nop */
|
|
/* 02519F60 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02519F60 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02519F64 */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 02519F64 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02519F68 */ /* nop */
|
|
/* 02519F6C */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 02519F6C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02519F70 */ _t5 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02519F70 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02519F74 */ cpu->f[30] = cpu->f[1];
|
|
/* 02519F78 */ /* nop */
|
|
/* 02519F7C */ cpu->r[28] = cpu->r[4];
|
|
/* 02519F80 */ cpu->r[27] = cpu->r[3];
|
|
/* 02519F84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000002u);
|
|
/* 02519F88 */ cpu->r[31] = cpu->r[27] + 0x00000164u;
|
|
/* 02519F8C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519F8C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02519F8C */ if (_t7) goto L_02519F90; else goto L_02519F98;
|
|
L_02519F90: ; // 0x2519f90
|
|
/* 02519F90 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000030u);
|
|
/* 02519F94 */ cpu->r[31] = cpu->r[31] + cpu->r[7];
|
|
L_02519F98: ; // 0x2519f98
|
|
/* 02519F98 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519F9C */ _t8 = cpu->r[12] + 0x00000B00u;
|
|
/* 02519F9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02519FA0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 02519FA4 */ cpu->r[29] = cpu->r[31];
|
|
/* 02519FA8 */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 02519FAC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519FAC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02519FAC */ if (_t10) goto L_02519FB0; else goto L_0251A00C;
|
|
L_02519FB0: ; // 0x2519fb0
|
|
/* 02519FB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02519FB4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FB4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02519FB4 */ if (_t12) goto L_0251A120; else goto L_02519FB8;
|
|
L_02519FB8: ; // 0x2519fb8
|
|
/* 02519FB8 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02519FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02519FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519FC0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02519FC0 */ if (_t15) goto L_02519FD8; else goto L_02519FC4;
|
|
L_02519FC4: ; // 0x2519fc4
|
|
/* 02519FC4 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02519FC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02519FC8 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 02519FC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02519FCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 02519FD0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FD0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02519FD0 */ if (_t19) goto L_02519FD4; else goto L_02519FD8;
|
|
L_02519FD4: ; // 0x2519fd4
|
|
/* 02519FD4 */ Gambit_fn_028A545C(cpu);
|
|
L_02519FD8: ; // 0x2519fd8
|
|
/* 02519FD8 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02519FDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02519FE0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FE0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02519FE0 */ if (_t21) goto L_02519FE4; else goto L_02519FB8;
|
|
L_02519FE4: ; // 0x2519fe4
|
|
/* 02519FE4 */ /* nop */
|
|
/* 02519FE8 */ _t22 = cpu->r[1] + 0x00000060u;
|
|
/* 02519FE8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02519FEC */ _t23 = cpu->r[1] + 0x00000070u;
|
|
/* 02519FEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02519FF0 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 02519FF0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02519FF4 */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 02519FF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 02519FF8 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519FF8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02519FF8 */ if (_t27) goto L_02519FFC; // else: addr-0 trap, fall-through
|
|
L_02519FFC: ; // 0x2519ffc
|
|
/* 02519FFC */ _t28 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02519FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0251A000 */ cpu->lr = cpu->r[0];
|
|
/* 0251A004 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A008 */ return;
|
|
L_0251A00C: ; // 0x251a00c
|
|
/* 0251A00C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A010 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A010 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0251A010 */ if (_t30) goto L_0251A120; else goto L_0251A014;
|
|
L_0251A014: ; // 0x251a014
|
|
/* 0251A014 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A018 */ _t31 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A018 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0251A01C */ cpu->r[25] = cpu->r[1] + 0x0000000Cu;
|
|
L_0251A020: ; // 0x251a020
|
|
/* 0251A020 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A020 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0251A024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A028 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A028 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0251A028 */ if (_t34) goto L_0251A03C; else goto L_0251A02C;
|
|
L_0251A02C: ; // 0x251a02c
|
|
/* 0251A02C */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A02C */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251A030 */ _t36 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251A034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A038 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A038 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0251A038 */ if (_t38) goto L_0251A074; else goto L_0251A03C;
|
|
L_0251A03C: ; // 0x251a03c
|
|
/* 0251A03C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251A040 */ cpu->r[4] = cpu->r[28];
|
|
/* 0251A044 */ Gambit_fn_02037B60(cpu);
|
|
/* 0251A048 */ _t39 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0251A048 */ cpu->r[6] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251A04C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A050 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251A054 */ _t40 = cpu->r[27] + 0x00000030u;
|
|
/* 0251A054 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A058 */ cpu->r[5] = cpu->r[5] + 0x00000B28u;
|
|
/* 0251A05C */ cpu->r[7] = 0x00000000u;
|
|
/* 0251A060 */ Gambit_fn_027B73AC(cpu);
|
|
/* 0251A064 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A064 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0251A068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A06C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A06C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0251A06C */ if (_t43) goto L_0251A114; else goto L_0251A070;
|
|
L_0251A070: ; // 0x251a070
|
|
/* 0251A070 */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A070 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_0251A074: ; // 0x251a074
|
|
/* 0251A074 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A074 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0251A078 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A07C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A07C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251A07C */ if (_t47) goto L_0251A080; else goto L_0251A114;
|
|
L_0251A080: ; // 0x251a080
|
|
/* 0251A080 */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A084 */ cpu->r[6] = cpu->r[31] - cpu->r[29];
|
|
/* 0251A088 */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A08C */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[6]) >> 32);
|
|
/* 0251A090 */ /* nop */
|
|
/* 0251A094 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A098 */ /* nop */
|
|
/* 0251A09C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A0A0 */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
/* 0251A0A4 */ Gambit_fn_02519DAC(cpu);
|
|
/* 0251A0A8 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A0A8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0251A0B0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A0B0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A0B0 */ if (_t50) goto L_0251A0E8; else goto L_0251A0B4;
|
|
L_0251A0B4: ; // 0x251a0b4
|
|
/* 0251A0B4 */ _t51 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0251A0B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A0B8 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A0B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A0BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0251A0C0 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A0C0 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A0C0 */ if (_t54) goto L_0251A0C4; else goto L_0251A0E8;
|
|
L_0251A0C4: ; // 0x251a0c4
|
|
/* 0251A0C4 */ cpu->r[3] = cpu->r[25];
|
|
/* 0251A0C8 */ cpu->r[4] = cpu->r[26] + 0x0000007Cu;
|
|
/* 0251A0CC */ Gambit_fn_02C69510(cpu);
|
|
/* 0251A0D0 */ _t55 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A0D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0251A0D4 */ _t56 = cpu->r[26] + 0x00000074u;
|
|
/* 0251A0D4 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0251A0D8 */ cpu->r[9] = cpu->r[9] | 0x00000008u;
|
|
/* 0251A0DC */ _t57 = cpu->r[26] + 0x00000070u;
|
|
/* 0251A0DC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 0251A0E0 */ _t58 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A0E0 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0251A0E4 */ _t59 = cpu->r[26] + 0x00000078u;
|
|
/* 0251A0E4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
L_0251A0E8: ; // 0x251a0e8
|
|
/* 0251A0E8 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A0E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0251A0EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A0F0 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A0F0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0251A0F0 */ if (_t62) goto L_0251A114; else goto L_0251A0F4;
|
|
L_0251A0F4: ; // 0x251a0f4
|
|
/* 0251A0F4 */ _t63 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A0F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0251A0F8 */ _t64 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0251A0FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A100 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A100 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0251A100 */ if (_t66) goto L_0251A104; else goto L_0251A114;
|
|
L_0251A104: ; // 0x251a104
|
|
/* 0251A104 */ _t67 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A104 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0251A108 */ _t68 = cpu->r[5] + 0x00000060u;
|
|
/* 0251A108 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[30]);
|
|
/* 0251A10C */ cpu->r[6] = cpu->r[6] | 0x00000002u;
|
|
/* 0251A110 */ _t69 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A110 */ rbrew_write32(cpu->mem, _t69, cpu->r[6]);
|
|
L_0251A114: ; // 0x251a114
|
|
/* 0251A114 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A118 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A11C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A11C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0251A11C */ if (_t71) goto L_0251A120; else goto L_0251A020;
|
|
L_0251A120: ; // 0x251a120
|
|
/* 0251A120 */ /* nop */
|
|
/* 0251A124 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A124 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0251A128 */ _t73 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A128 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0251A12C */ _t74 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A12C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0251A130 */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A130 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0251A134 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A134 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0251A134 */ if (_t77) goto L_0251A138; // else: addr-0 trap, fall-through
|
|
L_0251A138: ; // 0x251a138
|
|
/* 0251A138 */ _t78 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A138 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0251A13C */ cpu->lr = cpu->r[0];
|
|
/* 0251A140 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A144 */ return;
|
|
}
|
|
|
|
// fn_02519F54 @ 0x2519f54
|
|
void Gambit_fn_02519F54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_02519F54: ; // 0x2519f54
|
|
/* 02519F54 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 02519F54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02519F54 */ cpu->r[1] = _t0;
|
|
/* 02519F58 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02519F58 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02519F5C */ /* nop */
|
|
/* 02519F60 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02519F60 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02519F64 */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 02519F64 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02519F68 */ /* nop */
|
|
/* 02519F6C */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 02519F6C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02519F70 */ _t5 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02519F70 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02519F74 */ cpu->f[30] = cpu->f[1];
|
|
/* 02519F78 */ /* nop */
|
|
/* 02519F7C */ cpu->r[28] = cpu->r[4];
|
|
/* 02519F80 */ cpu->r[27] = cpu->r[3];
|
|
/* 02519F84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000002u);
|
|
/* 02519F88 */ cpu->r[31] = cpu->r[27] + 0x00000164u;
|
|
/* 02519F8C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519F8C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02519F8C */ if (_t7) goto L_02519F90; else goto L_02519F98;
|
|
L_02519F90: ; // 0x2519f90
|
|
/* 02519F90 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000030u);
|
|
/* 02519F94 */ cpu->r[31] = cpu->r[31] + cpu->r[7];
|
|
L_02519F98: ; // 0x2519f98
|
|
/* 02519F98 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02519F9C */ _t8 = cpu->r[12] + 0x00000B00u;
|
|
/* 02519F9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02519FA0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 02519FA4 */ cpu->r[29] = cpu->r[31];
|
|
/* 02519FA8 */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 02519FAC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519FAC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02519FAC */ if (_t10) goto L_02519FB0; else goto L_0251A00C;
|
|
L_02519FB0: ; // 0x2519fb0
|
|
/* 02519FB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02519FB4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FB4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02519FB4 */ if (_t12) goto L_0251A120; else goto L_02519FB8;
|
|
L_02519FB8: ; // 0x2519fb8
|
|
/* 02519FB8 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02519FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02519FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02519FC0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02519FC0 */ if (_t15) goto L_02519FD8; else goto L_02519FC4;
|
|
L_02519FC4: ; // 0x2519fc4
|
|
/* 02519FC4 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02519FC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02519FC8 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 02519FC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02519FCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 02519FD0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FD0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02519FD0 */ if (_t19) goto L_02519FD4; else goto L_02519FD8;
|
|
L_02519FD4: ; // 0x2519fd4
|
|
/* 02519FD4 */ Gambit_fn_028A545C(cpu);
|
|
L_02519FD8: ; // 0x2519fd8
|
|
/* 02519FD8 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02519FDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02519FE0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02519FE0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02519FE0 */ if (_t21) goto L_02519FE4; else goto L_02519FB8;
|
|
L_02519FE4: ; // 0x2519fe4
|
|
/* 02519FE4 */ /* nop */
|
|
/* 02519FE8 */ _t22 = cpu->r[1] + 0x00000060u;
|
|
/* 02519FE8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02519FEC */ _t23 = cpu->r[1] + 0x00000070u;
|
|
/* 02519FEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02519FF0 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 02519FF0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02519FF4 */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 02519FF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 02519FF8 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02519FF8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02519FF8 */ if (_t27) goto L_02519FFC; // else: addr-0 trap, fall-through
|
|
L_02519FFC: ; // 0x2519ffc
|
|
/* 02519FFC */ _t28 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02519FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0251A000 */ cpu->lr = cpu->r[0];
|
|
/* 0251A004 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A008 */ return;
|
|
L_0251A00C: ; // 0x251a00c
|
|
/* 0251A00C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A010 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A010 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0251A010 */ if (_t30) goto L_0251A120; else goto L_0251A014;
|
|
L_0251A014: ; // 0x251a014
|
|
/* 0251A014 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A018 */ _t31 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A018 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0251A01C */ cpu->r[25] = cpu->r[1] + 0x0000000Cu;
|
|
L_0251A020: ; // 0x251a020
|
|
/* 0251A020 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A020 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0251A024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A028 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A028 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0251A028 */ if (_t34) goto L_0251A03C; else goto L_0251A02C;
|
|
L_0251A02C: ; // 0x251a02c
|
|
/* 0251A02C */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A02C */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251A030 */ _t36 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251A034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A038 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A038 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0251A038 */ if (_t38) goto L_0251A074; else goto L_0251A03C;
|
|
L_0251A03C: ; // 0x251a03c
|
|
/* 0251A03C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251A040 */ cpu->r[4] = cpu->r[28];
|
|
/* 0251A044 */ Gambit_fn_02037B60(cpu);
|
|
/* 0251A048 */ _t39 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0251A048 */ cpu->r[6] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251A04C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A050 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251A054 */ _t40 = cpu->r[27] + 0x00000030u;
|
|
/* 0251A054 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A058 */ cpu->r[5] = cpu->r[5] + 0x00000B28u;
|
|
/* 0251A05C */ cpu->r[7] = 0x00000000u;
|
|
/* 0251A060 */ Gambit_fn_027B73AC(cpu);
|
|
/* 0251A064 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A064 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0251A068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A06C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A06C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0251A06C */ if (_t43) goto L_0251A114; else goto L_0251A070;
|
|
L_0251A070: ; // 0x251a070
|
|
/* 0251A070 */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A070 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_0251A074: ; // 0x251a074
|
|
/* 0251A074 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A074 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0251A078 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A07C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A07C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251A07C */ if (_t47) goto L_0251A080; else goto L_0251A114;
|
|
L_0251A080: ; // 0x251a080
|
|
/* 0251A080 */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A084 */ cpu->r[6] = cpu->r[31] - cpu->r[29];
|
|
/* 0251A088 */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A08C */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[6]) >> 32);
|
|
/* 0251A090 */ /* nop */
|
|
/* 0251A094 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A098 */ /* nop */
|
|
/* 0251A09C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A0A0 */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
/* 0251A0A4 */ Gambit_fn_02519DAC(cpu);
|
|
/* 0251A0A8 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A0A8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0251A0B0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A0B0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A0B0 */ if (_t50) goto L_0251A0E8; else goto L_0251A0B4;
|
|
L_0251A0B4: ; // 0x251a0b4
|
|
/* 0251A0B4 */ _t51 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0251A0B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A0B8 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A0B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A0BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0251A0C0 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A0C0 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A0C0 */ if (_t54) goto L_0251A0C4; else goto L_0251A0E8;
|
|
L_0251A0C4: ; // 0x251a0c4
|
|
/* 0251A0C4 */ cpu->r[3] = cpu->r[25];
|
|
/* 0251A0C8 */ cpu->r[4] = cpu->r[26] + 0x0000007Cu;
|
|
/* 0251A0CC */ Gambit_fn_02C69510(cpu);
|
|
/* 0251A0D0 */ _t55 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A0D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0251A0D4 */ _t56 = cpu->r[26] + 0x00000074u;
|
|
/* 0251A0D4 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0251A0D8 */ cpu->r[9] = cpu->r[9] | 0x00000008u;
|
|
/* 0251A0DC */ _t57 = cpu->r[26] + 0x00000070u;
|
|
/* 0251A0DC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 0251A0E0 */ _t58 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A0E0 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0251A0E4 */ _t59 = cpu->r[26] + 0x00000078u;
|
|
/* 0251A0E4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
L_0251A0E8: ; // 0x251a0e8
|
|
/* 0251A0E8 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A0E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0251A0EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A0F0 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A0F0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0251A0F0 */ if (_t62) goto L_0251A114; else goto L_0251A0F4;
|
|
L_0251A0F4: ; // 0x251a0f4
|
|
/* 0251A0F4 */ _t63 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A0F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0251A0F8 */ _t64 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0251A0FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A100 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A100 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0251A100 */ if (_t66) goto L_0251A104; else goto L_0251A114;
|
|
L_0251A104: ; // 0x251a104
|
|
/* 0251A104 */ _t67 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A104 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0251A108 */ _t68 = cpu->r[5] + 0x00000060u;
|
|
/* 0251A108 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[30]);
|
|
/* 0251A10C */ cpu->r[6] = cpu->r[6] | 0x00000002u;
|
|
/* 0251A110 */ _t69 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A110 */ rbrew_write32(cpu->mem, _t69, cpu->r[6]);
|
|
L_0251A114: ; // 0x251a114
|
|
/* 0251A114 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A118 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A11C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A11C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0251A11C */ if (_t71) goto L_0251A120; else goto L_0251A020;
|
|
L_0251A120: ; // 0x251a120
|
|
/* 0251A120 */ /* nop */
|
|
/* 0251A124 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A124 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0251A128 */ _t73 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A128 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0251A12C */ _t74 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A12C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0251A130 */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A130 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0251A134 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A134 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0251A134 */ if (_t77) goto L_0251A138; // else: addr-0 trap, fall-through
|
|
L_0251A138: ; // 0x251a138
|
|
/* 0251A138 */ _t78 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A138 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0251A13C */ cpu->lr = cpu->r[0];
|
|
/* 0251A140 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A144 */ return;
|
|
}
|
|
|
|
// fn_0251A148 @ 0x251a148
|
|
void Gambit_fn_0251A148(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_0251A148: ; // 0x251a148
|
|
/* 0251A148 */ _t0 = cpu->r[3] + 0x00000138u;
|
|
/* 0251A148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0251A14C */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A14C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0251A150 */ _t2 = cpu->r[3] + 0x0000013Cu;
|
|
/* 0251A150 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0251A154 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251A158 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 0251A158 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 0251A15C */ _t4 = cpu->r[3] + 0x00000140u;
|
|
/* 0251A15C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0251A160 */ _t5 = cpu->r[12] + 0x00000AF8u;
|
|
/* 0251A160 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0251A164 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 0251A168 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A168 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0251A16C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A16C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251A16C */ if (_t8) goto L_0251A184; else goto L_0251A170;
|
|
L_0251A170: ; // 0x251a170
|
|
/* 0251A170 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A170 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0251A170 */ if (_t10) goto L_0251A1A8; else goto L_0251A174;
|
|
L_0251A174: ; // 0x251a174
|
|
/* 0251A174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 0251A178 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A178 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A178 */ if (_t12) goto L_0251A1CC; else goto L_0251A17C;
|
|
L_0251A17C: ; // 0x251a17c
|
|
/* 0251A17C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A17C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0251A17C */ if (_t14) goto L_0251A1F0; else goto L_0251A180;
|
|
L_0251A180: ; // 0x251a180
|
|
/* 0251A180 */ return;
|
|
L_0251A184: ; // 0x251a184
|
|
/* 0251A184 */ _t15 = cpu->r[3] + 0x0000014Cu;
|
|
/* 0251A184 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0251A188 */ _t16 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A188 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0251A18C */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 0251A190 */ _t17 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A190 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 0251A194 */ _t18 = cpu->r[3] + 0x00000144u;
|
|
/* 0251A194 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251A198 */ _t19 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A198 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0251A19C */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 0251A1A0 */ _t20 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A1A0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 0251A1A4 */ return;
|
|
L_0251A1A8: ; // 0x251a1a8
|
|
/* 0251A1A8 */ _t21 = cpu->r[3] + 0x0000014Cu;
|
|
/* 0251A1A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0251A1AC */ _t22 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A1AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A1B0 */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 0251A1B4 */ _t23 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A1B4 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 0251A1B8 */ _t24 = cpu->r[3] + 0x00000144u;
|
|
/* 0251A1B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0251A1BC */ _t25 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A1BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0251A1C0 */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 0251A1C4 */ _t26 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A1C4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0251A1C8 */ return;
|
|
L_0251A1CC: ; // 0x251a1cc
|
|
/* 0251A1CC */ _t27 = cpu->r[3] + 0x0000014Cu;
|
|
/* 0251A1CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0251A1D0 */ _t28 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A1D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0251A1D4 */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 0251A1D8 */ _t29 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A1D8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 0251A1DC */ _t30 = cpu->r[3] + 0x00000144u;
|
|
/* 0251A1DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0251A1E0 */ _t31 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A1E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0251A1E4 */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 0251A1E8 */ _t32 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A1E8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 0251A1EC */ return;
|
|
L_0251A1F0: ; // 0x251a1f0
|
|
/* 0251A1F0 */ _t33 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A1F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0251A1F4 */ _t34 = cpu->r[3] + 0x0000014Cu;
|
|
/* 0251A1F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0251A1F8 */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 0251A1FC */ _t35 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A1FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0251A200 */ _t36 = cpu->r[4] + 0x00000008u;
|
|
/* 0251A200 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 0251A204 */ _t37 = cpu->r[3] + 0x00000144u;
|
|
/* 0251A204 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0251A208 */ cpu->f[12] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[12]));
|
|
/* 0251A20C */ _t38 = cpu->r[4] + 0x00000000u;
|
|
/* 0251A20C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0251A210 */ return;
|
|
}
|
|
|
|
// fn_0251A214 @ 0x251a214
|
|
void Gambit_fn_0251A214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90;
|
|
|
|
L_0251A214: ; // 0x251a214
|
|
/* 0251A214 */ cpu->r[0] = cpu->lr;
|
|
/* 0251A218 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0251A218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A218 */ cpu->r[1] = _t0;
|
|
/* 0251A21C */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0251A21C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A220 */ /* nop */
|
|
/* 0251A224 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A224 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0251A228 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A228 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A22C */ /* nop */
|
|
/* 0251A230 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0251A230 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0251A234 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251A234 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0251A238 */ cpu->f[30] = cpu->f[1];
|
|
/* 0251A23C */ /* nop */
|
|
/* 0251A240 */ cpu->r[28] = cpu->r[4];
|
|
/* 0251A244 */ cpu->r[27] = cpu->r[3];
|
|
/* 0251A248 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000002u);
|
|
/* 0251A24C */ cpu->r[31] = cpu->r[27] + 0x00000254u;
|
|
/* 0251A250 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A250 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251A250 */ if (_t7) goto L_0251A254; else goto L_0251A25C;
|
|
L_0251A254: ; // 0x251a254
|
|
/* 0251A254 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000030u);
|
|
/* 0251A258 */ cpu->r[31] = cpu->r[31] + cpu->r[7];
|
|
L_0251A25C: ; // 0x251a25c
|
|
/* 0251A25C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251A260 */ _t8 = cpu->r[12] + 0x00000B30u;
|
|
/* 0251A260 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0251A264 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 0251A268 */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A26C */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A270 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251A270 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0251A270 */ if (_t10) goto L_0251A2D0; else goto L_0251A274;
|
|
L_0251A274: ; // 0x251a274
|
|
/* 0251A274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A278 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A278 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A278 */ if (_t12) goto L_0251A404; else goto L_0251A27C;
|
|
L_0251A27C: ; // 0x251a27c
|
|
/* 0251A27C */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A27C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251A280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251A284 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A284 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251A284 */ if (_t15) goto L_0251A29C; else goto L_0251A288;
|
|
L_0251A288: ; // 0x251a288
|
|
/* 0251A288 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0251A288 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251A28C */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A28C */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251A290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0251A294 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A294 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251A294 */ if (_t19) goto L_0251A298; else goto L_0251A29C;
|
|
L_0251A298: ; // 0x251a298
|
|
/* 0251A298 */ Gambit_fn_028A545C(cpu);
|
|
L_0251A29C: ; // 0x251a29c
|
|
/* 0251A29C */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A2A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A2A4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2A4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A2A4 */ if (_t21) goto L_0251A2A8; else goto L_0251A27C;
|
|
L_0251A2A8: ; // 0x251a2a8
|
|
/* 0251A2A8 */ /* nop */
|
|
/* 0251A2AC */ _t22 = cpu->r[1] + 0x00000040u;
|
|
/* 0251A2AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A2B0 */ _t23 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A2B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0251A2B4 */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A2B4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0251A2B8 */ _t25 = cpu->r[1] + 0x00000048u;
|
|
/* 0251A2B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0251A2BC */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A2BC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0251A2BC */ if (_t27) goto L_0251A2C0; // else: addr-0 trap, fall-through
|
|
L_0251A2C0: ; // 0x251a2c0
|
|
/* 0251A2C0 */ _t28 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251A2C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0251A2C4 */ cpu->lr = cpu->r[0];
|
|
/* 0251A2C8 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0251A2CC */ return;
|
|
L_0251A2D0: ; // 0x251a2d0
|
|
/* 0251A2D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A2D4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2D4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0251A2D4 */ if (_t30) goto L_0251A404; else goto L_0251A2D8;
|
|
L_0251A2D8: ; // 0x251a2d8
|
|
/* 0251A2D8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251A2DC */ _t31 = cpu->r[11] + 0x00000AFCu;
|
|
/* 0251A2DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
L_0251A2E0: ; // 0x251a2e0
|
|
/* 0251A2E0 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A2E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0251A2E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A2E8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2E8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0251A2E8 */ if (_t34) goto L_0251A2FC; else goto L_0251A2EC;
|
|
L_0251A2EC: ; // 0x251a2ec
|
|
/* 0251A2EC */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A2EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251A2F0 */ _t36 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A2F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251A2F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A2F8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2F8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0251A2F8 */ if (_t38) goto L_0251A334; else goto L_0251A2FC;
|
|
L_0251A2FC: ; // 0x251a2fc
|
|
/* 0251A2FC */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0251A300 */ cpu->r[4] = cpu->r[28];
|
|
/* 0251A304 */ Gambit_fn_02037B60(cpu);
|
|
/* 0251A308 */ _t39 = cpu->r[1] + 0x00000017u;
|
|
/* 0251A308 */ cpu->r[6] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251A30C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A310 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251A314 */ _t40 = cpu->r[27] + 0x00000030u;
|
|
/* 0251A314 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A318 */ cpu->r[5] = cpu->r[5] + 0x00000B34u;
|
|
/* 0251A31C */ cpu->r[7] = 0x00000000u;
|
|
/* 0251A320 */ Gambit_fn_027B73AC(cpu);
|
|
/* 0251A324 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A324 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0251A328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A32C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A32C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0251A32C */ if (_t43) goto L_0251A3F8; else goto L_0251A330;
|
|
L_0251A330: ; // 0x251a330
|
|
/* 0251A330 */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A330 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_0251A334: ; // 0x251a334
|
|
/* 0251A334 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A334 */ cpu->r[4] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0251A338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0251A33C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A33C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251A33C */ if (_t47) goto L_0251A340; else goto L_0251A3F8;
|
|
L_0251A340: ; // 0x251a340
|
|
/* 0251A340 */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A344 */ cpu->r[6] = cpu->r[31] - cpu->r[29];
|
|
/* 0251A348 */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A34C */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[6]) >> 32);
|
|
/* 0251A350 */ /* nop */
|
|
/* 0251A354 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A358 */ /* nop */
|
|
/* 0251A35C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0251A360 */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
/* 0251A364 */ Gambit_fn_0251A148(cpu);
|
|
/* 0251A368 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251A370 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A370 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A370 */ if (_t50) goto L_0251A3CC; else goto L_0251A374;
|
|
L_0251A374: ; // 0x251a374
|
|
/* 0251A374 */ _t51 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0251A374 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A378 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A37C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 0251A380 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A380 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A380 */ if (_t54) goto L_0251A384; else goto L_0251A3CC;
|
|
L_0251A384: ; // 0x251a384
|
|
/* 0251A384 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A384 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[31]);
|
|
/* 0251A388 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A388 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0251A38C */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0251A38C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0251A390 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A390 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[31]);
|
|
/* 0251A394 */ _t59 = cpu->r[12] + 0x00000064u;
|
|
/* 0251A394 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 0251A398 */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251A398 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0251A39C */ _t61 = cpu->r[12] + 0x00000068u;
|
|
/* 0251A39C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 0251A3A0 */ _t62 = cpu->r[1] + 0x00000020u;
|
|
/* 0251A3A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0251A3A4 */ _t63 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0251A3A4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0251A3A8 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A3A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0251A3AC */ _t65 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0251A3AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0251A3B0 */ _t66 = cpu->r[12] + 0x00000070u;
|
|
/* 0251A3B0 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[8]);
|
|
/* 0251A3B4 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A3B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0251A3B8 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 0251A3BC */ _t68 = cpu->r[12] + 0x00000074u;
|
|
/* 0251A3BC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 0251A3C0 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A3C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0251A3C4 */ _t70 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0251A3C4 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 0251A3C8 */ _t71 = cpu->r[12] + 0x00000078u;
|
|
/* 0251A3C8 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[10]);
|
|
L_0251A3CC: ; // 0x251a3cc
|
|
/* 0251A3CC */ _t72 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A3CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251A3D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A3D4 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A3D4 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0251A3D4 */ if (_t74) goto L_0251A3F8; else goto L_0251A3D8;
|
|
L_0251A3D8: ; // 0x251a3d8
|
|
/* 0251A3D8 */ _t75 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A3D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0251A3DC */ _t76 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A3DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0251A3E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0251A3E4 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A3E4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0251A3E4 */ if (_t78) goto L_0251A3E8; else goto L_0251A3F8;
|
|
L_0251A3E8: ; // 0x251a3e8
|
|
/* 0251A3E8 */ _t79 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A3E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0251A3EC */ _t80 = cpu->r[5] + 0x00000060u;
|
|
/* 0251A3EC */ rbrew_write_f32(cpu->mem, _t80, cpu->f[30]);
|
|
/* 0251A3F0 */ cpu->r[6] = cpu->r[6] | 0x00000002u;
|
|
/* 0251A3F4 */ _t81 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A3F4 */ rbrew_write32(cpu->mem, _t81, cpu->r[6]);
|
|
L_0251A3F8: ; // 0x251a3f8
|
|
/* 0251A3F8 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A3FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A400 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A400 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0251A400 */ if (_t83) goto L_0251A404; else goto L_0251A2E0;
|
|
L_0251A404: ; // 0x251a404
|
|
/* 0251A404 */ /* nop */
|
|
/* 0251A408 */ _t84 = cpu->r[1] + 0x00000040u;
|
|
/* 0251A408 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0251A40C */ _t85 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A40C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0251A410 */ _t86 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A410 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 0251A414 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 0251A414 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 0251A418 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A418 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0251A418 */ if (_t89) goto L_0251A41C; // else: addr-0 trap, fall-through
|
|
L_0251A41C: ; // 0x251a41c
|
|
/* 0251A41C */ _t90 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251A41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0251A420 */ cpu->lr = cpu->r[0];
|
|
/* 0251A424 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0251A428 */ return;
|
|
}
|
|
|
|
// fn_0251A218 @ 0x251a218
|
|
void Gambit_fn_0251A218(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90;
|
|
|
|
L_0251A218: ; // 0x251a218
|
|
/* 0251A218 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0251A218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A218 */ cpu->r[1] = _t0;
|
|
/* 0251A21C */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0251A21C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A220 */ /* nop */
|
|
/* 0251A224 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A224 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0251A228 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A228 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A22C */ /* nop */
|
|
/* 0251A230 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0251A230 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0251A234 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251A234 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0251A238 */ cpu->f[30] = cpu->f[1];
|
|
/* 0251A23C */ /* nop */
|
|
/* 0251A240 */ cpu->r[28] = cpu->r[4];
|
|
/* 0251A244 */ cpu->r[27] = cpu->r[3];
|
|
/* 0251A248 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000002u);
|
|
/* 0251A24C */ cpu->r[31] = cpu->r[27] + 0x00000254u;
|
|
/* 0251A250 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A250 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251A250 */ if (_t7) goto L_0251A254; else goto L_0251A25C;
|
|
L_0251A254: ; // 0x251a254
|
|
/* 0251A254 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000030u);
|
|
/* 0251A258 */ cpu->r[31] = cpu->r[31] + cpu->r[7];
|
|
L_0251A25C: ; // 0x251a25c
|
|
/* 0251A25C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251A260 */ _t8 = cpu->r[12] + 0x00000B30u;
|
|
/* 0251A260 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0251A264 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 0251A268 */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A26C */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A270 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251A270 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0251A270 */ if (_t10) goto L_0251A2D0; else goto L_0251A274;
|
|
L_0251A274: ; // 0x251a274
|
|
/* 0251A274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A278 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A278 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A278 */ if (_t12) goto L_0251A404; else goto L_0251A27C;
|
|
L_0251A27C: ; // 0x251a27c
|
|
/* 0251A27C */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A27C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251A280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251A284 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A284 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251A284 */ if (_t15) goto L_0251A29C; else goto L_0251A288;
|
|
L_0251A288: ; // 0x251a288
|
|
/* 0251A288 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0251A288 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251A28C */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A28C */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251A290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0251A294 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A294 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251A294 */ if (_t19) goto L_0251A298; else goto L_0251A29C;
|
|
L_0251A298: ; // 0x251a298
|
|
/* 0251A298 */ Gambit_fn_028A545C(cpu);
|
|
L_0251A29C: ; // 0x251a29c
|
|
/* 0251A29C */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A2A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A2A4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2A4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A2A4 */ if (_t21) goto L_0251A2A8; else goto L_0251A27C;
|
|
L_0251A2A8: ; // 0x251a2a8
|
|
/* 0251A2A8 */ /* nop */
|
|
/* 0251A2AC */ _t22 = cpu->r[1] + 0x00000040u;
|
|
/* 0251A2AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A2B0 */ _t23 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A2B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0251A2B4 */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A2B4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0251A2B8 */ _t25 = cpu->r[1] + 0x00000048u;
|
|
/* 0251A2B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0251A2BC */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A2BC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0251A2BC */ if (_t27) goto L_0251A2C0; // else: addr-0 trap, fall-through
|
|
L_0251A2C0: ; // 0x251a2c0
|
|
/* 0251A2C0 */ _t28 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251A2C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0251A2C4 */ cpu->lr = cpu->r[0];
|
|
/* 0251A2C8 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0251A2CC */ return;
|
|
L_0251A2D0: ; // 0x251a2d0
|
|
/* 0251A2D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A2D4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2D4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0251A2D4 */ if (_t30) goto L_0251A404; else goto L_0251A2D8;
|
|
L_0251A2D8: ; // 0x251a2d8
|
|
/* 0251A2D8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0251A2DC */ _t31 = cpu->r[11] + 0x00000AFCu;
|
|
/* 0251A2DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
L_0251A2E0: ; // 0x251a2e0
|
|
/* 0251A2E0 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A2E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0251A2E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A2E8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2E8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0251A2E8 */ if (_t34) goto L_0251A2FC; else goto L_0251A2EC;
|
|
L_0251A2EC: ; // 0x251a2ec
|
|
/* 0251A2EC */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A2EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251A2F0 */ _t36 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A2F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251A2F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A2F8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A2F8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0251A2F8 */ if (_t38) goto L_0251A334; else goto L_0251A2FC;
|
|
L_0251A2FC: ; // 0x251a2fc
|
|
/* 0251A2FC */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0251A300 */ cpu->r[4] = cpu->r[28];
|
|
/* 0251A304 */ Gambit_fn_02037B60(cpu);
|
|
/* 0251A308 */ _t39 = cpu->r[1] + 0x00000017u;
|
|
/* 0251A308 */ cpu->r[6] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251A30C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A310 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251A314 */ _t40 = cpu->r[27] + 0x00000030u;
|
|
/* 0251A314 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A318 */ cpu->r[5] = cpu->r[5] + 0x00000B34u;
|
|
/* 0251A31C */ cpu->r[7] = 0x00000000u;
|
|
/* 0251A320 */ Gambit_fn_027B73AC(cpu);
|
|
/* 0251A324 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A324 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0251A328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A32C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A32C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0251A32C */ if (_t43) goto L_0251A3F8; else goto L_0251A330;
|
|
L_0251A330: ; // 0x251a330
|
|
/* 0251A330 */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A330 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_0251A334: ; // 0x251a334
|
|
/* 0251A334 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A334 */ cpu->r[4] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0251A338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0251A33C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A33C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251A33C */ if (_t47) goto L_0251A340; else goto L_0251A3F8;
|
|
L_0251A340: ; // 0x251a340
|
|
/* 0251A340 */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A344 */ cpu->r[6] = cpu->r[31] - cpu->r[29];
|
|
/* 0251A348 */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A34C */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[6]) >> 32);
|
|
/* 0251A350 */ /* nop */
|
|
/* 0251A354 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A358 */ /* nop */
|
|
/* 0251A35C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0251A360 */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
/* 0251A364 */ Gambit_fn_0251A148(cpu);
|
|
/* 0251A368 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0251A370 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A370 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A370 */ if (_t50) goto L_0251A3CC; else goto L_0251A374;
|
|
L_0251A374: ; // 0x251a374
|
|
/* 0251A374 */ _t51 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0251A374 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A378 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A37C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 0251A380 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A380 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A380 */ if (_t54) goto L_0251A384; else goto L_0251A3CC;
|
|
L_0251A384: ; // 0x251a384
|
|
/* 0251A384 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A384 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[31]);
|
|
/* 0251A388 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A388 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0251A38C */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0251A38C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0251A390 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A390 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[31]);
|
|
/* 0251A394 */ _t59 = cpu->r[12] + 0x00000064u;
|
|
/* 0251A394 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 0251A398 */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251A398 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0251A39C */ _t61 = cpu->r[12] + 0x00000068u;
|
|
/* 0251A39C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 0251A3A0 */ _t62 = cpu->r[1] + 0x00000020u;
|
|
/* 0251A3A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0251A3A4 */ _t63 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0251A3A4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0251A3A8 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A3A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0251A3AC */ _t65 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0251A3AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0251A3B0 */ _t66 = cpu->r[12] + 0x00000070u;
|
|
/* 0251A3B0 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[8]);
|
|
/* 0251A3B4 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A3B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0251A3B8 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 0251A3BC */ _t68 = cpu->r[12] + 0x00000074u;
|
|
/* 0251A3BC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 0251A3C0 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A3C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0251A3C4 */ _t70 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0251A3C4 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 0251A3C8 */ _t71 = cpu->r[12] + 0x00000078u;
|
|
/* 0251A3C8 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[10]);
|
|
L_0251A3CC: ; // 0x251a3cc
|
|
/* 0251A3CC */ _t72 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A3CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251A3D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A3D4 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A3D4 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0251A3D4 */ if (_t74) goto L_0251A3F8; else goto L_0251A3D8;
|
|
L_0251A3D8: ; // 0x251a3d8
|
|
/* 0251A3D8 */ _t75 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A3D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0251A3DC */ _t76 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A3DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0251A3E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0251A3E4 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A3E4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0251A3E4 */ if (_t78) goto L_0251A3E8; else goto L_0251A3F8;
|
|
L_0251A3E8: ; // 0x251a3e8
|
|
/* 0251A3E8 */ _t79 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A3E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0251A3EC */ _t80 = cpu->r[5] + 0x00000060u;
|
|
/* 0251A3EC */ rbrew_write_f32(cpu->mem, _t80, cpu->f[30]);
|
|
/* 0251A3F0 */ cpu->r[6] = cpu->r[6] | 0x00000002u;
|
|
/* 0251A3F4 */ _t81 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A3F4 */ rbrew_write32(cpu->mem, _t81, cpu->r[6]);
|
|
L_0251A3F8: ; // 0x251a3f8
|
|
/* 0251A3F8 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A3FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A400 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A400 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0251A400 */ if (_t83) goto L_0251A404; else goto L_0251A2E0;
|
|
L_0251A404: ; // 0x251a404
|
|
/* 0251A404 */ /* nop */
|
|
/* 0251A408 */ _t84 = cpu->r[1] + 0x00000040u;
|
|
/* 0251A408 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0251A40C */ _t85 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A40C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0251A410 */ _t86 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A410 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 0251A414 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 0251A414 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 0251A418 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A418 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0251A418 */ if (_t89) goto L_0251A41C; // else: addr-0 trap, fall-through
|
|
L_0251A41C: ; // 0x251a41c
|
|
/* 0251A41C */ _t90 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0251A41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0251A420 */ cpu->lr = cpu->r[0];
|
|
/* 0251A424 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0251A428 */ return;
|
|
}
|
|
|
|
// fn_0251A42C @ 0x251a42c
|
|
void Gambit_fn_0251A42C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_0251A42C: ; // 0x251a42c
|
|
/* 0251A42C */ cpu->r[0] = cpu->lr;
|
|
/* 0251A430 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0251A430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A430 */ cpu->r[1] = _t0;
|
|
/* 0251A434 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A434 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A438 */ /* nop */
|
|
/* 0251A43C */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A43C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0251A440 */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A440 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A444 */ /* nop */
|
|
/* 0251A448 */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A448 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0251A44C */ _t5 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A44C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0251A450 */ cpu->f[30] = cpu->f[1];
|
|
/* 0251A454 */ /* nop */
|
|
/* 0251A458 */ cpu->r[28] = cpu->r[4];
|
|
/* 0251A45C */ cpu->r[27] = cpu->r[3];
|
|
/* 0251A460 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000002u);
|
|
/* 0251A464 */ cpu->r[31] = cpu->r[27] + 0x000001F4u;
|
|
/* 0251A468 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A468 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251A468 */ if (_t7) goto L_0251A46C; else goto L_0251A474;
|
|
L_0251A46C: ; // 0x251a46c
|
|
/* 0251A46C */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000030u);
|
|
/* 0251A470 */ cpu->r[31] = cpu->r[31] + cpu->r[7];
|
|
L_0251A474: ; // 0x251a474
|
|
/* 0251A474 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251A478 */ _t8 = cpu->r[12] + 0x00000B30u;
|
|
/* 0251A478 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0251A47C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 0251A480 */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A484 */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A488 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251A488 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0251A488 */ if (_t10) goto L_0251A4E8; else goto L_0251A48C;
|
|
L_0251A48C: ; // 0x251a48c
|
|
/* 0251A48C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A490 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A490 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A490 */ if (_t12) goto L_0251A5FC; else goto L_0251A494;
|
|
L_0251A494: ; // 0x251a494
|
|
/* 0251A494 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251A498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251A49C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A49C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251A49C */ if (_t15) goto L_0251A4B4; else goto L_0251A4A0;
|
|
L_0251A4A0: ; // 0x251a4a0
|
|
/* 0251A4A0 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0251A4A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251A4A4 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A4A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251A4A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0251A4AC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A4AC */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251A4AC */ if (_t19) goto L_0251A4B0; else goto L_0251A4B4;
|
|
L_0251A4B0: ; // 0x251a4b0
|
|
/* 0251A4B0 */ Gambit_fn_028A545C(cpu);
|
|
L_0251A4B4: ; // 0x251a4b4
|
|
/* 0251A4B4 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A4BC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A4BC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A4BC */ if (_t21) goto L_0251A4C0; else goto L_0251A494;
|
|
L_0251A4C0: ; // 0x251a4c0
|
|
/* 0251A4C0 */ /* nop */
|
|
/* 0251A4C4 */ _t22 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A4C4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A4C8 */ _t23 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A4C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0251A4CC */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A4CC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0251A4D0 */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A4D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0251A4D4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A4D4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0251A4D4 */ if (_t27) goto L_0251A4D8; // else: addr-0 trap, fall-through
|
|
L_0251A4D8: ; // 0x251a4d8
|
|
/* 0251A4D8 */ _t28 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0251A4DC */ cpu->lr = cpu->r[0];
|
|
/* 0251A4E0 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A4E4 */ return;
|
|
L_0251A4E8: ; // 0x251a4e8
|
|
/* 0251A4E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A4EC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A4EC */ _t30 = _t29 & 0x00000001u;
|
|
/* 0251A4EC */ if (_t30) goto L_0251A5FC; else goto L_0251A4F0;
|
|
L_0251A4F0: ; // 0x251a4f0
|
|
/* 0251A4F0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A4F4 */ _t31 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A4F4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0251A4F8 */ cpu->r[25] = cpu->r[1] + 0x0000000Cu;
|
|
L_0251A4FC: ; // 0x251a4fc
|
|
/* 0251A4FC */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A4FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0251A500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A504 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A504 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0251A504 */ if (_t34) goto L_0251A518; else goto L_0251A508;
|
|
L_0251A508: ; // 0x251a508
|
|
/* 0251A508 */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A508 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251A50C */ _t36 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251A510 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A514 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A514 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0251A514 */ if (_t38) goto L_0251A550; else goto L_0251A518;
|
|
L_0251A518: ; // 0x251a518
|
|
/* 0251A518 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251A51C */ cpu->r[4] = cpu->r[28];
|
|
/* 0251A520 */ Gambit_fn_02037B60(cpu);
|
|
/* 0251A524 */ _t39 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0251A524 */ cpu->r[6] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251A528 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A52C */ cpu->r[4] = cpu->r[31];
|
|
/* 0251A530 */ _t40 = cpu->r[27] + 0x00000030u;
|
|
/* 0251A530 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A534 */ cpu->r[5] = cpu->r[5] + 0x00000B3Cu;
|
|
/* 0251A538 */ cpu->r[7] = 0x00000000u;
|
|
/* 0251A53C */ Gambit_fn_027B73AC(cpu);
|
|
/* 0251A540 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A540 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0251A544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A548 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A548 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0251A548 */ if (_t43) goto L_0251A5F0; else goto L_0251A54C;
|
|
L_0251A54C: ; // 0x251a54c
|
|
/* 0251A54C */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A54C */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_0251A550: ; // 0x251a550
|
|
/* 0251A550 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0251A554 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A558 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A558 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251A558 */ if (_t47) goto L_0251A55C; else goto L_0251A5F0;
|
|
L_0251A55C: ; // 0x251a55c
|
|
/* 0251A55C */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A560 */ cpu->r[6] = cpu->r[31] - cpu->r[29];
|
|
/* 0251A564 */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A568 */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[6]) >> 32);
|
|
/* 0251A56C */ /* nop */
|
|
/* 0251A570 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A574 */ /* nop */
|
|
/* 0251A578 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A57C */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
/* 0251A580 */ Gambit_fn_02519DAC(cpu);
|
|
/* 0251A584 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A584 */ cpu->r[26] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0251A58C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A58C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A58C */ if (_t50) goto L_0251A5C4; else goto L_0251A590;
|
|
L_0251A590: ; // 0x251a590
|
|
/* 0251A590 */ _t51 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0251A590 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A594 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0251A59C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A59C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A59C */ if (_t54) goto L_0251A5A0; else goto L_0251A5C4;
|
|
L_0251A5A0: ; // 0x251a5a0
|
|
/* 0251A5A0 */ cpu->r[3] = cpu->r[25];
|
|
/* 0251A5A4 */ cpu->r[4] = cpu->r[26] + 0x0000007Cu;
|
|
/* 0251A5A8 */ Gambit_fn_02C69510(cpu);
|
|
/* 0251A5AC */ _t55 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A5AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0251A5B0 */ _t56 = cpu->r[26] + 0x00000074u;
|
|
/* 0251A5B0 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0251A5B4 */ cpu->r[9] = cpu->r[9] | 0x00000008u;
|
|
/* 0251A5B8 */ _t57 = cpu->r[26] + 0x00000070u;
|
|
/* 0251A5B8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 0251A5BC */ _t58 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A5BC */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0251A5C0 */ _t59 = cpu->r[26] + 0x00000078u;
|
|
/* 0251A5C0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
L_0251A5C4: ; // 0x251a5c4
|
|
/* 0251A5C4 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A5C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0251A5C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A5CC */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A5CC */ _t62 = _t61 & 0x00000001u;
|
|
/* 0251A5CC */ if (_t62) goto L_0251A5F0; else goto L_0251A5D0;
|
|
L_0251A5D0: ; // 0x251a5d0
|
|
/* 0251A5D0 */ _t63 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A5D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0251A5D4 */ _t64 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0251A5D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A5DC */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A5DC */ _t66 = _t65 & 0x00000001u;
|
|
/* 0251A5DC */ if (_t66) goto L_0251A5E0; else goto L_0251A5F0;
|
|
L_0251A5E0: ; // 0x251a5e0
|
|
/* 0251A5E0 */ _t67 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A5E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0251A5E4 */ _t68 = cpu->r[5] + 0x00000060u;
|
|
/* 0251A5E4 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[30]);
|
|
/* 0251A5E8 */ cpu->r[6] = cpu->r[6] | 0x00000002u;
|
|
/* 0251A5EC */ _t69 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A5EC */ rbrew_write32(cpu->mem, _t69, cpu->r[6]);
|
|
L_0251A5F0: ; // 0x251a5f0
|
|
/* 0251A5F0 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A5F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A5F8 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A5F8 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0251A5F8 */ if (_t71) goto L_0251A5FC; else goto L_0251A4FC;
|
|
L_0251A5FC: ; // 0x251a5fc
|
|
/* 0251A5FC */ /* nop */
|
|
/* 0251A600 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A600 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0251A604 */ _t73 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A604 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0251A608 */ _t74 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A608 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0251A60C */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A60C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0251A610 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A610 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0251A610 */ if (_t77) goto L_0251A614; // else: addr-0 trap, fall-through
|
|
L_0251A614: ; // 0x251a614
|
|
/* 0251A614 */ _t78 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0251A618 */ cpu->lr = cpu->r[0];
|
|
/* 0251A61C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A620 */ return;
|
|
}
|
|
|
|
// fn_0251A430 @ 0x251a430
|
|
void Gambit_fn_0251A430(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
|
|
L_0251A430: ; // 0x251a430
|
|
/* 0251A430 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0251A430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A430 */ cpu->r[1] = _t0;
|
|
/* 0251A434 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A434 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A438 */ /* nop */
|
|
/* 0251A43C */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A43C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0251A440 */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A440 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A444 */ /* nop */
|
|
/* 0251A448 */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A448 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0251A44C */ _t5 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A44C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0251A450 */ cpu->f[30] = cpu->f[1];
|
|
/* 0251A454 */ /* nop */
|
|
/* 0251A458 */ cpu->r[28] = cpu->r[4];
|
|
/* 0251A45C */ cpu->r[27] = cpu->r[3];
|
|
/* 0251A460 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000002u);
|
|
/* 0251A464 */ cpu->r[31] = cpu->r[27] + 0x000001F4u;
|
|
/* 0251A468 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A468 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0251A468 */ if (_t7) goto L_0251A46C; else goto L_0251A474;
|
|
L_0251A46C: ; // 0x251a46c
|
|
/* 0251A46C */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000030u);
|
|
/* 0251A470 */ cpu->r[31] = cpu->r[31] + cpu->r[7];
|
|
L_0251A474: ; // 0x251a474
|
|
/* 0251A474 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251A478 */ _t8 = cpu->r[12] + 0x00000B30u;
|
|
/* 0251A478 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0251A47C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 0251A480 */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A484 */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A488 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0251A488 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0251A488 */ if (_t10) goto L_0251A4E8; else goto L_0251A48C;
|
|
L_0251A48C: ; // 0x251a48c
|
|
/* 0251A48C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A490 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A490 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A490 */ if (_t12) goto L_0251A5FC; else goto L_0251A494;
|
|
L_0251A494: ; // 0x251a494
|
|
/* 0251A494 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251A498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251A49C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A49C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251A49C */ if (_t15) goto L_0251A4B4; else goto L_0251A4A0;
|
|
L_0251A4A0: ; // 0x251a4a0
|
|
/* 0251A4A0 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0251A4A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251A4A4 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A4A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251A4A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0251A4AC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A4AC */ _t19 = _t18 & 0x00000001u;
|
|
/* 0251A4AC */ if (_t19) goto L_0251A4B0; else goto L_0251A4B4;
|
|
L_0251A4B0: ; // 0x251a4b0
|
|
/* 0251A4B0 */ Gambit_fn_028A545C(cpu);
|
|
L_0251A4B4: ; // 0x251a4b4
|
|
/* 0251A4B4 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A4BC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A4BC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A4BC */ if (_t21) goto L_0251A4C0; else goto L_0251A494;
|
|
L_0251A4C0: ; // 0x251a4c0
|
|
/* 0251A4C0 */ /* nop */
|
|
/* 0251A4C4 */ _t22 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A4C4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A4C8 */ _t23 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A4C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0251A4CC */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A4CC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0251A4D0 */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A4D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0251A4D4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A4D4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0251A4D4 */ if (_t27) goto L_0251A4D8; // else: addr-0 trap, fall-through
|
|
L_0251A4D8: ; // 0x251a4d8
|
|
/* 0251A4D8 */ _t28 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0251A4DC */ cpu->lr = cpu->r[0];
|
|
/* 0251A4E0 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A4E4 */ return;
|
|
L_0251A4E8: ; // 0x251a4e8
|
|
/* 0251A4E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A4EC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A4EC */ _t30 = _t29 & 0x00000001u;
|
|
/* 0251A4EC */ if (_t30) goto L_0251A5FC; else goto L_0251A4F0;
|
|
L_0251A4F0: ; // 0x251a4f0
|
|
/* 0251A4F0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A4F4 */ _t31 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A4F4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0251A4F8 */ cpu->r[25] = cpu->r[1] + 0x0000000Cu;
|
|
L_0251A4FC: ; // 0x251a4fc
|
|
/* 0251A4FC */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A4FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0251A500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A504 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A504 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0251A504 */ if (_t34) goto L_0251A518; else goto L_0251A508;
|
|
L_0251A508: ; // 0x251a508
|
|
/* 0251A508 */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A508 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0251A50C */ _t36 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0251A510 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A514 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A514 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0251A514 */ if (_t38) goto L_0251A550; else goto L_0251A518;
|
|
L_0251A518: ; // 0x251a518
|
|
/* 0251A518 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0251A51C */ cpu->r[4] = cpu->r[28];
|
|
/* 0251A520 */ Gambit_fn_02037B60(cpu);
|
|
/* 0251A524 */ _t39 = cpu->r[1] + 0x0000000Bu;
|
|
/* 0251A524 */ cpu->r[6] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0251A528 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A52C */ cpu->r[4] = cpu->r[31];
|
|
/* 0251A530 */ _t40 = cpu->r[27] + 0x00000030u;
|
|
/* 0251A530 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A534 */ cpu->r[5] = cpu->r[5] + 0x00000B3Cu;
|
|
/* 0251A538 */ cpu->r[7] = 0x00000000u;
|
|
/* 0251A53C */ Gambit_fn_027B73AC(cpu);
|
|
/* 0251A540 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A540 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0251A544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0251A548 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A548 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0251A548 */ if (_t43) goto L_0251A5F0; else goto L_0251A54C;
|
|
L_0251A54C: ; // 0x251a54c
|
|
/* 0251A54C */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A54C */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_0251A550: ; // 0x251a550
|
|
/* 0251A550 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0251A550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0251A554 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0251A558 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A558 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0251A558 */ if (_t47) goto L_0251A55C; else goto L_0251A5F0;
|
|
L_0251A55C: ; // 0x251a55c
|
|
/* 0251A55C */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A560 */ cpu->r[6] = cpu->r[31] - cpu->r[29];
|
|
/* 0251A564 */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A568 */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[6]) >> 32);
|
|
/* 0251A56C */ /* nop */
|
|
/* 0251A570 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A574 */ /* nop */
|
|
/* 0251A578 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A57C */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
/* 0251A580 */ Gambit_fn_02519DAC(cpu);
|
|
/* 0251A584 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A584 */ cpu->r[26] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0251A58C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A58C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A58C */ if (_t50) goto L_0251A5C4; else goto L_0251A590;
|
|
L_0251A590: ; // 0x251a590
|
|
/* 0251A590 */ _t51 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0251A590 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A594 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0251A59C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A59C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A59C */ if (_t54) goto L_0251A5A0; else goto L_0251A5C4;
|
|
L_0251A5A0: ; // 0x251a5a0
|
|
/* 0251A5A0 */ cpu->r[3] = cpu->r[25];
|
|
/* 0251A5A4 */ cpu->r[4] = cpu->r[26] + 0x0000007Cu;
|
|
/* 0251A5A8 */ Gambit_fn_02C69510(cpu);
|
|
/* 0251A5AC */ _t55 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A5AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0251A5B0 */ _t56 = cpu->r[26] + 0x00000074u;
|
|
/* 0251A5B0 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0251A5B4 */ cpu->r[9] = cpu->r[9] | 0x00000008u;
|
|
/* 0251A5B8 */ _t57 = cpu->r[26] + 0x00000070u;
|
|
/* 0251A5B8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 0251A5BC */ _t58 = cpu->r[26] + 0x0000012Cu;
|
|
/* 0251A5BC */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0251A5C0 */ _t59 = cpu->r[26] + 0x00000078u;
|
|
/* 0251A5C0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
L_0251A5C4: ; // 0x251a5c4
|
|
/* 0251A5C4 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 0251A5C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0251A5C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A5CC */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A5CC */ _t62 = _t61 & 0x00000001u;
|
|
/* 0251A5CC */ if (_t62) goto L_0251A5F0; else goto L_0251A5D0;
|
|
L_0251A5D0: ; // 0x251a5d0
|
|
/* 0251A5D0 */ _t63 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A5D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0251A5D4 */ _t64 = cpu->r[31] + 0x00000004u;
|
|
/* 0251A5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0251A5D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A5DC */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A5DC */ _t66 = _t65 & 0x00000001u;
|
|
/* 0251A5DC */ if (_t66) goto L_0251A5E0; else goto L_0251A5F0;
|
|
L_0251A5E0: ; // 0x251a5e0
|
|
/* 0251A5E0 */ _t67 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A5E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0251A5E4 */ _t68 = cpu->r[5] + 0x00000060u;
|
|
/* 0251A5E4 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[30]);
|
|
/* 0251A5E8 */ cpu->r[6] = cpu->r[6] | 0x00000002u;
|
|
/* 0251A5EC */ _t69 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A5EC */ rbrew_write32(cpu->mem, _t69, cpu->r[6]);
|
|
L_0251A5F0: ; // 0x251a5f0
|
|
/* 0251A5F0 */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0251A5F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0251A5F8 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A5F8 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0251A5F8 */ if (_t71) goto L_0251A5FC; else goto L_0251A4FC;
|
|
L_0251A5FC: ; // 0x251a5fc
|
|
/* 0251A5FC */ /* nop */
|
|
/* 0251A600 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 0251A600 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0251A604 */ _t73 = cpu->r[1] + 0x00000070u;
|
|
/* 0251A604 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0251A608 */ _t74 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A608 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0251A60C */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 0251A60C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0251A610 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A610 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0251A610 */ if (_t77) goto L_0251A614; // else: addr-0 trap, fall-through
|
|
L_0251A614: ; // 0x251a614
|
|
/* 0251A614 */ _t78 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0251A614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0251A618 */ cpu->lr = cpu->r[0];
|
|
/* 0251A61C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0251A620 */ return;
|
|
}
|
|
|
|
// fn_0251A624 @ 0x251a624
|
|
void Gambit_fn_0251A624(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_0251A624: ; // 0x251a624
|
|
/* 0251A624 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0251A624 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A624 */ cpu->r[1] = _t0;
|
|
/* 0251A628 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A628 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A62C */ cpu->r[0] = cpu->lr;
|
|
/* 0251A630 */ /* nop */
|
|
/* 0251A634 */ cpu->r[26] = cpu->r[3];
|
|
/* 0251A638 */ cpu->r[31] = cpu->r[26] + 0x000001C4u;
|
|
/* 0251A63C */ /* nop */
|
|
/* 0251A640 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 0251A640 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0251A644 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A644 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A648 */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A64C */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A650 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0251A654 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A654 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0251A654 */ if (_t5) goto L_0251A728; else goto L_0251A658;
|
|
L_0251A658: ; // 0x251a658
|
|
/* 0251A658 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0251A65C */ _t6 = cpu->r[10] + 0x00000AFCu;
|
|
/* 0251A65C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0251A660 */ cpu->r[27] = cpu->r[1] + 0x00000008u;
|
|
L_0251A664: ; // 0x251a664
|
|
/* 0251A664 */ _t7 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A664 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0251A668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0251A66C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A66C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0251A66C */ if (_t9) goto L_0251A680; else goto L_0251A670;
|
|
L_0251A670: ; // 0x251a670
|
|
/* 0251A670 */ _t10 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A670 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251A674 */ _t11 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0251A674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0251A678 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0251A67C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A67C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251A67C */ if (_t13) goto L_0251A6A8; else goto L_0251A680;
|
|
L_0251A680: ; // 0x251a680
|
|
/* 0251A680 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A684 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 0251A684 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251A688 */ cpu->r[4] = cpu->r[29];
|
|
/* 0251A68C */ cpu->r[5] = cpu->r[5] + 0x00000B48u;
|
|
/* 0251A690 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A694 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A698 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0251A69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0251A6A0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A6A0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0251A6A0 */ if (_t17) goto L_0251A71C; else goto L_0251A6A4;
|
|
L_0251A6A4: ; // 0x251a6a4
|
|
/* 0251A6A4 */ _t18 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A6A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
L_0251A6A8: ; // 0x251a6a8
|
|
/* 0251A6A8 */ _t19 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0251A6A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251A6AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 0251A6B0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A6B0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A6B0 */ if (_t21) goto L_0251A6B4; else goto L_0251A71C;
|
|
L_0251A6B4: ; // 0x251a6b4
|
|
/* 0251A6B4 */ cpu->r[0] = 0x2AAA0000u;
|
|
/* 0251A6B8 */ cpu->r[11] = cpu->r[29] - cpu->r[31];
|
|
/* 0251A6BC */ cpu->r[0] = cpu->r[0] | 0x0000AAABu;
|
|
/* 0251A6C0 */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[11]) >> 32);
|
|
/* 0251A6C4 */ /* nop */
|
|
/* 0251A6C8 */ cpu->r[3] = cpu->r[26];
|
|
/* 0251A6CC */ /* nop */
|
|
/* 0251A6D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0251A6D4 */ cpu->r[5] = cpu->r[5] - cpu->r[12];
|
|
/* 0251A6D8 */ Gambit_fn_02519DAC(cpu);
|
|
/* 0251A6DC */ _t22 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A6DC */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0251A6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0251A6E4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A6E4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0251A6E4 */ if (_t24) goto L_0251A71C; else goto L_0251A6E8;
|
|
L_0251A6E8: ; // 0x251a6e8
|
|
/* 0251A6E8 */ _t25 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0251A6E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0251A6EC */ _t26 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A6EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0251A6F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A6F4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A6F4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0251A6F4 */ if (_t28) goto L_0251A6F8; else goto L_0251A71C;
|
|
L_0251A6F8: ; // 0x251a6f8
|
|
/* 0251A6F8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0251A6FC */ cpu->r[4] = cpu->r[28] + 0x0000007Cu;
|
|
/* 0251A700 */ Gambit_fn_02C69510(cpu);
|
|
/* 0251A704 */ _t29 = cpu->r[28] + 0x0000012Cu;
|
|
/* 0251A704 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0251A708 */ _t30 = cpu->r[28] + 0x00000074u;
|
|
/* 0251A708 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 0251A70C */ cpu->r[6] = cpu->r[6] | 0x00000008u;
|
|
/* 0251A710 */ _t31 = cpu->r[28] + 0x00000070u;
|
|
/* 0251A710 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 0251A714 */ _t32 = cpu->r[28] + 0x0000012Cu;
|
|
/* 0251A714 */ rbrew_write32(cpu->mem, _t32, cpu->r[6]);
|
|
/* 0251A718 */ _t33 = cpu->r[28] + 0x00000078u;
|
|
/* 0251A718 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
L_0251A71C: ; // 0x251a71c
|
|
/* 0251A71C */ cpu->r[29] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0251A720 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0251A724 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A724 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0251A724 */ if (_t35) goto L_0251A728; else goto L_0251A664;
|
|
L_0251A728: ; // 0x251a728
|
|
/* 0251A728 */ /* nop */
|
|
/* 0251A72C */ _t36 = cpu->r[1] + 0x00000058u;
|
|
/* 0251A72C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0251A730 */ _t37 = cpu->r[1] + 0x00000050u;
|
|
/* 0251A730 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0251A734 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A734 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0251A734 */ if (_t39) goto L_0251A738; // else: addr-0 trap, fall-through
|
|
L_0251A738: ; // 0x251a738
|
|
/* 0251A738 */ _t40 = cpu->r[1] + 0x00000064u;
|
|
/* 0251A738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0251A73C */ cpu->lr = cpu->r[0];
|
|
/* 0251A740 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0251A744 */ return;
|
|
}
|
|
|
|
// fn_0251A748 @ 0x251a748
|
|
void Gambit_fn_0251A748(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_0251A748: ; // 0x251a748
|
|
/* 0251A748 */ cpu->r[0] = cpu->lr;
|
|
/* 0251A74C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0251A74C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A74C */ cpu->r[1] = _t0;
|
|
/* 0251A750 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0251A750 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A754 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0251A754 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0251A758 */ /* nop */
|
|
/* 0251A75C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 0251A75C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0251A760 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251A760 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0251A764 */ cpu->r[28] = cpu->r[3];
|
|
/* 0251A768 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 0251A768 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0251A76C */ cpu->r[31] = cpu->r[28] + 0x000002B4u;
|
|
/* 0251A770 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 0251A770 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0251A774 */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A778 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A778 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0251A77C */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A780 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0251A784 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A784 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0251A784 */ if (_t9) goto L_0251A878; else goto L_0251A788;
|
|
L_0251A788: ; // 0x251a788
|
|
/* 0251A788 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A78C */ _t10 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A78C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
L_0251A790: ; // 0x251a790
|
|
/* 0251A790 */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A790 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0251A794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251A798 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A798 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251A798 */ if (_t13) goto L_0251A7AC; else goto L_0251A79C;
|
|
L_0251A79C: ; // 0x251a79c
|
|
/* 0251A79C */ _t14 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A79C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251A7A0 */ _t15 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0251A7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0251A7A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0251A7A8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A7A8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0251A7A8 */ if (_t17) goto L_0251A7D4; else goto L_0251A7AC;
|
|
L_0251A7AC: ; // 0x251a7ac
|
|
/* 0251A7AC */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A7B0 */ _t18 = cpu->r[28] + 0x00000030u;
|
|
/* 0251A7B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251A7B4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0251A7B8 */ cpu->r[5] = cpu->r[5] + 0x00000B50u;
|
|
/* 0251A7BC */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A7C0 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A7C4 */ _t19 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A7C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251A7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251A7CC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A7CC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A7CC */ if (_t21) goto L_0251A86C; else goto L_0251A7D0;
|
|
L_0251A7D0: ; // 0x251a7d0
|
|
/* 0251A7D0 */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A7D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
L_0251A7D4: ; // 0x251a7d4
|
|
/* 0251A7D4 */ _t23 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0251A7D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0251A7D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 0251A7DC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A7DC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0251A7DC */ if (_t25) goto L_0251A7E0; else goto L_0251A86C;
|
|
L_0251A7E0: ; // 0x251a7e0
|
|
/* 0251A7E0 */ cpu->r[11] = 0x2AAB0000u;
|
|
/* 0251A7E4 */ cpu->r[8] = cpu->r[29] - cpu->r[31];
|
|
/* 0251A7E8 */ cpu->r[11] = cpu->r[11] + 0xFFFFAAABu;
|
|
/* 0251A7EC */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[11] * (int64_t)(int32_t)cpu->r[8]) >> 32);
|
|
/* 0251A7F0 */ /* nop */
|
|
/* 0251A7F4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0251A7F8 */ /* nop */
|
|
/* 0251A7FC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0251A800 */ cpu->r[5] = cpu->r[5] - cpu->r[10];
|
|
/* 0251A804 */ Gambit_fn_0251A148(cpu);
|
|
/* 0251A808 */ _t26 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A808 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0251A80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0251A810 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A810 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0251A810 */ if (_t28) goto L_0251A86C; else goto L_0251A814;
|
|
L_0251A814: ; // 0x251a814
|
|
/* 0251A814 */ _t29 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0251A814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0251A818 */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A818 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0251A81C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0251A820 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A820 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0251A820 */ if (_t32) goto L_0251A824; else goto L_0251A86C;
|
|
L_0251A824: ; // 0x251a824
|
|
/* 0251A824 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A824 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0251A828 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A828 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 0251A82C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0251A82C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0251A830 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A830 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
/* 0251A834 */ _t37 = cpu->r[6] + 0x00000064u;
|
|
/* 0251A834 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 0251A838 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 0251A838 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0251A83C */ _t39 = cpu->r[6] + 0x00000068u;
|
|
/* 0251A83C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[10]);
|
|
/* 0251A840 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251A840 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0251A844 */ _t41 = cpu->r[6] + 0x0000006Cu;
|
|
/* 0251A844 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[11]);
|
|
/* 0251A848 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A848 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0251A84C */ _t43 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0251A84C */ cpu->r[5] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0251A850 */ _t44 = cpu->r[6] + 0x00000070u;
|
|
/* 0251A850 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 0251A854 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A854 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0251A858 */ cpu->r[5] = cpu->r[5] | 0x00000004u;
|
|
/* 0251A85C */ _t46 = cpu->r[6] + 0x00000074u;
|
|
/* 0251A85C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 0251A860 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A860 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0251A864 */ _t48 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0251A864 */ rbrew_write32(cpu->mem, _t48, cpu->r[5]);
|
|
/* 0251A868 */ _t49 = cpu->r[6] + 0x00000078u;
|
|
/* 0251A868 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
L_0251A86C: ; // 0x251a86c
|
|
/* 0251A86C */ cpu->r[29] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0251A870 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0251A874 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A874 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0251A874 */ if (_t51) goto L_0251A878; else goto L_0251A790;
|
|
L_0251A878: ; // 0x251a878
|
|
/* 0251A878 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 0251A878 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A87C */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 0251A87C */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251A880 */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A880 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0251A884 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 0251A884 */ cpu->r[30] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0251A888 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0251A888 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 0251A88C */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251A88C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0251A890 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A890 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0251A890 */ if (_t59) goto L_0251A894; // else: addr-0 trap, fall-through
|
|
L_0251A894: ; // 0x251a894
|
|
/* 0251A894 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 0251A894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0251A898 */ cpu->lr = cpu->r[0];
|
|
/* 0251A89C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0251A8A0 */ return;
|
|
}
|
|
|
|
// fn_0251A74C @ 0x251a74c
|
|
void Gambit_fn_0251A74C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_0251A74C: ; // 0x251a74c
|
|
/* 0251A74C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0251A74C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A74C */ cpu->r[1] = _t0;
|
|
/* 0251A750 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0251A750 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A754 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0251A754 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0251A758 */ /* nop */
|
|
/* 0251A75C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 0251A75C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0251A760 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251A760 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0251A764 */ cpu->r[28] = cpu->r[3];
|
|
/* 0251A768 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 0251A768 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0251A76C */ cpu->r[31] = cpu->r[28] + 0x000002B4u;
|
|
/* 0251A770 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 0251A770 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0251A774 */ cpu->r[30] = cpu->r[31] + 0x00000030u;
|
|
/* 0251A778 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A778 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0251A77C */ cpu->r[29] = cpu->r[31];
|
|
/* 0251A780 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0251A784 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A784 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0251A784 */ if (_t9) goto L_0251A878; else goto L_0251A788;
|
|
L_0251A788: ; // 0x251a788
|
|
/* 0251A788 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A78C */ _t10 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A78C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
L_0251A790: ; // 0x251a790
|
|
/* 0251A790 */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A790 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0251A794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251A798 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A798 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0251A798 */ if (_t13) goto L_0251A7AC; else goto L_0251A79C;
|
|
L_0251A79C: ; // 0x251a79c
|
|
/* 0251A79C */ _t14 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A79C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251A7A0 */ _t15 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0251A7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0251A7A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0251A7A8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A7A8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0251A7A8 */ if (_t17) goto L_0251A7D4; else goto L_0251A7AC;
|
|
L_0251A7AC: ; // 0x251a7ac
|
|
/* 0251A7AC */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A7B0 */ _t18 = cpu->r[28] + 0x00000030u;
|
|
/* 0251A7B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251A7B4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0251A7B8 */ cpu->r[5] = cpu->r[5] + 0x00000B50u;
|
|
/* 0251A7BC */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A7C0 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A7C4 */ _t19 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A7C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251A7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0251A7CC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A7CC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0251A7CC */ if (_t21) goto L_0251A86C; else goto L_0251A7D0;
|
|
L_0251A7D0: ; // 0x251a7d0
|
|
/* 0251A7D0 */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A7D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
L_0251A7D4: ; // 0x251a7d4
|
|
/* 0251A7D4 */ _t23 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0251A7D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0251A7D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 0251A7DC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A7DC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0251A7DC */ if (_t25) goto L_0251A7E0; else goto L_0251A86C;
|
|
L_0251A7E0: ; // 0x251a7e0
|
|
/* 0251A7E0 */ cpu->r[11] = 0x2AAB0000u;
|
|
/* 0251A7E4 */ cpu->r[8] = cpu->r[29] - cpu->r[31];
|
|
/* 0251A7E8 */ cpu->r[11] = cpu->r[11] + 0xFFFFAAABu;
|
|
/* 0251A7EC */ cpu->r[5] = (uint32_t)(((int64_t)(int32_t)cpu->r[11] * (int64_t)(int32_t)cpu->r[8]) >> 32);
|
|
/* 0251A7F0 */ /* nop */
|
|
/* 0251A7F4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0251A7F8 */ /* nop */
|
|
/* 0251A7FC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0251A800 */ cpu->r[5] = cpu->r[5] - cpu->r[10];
|
|
/* 0251A804 */ Gambit_fn_0251A148(cpu);
|
|
/* 0251A808 */ _t26 = cpu->r[29] + 0x00000000u;
|
|
/* 0251A808 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0251A80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0251A810 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A810 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0251A810 */ if (_t28) goto L_0251A86C; else goto L_0251A814;
|
|
L_0251A814: ; // 0x251a814
|
|
/* 0251A814 */ _t29 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0251A814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0251A818 */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 0251A818 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0251A81C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0251A820 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A820 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0251A820 */ if (_t32) goto L_0251A824; else goto L_0251A86C;
|
|
L_0251A824: ; // 0x251a824
|
|
/* 0251A824 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A824 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0251A828 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A828 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 0251A82C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0251A82C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0251A830 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A830 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
/* 0251A834 */ _t37 = cpu->r[6] + 0x00000064u;
|
|
/* 0251A834 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 0251A838 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 0251A838 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0251A83C */ _t39 = cpu->r[6] + 0x00000068u;
|
|
/* 0251A83C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[10]);
|
|
/* 0251A840 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251A840 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0251A844 */ _t41 = cpu->r[6] + 0x0000006Cu;
|
|
/* 0251A844 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[11]);
|
|
/* 0251A848 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A848 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0251A84C */ _t43 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0251A84C */ cpu->r[5] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0251A850 */ _t44 = cpu->r[6] + 0x00000070u;
|
|
/* 0251A850 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 0251A854 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A854 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0251A858 */ cpu->r[5] = cpu->r[5] | 0x00000004u;
|
|
/* 0251A85C */ _t46 = cpu->r[6] + 0x00000074u;
|
|
/* 0251A85C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 0251A860 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A860 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0251A864 */ _t48 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0251A864 */ rbrew_write32(cpu->mem, _t48, cpu->r[5]);
|
|
/* 0251A868 */ _t49 = cpu->r[6] + 0x00000078u;
|
|
/* 0251A868 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
L_0251A86C: ; // 0x251a86c
|
|
/* 0251A86C */ cpu->r[29] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0251A870 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0251A874 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A874 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0251A874 */ if (_t51) goto L_0251A878; else goto L_0251A790;
|
|
L_0251A878: ; // 0x251a878
|
|
/* 0251A878 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 0251A878 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A87C */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 0251A87C */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0251A880 */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 0251A880 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0251A884 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 0251A884 */ cpu->r[30] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0251A888 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0251A888 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 0251A88C */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251A88C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0251A890 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251A890 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0251A890 */ if (_t59) goto L_0251A894; // else: addr-0 trap, fall-through
|
|
L_0251A894: ; // 0x251a894
|
|
/* 0251A894 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 0251A894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0251A898 */ cpu->lr = cpu->r[0];
|
|
/* 0251A89C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0251A8A0 */ return;
|
|
}
|
|
|
|
// fn_0251A8A4 @ 0x251a8a4
|
|
void Gambit_fn_0251A8A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
|
|
L_0251A8A4: ; // 0x251a8a4
|
|
/* 0251A8A4 */ cpu->r[0] = cpu->lr;
|
|
/* 0251A8A8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0251A8A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A8A8 */ cpu->r[1] = _t0;
|
|
/* 0251A8AC */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0251A8AC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A8B0 */ /* nop */
|
|
/* 0251A8B4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0251A8B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251A8B8 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0251A8B8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A8BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0251A8C0 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251A8C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251A8C4 */ _t5 = cpu->r[31] + 0x000002E4u;
|
|
/* 0251A8C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251A8C8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A8D0 */ _t6 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A8D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0251A8D4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A8D4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251A8D4 */ if (_t8) goto L_0251A8E8; else goto L_0251A8D8;
|
|
L_0251A8D8: ; // 0x251a8d8
|
|
/* 0251A8D8 */ _t9 = cpu->r[31] + 0x000002E8u;
|
|
/* 0251A8D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251A8DC */ _t10 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A8DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251A8E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0251A8E4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A8E4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A8E4 */ if (_t12) goto L_0251A910; else goto L_0251A8E8;
|
|
L_0251A8E8: ; // 0x251a8e8
|
|
/* 0251A8E8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A8EC */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0251A8EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251A8F0 */ cpu->r[4] = cpu->r[31] + 0x000002E4u;
|
|
/* 0251A8F4 */ cpu->r[5] = cpu->r[5] + 0x00000B58u;
|
|
/* 0251A8F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A8FC */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A900 */ _t14 = cpu->r[31] + 0x000002E4u;
|
|
/* 0251A900 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251A904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A908 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A908 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0251A908 */ if (_t16) goto L_0251A988; else goto L_0251A90C;
|
|
L_0251A90C: ; // 0x251a90c
|
|
/* 0251A90C */ _t17 = cpu->r[31] + 0x000002E8u;
|
|
/* 0251A90C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
L_0251A910: ; // 0x251a910
|
|
/* 0251A910 */ _t18 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251A914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0251A918 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A918 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0251A918 */ if (_t20) goto L_0251A91C; else goto L_0251A988;
|
|
L_0251A91C: ; // 0x251a91c
|
|
/* 0251A91C */ _t21 = cpu->r[31] + 0x00000144u;
|
|
/* 0251A91C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0251A920 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0251A924 */ _t22 = cpu->r[6] + 0x00000B24u;
|
|
/* 0251A924 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A928 */ cpu->f[12] = cpu->f[13] / cpu->f[0];
|
|
/* 0251A92C */ _t23 = cpu->r[31] + 0x0000014Cu;
|
|
/* 0251A92C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0251A930 */ cpu->f[13] = cpu->f[13] / cpu->f[0];
|
|
/* 0251A934 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A934 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 0251A938 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A938 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[31]);
|
|
/* 0251A93C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A93C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0251A940 */ _t27 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0251A944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 0251A948 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A948 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0251A948 */ if (_t29) goto L_0251A94C; else goto L_0251A988;
|
|
L_0251A94C: ; // 0x251a94c
|
|
/* 0251A94C */ _t30 = cpu->r[31] + 0x00000138u;
|
|
/* 0251A94C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0251A950 */ _t31 = cpu->r[5] + 0x00000064u;
|
|
/* 0251A950 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 0251A954 */ _t32 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0251A954 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0251A958 */ _t33 = cpu->r[5] + 0x00000068u;
|
|
/* 0251A958 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 0251A95C */ _t34 = cpu->r[31] + 0x00000140u;
|
|
/* 0251A95C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0251A960 */ _t35 = cpu->r[5] + 0x0000006Cu;
|
|
/* 0251A960 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 0251A964 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A964 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0251A968 */ _t37 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A968 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0251A96C */ _t38 = cpu->r[5] + 0x00000070u;
|
|
/* 0251A96C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0251A970 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A970 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0251A974 */ cpu->r[7] = cpu->r[7] | 0x00000004u;
|
|
/* 0251A978 */ _t40 = cpu->r[5] + 0x00000074u;
|
|
/* 0251A978 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 0251A97C */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A97C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0251A980 */ _t42 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A980 */ rbrew_write32(cpu->mem, _t42, cpu->r[7]);
|
|
/* 0251A984 */ _t43 = cpu->r[5] + 0x00000078u;
|
|
/* 0251A984 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
L_0251A988: ; // 0x251a988
|
|
/* 0251A988 */ _t44 = cpu->r[31] + 0x000002F0u;
|
|
/* 0251A988 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0251A98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0251A990 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A990 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0251A990 */ if (_t46) goto L_0251A9A4; else goto L_0251A994;
|
|
L_0251A994: ; // 0x251a994
|
|
/* 0251A994 */ _t47 = cpu->r[31] + 0x000002F4u;
|
|
/* 0251A994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0251A998 */ _t48 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0251A998 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A99C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0251A9A0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9A0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A9A0 */ if (_t50) goto L_0251A9CC; else goto L_0251A9A4;
|
|
L_0251A9A4: ; // 0x251a9a4
|
|
/* 0251A9A4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A9A8 */ _t51 = cpu->r[31] + 0x00000030u;
|
|
/* 0251A9A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A9AC */ cpu->r[4] = cpu->r[31] + 0x000002F0u;
|
|
/* 0251A9B0 */ cpu->r[5] = cpu->r[5] + 0x00000B68u;
|
|
/* 0251A9B4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A9B8 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A9BC */ _t52 = cpu->r[31] + 0x000002F0u;
|
|
/* 0251A9BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0251A9C4 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9C4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A9C4 */ if (_t54) goto L_0251AA2C; else goto L_0251A9C8;
|
|
L_0251A9C8: ; // 0x251a9c8
|
|
/* 0251A9C8 */ _t55 = cpu->r[31] + 0x000002F4u;
|
|
/* 0251A9C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
L_0251A9CC: ; // 0x251a9cc
|
|
/* 0251A9CC */ _t56 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0251A9CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0251A9D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0251A9D4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9D4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 0251A9D4 */ if (_t58) goto L_0251A9D8; else goto L_0251AA2C;
|
|
L_0251A9D8: ; // 0x251a9d8
|
|
/* 0251A9D8 */ _t59 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0251A9D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0251A9DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A9E0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9E0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0251A9E0 */ if (_t61) goto L_0251A9E4; else goto L_0251AA2C;
|
|
L_0251A9E4: ; // 0x251a9e4
|
|
/* 0251A9E4 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251A9E4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 0251A9E8 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 0251A9E8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[31]);
|
|
/* 0251A9EC */ _t64 = cpu->r[31] + 0x00000138u;
|
|
/* 0251A9EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0251A9F0 */ _t65 = cpu->r[1] + 0x00000018u;
|
|
/* 0251A9F0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[31]);
|
|
/* 0251A9F4 */ _t66 = cpu->r[9] + 0x00000064u;
|
|
/* 0251A9F4 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 0251A9F8 */ _t67 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0251A9F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0251A9FC */ _t68 = cpu->r[9] + 0x00000068u;
|
|
/* 0251A9FC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 0251AA00 */ _t69 = cpu->r[31] + 0x00000140u;
|
|
/* 0251AA00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0251AA04 */ _t70 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0251AA04 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[13]);
|
|
/* 0251AA08 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AA08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0251AA0C */ _t72 = cpu->r[9] + 0x0000012Cu;
|
|
/* 0251AA0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251AA10 */ _t73 = cpu->r[9] + 0x00000070u;
|
|
/* 0251AA10 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
/* 0251AA14 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0251AA18 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0251AA1C */ _t75 = cpu->r[9] + 0x00000074u;
|
|
/* 0251AA1C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[13]);
|
|
/* 0251AA20 */ _t76 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251AA20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0251AA24 */ _t77 = cpu->r[9] + 0x0000012Cu;
|
|
/* 0251AA24 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 0251AA28 */ _t78 = cpu->r[9] + 0x00000078u;
|
|
/* 0251AA28 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[0]);
|
|
L_0251AA2C: ; // 0x251aa2c
|
|
/* 0251AA2C */ _t79 = cpu->r[1] + 0x00000030u;
|
|
/* 0251AA2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0251AA30 */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AA30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0251AA34 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 0251AA34 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81);
|
|
/* 0251AA38 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251AA38 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0251AA38 */ if (_t83) goto L_0251AA3C; // else: addr-0 trap, fall-through
|
|
L_0251AA3C: ; // 0x251aa3c
|
|
/* 0251AA3C */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251AA3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0251AA40 */ cpu->lr = cpu->r[0];
|
|
/* 0251AA44 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0251AA48 */ return;
|
|
}
|
|
|
|
// fn_0251A8A8 @ 0x251a8a8
|
|
void Gambit_fn_0251A8A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
|
|
L_0251A8A8: ; // 0x251a8a8
|
|
/* 0251A8A8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0251A8A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251A8A8 */ cpu->r[1] = _t0;
|
|
/* 0251A8AC */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0251A8AC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0251A8B0 */ /* nop */
|
|
/* 0251A8B4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0251A8B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0251A8B8 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0251A8B8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0251A8BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0251A8C0 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251A8C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251A8C4 */ _t5 = cpu->r[31] + 0x000002E4u;
|
|
/* 0251A8C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251A8C8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0251A8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A8D0 */ _t6 = cpu->r[9] + 0x00000AFCu;
|
|
/* 0251A8D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0251A8D4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A8D4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251A8D4 */ if (_t8) goto L_0251A8E8; else goto L_0251A8D8;
|
|
L_0251A8D8: ; // 0x251a8d8
|
|
/* 0251A8D8 */ _t9 = cpu->r[31] + 0x000002E8u;
|
|
/* 0251A8D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251A8DC */ _t10 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A8DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0251A8E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0251A8E4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A8E4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0251A8E4 */ if (_t12) goto L_0251A910; else goto L_0251A8E8;
|
|
L_0251A8E8: ; // 0x251a8e8
|
|
/* 0251A8E8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A8EC */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0251A8EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251A8F0 */ cpu->r[4] = cpu->r[31] + 0x000002E4u;
|
|
/* 0251A8F4 */ cpu->r[5] = cpu->r[5] + 0x00000B58u;
|
|
/* 0251A8F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A8FC */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A900 */ _t14 = cpu->r[31] + 0x000002E4u;
|
|
/* 0251A900 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0251A904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0251A908 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A908 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0251A908 */ if (_t16) goto L_0251A988; else goto L_0251A90C;
|
|
L_0251A90C: ; // 0x251a90c
|
|
/* 0251A90C */ _t17 = cpu->r[31] + 0x000002E8u;
|
|
/* 0251A90C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
L_0251A910: ; // 0x251a910
|
|
/* 0251A910 */ _t18 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251A914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0251A918 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A918 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0251A918 */ if (_t20) goto L_0251A91C; else goto L_0251A988;
|
|
L_0251A91C: ; // 0x251a91c
|
|
/* 0251A91C */ _t21 = cpu->r[31] + 0x00000144u;
|
|
/* 0251A91C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0251A920 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0251A924 */ _t22 = cpu->r[6] + 0x00000B24u;
|
|
/* 0251A924 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0251A928 */ cpu->f[12] = cpu->f[13] / cpu->f[0];
|
|
/* 0251A92C */ _t23 = cpu->r[31] + 0x0000014Cu;
|
|
/* 0251A92C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0251A930 */ cpu->f[13] = cpu->f[13] / cpu->f[0];
|
|
/* 0251A934 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A934 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 0251A938 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A938 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[31]);
|
|
/* 0251A93C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A93C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0251A940 */ _t27 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0251A940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0251A944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 0251A948 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A948 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0251A948 */ if (_t29) goto L_0251A94C; else goto L_0251A988;
|
|
L_0251A94C: ; // 0x251a94c
|
|
/* 0251A94C */ _t30 = cpu->r[31] + 0x00000138u;
|
|
/* 0251A94C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0251A950 */ _t31 = cpu->r[5] + 0x00000064u;
|
|
/* 0251A950 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 0251A954 */ _t32 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0251A954 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0251A958 */ _t33 = cpu->r[5] + 0x00000068u;
|
|
/* 0251A958 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 0251A95C */ _t34 = cpu->r[31] + 0x00000140u;
|
|
/* 0251A95C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0251A960 */ _t35 = cpu->r[5] + 0x0000006Cu;
|
|
/* 0251A960 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 0251A964 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0251A964 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0251A968 */ _t37 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A968 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0251A96C */ _t38 = cpu->r[5] + 0x00000070u;
|
|
/* 0251A96C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0251A970 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251A970 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0251A974 */ cpu->r[7] = cpu->r[7] | 0x00000004u;
|
|
/* 0251A978 */ _t40 = cpu->r[5] + 0x00000074u;
|
|
/* 0251A978 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 0251A97C */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 0251A97C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0251A980 */ _t42 = cpu->r[5] + 0x0000012Cu;
|
|
/* 0251A980 */ rbrew_write32(cpu->mem, _t42, cpu->r[7]);
|
|
/* 0251A984 */ _t43 = cpu->r[5] + 0x00000078u;
|
|
/* 0251A984 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
L_0251A988: ; // 0x251a988
|
|
/* 0251A988 */ _t44 = cpu->r[31] + 0x000002F0u;
|
|
/* 0251A988 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0251A98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0251A990 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A990 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0251A990 */ if (_t46) goto L_0251A9A4; else goto L_0251A994;
|
|
L_0251A994: ; // 0x251a994
|
|
/* 0251A994 */ _t47 = cpu->r[31] + 0x000002F4u;
|
|
/* 0251A994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0251A998 */ _t48 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0251A998 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0251A99C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0251A9A0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9A0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0251A9A0 */ if (_t50) goto L_0251A9CC; else goto L_0251A9A4;
|
|
L_0251A9A4: ; // 0x251a9a4
|
|
/* 0251A9A4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0251A9A8 */ _t51 = cpu->r[31] + 0x00000030u;
|
|
/* 0251A9A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0251A9AC */ cpu->r[4] = cpu->r[31] + 0x000002F0u;
|
|
/* 0251A9B0 */ cpu->r[5] = cpu->r[5] + 0x00000B68u;
|
|
/* 0251A9B4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0251A9B8 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0251A9BC */ _t52 = cpu->r[31] + 0x000002F0u;
|
|
/* 0251A9BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0251A9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0251A9C4 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9C4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0251A9C4 */ if (_t54) goto L_0251AA2C; else goto L_0251A9C8;
|
|
L_0251A9C8: ; // 0x251a9c8
|
|
/* 0251A9C8 */ _t55 = cpu->r[31] + 0x000002F4u;
|
|
/* 0251A9C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
L_0251A9CC: ; // 0x251a9cc
|
|
/* 0251A9CC */ _t56 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0251A9CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0251A9D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0251A9D4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9D4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 0251A9D4 */ if (_t58) goto L_0251A9D8; else goto L_0251AA2C;
|
|
L_0251A9D8: ; // 0x251a9d8
|
|
/* 0251A9D8 */ _t59 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0251A9D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0251A9DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0251A9E0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251A9E0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0251A9E0 */ if (_t61) goto L_0251A9E4; else goto L_0251AA2C;
|
|
L_0251A9E4: ; // 0x251a9e4
|
|
/* 0251A9E4 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251A9E4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 0251A9E8 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 0251A9E8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[31]);
|
|
/* 0251A9EC */ _t64 = cpu->r[31] + 0x00000138u;
|
|
/* 0251A9EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0251A9F0 */ _t65 = cpu->r[1] + 0x00000018u;
|
|
/* 0251A9F0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[31]);
|
|
/* 0251A9F4 */ _t66 = cpu->r[9] + 0x00000064u;
|
|
/* 0251A9F4 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 0251A9F8 */ _t67 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0251A9F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0251A9FC */ _t68 = cpu->r[9] + 0x00000068u;
|
|
/* 0251A9FC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 0251AA00 */ _t69 = cpu->r[31] + 0x00000140u;
|
|
/* 0251AA00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0251AA04 */ _t70 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0251AA04 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[13]);
|
|
/* 0251AA08 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AA08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0251AA0C */ _t72 = cpu->r[9] + 0x0000012Cu;
|
|
/* 0251AA0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0251AA10 */ _t73 = cpu->r[9] + 0x00000070u;
|
|
/* 0251AA10 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
/* 0251AA14 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0251AA18 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0251AA1C */ _t75 = cpu->r[9] + 0x00000074u;
|
|
/* 0251AA1C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[13]);
|
|
/* 0251AA20 */ _t76 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251AA20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0251AA24 */ _t77 = cpu->r[9] + 0x0000012Cu;
|
|
/* 0251AA24 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 0251AA28 */ _t78 = cpu->r[9] + 0x00000078u;
|
|
/* 0251AA28 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[0]);
|
|
L_0251AA2C: ; // 0x251aa2c
|
|
/* 0251AA2C */ _t79 = cpu->r[1] + 0x00000030u;
|
|
/* 0251AA2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0251AA30 */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AA30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0251AA34 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 0251AA34 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81);
|
|
/* 0251AA38 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251AA38 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0251AA38 */ if (_t83) goto L_0251AA3C; // else: addr-0 trap, fall-through
|
|
L_0251AA3C: ; // 0x251aa3c
|
|
/* 0251AA3C */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0251AA3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0251AA40 */ cpu->lr = cpu->r[0];
|
|
/* 0251AA44 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0251AA48 */ return;
|
|
}
|
|
|
|
// fn_0251AA4C @ 0x251aa4c
|
|
void Gambit_fn_0251AA4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_0251AA4C: ; // 0x251aa4c
|
|
/* 0251AA4C */ cpu->r[0] = cpu->lr;
|
|
/* 0251AA50 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0251AA50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251AA50 */ cpu->r[1] = _t0;
|
|
/* 0251AA54 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AA54 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0251AA58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AA58 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0251AA5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251AA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0251AA60 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AA60 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251AA64 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0251AA68 */ _t5 = cpu->r[29] + 0x00006000u;
|
|
/* 0251AA68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251AA68 */ cpu->r[29] = _t5;
|
|
/* 0251AA6C */ _t6 = cpu->r[9] + 0x000002C4u;
|
|
/* 0251AA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0251AA70 */ cpu->r[31] = 0x00000000u;
|
|
/* 0251AA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0251AA78 */ cpu->r[30] = cpu->r[3];
|
|
/* 0251AA7C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251AA7C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251AA7C */ if (_t8) goto L_0251AA80; else goto L_0251AADC;
|
|
L_0251AA80: ; // 0x251aa80
|
|
/* 0251AA80 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AA84 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AA88 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0251AA8C */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251AA90 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0251AA94 */ Gambit_fn_02519B7C(cpu);
|
|
/* 0251AA98 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0251AA98 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0251AA9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAA0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AAA4 */ Gambit_fn_02519F50(cpu);
|
|
/* 0251AAA8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251AAA8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0251AAAC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAB0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AAB4 */ Gambit_fn_0251A214(cpu);
|
|
/* 0251AAB8 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0251AAB8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0251AABC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AAC4 */ Gambit_fn_0251A42C(cpu);
|
|
/* 0251AAC8 */ _t12 = cpu->r[29] + 0x00000000u;
|
|
/* 0251AAC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0251AACC */ _t13 = cpu->r[11] + 0x000002C4u;
|
|
/* 0251AACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251AAD0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0251AAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0251AAD8 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251AAD8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251AAD8 */ if (_t15) goto L_0251AA80; else goto L_0251AADC;
|
|
L_0251AADC: ; // 0x251aadc
|
|
/* 0251AADC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAE0 */ Gambit_fn_0251A624(cpu);
|
|
/* 0251AAE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAE8 */ Gambit_fn_0251A748(cpu);
|
|
/* 0251AAEC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAF0 */ Gambit_fn_0251A8A4(cpu);
|
|
/* 0251AAF4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AAF4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251AAF8 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251AAFC */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AAFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251AB00 */ cpu->lr = cpu->r[0];
|
|
/* 0251AB04 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251AB04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251AB08 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0251AB0C */ return;
|
|
}
|
|
|
|
// fn_0251AA50 @ 0x251aa50
|
|
void Gambit_fn_0251AA50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_0251AA50: ; // 0x251aa50
|
|
/* 0251AA50 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0251AA50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251AA50 */ cpu->r[1] = _t0;
|
|
/* 0251AA54 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AA54 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0251AA58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AA58 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0251AA5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251AA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0251AA60 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AA60 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251AA64 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0251AA68 */ _t5 = cpu->r[29] + 0x00006000u;
|
|
/* 0251AA68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251AA68 */ cpu->r[29] = _t5;
|
|
/* 0251AA6C */ _t6 = cpu->r[9] + 0x000002C4u;
|
|
/* 0251AA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0251AA70 */ cpu->r[31] = 0x00000000u;
|
|
/* 0251AA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0251AA78 */ cpu->r[30] = cpu->r[3];
|
|
/* 0251AA7C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251AA7C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251AA7C */ if (_t8) goto L_0251AA80; else goto L_0251AADC;
|
|
L_0251AA80: ; // 0x251aa80
|
|
/* 0251AA80 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AA84 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AA88 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0251AA8C */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251AA90 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0251AA94 */ Gambit_fn_02519B7C(cpu);
|
|
/* 0251AA98 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0251AA98 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0251AA9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAA0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AAA4 */ Gambit_fn_02519F50(cpu);
|
|
/* 0251AAA8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251AAA8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0251AAAC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAB0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AAB4 */ Gambit_fn_0251A214(cpu);
|
|
/* 0251AAB8 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0251AAB8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0251AABC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AAC4 */ Gambit_fn_0251A42C(cpu);
|
|
/* 0251AAC8 */ _t12 = cpu->r[29] + 0x00000000u;
|
|
/* 0251AAC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0251AACC */ _t13 = cpu->r[11] + 0x000002C4u;
|
|
/* 0251AACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251AAD0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0251AAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0251AAD8 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0251AAD8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0251AAD8 */ if (_t15) goto L_0251AA80; else goto L_0251AADC;
|
|
L_0251AADC: ; // 0x251aadc
|
|
/* 0251AADC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAE0 */ Gambit_fn_0251A624(cpu);
|
|
/* 0251AAE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAE8 */ Gambit_fn_0251A748(cpu);
|
|
/* 0251AAEC */ cpu->r[3] = cpu->r[30];
|
|
/* 0251AAF0 */ Gambit_fn_0251A8A4(cpu);
|
|
/* 0251AAF4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AAF4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0251AAF8 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0251AAFC */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AAFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0251AB00 */ cpu->lr = cpu->r[0];
|
|
/* 0251AB04 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0251AB04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0251AB08 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0251AB0C */ return;
|
|
}
|
|
|
|
// fn_0251AB10 @ 0x251ab10
|
|
void Gambit_fn_0251AB10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_0205C2D4: ; // 0x205c2d4
|
|
/* 0205C2D4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0205C2D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0205C2D4 */ cpu->r[1] = _t0;
|
|
/* 0205C2D8 */ /* nop */
|
|
/* 0205C2DC */ cpu->r[0] = cpu->lr;
|
|
/* 0205C2E0 */ cpu->r[23] = cpu->r[3];
|
|
/* 0205C2E4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0205C2E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0205C2E8 */ Gambit_fn_02062AF0(cpu);
|
|
/* 0205C2EC */ cpu->r[7] = 0x101E0000u;
|
|
/* 0205C2F0 */ _t2 = cpu->r[7] + 0xFFFFB620u;
|
|
/* 0205C2F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0205C2F0 */ cpu->r[7] = _t2;
|
|
/* 0205C2F4 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0205C2F8 */ cpu->r[22] = cpu->r[3];
|
|
/* 0205C2FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205C300 */ cpu->r[31] = cpu->r[31] + 0xFFFFB5B0u;
|
|
/* 0205C304 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205C304 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0205C304 */ if (_t4) goto L_0205C308; else goto L_0205C350;
|
|
L_0205C308: ; // 0x205c308
|
|
/* 0205C308 */ cpu->r[12] = 0x00000001u;
|
|
/* 0205C30C */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0205C310 */ cpu->r[4] = 0x10000000u;
|
|
/* 0205C314 */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 0205C314 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0205C318 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205C31C */ cpu->r[5] = 0x00000002u;
|
|
/* 0205C320 */ cpu->r[4] = cpu->r[4] + 0x000067B8u;
|
|
/* 0205C324 */ cpu->r[7] = 0x00000000u;
|
|
/* 0205C328 */ Gambit_fn_028A6750(cpu);
|
|
/* 0205C32C */ cpu->r[6] = 0x02060000u;
|
|
/* 0205C330 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0205C334 */ cpu->r[4] = 0x00000002u;
|
|
/* 0205C338 */ cpu->r[6] = cpu->r[6] + 0xFFFFC474u;
|
|
/* 0205C33C */ cpu->r[5] = 0x00000008u;
|
|
/* 0205C340 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0205C344 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0205C348 */ cpu->r[3] = cpu->r[3] + 0x000029F8u;
|
|
/* 0205C34C */ Gambit_fn_02C83090(cpu);
|
|
L_0205C350: ; // 0x205c350
|
|
/* 0205C350 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 0205C350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0205C354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205C358 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205C358 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0205C358 */ if (_t8) goto L_0205C35C; else goto L_0205C450;
|
|
L_0205C35C: ; // 0x205c35c
|
|
/* 0205C35C */ cpu->r[26] = 0x101D0000u;
|
|
/* 0205C360 */ cpu->r[30] = 0x00000000u;
|
|
/* 0205C364 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0205C368 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0205C36C */ cpu->r[21] = 0x00000001u;
|
|
/* 0205C370 */ cpu->r[27] = cpu->r[30];
|
|
/* 0205C374 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0205C378 */ cpu->r[26] = cpu->r[26] + 0xFFFFE870u;
|
|
/* 0205C37C */ cpu->r[24] = 0x101D0000u;
|
|
L_0205C380: ; // 0x205c380
|
|
/* 0205C380 */ _t9 = cpu->r[24] + 0xFFFFE880u;
|
|
/* 0205C380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0205C384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205C388 */ cpu->r[29] = cpu->r[30];
|
|
/* 0205C38C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205C38C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0205C38C */ if (_t11) goto L_0205C390; else goto L_0205C3A8;
|
|
L_0205C390: ; // 0x205c390
|
|
/* 0205C390 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0205C394 */ cpu->r[3] = cpu->r[25] + 0x00003694u;
|
|
/* 0205C398 */ cpu->r[5] = 0x00000011u;
|
|
/* 0205C39C */ cpu->r[4] = cpu->r[4] + 0x000029E4u;
|
|
/* 0205C3A0 */ _t12 = cpu->r[24] + 0xFFFFE880u;
|
|
/* 0205C3A0 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 0205C3A4 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0205C3A8: ; // 0x205c3a8
|
|
/* 0205C3A8 */ _t13 = cpu->r[20] + 0xFFFFE87Cu;
|
|
/* 0205C3A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0205C3AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0205C3B0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205C3B0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0205C3B0 */ if (_t15) goto L_0205C3B4; else goto L_0205C3BC;
|
|
L_0205C3B4: ; // 0x205c3b4
|
|
/* 0205C3B4 */ _t16 = cpu->r[19] + 0xFFFFE878u;
|
|
/* 0205C3B4 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 0205C3B8 */ _t17 = cpu->r[20] + 0xFFFFE87Cu;
|
|
/* 0205C3B8 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_0205C3BC: ; // 0x205c3bc
|
|
/* 0205C3BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 0205C3C0 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205C3C0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0205C3C0 */ if (_t19) goto L_0205C3E8; else goto L_0205C3C4;
|
|
L_0205C3C4: ; // 0x205c3c4
|
|
/* 0205C3C4 */ cpu->r[4] = cpu->r[30];
|
|
/* 0205C3C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205C3CC */ cpu->r[5] = 0x00000000u;
|
|
/* 0205C3D0 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205C3D4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0205C3D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0205C3DC */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205C3DC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0205C3DC */ if (_t21) goto L_0205C450; else goto L_0205C3E0;
|
|
L_0205C3E0: ; // 0x205c3e0
|
|
/* 0205C3E0 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205C3E0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0205C3E0 */ if (_t23) goto L_0205C380; else goto L_0205C3E4;
|
|
L_0205C3E4: ; // 0x205c3e4
|
|
/* 0205C3E4 */ goto L_0205C450;
|
|
L_0205C3E8: ; // 0x205c3e8
|
|
/* 0205C3E8 */ _t24 = cpu->r[19] + 0xFFFFE878u;
|
|
/* 0205C3E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0205C3EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205C3F0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205C3F0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0205C3F0 */ if (_t26) goto L_0205C3F4; else goto L_0205C42C;
|
|
L_0205C3F4: ; // 0x205c3f4
|
|
/* 0205C3F4 */ Gambit_fn_0282A450(cpu);
|
|
/* 0205C3F8 */ cpu->r[28] = cpu->r[3];
|
|
/* 0205C3FC */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205C400 */ _t27 = cpu->r[19] + 0xFFFFE878u;
|
|
/* 0205C400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0205C404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205C408 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205C408 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0205C408 */ if (_t29) goto L_0205C40C; else goto L_0205C420;
|
|
L_0205C40C: ; // 0x205c40c
|
|
/* 0205C40C */ cpu->r[5] = 0x00000002u;
|
|
/* 0205C410 */ cpu->r[4] = cpu->r[25] + 0x00003694u;
|
|
/* 0205C414 */ cpu->r[3] = cpu->r[26];
|
|
/* 0205C418 */ Gambit_fn_0282A374(cpu);
|
|
/* 0205C41C */ _t30 = cpu->r[19] + 0xFFFFE878u;
|
|
/* 0205C41C */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_0205C420: ; // 0x205c420
|
|
/* 0205C420 */ cpu->r[3] = cpu->r[28];
|
|
/* 0205C424 */ Gambit_fn_02837030(cpu);
|
|
/* 0205C428 */ _t31 = cpu->r[19] + 0xFFFFE878u;
|
|
/* 0205C428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_0205C42C: ; // 0x205c42c
|
|
/* 0205C42C */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0205C430 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205C434 */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 0205C434 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0205C438 */ cpu->r[4] = cpu->r[30];
|
|
/* 0205C43C */ Gambit_fn_028A6634(cpu);
|
|
/* 0205C440 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0205C444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0205C448 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205C448 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0205C448 */ if (_t34) goto L_0205C450; else goto L_0205C44C;
|
|
L_0205C44C: ; // 0x205c44c
|
|
/* 0205C44C */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205C44C */ _t36 = _t35 & 0x00000001u;
|
|
/* 0205C44C */ if (_t36) goto L_0205C380; else goto L_0205C450;
|
|
L_0205C450: ; // 0x205c450
|
|
/* 0205C450 */ cpu->r[3] = cpu->r[23];
|
|
/* 0205C454 */ cpu->r[4] = cpu->r[31];
|
|
/* 0205C458 */ Gambit_fn_027B81E4(cpu);
|
|
/* 0205C45C */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 0205C460 */ /* nop */
|
|
/* 0205C464 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 0205C464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0205C468 */ cpu->lr = cpu->r[0];
|
|
/* 0205C46C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0205C470 */ return;
|
|
L_0251AB10: ; // 0x251ab10
|
|
/* 0251AB10 */ _t38 = cpu->r[3] + 0x00000030u;
|
|
/* 0251AB10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0251AB14 */ cpu->r[4] = 0x00000000u;
|
|
/* 0251AB18 */ goto L_0205C2D4;
|
|
}
|
|
|
|
// fn_0251AB1C @ 0x251ab1c
|
|
void Gambit_fn_0251AB1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_0251AB1C: ; // 0x251ab1c
|
|
/* 0251AB1C */ cpu->r[0] = cpu->lr;
|
|
/* 0251AB20 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0251AB20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251AB20 */ cpu->r[1] = _t0;
|
|
/* 0251AB24 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251AB28 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0251AB28 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0251AB2C */ cpu->r[30] = cpu->r[3];
|
|
/* 0251AB30 */ cpu->r[12] = cpu->r[12] + 0x00000B7Cu;
|
|
/* 0251AB34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AB34 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0251AB38 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0251AB3C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AB3C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0251AB40 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251AB40 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251AB44 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251AB48 */ _t5 = cpu->r[3] + 0x00004D8Cu;
|
|
/* 0251AB48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251AB4C */ cpu->r[0] = cpu->r[0] + 0x00000A00u;
|
|
/* 0251AB50 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0251AB54 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AB54 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0251AB58 */ Gambit_fn_021B54EC(cpu);
|
|
/* 0251AB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251AB60 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251AB64 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251AB64 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251AB64 */ if (_t8) goto L_0251ABC8; else goto L_0251AB68;
|
|
L_0251AB68: ; // 0x251ab68
|
|
/* 0251AB68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251AB6C */ Gambit_fn_028E86D4(cpu);
|
|
/* 0251AB70 */ _t9 = cpu->r[30] + 0x00000030u;
|
|
/* 0251AB70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251AB74 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AB78 */ Gambit_fn_027B8138(cpu);
|
|
/* 0251AB7C */ _t10 = cpu->r[30] + 0x00000138u;
|
|
/* 0251AB7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0251AB80 */ _t11 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0251AB80 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 0251AB84 */ _t12 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0251AB84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0251AB88 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 0251AB88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251AB8C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0251AB90 */ _t14 = cpu->r[31] + 0x00000030u;
|
|
/* 0251AB90 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 0251AB94 */ _t15 = cpu->r[30] + 0x00000140u;
|
|
/* 0251AB94 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0251AB98 */ _t16 = cpu->r[10] + 0x00000AFCu;
|
|
/* 0251AB98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0251AB9C */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 0251AB9C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 0251ABA0 */ _t18 = cpu->r[30] + 0x0000014Cu;
|
|
/* 0251ABA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251ABA4 */ _t19 = cpu->r[30] + 0x00000144u;
|
|
/* 0251ABA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0251ABA8 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 0251ABA8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 0251ABAC */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0251ABAC */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 0251ABB0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251ABB0 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 0251ABB4 */ _t23 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0251ABB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0251ABB8 */ cpu->ctr = cpu->r[0];
|
|
/* 0251ABBC */ cpu->r[3] = cpu->r[31];
|
|
/* 0251ABC0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0251ABC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0251ABC8: ; // 0x251abc8
|
|
/* 0251ABC8 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251ABC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0251ABCC */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0251ABCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0251ABD0 */ cpu->lr = cpu->r[0];
|
|
/* 0251ABD4 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 0251ABD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0251ABD8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0251ABDC */ return;
|
|
}
|
|
|
|
// fn_0251AB20 @ 0x251ab20
|
|
void Gambit_fn_0251AB20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_0251AB20: ; // 0x251ab20
|
|
/* 0251AB20 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0251AB20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0251AB20 */ cpu->r[1] = _t0;
|
|
/* 0251AB24 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0251AB28 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0251AB28 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0251AB2C */ cpu->r[30] = cpu->r[3];
|
|
/* 0251AB30 */ cpu->r[12] = cpu->r[12] + 0x00000B7Cu;
|
|
/* 0251AB34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0251AB34 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0251AB38 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0251AB3C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0251AB3C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0251AB40 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251AB40 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0251AB44 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0251AB48 */ _t5 = cpu->r[3] + 0x00004D8Cu;
|
|
/* 0251AB48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0251AB4C */ cpu->r[0] = cpu->r[0] + 0x00000A00u;
|
|
/* 0251AB50 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0251AB54 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 0251AB54 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0251AB58 */ Gambit_fn_021B54EC(cpu);
|
|
/* 0251AB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0251AB60 */ cpu->r[31] = cpu->r[3];
|
|
/* 0251AB64 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0251AB64 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0251AB64 */ if (_t8) goto L_0251ABC8; else goto L_0251AB68;
|
|
L_0251AB68: ; // 0x251ab68
|
|
/* 0251AB68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0251AB6C */ Gambit_fn_028E86D4(cpu);
|
|
/* 0251AB70 */ _t9 = cpu->r[30] + 0x00000030u;
|
|
/* 0251AB70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0251AB74 */ cpu->r[4] = cpu->r[31];
|
|
/* 0251AB78 */ Gambit_fn_027B8138(cpu);
|
|
/* 0251AB7C */ _t10 = cpu->r[30] + 0x00000138u;
|
|
/* 0251AB7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0251AB80 */ _t11 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0251AB80 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 0251AB84 */ _t12 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0251AB84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0251AB88 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 0251AB88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0251AB8C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0251AB90 */ _t14 = cpu->r[31] + 0x00000030u;
|
|
/* 0251AB90 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 0251AB94 */ _t15 = cpu->r[30] + 0x00000140u;
|
|
/* 0251AB94 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0251AB98 */ _t16 = cpu->r[10] + 0x00000AFCu;
|
|
/* 0251AB98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0251AB9C */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 0251AB9C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 0251ABA0 */ _t18 = cpu->r[30] + 0x0000014Cu;
|
|
/* 0251ABA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0251ABA4 */ _t19 = cpu->r[30] + 0x00000144u;
|
|
/* 0251ABA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0251ABA8 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 0251ABA8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 0251ABAC */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0251ABAC */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 0251ABB0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0251ABB0 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 0251ABB4 */ _t23 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0251ABB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0251ABB8 */ cpu->ctr = cpu->r[0];
|
|
/* 0251ABBC */ cpu->r[3] = cpu->r[31];
|
|
/* 0251ABC0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0251ABC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0251ABC8: ; // 0x251abc8
|
|
/* 0251ABC8 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0251ABC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0251ABCC */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0251ABCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0251ABD0 */ cpu->lr = cpu->r[0];
|
|
/* 0251ABD4 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 0251ABD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0251ABD8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0251ABDC */ return;
|
|
}
|
|
|