mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
25234 lines
1.3 MiB
Plaintext
25234 lines
1.3 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_02235C44 @ 0x2235c44
|
|
void Gambit_fn_02235C44(CPUState* cpu) {
|
|
L_02235C44: ; // 0x2235c44
|
|
/* 02235C44 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 02235C48 */ return;
|
|
}
|
|
|
|
// fn_02235C4C @ 0x2235c4c
|
|
void Gambit_fn_02235C4C(CPUState* cpu) {
|
|
L_02235C4C: ; // 0x2235c4c
|
|
/* 02235C4C */ cpu->r[3] = 0x00000096u;
|
|
/* 02235C50 */ return;
|
|
}
|
|
|
|
// fn_02235C54 @ 0x2235c54
|
|
void Gambit_fn_02235C54(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02235C54: ; // 0x2235c54
|
|
/* 02235C54 */ cpu->r[12] = 0x10050000u;
|
|
/* 02235C58 */ _t0 = cpu->r[12] + 0x00001B3Cu;
|
|
/* 02235C58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02235C5C */ return;
|
|
}
|
|
|
|
// fn_02235C64 @ 0x2235c64
|
|
void Gambit_fn_02235C64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_021EA978: ; // 0x21ea978
|
|
/* 021EA978 */ cpu->r[0] = cpu->lr;
|
|
/* 021EA97C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 021EA97C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 021EA97C */ cpu->r[1] = _t0;
|
|
/* 021EA980 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 021EA980 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 021EA984 */ cpu->r[31] = cpu->r[3];
|
|
/* 021EA988 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 021EA988 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 021EA98C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 021EA98C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 021EA990 */ cpu->r[12] = 0x00000000u;
|
|
/* 021EA994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 021EA998 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 021EA998 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 021EA99C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021EA99C */ _t6 = _t5 & 0x00000001u;
|
|
/* 021EA99C */ if (_t6) goto L_021EA9C4; else goto L_021EA9A0;
|
|
L_021EA9A0: ; // 0x21ea9a0
|
|
/* 021EA9A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 021EA9A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 021EA9A4 */ /* nop */
|
|
/* 021EA9A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 021EA9AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021EA9AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 021EA9AC */ if (_t9) goto L_021EA9B0; else goto L_021EA9C4;
|
|
L_021EA9B0: ; // 0x21ea9b0
|
|
/* 021EA9B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 021EA9B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 021EA9B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 021EA9B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 021EA9B8 */ cpu->ctr = cpu->r[0];
|
|
/* 021EA9BC */ cpu->r[3] = cpu->r[31];
|
|
/* 021EA9C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_021EA9C4: ; // 0x21ea9c4
|
|
/* 021EA9C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 021EA9C8 */ Gambit_fn_021EA8F0(cpu);
|
|
/* 021EA9CC */ cpu->r[3] = cpu->r[31];
|
|
/* 021EA9D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 021EA9D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 021EA9D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 021EA9D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 021EA9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 021EA9DC */ cpu->lr = cpu->r[0];
|
|
/* 021EA9E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 021EA9E4 */ return;
|
|
L_02235C64: ; // 0x2235c64
|
|
/* 02235C64 */ cpu->r[3] = cpu->r[3] + 0x00000084u;
|
|
/* 02235C68 */ goto L_021EA978;
|
|
}
|
|
|
|
// fn_02235C6C @ 0x2235c6c
|
|
void Gambit_fn_02235C6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02235C6C: ; // 0x2235c6c
|
|
/* 02235C6C */ cpu->r[0] = cpu->lr;
|
|
/* 02235C70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02235C70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02235C70 */ cpu->r[1] = _t0;
|
|
/* 02235C74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02235C74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02235C78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02235C7C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02235C7C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02235C80 */ _t3 = cpu->r[31] + 0x00000092u;
|
|
/* 02235C80 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02235C84 */ cpu->r[3] = cpu->r[31] + 0x00000084u;
|
|
/* 02235C88 */ /* nop */
|
|
/* 02235C8C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02235C90 */ cpu->r[3] = cpu->r[31] + 0x00000084u;
|
|
/* 02235C94 */ Gambit_fn_021EA9E8(cpu);
|
|
/* 02235C98 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02235C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02235C9C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02235C9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02235CA0 */ cpu->lr = cpu->r[0];
|
|
/* 02235CA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02235CA8 */ return;
|
|
}
|
|
|
|
// fn_02235C70 @ 0x2235c70
|
|
void Gambit_fn_02235C70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02235C70: ; // 0x2235c70
|
|
/* 02235C70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02235C70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02235C70 */ cpu->r[1] = _t0;
|
|
/* 02235C74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02235C74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02235C78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02235C7C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02235C7C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02235C80 */ _t3 = cpu->r[31] + 0x00000092u;
|
|
/* 02235C80 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02235C84 */ cpu->r[3] = cpu->r[31] + 0x00000084u;
|
|
/* 02235C88 */ /* nop */
|
|
/* 02235C8C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02235C90 */ cpu->r[3] = cpu->r[31] + 0x00000084u;
|
|
/* 02235C94 */ Gambit_fn_021EA9E8(cpu);
|
|
/* 02235C98 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02235C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02235C9C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02235C9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02235CA0 */ cpu->lr = cpu->r[0];
|
|
/* 02235CA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02235CA8 */ return;
|
|
}
|
|
|
|
// fn_02235CAC @ 0x2235cac
|
|
void Gambit_fn_02235CAC(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_02235CAC: ; // 0x2235cac
|
|
/* 02235CAC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02235CAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02235CAC */ cpu->r[1] = _t0;
|
|
/* 02235CB0 */ /* nop */
|
|
/* 02235CB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02235CB8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02235CB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02235CBC */ cpu->r[29] = cpu->r[6];
|
|
/* 02235CC0 */ cpu->r[28] = cpu->r[3];
|
|
/* 02235CC4 */ cpu->r[30] = cpu->r[5];
|
|
/* 02235CC8 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02235CC8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02235CCC */ cpu->r[31] = 0x101D0000u;
|
|
/* 02235CD0 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02235CD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02235CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235CD8 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02235CD8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02235CDC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235CDC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02235CDC */ if (_t6) goto L_02235D20; else goto L_02235CE0;
|
|
L_02235CE0: ; // 0x2235ce0
|
|
/* 02235CE0 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02235CE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02235CE4 */ Gambit_fn_02826F20(cpu);
|
|
/* 02235CE8 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02235CE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02235CEC */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 02235CEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02235CF0 */ cpu->ctr = cpu->r[0];
|
|
/* 02235CF4 */ cpu->r[5] = 0x00000004u;
|
|
/* 02235CF8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02235CFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02235D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235D04 */ cpu->r[0] = cpu->r[27];
|
|
/* 02235D08 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235D08 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02235D08 */ if (_t11) goto L_02235D10; else goto L_02235D0C;
|
|
L_02235D0C: ; // 0x2235d0c
|
|
/* 02235D0C */ cpu->r[0] = 0x00000001u;
|
|
L_02235D10: ; // 0x2235d10
|
|
/* 02235D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02235D14 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235D14 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02235D14 */ if (_t13) goto L_02235D20; else goto L_02235D18;
|
|
L_02235D18: ; // 0x2235d18
|
|
/* 02235D18 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02235D18 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02235D1C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 02235D1C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02235D20: ; // 0x2235d20
|
|
/* 02235D20 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02235D20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02235D24 */ cpu->r[0] = 0x00000000u;
|
|
/* 02235D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02235D2C */ cpu->r[12] = cpu->r[0];
|
|
/* 02235D30 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235D30 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02235D30 */ if (_t18) goto L_02235D34; else goto L_02235D58;
|
|
L_02235D34: ; // 0x2235d34
|
|
/* 02235D34 */ cpu->ctr = cpu->r[7];
|
|
/* 02235D38 */ cpu->r[10] = 0x00000000u;
|
|
L_02235D3C: ; // 0x2235d3c
|
|
/* 02235D3C */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 02235D3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02235D40 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02235D40 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02235D44 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02235D48 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02235D48 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02235D4C */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02235D50 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02235D50 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02235D54 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02235D54 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02235D54 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02235D54 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02235D54 */ if (_t25) goto L_02235D3C; else goto L_02235D58;
|
|
L_02235D58: ; // 0x2235d58
|
|
/* 02235D58 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02235D58 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02235D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235D60 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235D60 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02235D60 */ if (_t28) goto L_02235DA4; else goto L_02235D64;
|
|
L_02235D64: ; // 0x2235d64
|
|
/* 02235D64 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02235D64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02235D68 */ Gambit_fn_02826F20(cpu);
|
|
/* 02235D6C */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02235D6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02235D70 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 02235D70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02235D74 */ cpu->ctr = cpu->r[0];
|
|
/* 02235D78 */ cpu->r[5] = 0x00000004u;
|
|
/* 02235D7C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02235D80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02235D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235D88 */ cpu->r[11] = cpu->r[27];
|
|
/* 02235D8C */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235D8C */ _t33 = _t32 & 0x00000001u;
|
|
/* 02235D8C */ if (_t33) goto L_02235D94; else goto L_02235D90;
|
|
L_02235D90: ; // 0x2235d90
|
|
/* 02235D90 */ cpu->r[11] = 0x00000001u;
|
|
L_02235D94: ; // 0x2235d94
|
|
/* 02235D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02235D98 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235D98 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02235D98 */ if (_t35) goto L_02235DA4; else goto L_02235D9C;
|
|
L_02235D9C: ; // 0x2235d9c
|
|
/* 02235D9C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02235D9C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02235DA0 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02235DA0 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_02235DA4: ; // 0x2235da4
|
|
/* 02235DA4 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 02235DA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02235DA8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02235DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02235DB0 */ cpu->r[12] = cpu->r[0];
|
|
/* 02235DB4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235DB4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02235DB4 */ if (_t40) goto L_02235DB8; else goto L_02235DDC;
|
|
L_02235DB8: ; // 0x2235db8
|
|
/* 02235DB8 */ cpu->ctr = cpu->r[6];
|
|
/* 02235DBC */ cpu->r[9] = 0x00000000u;
|
|
L_02235DC0: ; // 0x2235dc0
|
|
/* 02235DC0 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02235DC0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02235DC4 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02235DC4 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02235DC8 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02235DCC */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02235DCC */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02235DD0 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02235DD4 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02235DD4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02235DD8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02235DD8 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02235DD8 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02235DD8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02235DD8 */ if (_t47) goto L_02235DC0; else goto L_02235DDC;
|
|
L_02235DDC: ; // 0x2235ddc
|
|
/* 02235DDC */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02235DDC */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02235DE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235DE4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235DE4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02235DE4 */ if (_t50) goto L_02235E28; else goto L_02235DE8;
|
|
L_02235DE8: ; // 0x2235de8
|
|
/* 02235DE8 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02235DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02235DEC */ Gambit_fn_02826F20(cpu);
|
|
/* 02235DF0 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02235DF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02235DF4 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 02235DF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02235DF8 */ cpu->ctr = cpu->r[0];
|
|
/* 02235DFC */ cpu->r[5] = 0x00000004u;
|
|
/* 02235E00 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02235E04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02235E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235E0C */ cpu->r[10] = cpu->r[27];
|
|
/* 02235E10 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235E10 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02235E10 */ if (_t55) goto L_02235E18; else goto L_02235E14;
|
|
L_02235E14: ; // 0x2235e14
|
|
/* 02235E14 */ cpu->r[10] = 0x00000001u;
|
|
L_02235E18: ; // 0x2235e18
|
|
/* 02235E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02235E1C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235E1C */ _t57 = _t56 & 0x00000001u;
|
|
/* 02235E1C */ if (_t57) goto L_02235E28; else goto L_02235E20;
|
|
L_02235E20: ; // 0x2235e20
|
|
/* 02235E20 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02235E20 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02235E24 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 02235E24 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_02235E28: ; // 0x2235e28
|
|
/* 02235E28 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 02235E28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02235E2C */ cpu->r[0] = 0x00000000u;
|
|
/* 02235E30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02235E34 */ cpu->r[5] = cpu->r[0];
|
|
/* 02235E38 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235E38 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02235E38 */ if (_t62) goto L_02235E3C; else goto L_02235E60;
|
|
L_02235E3C: ; // 0x2235e3c
|
|
/* 02235E3C */ cpu->ctr = cpu->r[12];
|
|
/* 02235E40 */ cpu->r[8] = 0x00000000u;
|
|
L_02235E44: ; // 0x2235e44
|
|
/* 02235E44 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02235E44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02235E48 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02235E48 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02235E4C */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02235E50 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02235E50 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02235E54 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02235E58 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02235E58 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02235E5C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02235E5C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02235E5C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02235E5C */ _t69 = _t68 & 0x00000001u;
|
|
/* 02235E5C */ if (_t69) goto L_02235E44; else goto L_02235E60;
|
|
L_02235E60: ; // 0x2235e60
|
|
/* 02235E60 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02235E60 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02235E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02235E68 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235E68 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02235E68 */ if (_t72) goto L_02235F44; else goto L_02235E6C;
|
|
L_02235E6C: ; // 0x2235e6c
|
|
/* 02235E6C */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02235E6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02235E70 */ Gambit_fn_02826F20(cpu);
|
|
/* 02235E74 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02235E74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02235E78 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02235E78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02235E7C */ cpu->ctr = cpu->r[12];
|
|
/* 02235E80 */ cpu->r[5] = 0x00000004u;
|
|
/* 02235E84 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02235E88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02235E8C */ cpu->r[24] = cpu->r[3];
|
|
/* 02235E90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02235E94 */ cpu->r[30] = cpu->r[25];
|
|
/* 02235E98 */ cpu->r[7] = 0x00000000u;
|
|
/* 02235E9C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02235E9C */ _t77 = _t76 & 0x00000001u;
|
|
/* 02235E9C */ if (_t77) goto L_02235EA4; else goto L_02235EA0;
|
|
L_02235EA0: ; // 0x2235ea0
|
|
/* 02235EA0 */ cpu->r[30] = 0x00000001u;
|
|
L_02235EA4: ; // 0x2235ea4
|
|
/* 02235EA4 */ cpu->r[31] = 0x10110000u;
|
|
/* 02235EA8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 02235EAC */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 02235EAC */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02235EB0 */ cpu->r[23] = 0x00000018u;
|
|
L_02235EB4: ; // 0x2235eb4
|
|
/* 02235EB4 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 02235EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02235EB8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235EB8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02235EB8 */ if (_t80) goto L_02235F28; else goto L_02235EBC;
|
|
L_02235EBC: ; // 0x2235ebc
|
|
/* 02235EBC */ cpu->r[26] = cpu->r[27];
|
|
/* 02235EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02235EC0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235EC0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02235EC0 */ if (_t82) goto L_02235EC4; else goto L_02235ED4;
|
|
L_02235EC4: ; // 0x2235ec4
|
|
/* 02235EC4 */ cpu->r[3] = 0x00000024u;
|
|
/* 02235EC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02235ECC */ cpu->r[26] = cpu->r[3];
|
|
/* 02235ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02235ED0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235ED0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02235ED0 */ if (_t84) goto L_02235F1C; else goto L_02235ED4;
|
|
L_02235ED4: ; // 0x2235ed4
|
|
/* 02235ED4 */ cpu->r[11] = cpu->r[26];
|
|
/* 02235ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02235ED8 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235ED8 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02235ED8 */ if (_t86) goto L_02235EDC; else goto L_02235EEC;
|
|
L_02235EDC: ; // 0x2235edc
|
|
/* 02235EDC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02235EE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02235EE4 */ cpu->r[11] = cpu->r[3];
|
|
/* 02235EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02235EE8 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235EE8 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02235EE8 */ if (_t88) goto L_02235F08; else goto L_02235EEC;
|
|
L_02235EEC: ; // 0x2235eec
|
|
/* 02235EEC */ cpu->r[5] = 0x10050000u;
|
|
/* 02235EF0 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 02235EF0 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 02235EF4 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 02235EF8 */ cpu->r[5] = cpu->r[5] + 0x00001A14u;
|
|
/* 02235EFC */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 02235EFC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02235F00 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 02235F00 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 02235F04 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 02235F04 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_02235F08: ; // 0x2235f08
|
|
/* 02235F08 */ cpu->r[6] = 0x10050000u;
|
|
/* 02235F0C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 02235F0C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02235F10 */ cpu->r[6] = cpu->r[6] + 0x00001A2Cu;
|
|
/* 02235F14 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 02235F14 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 02235F18 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 02235F18 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_02235F1C: ; // 0x2235f1c
|
|
/* 02235F1C */ cpu->r[0] = 0x10050000u;
|
|
/* 02235F20 */ cpu->r[0] = cpu->r[0] + 0x00001A44u;
|
|
/* 02235F24 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 02235F24 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_02235F28: ; // 0x2235f28
|
|
/* 02235F28 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02235F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02235F2C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02235F30 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235F30 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02235F30 */ if (_t98) goto L_02235F34; else goto L_02235EB4;
|
|
L_02235F34: ; // 0x2235f34
|
|
/* 02235F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02235F38 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02235F38 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02235F38 */ if (_t100) goto L_02235F44; else goto L_02235F3C;
|
|
L_02235F3C: ; // 0x2235f3c
|
|
/* 02235F3C */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 02235F3C */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02235F40 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02235F40 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02235F44: ; // 0x2235f44
|
|
/* 02235F44 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02235F44 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02235F48 */ /* nop */
|
|
/* 02235F4C */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02235F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02235F50 */ cpu->lr = cpu->r[0];
|
|
/* 02235F54 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02235F58 */ return;
|
|
}
|
|
|
|
// fn_02235F5C @ 0x2235f5c
|
|
void Gambit_fn_02235F5C(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_02235F5C: ; // 0x2235f5c
|
|
/* 02235F5C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02235F5C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02235F60 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02235F60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02235F64 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02235F64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02235F68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02235F6C */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02235F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02235F70 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02235F70 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02235F70 */ if (_t5) goto L_02235F74; else goto L_02235F7C;
|
|
L_02235F74: ; // 0x2235f74
|
|
/* 02235F74 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02235F78 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02235F7C: ; // 0x2235f7c
|
|
/* 02235F7C */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02235F7C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02235F80 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02235F80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02235F84 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 02235F84 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02235F88 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02235F88 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02235F8C */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02235F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02235F90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02235F94 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02235F94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02235F98 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02235F98 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02235F98 */ if (_t13) goto L_02235F9C; else goto L_02235FA4;
|
|
L_02235F9C: ; // 0x2235f9c
|
|
/* 02235F9C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02235FA0 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02235FA4: ; // 0x2235fa4
|
|
/* 02235FA4 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 02235FA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02235FA8 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02235FA8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02235FAC */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 02235FAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02235FB0 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 02235FB0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02235FB4 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 02235FB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02235FB8 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 02235FB8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02235FBC */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 02235FBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02235FC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02235FC4 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 02235FC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02235FC8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02235FC8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02235FC8 */ if (_t23) goto L_02235FCC; else goto L_02235FD4;
|
|
L_02235FCC: ; // 0x2235fcc
|
|
/* 02235FCC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02235FD0 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02235FD4: ; // 0x2235fd4
|
|
/* 02235FD4 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02235FD4 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02235FD8 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 02235FD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02235FDC */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 02235FDC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02235FE0 */ return;
|
|
}
|
|
|
|
// fn_02235FE8 @ 0x2235fe8
|
|
void Gambit_fn_02235FE8(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_02235FE8: ; // 0x2235fe8
|
|
/* 02235FE8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02235FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02235FE8 */ cpu->r[1] = _t0;
|
|
/* 02235FEC */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02235FEC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02235FF0 */ /* nop */
|
|
/* 02235FF4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02235FF4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02235FF8 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02235FF8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02235FFC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02235FFC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02236000 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02236000 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02236004 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02236004 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02236008 */ /* nop */
|
|
/* 0223600C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0223600C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02236010 */ cpu->r[31] = cpu->r[3];
|
|
/* 02236010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02236014 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02236014 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02236018 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236018 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0223601C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223601C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223601C */ if (_t11) goto L_02236020; else goto L_02236030;
|
|
L_02236020: ; // 0x2236020
|
|
/* 02236020 */ cpu->r[3] = 0x00000214u;
|
|
/* 02236024 */ Gambit_fn_02801A78(cpu);
|
|
/* 02236028 */ cpu->r[31] = cpu->r[3];
|
|
/* 02236028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223602C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223602C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223602C */ if (_t13) goto L_02236228; else goto L_02236030;
|
|
L_02236030: ; // 0x2236030
|
|
/* 02236030 */ cpu->r[3] = cpu->r[31];
|
|
/* 02236034 */ Gambit_fn_02228894(cpu);
|
|
/* 02236038 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223603C */ cpu->r[6] = 0x10050000u;
|
|
/* 02236040 */ _t14 = cpu->r[8] + 0x00001F20u;
|
|
/* 02236040 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02236044 */ cpu->r[0] = 0x10050000u;
|
|
/* 02236048 */ _t15 = cpu->r[6] + 0x00001F28u;
|
|
/* 02236048 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0223604C */ cpu->r[0] = cpu->r[0] + 0x00002010u;
|
|
/* 02236050 */ _t16 = cpu->r[31] + 0x00000128u;
|
|
/* 02236050 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 02236054 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 02236054 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02236058 */ _t18 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02236058 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[31]);
|
|
/* 0223605C */ _t19 = cpu->r[31] + 0x00000134u;
|
|
/* 0223605C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[30]);
|
|
/* 02236060 */ _t20 = cpu->r[31] + 0x00000138u;
|
|
/* 02236060 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[31]);
|
|
/* 02236064 */ cpu->r[5] = cpu->r[31] + 0x0000013Cu;
|
|
/* 02236064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02236068 */ _t21 = cpu->r[31] + 0x00000130u;
|
|
/* 02236068 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 0223606C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223606C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223606C */ if (_t23) goto L_02236070; else goto L_02236078;
|
|
L_02236070: ; // 0x2236070
|
|
/* 02236070 */ cpu->r[3] = 0x00000030u;
|
|
/* 02236074 */ Gambit_fn_02801A78(cpu);
|
|
L_02236078: ; // 0x2236078
|
|
/* 02236078 */ cpu->r[7] = cpu->r[31] + 0x0000016Cu;
|
|
/* 02236078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0223607C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223607C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0223607C */ if (_t25) goto L_02236080; else goto L_02236088;
|
|
L_02236080: ; // 0x2236080
|
|
/* 02236080 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02236084 */ Gambit_fn_02801A78(cpu);
|
|
L_02236088: ; // 0x2236088
|
|
/* 02236088 */ cpu->r[9] = cpu->r[31] + 0x00000178u;
|
|
/* 02236088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223608C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223608C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223608C */ if (_t27) goto L_02236090; else goto L_02236098;
|
|
L_02236090: ; // 0x2236090
|
|
/* 02236090 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02236094 */ Gambit_fn_02801A78(cpu);
|
|
L_02236098: ; // 0x2236098
|
|
/* 02236098 */ cpu->r[0] = 0x00000014u;
|
|
/* 0223609C */ cpu->r[29] = 0x00000000u;
|
|
/* 022360A0 */ cpu->r[30] = 0x10050000u;
|
|
/* 022360A4 */ _t28 = cpu->r[31] + 0x00000186u;
|
|
/* 022360A4 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 022360A8 */ cpu->r[30] = cpu->r[30] + 0x00001EE0u;
|
|
/* 022360AC */ cpu->r[3] = cpu->r[31] + 0x00000188u;
|
|
/* 022360AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022360B0 */ _t29 = cpu->r[31] + 0x00000184u;
|
|
/* 022360B0 */ rbrew_write16(cpu->mem, _t29, (uint16_t)cpu->r[29]);
|
|
/* 022360B4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022360B4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022360B4 */ if (_t31) goto L_022360B8; else goto L_022360C8;
|
|
L_022360B8: ; // 0x22360b8
|
|
/* 022360B8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022360BC */ Gambit_fn_02801A78(cpu);
|
|
/* 022360C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022360C4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022360C4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022360C4 */ if (_t33) goto L_022360D4; else goto L_022360C8;
|
|
L_022360C8: ; // 0x22360c8
|
|
/* 022360C8 */ _t34 = cpu->r[3] + 0x00000000u;
|
|
/* 022360C8 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 022360CC */ _t35 = cpu->r[3] + 0x00000008u;
|
|
/* 022360CC */ rbrew_write32(cpu->mem, _t35, cpu->r[30]);
|
|
/* 022360D0 */ _t36 = cpu->r[3] + 0x00000004u;
|
|
/* 022360D0 */ rbrew_write32(cpu->mem, _t36, cpu->r[29]);
|
|
L_022360D4: ; // 0x22360d4
|
|
/* 022360D4 */ cpu->r[28] = 0x10050000u;
|
|
/* 022360D8 */ cpu->r[28] = cpu->r[28] + 0x00001EF0u;
|
|
/* 022360DC */ cpu->r[3] = cpu->r[31] + 0x00000194u;
|
|
/* 022360DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022360E0 */ _t37 = cpu->r[31] + 0x00000190u;
|
|
/* 022360E0 */ rbrew_write32(cpu->mem, _t37, cpu->r[28]);
|
|
/* 022360E4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022360E4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022360E4 */ if (_t39) goto L_022360E8; else goto L_022360F8;
|
|
L_022360E8: ; // 0x22360e8
|
|
/* 022360E8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022360EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022360F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022360F4 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022360F4 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022360F4 */ if (_t41) goto L_02236104; else goto L_022360F8;
|
|
L_022360F8: ; // 0x22360f8
|
|
/* 022360F8 */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 022360F8 */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 022360FC */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 022360FC */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 02236100 */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 02236100 */ rbrew_write32(cpu->mem, _t44, cpu->r[29]);
|
|
L_02236104: ; // 0x2236104
|
|
/* 02236104 */ cpu->r[3] = cpu->r[31] + 0x000001A0u;
|
|
/* 02236104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236108 */ _t45 = cpu->r[31] + 0x0000019Cu;
|
|
/* 02236108 */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 0223610C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223610C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0223610C */ if (_t47) goto L_02236110; else goto L_02236120;
|
|
L_02236110: ; // 0x2236110
|
|
/* 02236110 */ cpu->r[3] = 0x00000008u;
|
|
/* 02236114 */ Gambit_fn_02801A78(cpu);
|
|
/* 02236118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223611C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223611C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0223611C */ if (_t49) goto L_02236128; else goto L_02236120;
|
|
L_02236120: ; // 0x2236120
|
|
/* 02236120 */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 02236120 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 02236124 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 02236124 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
L_02236128: ; // 0x2236128
|
|
/* 02236128 */ cpu->r[11] = cpu->r[31] + 0x000001A0u;
|
|
/* 0223612C */ cpu->r[3] = cpu->r[11] + 0x00000008u;
|
|
/* 0223612C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236130 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236130 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02236130 */ if (_t53) goto L_02236134; else goto L_02236144;
|
|
L_02236134: ; // 0x2236134
|
|
/* 02236134 */ cpu->r[3] = 0x00000008u;
|
|
/* 02236138 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236140 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236140 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02236140 */ if (_t55) goto L_0223614C; else goto L_02236144;
|
|
L_02236144: ; // 0x2236144
|
|
/* 02236144 */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 02236144 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[30]);
|
|
/* 02236148 */ _t57 = cpu->r[3] + 0x00000000u;
|
|
/* 02236148 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[30]);
|
|
L_0223614C: ; // 0x223614c
|
|
/* 0223614C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0223614C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236150 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236150 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02236150 */ if (_t59) goto L_02236154; else goto L_02236164;
|
|
L_02236154: ; // 0x2236154
|
|
/* 02236154 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02236158 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223615C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236160 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236160 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02236160 */ if (_t61) goto L_02236170; else goto L_02236164;
|
|
L_02236164: ; // 0x2236164
|
|
/* 02236164 */ _t62 = cpu->r[3] + 0x00000000u;
|
|
/* 02236164 */ rbrew_write32(cpu->mem, _t62, cpu->r[29]);
|
|
/* 02236168 */ _t63 = cpu->r[3] + 0x00000008u;
|
|
/* 02236168 */ rbrew_write32(cpu->mem, _t63, cpu->r[30]);
|
|
/* 0223616C */ _t64 = cpu->r[3] + 0x00000004u;
|
|
/* 0223616C */ rbrew_write32(cpu->mem, _t64, cpu->r[29]);
|
|
L_02236170: ; // 0x2236170
|
|
/* 02236170 */ cpu->r[3] = cpu->r[31] + 0x000001BCu;
|
|
/* 02236170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236174 */ _t65 = cpu->r[31] + 0x000001B8u;
|
|
/* 02236174 */ rbrew_write32(cpu->mem, _t65, cpu->r[28]);
|
|
/* 02236178 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236178 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02236178 */ if (_t67) goto L_0223617C; else goto L_0223618C;
|
|
L_0223617C: ; // 0x223617c
|
|
/* 0223617C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02236180 */ Gambit_fn_02801A78(cpu);
|
|
/* 02236184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236188 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236188 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02236188 */ if (_t69) goto L_02236198; else goto L_0223618C;
|
|
L_0223618C: ; // 0x223618c
|
|
/* 0223618C */ _t70 = cpu->r[3] + 0x00000000u;
|
|
/* 0223618C */ rbrew_write32(cpu->mem, _t70, cpu->r[29]);
|
|
/* 02236190 */ _t71 = cpu->r[3] + 0x00000008u;
|
|
/* 02236190 */ rbrew_write32(cpu->mem, _t71, cpu->r[30]);
|
|
/* 02236194 */ _t72 = cpu->r[3] + 0x00000004u;
|
|
/* 02236194 */ rbrew_write32(cpu->mem, _t72, cpu->r[29]);
|
|
L_02236198: ; // 0x2236198
|
|
/* 02236198 */ cpu->r[3] = cpu->r[31] + 0x000001C8u;
|
|
/* 02236198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223619C */ _t73 = cpu->r[31] + 0x000001C4u;
|
|
/* 0223619C */ rbrew_write32(cpu->mem, _t73, cpu->r[28]);
|
|
/* 022361A0 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022361A0 */ _t75 = _t74 & 0x00000001u;
|
|
/* 022361A0 */ if (_t75) goto L_022361A4; else goto L_022361B4;
|
|
L_022361A4: ; // 0x22361a4
|
|
/* 022361A4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022361A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022361AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022361B0 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022361B0 */ _t77 = _t76 & 0x00000001u;
|
|
/* 022361B0 */ if (_t77) goto L_022361C0; else goto L_022361B4;
|
|
L_022361B4: ; // 0x22361b4
|
|
/* 022361B4 */ _t78 = cpu->r[3] + 0x00000000u;
|
|
/* 022361B4 */ rbrew_write32(cpu->mem, _t78, cpu->r[29]);
|
|
/* 022361B8 */ _t79 = cpu->r[3] + 0x00000008u;
|
|
/* 022361B8 */ rbrew_write32(cpu->mem, _t79, cpu->r[30]);
|
|
/* 022361BC */ _t80 = cpu->r[3] + 0x00000004u;
|
|
/* 022361BC */ rbrew_write32(cpu->mem, _t80, cpu->r[29]);
|
|
L_022361C0: ; // 0x22361c0
|
|
/* 022361C0 */ cpu->r[3] = cpu->r[31] + 0x000001D4u;
|
|
/* 022361C4 */ _t81 = cpu->r[31] + 0x000001D0u;
|
|
/* 022361C4 */ rbrew_write32(cpu->mem, _t81, cpu->r[28]);
|
|
/* 022361C8 */ Gambit_fn_02043B8C(cpu);
|
|
/* 022361CC */ cpu->r[30] = cpu->r[31] + 0x000001E4u;
|
|
/* 022361CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022361D0 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022361D0 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022361D0 */ if (_t83) goto L_022361D4; else goto L_022361E4;
|
|
L_022361D4: ; // 0x22361d4
|
|
/* 022361D4 */ cpu->r[3] = 0x00000030u;
|
|
/* 022361D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022361DC */ cpu->r[30] = cpu->r[3];
|
|
/* 022361DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022361E0 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022361E0 */ _t85 = _t84 & 0x00000001u;
|
|
/* 022361E0 */ if (_t85) goto L_02236228; else goto L_022361E4;
|
|
L_022361E4: ; // 0x22361e4
|
|
/* 022361E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022361E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022361E8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022361E8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 022361E8 */ if (_t87) goto L_022361EC; else goto L_022361FC;
|
|
L_022361EC: ; // 0x22361ec
|
|
/* 022361EC */ cpu->r[3] = 0x00000010u;
|
|
/* 022361F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022361F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022361F8 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022361F8 */ _t89 = _t88 & 0x00000001u;
|
|
/* 022361F8 */ if (_t89) goto L_0223620C; else goto L_022361FC;
|
|
L_022361FC: ; // 0x22361fc
|
|
/* 022361FC */ _t90 = cpu->r[3] + 0x00000004u;
|
|
/* 022361FC */ rbrew_write32(cpu->mem, _t90, cpu->r[29]);
|
|
/* 02236200 */ _t91 = cpu->r[3] + 0x00000008u;
|
|
/* 02236200 */ rbrew_write32(cpu->mem, _t91, cpu->r[29]);
|
|
/* 02236204 */ _t92 = cpu->r[3] + 0x00000000u;
|
|
/* 02236204 */ rbrew_write32(cpu->mem, _t92, cpu->r[29]);
|
|
/* 02236208 */ _t93 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02236208 */ rbrew_write32(cpu->mem, _t93, cpu->r[29]);
|
|
L_0223620C: ; // 0x223620c
|
|
/* 0223620C */ cpu->r[0] = cpu->r[30] + 0x00000010u;
|
|
/* 0223620C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02236210 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236210 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02236210 */ if (_t95) goto L_02236228; else goto L_02236214;
|
|
L_02236214: ; // 0x2236214
|
|
/* 02236214 */ _t96 = cpu->r[30] + 0x00000000u;
|
|
/* 02236214 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 02236218 */ cpu->r[0] = 0x00000008u;
|
|
/* 0223621C */ _t97 = cpu->r[30] + 0x00000008u;
|
|
/* 0223621C */ rbrew_write32(cpu->mem, _t97, cpu->r[29]);
|
|
/* 02236220 */ _t98 = cpu->r[30] + 0x00000004u;
|
|
/* 02236220 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 02236224 */ _t99 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02236224 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
L_02236228: ; // 0x2236228
|
|
/* 02236228 */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02236228 */ cpu->r[28] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0223622C */ _t101 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223622C */ cpu->r[29] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02236230 */ _t102 = cpu->r[1] + 0x00000030u;
|
|
/* 02236230 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02236234 */ _t103 = cpu->r[1] + 0x00000020u;
|
|
/* 02236234 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 02236238 */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 02236238 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t104);
|
|
/* 0223623C */ _t105 = cpu->r[1] + 0x00000018u;
|
|
/* 0223623C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t105);
|
|
/* 02236240 */ cpu->r[3] = cpu->r[31];
|
|
/* 02236244 */ _t106 = cpu->r[1] + 0x00000014u;
|
|
/* 02236244 */ cpu->r[31] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02236248 */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 02236248 */ cpu->r[30] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0223624C */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223624C */ _t109 = _t108 & 0x00000001u;
|
|
/* 0223624C */ if (_t109) goto L_02236250; // else: addr-0 trap, fall-through
|
|
L_02236250: ; // 0x2236250
|
|
/* 02236250 */ _t110 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02236250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02236254 */ cpu->lr = cpu->r[0];
|
|
/* 02236258 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0223625C */ return;
|
|
}
|
|
|
|
// fn_02236260 @ 0x2236260
|
|
void Gambit_fn_02236260(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_02236260: ; // 0x2236260
|
|
/* 02236260 */ cpu->r[0] = cpu->lr;
|
|
/* 02236264 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02236264 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236264 */ cpu->r[1] = _t0;
|
|
/* 02236268 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02236268 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223626C */ /* nop */
|
|
/* 02236270 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02236270 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02236274 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236278 */ _t3 = cpu->r[12] + 0x00001F38u;
|
|
/* 02236278 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223627C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223627C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02236280 */ _t5 = cpu->r[3] + 0x00000128u;
|
|
/* 02236280 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02236284 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236288 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0223628C */ _t6 = cpu->r[12] + 0x00001F24u;
|
|
/* 0223628C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02236290 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236290 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02236290 */ if (_t8) goto L_02236294; else goto L_022362D8;
|
|
L_02236294: ; // 0x2236294
|
|
/* 02236294 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236298 */ _t9 = cpu->r[12] + 0x00001F3Cu;
|
|
/* 02236298 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223629C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 022362A0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022362A0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022362A0 */ if (_t11) goto L_022362A4; else goto L_022362D0;
|
|
L_022362A4: ; // 0x22362a4
|
|
/* 022362A4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362A8 */ cpu->f[0] = cpu->f[10] - cpu->f[12];
|
|
/* 022362AC */ _t12 = cpu->r[12] + 0x00001F44u;
|
|
/* 022362AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022362B0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362B4 */ cpu->f[2] = cpu->f[0] / cpu->f[13];
|
|
/* 022362B8 */ _t13 = cpu->r[12] + 0x00001F48u;
|
|
/* 022362B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022362BC */ Gambit_fn_0204EA50(cpu);
|
|
/* 022362C0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362C4 */ _t14 = cpu->r[12] + 0x00001F40u;
|
|
/* 022362C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022362C8 */ cpu->f[31] = fma(cpu->f[11], cpu->f[1], cpu->f[31]);
|
|
/* 022362CC */ goto L_022362D8;
|
|
L_022362D0: ; // 0x22362d0
|
|
/* 022362D0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362D4 */ _t15 = cpu->r[12] + 0x00001F4Cu;
|
|
/* 022362D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
L_022362D8: ; // 0x22362d8
|
|
/* 022362D8 */ cpu->f[1] = cpu->f[31];
|
|
/* 022362DC */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022362DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022362E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022362E0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 022362E4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022362E4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022362E4 */ if (_t19) goto L_022362E8; // else: addr-0 trap, fall-through
|
|
L_022362E8: ; // 0x22362e8
|
|
/* 022362E8 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022362E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022362EC */ cpu->lr = cpu->r[0];
|
|
/* 022362F0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022362F4 */ return;
|
|
}
|
|
|
|
// fn_02236264 @ 0x2236264
|
|
void Gambit_fn_02236264(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_02236264: ; // 0x2236264
|
|
/* 02236264 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02236264 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236264 */ cpu->r[1] = _t0;
|
|
/* 02236268 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02236268 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223626C */ /* nop */
|
|
/* 02236270 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02236270 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02236274 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236278 */ _t3 = cpu->r[12] + 0x00001F38u;
|
|
/* 02236278 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223627C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223627C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02236280 */ _t5 = cpu->r[3] + 0x00000128u;
|
|
/* 02236280 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02236284 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236288 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0223628C */ _t6 = cpu->r[12] + 0x00001F24u;
|
|
/* 0223628C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02236290 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236290 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02236290 */ if (_t8) goto L_02236294; else goto L_022362D8;
|
|
L_02236294: ; // 0x2236294
|
|
/* 02236294 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236298 */ _t9 = cpu->r[12] + 0x00001F3Cu;
|
|
/* 02236298 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223629C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 022362A0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022362A0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022362A0 */ if (_t11) goto L_022362A4; else goto L_022362D0;
|
|
L_022362A4: ; // 0x22362a4
|
|
/* 022362A4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362A8 */ cpu->f[0] = cpu->f[10] - cpu->f[12];
|
|
/* 022362AC */ _t12 = cpu->r[12] + 0x00001F44u;
|
|
/* 022362AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022362B0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362B4 */ cpu->f[2] = cpu->f[0] / cpu->f[13];
|
|
/* 022362B8 */ _t13 = cpu->r[12] + 0x00001F48u;
|
|
/* 022362B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022362BC */ Gambit_fn_0204EA50(cpu);
|
|
/* 022362C0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362C4 */ _t14 = cpu->r[12] + 0x00001F40u;
|
|
/* 022362C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022362C8 */ cpu->f[31] = fma(cpu->f[11], cpu->f[1], cpu->f[31]);
|
|
/* 022362CC */ goto L_022362D8;
|
|
L_022362D0: ; // 0x22362d0
|
|
/* 022362D0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022362D4 */ _t15 = cpu->r[12] + 0x00001F4Cu;
|
|
/* 022362D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
L_022362D8: ; // 0x22362d8
|
|
/* 022362D8 */ cpu->f[1] = cpu->f[31];
|
|
/* 022362DC */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022362DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022362E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022362E0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 022362E4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022362E4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022362E4 */ if (_t19) goto L_022362E8; // else: addr-0 trap, fall-through
|
|
L_022362E8: ; // 0x22362e8
|
|
/* 022362E8 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022362E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022362EC */ cpu->lr = cpu->r[0];
|
|
/* 022362F0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022362F4 */ return;
|
|
}
|
|
|
|
// fn_022362F8 @ 0x22362f8
|
|
void Gambit_fn_022362F8(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_022362F8: ; // 0x22362f8
|
|
/* 022362F8 */ cpu->r[0] = cpu->lr;
|
|
/* 022362FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022362FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022362FC */ cpu->r[1] = _t0;
|
|
/* 02236300 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02236300 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236304 */ /* nop */
|
|
/* 02236308 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02236308 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223630C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236310 */ _t3 = cpu->r[12] + 0x00001F38u;
|
|
/* 02236310 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02236314 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236314 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02236318 */ _t5 = cpu->r[3] + 0x00000128u;
|
|
/* 02236318 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223631C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236320 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 02236324 */ _t6 = cpu->r[12] + 0x00001F50u;
|
|
/* 02236324 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02236328 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236328 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02236328 */ if (_t8) goto L_0223632C; else goto L_02236370;
|
|
L_0223632C: ; // 0x223632c
|
|
/* 0223632C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236330 */ _t9 = cpu->r[12] + 0x00001F3Cu;
|
|
/* 02236330 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02236334 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02236338 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236338 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02236338 */ if (_t11) goto L_0223633C; else goto L_02236368;
|
|
L_0223633C: ; // 0x223633c
|
|
/* 0223633C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236340 */ cpu->f[0] = cpu->f[10] - cpu->f[12];
|
|
/* 02236344 */ _t12 = cpu->r[12] + 0x00001F44u;
|
|
/* 02236344 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02236348 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223634C */ cpu->f[2] = cpu->f[0] / cpu->f[13];
|
|
/* 02236350 */ _t13 = cpu->r[12] + 0x00001F48u;
|
|
/* 02236350 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02236354 */ Gambit_fn_0204EA50(cpu);
|
|
/* 02236358 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223635C */ _t14 = cpu->r[12] + 0x00001F54u;
|
|
/* 0223635C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02236360 */ cpu->f[31] = fma(cpu->f[11], cpu->f[1], cpu->f[31]);
|
|
/* 02236364 */ goto L_02236370;
|
|
L_02236368: ; // 0x2236368
|
|
/* 02236368 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223636C */ _t15 = cpu->r[12] + 0x00001F58u;
|
|
/* 0223636C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
L_02236370: ; // 0x2236370
|
|
/* 02236370 */ cpu->f[1] = cpu->f[31];
|
|
/* 02236374 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02236374 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02236378 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02236378 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 0223637C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223637C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0223637C */ if (_t19) goto L_02236380; // else: addr-0 trap, fall-through
|
|
L_02236380: ; // 0x2236380
|
|
/* 02236380 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02236384 */ cpu->lr = cpu->r[0];
|
|
/* 02236388 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223638C */ return;
|
|
}
|
|
|
|
// fn_022362FC @ 0x22362fc
|
|
void Gambit_fn_022362FC(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_022362FC: ; // 0x22362fc
|
|
/* 022362FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022362FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022362FC */ cpu->r[1] = _t0;
|
|
/* 02236300 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02236300 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236304 */ /* nop */
|
|
/* 02236308 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02236308 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223630C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236310 */ _t3 = cpu->r[12] + 0x00001F38u;
|
|
/* 02236310 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02236314 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236314 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02236318 */ _t5 = cpu->r[3] + 0x00000128u;
|
|
/* 02236318 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223631C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236320 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 02236324 */ _t6 = cpu->r[12] + 0x00001F50u;
|
|
/* 02236324 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02236328 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236328 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02236328 */ if (_t8) goto L_0223632C; else goto L_02236370;
|
|
L_0223632C: ; // 0x223632c
|
|
/* 0223632C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236330 */ _t9 = cpu->r[12] + 0x00001F3Cu;
|
|
/* 02236330 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02236334 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02236338 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236338 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02236338 */ if (_t11) goto L_0223633C; else goto L_02236368;
|
|
L_0223633C: ; // 0x223633c
|
|
/* 0223633C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236340 */ cpu->f[0] = cpu->f[10] - cpu->f[12];
|
|
/* 02236344 */ _t12 = cpu->r[12] + 0x00001F44u;
|
|
/* 02236344 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02236348 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223634C */ cpu->f[2] = cpu->f[0] / cpu->f[13];
|
|
/* 02236350 */ _t13 = cpu->r[12] + 0x00001F48u;
|
|
/* 02236350 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02236354 */ Gambit_fn_0204EA50(cpu);
|
|
/* 02236358 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223635C */ _t14 = cpu->r[12] + 0x00001F54u;
|
|
/* 0223635C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02236360 */ cpu->f[31] = fma(cpu->f[11], cpu->f[1], cpu->f[31]);
|
|
/* 02236364 */ goto L_02236370;
|
|
L_02236368: ; // 0x2236368
|
|
/* 02236368 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223636C */ _t15 = cpu->r[12] + 0x00001F58u;
|
|
/* 0223636C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
L_02236370: ; // 0x2236370
|
|
/* 02236370 */ cpu->f[1] = cpu->f[31];
|
|
/* 02236374 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02236374 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02236378 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02236378 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 0223637C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223637C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0223637C */ if (_t19) goto L_02236380; // else: addr-0 trap, fall-through
|
|
L_02236380: ; // 0x2236380
|
|
/* 02236380 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02236384 */ cpu->lr = cpu->r[0];
|
|
/* 02236388 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223638C */ return;
|
|
}
|
|
|
|
// fn_02236390 @ 0x2236390
|
|
void Gambit_fn_02236390(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;
|
|
|
|
L_02236390: ; // 0x2236390
|
|
/* 02236390 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 02236390 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236390 */ cpu->r[1] = _t0;
|
|
/* 02236394 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02236394 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236398 */ cpu->r[0] = cpu->lr;
|
|
/* 0223639C */ /* nop */
|
|
/* 022363A0 */ /* nop */
|
|
/* 022363A4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022363A8 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 022363A8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022363AC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 022363B0 */ _t3 = cpu->r[1] + 0x00000094u;
|
|
/* 022363B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022363B4 */ cpu->r[29] = cpu->r[8];
|
|
/* 022363B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022363BC */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 022363BC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022363C0 */ cpu->r[28] = cpu->r[7];
|
|
/* 022363C4 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022363C4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022363C8 */ cpu->r[26] = cpu->r[9];
|
|
/* 022363CC */ _t6 = cpu->r[1] + 0x00000048u;
|
|
/* 022363CC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022363D0 */ cpu->r[27] = cpu->r[10];
|
|
/* 022363D4 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 022363D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 022363D8 */ _t8 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022363D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 022363DC */ cpu->r[11] = 0x10050000u;
|
|
/* 022363E0 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 022363E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 022363E4 */ _t10 = cpu->r[11] + 0x00001F20u;
|
|
/* 022363E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022363E8 */ cpu->r[25] = cpu->r[4];
|
|
/* 022363EC */ cpu->r[30] = cpu->r[3];
|
|
/* 022363F0 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 022363F0 */ rbrew_write16(cpu->mem, _t11, (uint16_t)cpu->r[12]);
|
|
/* 022363F4 */ cpu->r[4] = cpu->r[5];
|
|
/* 022363F8 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 022363FC */ _t12 = cpu->r[30] + 0x00000128u;
|
|
/* 022363FC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 02236400 */ Gambit_fn_027E3E54(cpu);
|
|
/* 02236404 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236408 */ _t13 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02236408 */ rbrew_write32(cpu->mem, _t13, cpu->r[25]);
|
|
/* 0223640C */ cpu->r[12] = cpu->r[12] + 0x00001E98u;
|
|
/* 02236410 */ _t14 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02236410 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[26]);
|
|
/* 02236414 */ cpu->r[11] = 0x00000002u;
|
|
/* 02236418 */ _t15 = cpu->r[1] + 0x00000060u;
|
|
/* 02236418 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0223641C */ _t16 = cpu->r[1] + 0x00000054u;
|
|
/* 0223641C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02236420 */ cpu->r[0] = 0x10050000u;
|
|
/* 02236424 */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 02236424 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 02236428 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 02236428 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0223642C */ cpu->r[0] = cpu->r[0] + 0x00001F68u;
|
|
/* 02236430 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 02236430 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02236434 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02236438 */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223643C */ _t20 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223643C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02236440 */ Gambit_fn_021BD554(cpu);
|
|
/* 02236444 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02236448 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 02236448 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0223644C */ cpu->r[7] = 0x10050000u;
|
|
/* 02236450 */ _t22 = cpu->r[9] + 0x00006338u;
|
|
/* 02236450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02236450 */ cpu->r[9] = _t22;
|
|
/* 02236454 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236458 */ _t23 = cpu->r[7] + 0x00001F5Cu;
|
|
/* 02236458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0223645C */ _t24 = cpu->r[11] + 0x00001F28u;
|
|
/* 0223645C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02236460 */ _t25 = cpu->r[9] + 0x00000008u;
|
|
/* 02236460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02236464 */ cpu->r[8] = 0x10050000u;
|
|
/* 02236468 */ _t26 = cpu->r[9] + 0x00000004u;
|
|
/* 02236468 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223646C */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0223646C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 02236470 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 02236470 */ rbrew_write32(cpu->mem, _t28, cpu->r[6]);
|
|
/* 02236474 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02236474 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02236478 */ _t30 = cpu->r[28] + 0x00000004u;
|
|
/* 02236478 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223647C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223647C */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 02236480 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236480 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 02236484 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02236484 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 02236488 */ _t34 = cpu->r[29] + 0x00000004u;
|
|
/* 02236488 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0223648C */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 0223648C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02236490 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02236490 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 02236494 */ _t37 = cpu->r[8] + 0x00001F60u;
|
|
/* 02236494 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02236498 */ _t38 = cpu->r[29] + 0x00000000u;
|
|
/* 02236498 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0223649C */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0223649C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 022364A0 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 022364A0 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 022364A4 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022364A4 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 022364A8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022364A8 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022364AC */ cpu->r[7] = 0x10050000u;
|
|
/* 022364B0 */ _t43 = cpu->r[28] + 0x00000008u;
|
|
/* 022364B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022364B4 */ _t44 = cpu->r[1] + 0x00000050u;
|
|
/* 022364B4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[3]);
|
|
/* 022364B8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022364B8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 022364BC */ _t46 = cpu->r[7] + 0x00001F64u;
|
|
/* 022364BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022364C0 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 022364C0 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 022364C4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 022364C4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022364C8 */ _t49 = cpu->r[28] + 0x00000000u;
|
|
/* 022364C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022364CC */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022364CC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 022364D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022364D4 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 022364D4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 022364D8 */ Gambit_fn_02236260(cpu);
|
|
/* 022364DC */ cpu->r[6] = 0x10050000u;
|
|
/* 022364E0 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022364E4 */ _t52 = cpu->r[6] + 0x00001F38u;
|
|
/* 022364E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022364E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022364EC */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022364EC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 022364F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022364F4 */ _t54 = cpu->r[1] + 0x00000030u;
|
|
/* 022364F4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022364F8 */ Gambit_fn_0222A738(cpu);
|
|
/* 022364FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02236500 */ Gambit_fn_022362F8(cpu);
|
|
/* 02236504 */ _t55 = cpu->r[30] + 0x00000184u;
|
|
/* 02236504 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02236508 */ cpu->r[0] = 0x00000005u;
|
|
/* 0223650C */ _t56 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223650C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02236510 */ _t57 = rbrew_rlwinm(cpu->r[0], 0x0000000Au, 0x00000012u, 0x00000015u);
|
|
/* 02236510 */ _t58 = cpu->r[10] & 0xFFFFC3FFu;
|
|
/* 02236510 */ cpu->r[10] = _t58 | _t57;
|
|
/* 02236514 */ _t59 = cpu->r[30] + 0x000001F0u;
|
|
/* 02236514 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
/* 02236518 */ _t60 = cpu->r[30] + 0x00000134u;
|
|
/* 02236518 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 0223651C */ _t61 = cpu->r[30] + 0x0000012Cu;
|
|
/* 0223651C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[1]);
|
|
/* 02236520 */ _t62 = cpu->r[30] + 0x00000130u;
|
|
/* 02236520 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 02236524 */ _t63 = cpu->r[30] + 0x00000184u;
|
|
/* 02236524 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02236528 */ _t64 = cpu->r[30] + 0x000001ECu;
|
|
/* 02236528 */ rbrew_write32(cpu->mem, _t64, cpu->r[31]);
|
|
/* 0223652C */ _t65 = cpu->r[30] + 0x00000138u;
|
|
/* 0223652C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[31]);
|
|
/* 02236530 */ _t66 = cpu->r[30] + 0x00000184u;
|
|
/* 02236530 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[31]);
|
|
/* 02236534 */ /* nop */
|
|
/* 02236538 */ _t67 = cpu->r[1] + 0x00000088u;
|
|
/* 02236538 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0223653C */ _t68 = cpu->r[1] + 0x00000080u;
|
|
/* 0223653C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 02236540 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236540 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02236540 */ if (_t70) goto L_02236544; // else: addr-0 trap, fall-through
|
|
L_02236544: ; // 0x2236544
|
|
/* 02236544 */ _t71 = cpu->r[1] + 0x00000094u;
|
|
/* 02236544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02236548 */ cpu->lr = cpu->r[0];
|
|
/* 0223654C */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02236550 */ return;
|
|
}
|
|
|
|
// fn_02236554 @ 0x2236554
|
|
void Gambit_fn_02236554(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;
|
|
|
|
L_02236390: ; // 0x2236390
|
|
/* 02236390 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 02236390 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236390 */ cpu->r[1] = _t0;
|
|
/* 02236394 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02236394 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236398 */ cpu->r[0] = cpu->lr;
|
|
/* 0223639C */ /* nop */
|
|
/* 022363A0 */ /* nop */
|
|
/* 022363A4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022363A8 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 022363A8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022363AC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 022363B0 */ _t3 = cpu->r[1] + 0x00000094u;
|
|
/* 022363B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022363B4 */ cpu->r[29] = cpu->r[8];
|
|
/* 022363B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022363BC */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 022363BC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022363C0 */ cpu->r[28] = cpu->r[7];
|
|
/* 022363C4 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022363C4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022363C8 */ cpu->r[26] = cpu->r[9];
|
|
/* 022363CC */ _t6 = cpu->r[1] + 0x00000048u;
|
|
/* 022363CC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022363D0 */ cpu->r[27] = cpu->r[10];
|
|
/* 022363D4 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 022363D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 022363D8 */ _t8 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022363D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 022363DC */ cpu->r[11] = 0x10050000u;
|
|
/* 022363E0 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 022363E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 022363E4 */ _t10 = cpu->r[11] + 0x00001F20u;
|
|
/* 022363E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022363E8 */ cpu->r[25] = cpu->r[4];
|
|
/* 022363EC */ cpu->r[30] = cpu->r[3];
|
|
/* 022363F0 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 022363F0 */ rbrew_write16(cpu->mem, _t11, (uint16_t)cpu->r[12]);
|
|
/* 022363F4 */ cpu->r[4] = cpu->r[5];
|
|
/* 022363F8 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 022363FC */ _t12 = cpu->r[30] + 0x00000128u;
|
|
/* 022363FC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 02236400 */ Gambit_fn_027E3E54(cpu);
|
|
/* 02236404 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236408 */ _t13 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02236408 */ rbrew_write32(cpu->mem, _t13, cpu->r[25]);
|
|
/* 0223640C */ cpu->r[12] = cpu->r[12] + 0x00001E98u;
|
|
/* 02236410 */ _t14 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02236410 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[26]);
|
|
/* 02236414 */ cpu->r[11] = 0x00000002u;
|
|
/* 02236418 */ _t15 = cpu->r[1] + 0x00000060u;
|
|
/* 02236418 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0223641C */ _t16 = cpu->r[1] + 0x00000054u;
|
|
/* 0223641C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02236420 */ cpu->r[0] = 0x10050000u;
|
|
/* 02236424 */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 02236424 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 02236428 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 02236428 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0223642C */ cpu->r[0] = cpu->r[0] + 0x00001F68u;
|
|
/* 02236430 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 02236430 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02236434 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02236438 */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223643C */ _t20 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223643C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02236440 */ Gambit_fn_021BD554(cpu);
|
|
/* 02236444 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02236448 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 02236448 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0223644C */ cpu->r[7] = 0x10050000u;
|
|
/* 02236450 */ _t22 = cpu->r[9] + 0x00006338u;
|
|
/* 02236450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02236450 */ cpu->r[9] = _t22;
|
|
/* 02236454 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236458 */ _t23 = cpu->r[7] + 0x00001F5Cu;
|
|
/* 02236458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0223645C */ _t24 = cpu->r[11] + 0x00001F28u;
|
|
/* 0223645C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02236460 */ _t25 = cpu->r[9] + 0x00000008u;
|
|
/* 02236460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02236464 */ cpu->r[8] = 0x10050000u;
|
|
/* 02236468 */ _t26 = cpu->r[9] + 0x00000004u;
|
|
/* 02236468 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223646C */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0223646C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 02236470 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 02236470 */ rbrew_write32(cpu->mem, _t28, cpu->r[6]);
|
|
/* 02236474 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02236474 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02236478 */ _t30 = cpu->r[28] + 0x00000004u;
|
|
/* 02236478 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223647C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223647C */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 02236480 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236480 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 02236484 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02236484 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 02236488 */ _t34 = cpu->r[29] + 0x00000004u;
|
|
/* 02236488 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0223648C */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 0223648C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02236490 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02236490 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 02236494 */ _t37 = cpu->r[8] + 0x00001F60u;
|
|
/* 02236494 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02236498 */ _t38 = cpu->r[29] + 0x00000000u;
|
|
/* 02236498 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0223649C */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0223649C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 022364A0 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 022364A0 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 022364A4 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022364A4 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 022364A8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022364A8 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022364AC */ cpu->r[7] = 0x10050000u;
|
|
/* 022364B0 */ _t43 = cpu->r[28] + 0x00000008u;
|
|
/* 022364B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022364B4 */ _t44 = cpu->r[1] + 0x00000050u;
|
|
/* 022364B4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[3]);
|
|
/* 022364B8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022364B8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 022364BC */ _t46 = cpu->r[7] + 0x00001F64u;
|
|
/* 022364BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022364C0 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 022364C0 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 022364C4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 022364C4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022364C8 */ _t49 = cpu->r[28] + 0x00000000u;
|
|
/* 022364C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022364CC */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022364CC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 022364D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022364D4 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 022364D4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 022364D8 */ Gambit_fn_02236260(cpu);
|
|
/* 022364DC */ cpu->r[6] = 0x10050000u;
|
|
/* 022364E0 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022364E4 */ _t52 = cpu->r[6] + 0x00001F38u;
|
|
/* 022364E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022364E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022364EC */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022364EC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 022364F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022364F4 */ _t54 = cpu->r[1] + 0x00000030u;
|
|
/* 022364F4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022364F8 */ Gambit_fn_0222A738(cpu);
|
|
/* 022364FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02236500 */ Gambit_fn_022362F8(cpu);
|
|
/* 02236504 */ _t55 = cpu->r[30] + 0x00000184u;
|
|
/* 02236504 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02236508 */ cpu->r[0] = 0x00000005u;
|
|
/* 0223650C */ _t56 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223650C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02236510 */ _t57 = rbrew_rlwinm(cpu->r[0], 0x0000000Au, 0x00000012u, 0x00000015u);
|
|
/* 02236510 */ _t58 = cpu->r[10] & 0xFFFFC3FFu;
|
|
/* 02236510 */ cpu->r[10] = _t58 | _t57;
|
|
/* 02236514 */ _t59 = cpu->r[30] + 0x000001F0u;
|
|
/* 02236514 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
/* 02236518 */ _t60 = cpu->r[30] + 0x00000134u;
|
|
/* 02236518 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 0223651C */ _t61 = cpu->r[30] + 0x0000012Cu;
|
|
/* 0223651C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[1]);
|
|
/* 02236520 */ _t62 = cpu->r[30] + 0x00000130u;
|
|
/* 02236520 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 02236524 */ _t63 = cpu->r[30] + 0x00000184u;
|
|
/* 02236524 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02236528 */ _t64 = cpu->r[30] + 0x000001ECu;
|
|
/* 02236528 */ rbrew_write32(cpu->mem, _t64, cpu->r[31]);
|
|
/* 0223652C */ _t65 = cpu->r[30] + 0x00000138u;
|
|
/* 0223652C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[31]);
|
|
/* 02236530 */ _t66 = cpu->r[30] + 0x00000184u;
|
|
/* 02236530 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[31]);
|
|
/* 02236534 */ /* nop */
|
|
/* 02236538 */ _t67 = cpu->r[1] + 0x00000088u;
|
|
/* 02236538 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0223653C */ _t68 = cpu->r[1] + 0x00000080u;
|
|
/* 0223653C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 02236540 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236540 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02236540 */ if (_t70) goto L_02236544; // else: addr-0 trap, fall-through
|
|
L_02236544: ; // 0x2236544
|
|
/* 02236544 */ _t71 = cpu->r[1] + 0x00000094u;
|
|
/* 02236544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02236548 */ cpu->lr = cpu->r[0];
|
|
/* 0223654C */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02236550 */ return;
|
|
L_02236554: ; // 0x2236554
|
|
/* 02236554 */ _t72 = cpu->r[3] + 0x00000184u;
|
|
/* 02236554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02236558 */ _t73 = rbrew_rlwinm(cpu->r[9], 0x00000008u, 0x00000016u, 0x00000017u);
|
|
/* 02236558 */ _t74 = cpu->r[0] & 0xFFFFFCFFu;
|
|
/* 02236558 */ cpu->r[0] = _t74 | _t73;
|
|
/* 0223655C */ cpu->r[9] = 0x00000001u;
|
|
/* 02236560 */ _t75 = cpu->r[3] + 0x00000184u;
|
|
/* 02236560 */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 02236564 */ goto L_02236390;
|
|
}
|
|
|
|
// fn_02236568 @ 0x2236568
|
|
void Gambit_fn_02236568(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;
|
|
|
|
L_02236390: ; // 0x2236390
|
|
/* 02236390 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 02236390 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236390 */ cpu->r[1] = _t0;
|
|
/* 02236394 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02236394 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236398 */ cpu->r[0] = cpu->lr;
|
|
/* 0223639C */ /* nop */
|
|
/* 022363A0 */ /* nop */
|
|
/* 022363A4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022363A8 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 022363A8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022363AC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 022363B0 */ _t3 = cpu->r[1] + 0x00000094u;
|
|
/* 022363B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022363B4 */ cpu->r[29] = cpu->r[8];
|
|
/* 022363B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022363BC */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 022363BC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022363C0 */ cpu->r[28] = cpu->r[7];
|
|
/* 022363C4 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022363C4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022363C8 */ cpu->r[26] = cpu->r[9];
|
|
/* 022363CC */ _t6 = cpu->r[1] + 0x00000048u;
|
|
/* 022363CC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022363D0 */ cpu->r[27] = cpu->r[10];
|
|
/* 022363D4 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 022363D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 022363D8 */ _t8 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022363D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 022363DC */ cpu->r[11] = 0x10050000u;
|
|
/* 022363E0 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 022363E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 022363E4 */ _t10 = cpu->r[11] + 0x00001F20u;
|
|
/* 022363E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022363E8 */ cpu->r[25] = cpu->r[4];
|
|
/* 022363EC */ cpu->r[30] = cpu->r[3];
|
|
/* 022363F0 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 022363F0 */ rbrew_write16(cpu->mem, _t11, (uint16_t)cpu->r[12]);
|
|
/* 022363F4 */ cpu->r[4] = cpu->r[5];
|
|
/* 022363F8 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 022363FC */ _t12 = cpu->r[30] + 0x00000128u;
|
|
/* 022363FC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 02236400 */ Gambit_fn_027E3E54(cpu);
|
|
/* 02236404 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236408 */ _t13 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02236408 */ rbrew_write32(cpu->mem, _t13, cpu->r[25]);
|
|
/* 0223640C */ cpu->r[12] = cpu->r[12] + 0x00001E98u;
|
|
/* 02236410 */ _t14 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02236410 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[26]);
|
|
/* 02236414 */ cpu->r[11] = 0x00000002u;
|
|
/* 02236418 */ _t15 = cpu->r[1] + 0x00000060u;
|
|
/* 02236418 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0223641C */ _t16 = cpu->r[1] + 0x00000054u;
|
|
/* 0223641C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02236420 */ cpu->r[0] = 0x10050000u;
|
|
/* 02236424 */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 02236424 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 02236428 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 02236428 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0223642C */ cpu->r[0] = cpu->r[0] + 0x00001F68u;
|
|
/* 02236430 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 02236430 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02236434 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02236438 */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223643C */ _t20 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223643C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02236440 */ Gambit_fn_021BD554(cpu);
|
|
/* 02236444 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02236448 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 02236448 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0223644C */ cpu->r[7] = 0x10050000u;
|
|
/* 02236450 */ _t22 = cpu->r[9] + 0x00006338u;
|
|
/* 02236450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02236450 */ cpu->r[9] = _t22;
|
|
/* 02236454 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236458 */ _t23 = cpu->r[7] + 0x00001F5Cu;
|
|
/* 02236458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0223645C */ _t24 = cpu->r[11] + 0x00001F28u;
|
|
/* 0223645C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02236460 */ _t25 = cpu->r[9] + 0x00000008u;
|
|
/* 02236460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02236464 */ cpu->r[8] = 0x10050000u;
|
|
/* 02236468 */ _t26 = cpu->r[9] + 0x00000004u;
|
|
/* 02236468 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223646C */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0223646C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 02236470 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 02236470 */ rbrew_write32(cpu->mem, _t28, cpu->r[6]);
|
|
/* 02236474 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02236474 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02236478 */ _t30 = cpu->r[28] + 0x00000004u;
|
|
/* 02236478 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223647C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223647C */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 02236480 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236480 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 02236484 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02236484 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 02236488 */ _t34 = cpu->r[29] + 0x00000004u;
|
|
/* 02236488 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0223648C */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 0223648C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02236490 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02236490 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 02236494 */ _t37 = cpu->r[8] + 0x00001F60u;
|
|
/* 02236494 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02236498 */ _t38 = cpu->r[29] + 0x00000000u;
|
|
/* 02236498 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0223649C */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0223649C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 022364A0 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 022364A0 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 022364A4 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022364A4 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 022364A8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022364A8 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022364AC */ cpu->r[7] = 0x10050000u;
|
|
/* 022364B0 */ _t43 = cpu->r[28] + 0x00000008u;
|
|
/* 022364B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022364B4 */ _t44 = cpu->r[1] + 0x00000050u;
|
|
/* 022364B4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[3]);
|
|
/* 022364B8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022364B8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 022364BC */ _t46 = cpu->r[7] + 0x00001F64u;
|
|
/* 022364BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022364C0 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 022364C0 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 022364C4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 022364C4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022364C8 */ _t49 = cpu->r[28] + 0x00000000u;
|
|
/* 022364C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022364CC */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022364CC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 022364D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022364D4 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 022364D4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 022364D8 */ Gambit_fn_02236260(cpu);
|
|
/* 022364DC */ cpu->r[6] = 0x10050000u;
|
|
/* 022364E0 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022364E4 */ _t52 = cpu->r[6] + 0x00001F38u;
|
|
/* 022364E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022364E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022364EC */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022364EC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 022364F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022364F4 */ _t54 = cpu->r[1] + 0x00000030u;
|
|
/* 022364F4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022364F8 */ Gambit_fn_0222A738(cpu);
|
|
/* 022364FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02236500 */ Gambit_fn_022362F8(cpu);
|
|
/* 02236504 */ _t55 = cpu->r[30] + 0x00000184u;
|
|
/* 02236504 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02236508 */ cpu->r[0] = 0x00000005u;
|
|
/* 0223650C */ _t56 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223650C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02236510 */ _t57 = rbrew_rlwinm(cpu->r[0], 0x0000000Au, 0x00000012u, 0x00000015u);
|
|
/* 02236510 */ _t58 = cpu->r[10] & 0xFFFFC3FFu;
|
|
/* 02236510 */ cpu->r[10] = _t58 | _t57;
|
|
/* 02236514 */ _t59 = cpu->r[30] + 0x000001F0u;
|
|
/* 02236514 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
/* 02236518 */ _t60 = cpu->r[30] + 0x00000134u;
|
|
/* 02236518 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 0223651C */ _t61 = cpu->r[30] + 0x0000012Cu;
|
|
/* 0223651C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[1]);
|
|
/* 02236520 */ _t62 = cpu->r[30] + 0x00000130u;
|
|
/* 02236520 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 02236524 */ _t63 = cpu->r[30] + 0x00000184u;
|
|
/* 02236524 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02236528 */ _t64 = cpu->r[30] + 0x000001ECu;
|
|
/* 02236528 */ rbrew_write32(cpu->mem, _t64, cpu->r[31]);
|
|
/* 0223652C */ _t65 = cpu->r[30] + 0x00000138u;
|
|
/* 0223652C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[31]);
|
|
/* 02236530 */ _t66 = cpu->r[30] + 0x00000184u;
|
|
/* 02236530 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[31]);
|
|
/* 02236534 */ /* nop */
|
|
/* 02236538 */ _t67 = cpu->r[1] + 0x00000088u;
|
|
/* 02236538 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0223653C */ _t68 = cpu->r[1] + 0x00000080u;
|
|
/* 0223653C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 02236540 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236540 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02236540 */ if (_t70) goto L_02236544; // else: addr-0 trap, fall-through
|
|
L_02236544: ; // 0x2236544
|
|
/* 02236544 */ _t71 = cpu->r[1] + 0x00000094u;
|
|
/* 02236544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02236548 */ cpu->lr = cpu->r[0];
|
|
/* 0223654C */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02236550 */ return;
|
|
L_02236568: ; // 0x2236568
|
|
/* 02236568 */ _t72 = cpu->r[3] + 0x00000184u;
|
|
/* 02236568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0223656C */ _t73 = rbrew_rlwinm(cpu->r[9], 0x00000008u, 0x00000016u, 0x00000017u);
|
|
/* 0223656C */ _t74 = cpu->r[0] & 0xFFFFFCFFu;
|
|
/* 0223656C */ cpu->r[0] = _t74 | _t73;
|
|
/* 02236570 */ cpu->r[9] = 0x00000000u;
|
|
/* 02236574 */ _t75 = cpu->r[3] + 0x00000184u;
|
|
/* 02236574 */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 02236578 */ goto L_02236390;
|
|
}
|
|
|
|
// fn_0223657C @ 0x223657c
|
|
void Gambit_fn_0223657C(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;
|
|
|
|
L_0223657C: ; // 0x223657c
|
|
/* 0223657C */ cpu->r[11] = 0x10050000u;
|
|
/* 02236580 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02236580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236580 */ cpu->r[1] = _t0;
|
|
/* 02236584 */ cpu->r[0] = cpu->r[4] ^ 0x80000000u;
|
|
/* 02236588 */ _t1 = cpu->r[11] + 0x00001F78u;
|
|
/* 02236588 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t1);
|
|
/* 0223658C */ cpu->r[9] = 0x43300000u;
|
|
/* 02236590 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236590 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02236594 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02236594 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02236598 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02236598 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t4);
|
|
/* 0223659C */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 022365A0 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 022365A4 */ _t5 = cpu->r[3] + 0x00000138u;
|
|
/* 022365A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022365A8 */ cpu->r[9] = 0x10050000u;
|
|
/* 022365AC */ cpu->f[12] = cpu->f[12] - cpu->f[10];
|
|
/* 022365B0 */ _t6 = cpu->r[9] + 0x00001F20u;
|
|
/* 022365B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022365B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022365B8 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022365B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022365B8 */ if (_t8) goto L_022365BC; else goto L_0223665C;
|
|
L_022365BC: ; // 0x22365bc
|
|
/* 022365BC */ cpu->r[12] = 0x10050000u;
|
|
/* 022365C0 */ cpu->r[10] = 0x10050000u;
|
|
/* 022365C4 */ _t9 = cpu->r[12] + 0x00001F80u;
|
|
/* 022365C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022365C8 */ _t10 = cpu->r[10] + 0x00001F30u;
|
|
/* 022365C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022365CC */ cpu->f[0] = cpu->f[12] / cpu->f[9];
|
|
/* 022365D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 022365D4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022365D8 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022365D8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022365D8 */ if (_t12) goto L_022365FC; else goto L_022365DC;
|
|
L_022365DC: ; // 0x22365dc
|
|
/* 022365DC */ _t13 = cpu->r[3] + 0x00000184u;
|
|
/* 022365DC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t13);
|
|
/* 022365E0 */ cpu->r[0] = cpu->r[10] + 0x0000003Cu;
|
|
/* 022365E4 */ /* nop */
|
|
/* 022365E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 022365EC */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022365EC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022365EC */ if (_t15) goto L_022365F0; else goto L_022365F4;
|
|
L_022365F0: ; // 0x22365f0
|
|
/* 022365F0 */ cpu->r[0] = 0x0000003Cu;
|
|
L_022365F4: ; // 0x22365f4
|
|
/* 022365F4 */ _t16 = cpu->r[3] + 0x00000184u;
|
|
/* 022365F4 */ rbrew_write16(cpu->mem, _t16, (uint16_t)cpu->r[0]);
|
|
/* 022365F8 */ goto L_0223665C;
|
|
L_022365FC: ; // 0x22365fc
|
|
/* 022365FC */ cpu->r[8] = 0x10050000u;
|
|
/* 02236600 */ _t17 = cpu->r[8] + 0x00001F84u;
|
|
/* 02236600 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02236604 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02236608 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236608 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02236608 */ if (_t19) goto L_02236640; else goto L_0223660C;
|
|
L_0223660C: ; // 0x223660c
|
|
/* 0223660C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236610 */ cpu->f[9] = cpu->f[0] - cpu->f[10];
|
|
/* 02236614 */ _t20 = cpu->r[12] + 0x00001F88u;
|
|
/* 02236614 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02236618 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223661C */ cpu->f[11] = cpu->f[9] / cpu->f[0];
|
|
/* 02236620 */ _t21 = cpu->r[12] + 0x00001F58u;
|
|
/* 02236620 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02236624 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236628 */ _t22 = cpu->r[11] + 0x00001F28u;
|
|
/* 02236628 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0223662C */ cpu->f[0] = fma(cpu->f[12], cpu->f[11], cpu->f[13]);
|
|
/* 02236630 */ cpu->f[9] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 02236634 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 02236638 */ /* nop */
|
|
/* 0223663C */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0223663C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
L_02236640: ; // 0x2236640
|
|
/* 02236640 */ _t24 = cpu->r[3] + 0x00000184u;
|
|
/* 02236640 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 02236644 */ cpu->r[0] = cpu->r[10] + cpu->r[0];
|
|
/* 02236648 */ /* nop */
|
|
/* 0223664C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 02236650 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236650 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02236650 */ if (_t26) goto L_02236654; else goto L_02236658;
|
|
L_02236654: ; // 0x2236654
|
|
/* 02236654 */ cpu->r[0] = 0x0000003Cu;
|
|
L_02236658: ; // 0x2236658
|
|
/* 02236658 */ _t27 = cpu->r[3] + 0x00000184u;
|
|
/* 02236658 */ rbrew_write16(cpu->mem, _t27, (uint16_t)cpu->r[0]);
|
|
L_0223665C: ; // 0x223665c
|
|
/* 0223665C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02236660 */ return;
|
|
}
|
|
|
|
// fn_02236580 @ 0x2236580
|
|
void Gambit_fn_02236580(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;
|
|
|
|
L_02236580: ; // 0x2236580
|
|
/* 02236580 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02236580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236580 */ cpu->r[1] = _t0;
|
|
/* 02236584 */ cpu->r[0] = cpu->r[4] ^ 0x80000000u;
|
|
/* 02236588 */ _t1 = cpu->r[11] + 0x00001F78u;
|
|
/* 02236588 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t1);
|
|
/* 0223658C */ cpu->r[9] = 0x43300000u;
|
|
/* 02236590 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236590 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02236594 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02236594 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02236598 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02236598 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t4);
|
|
/* 0223659C */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 022365A0 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 022365A4 */ _t5 = cpu->r[3] + 0x00000138u;
|
|
/* 022365A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022365A8 */ cpu->r[9] = 0x10050000u;
|
|
/* 022365AC */ cpu->f[12] = cpu->f[12] - cpu->f[10];
|
|
/* 022365B0 */ _t6 = cpu->r[9] + 0x00001F20u;
|
|
/* 022365B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022365B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022365B8 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022365B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022365B8 */ if (_t8) goto L_022365BC; else goto L_0223665C;
|
|
L_022365BC: ; // 0x22365bc
|
|
/* 022365BC */ cpu->r[12] = 0x10050000u;
|
|
/* 022365C0 */ cpu->r[10] = 0x10050000u;
|
|
/* 022365C4 */ _t9 = cpu->r[12] + 0x00001F80u;
|
|
/* 022365C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022365C8 */ _t10 = cpu->r[10] + 0x00001F30u;
|
|
/* 022365C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022365CC */ cpu->f[0] = cpu->f[12] / cpu->f[9];
|
|
/* 022365D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 022365D4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022365D8 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022365D8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022365D8 */ if (_t12) goto L_022365FC; else goto L_022365DC;
|
|
L_022365DC: ; // 0x22365dc
|
|
/* 022365DC */ _t13 = cpu->r[3] + 0x00000184u;
|
|
/* 022365DC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t13);
|
|
/* 022365E0 */ cpu->r[0] = cpu->r[10] + 0x0000003Cu;
|
|
/* 022365E4 */ /* nop */
|
|
/* 022365E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 022365EC */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022365EC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022365EC */ if (_t15) goto L_022365F0; else goto L_022365F4;
|
|
L_022365F0: ; // 0x22365f0
|
|
/* 022365F0 */ cpu->r[0] = 0x0000003Cu;
|
|
L_022365F4: ; // 0x22365f4
|
|
/* 022365F4 */ _t16 = cpu->r[3] + 0x00000184u;
|
|
/* 022365F4 */ rbrew_write16(cpu->mem, _t16, (uint16_t)cpu->r[0]);
|
|
/* 022365F8 */ goto L_0223665C;
|
|
L_022365FC: ; // 0x22365fc
|
|
/* 022365FC */ cpu->r[8] = 0x10050000u;
|
|
/* 02236600 */ _t17 = cpu->r[8] + 0x00001F84u;
|
|
/* 02236600 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02236604 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02236608 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236608 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02236608 */ if (_t19) goto L_02236640; else goto L_0223660C;
|
|
L_0223660C: ; // 0x223660c
|
|
/* 0223660C */ cpu->r[12] = 0x10050000u;
|
|
/* 02236610 */ cpu->f[9] = cpu->f[0] - cpu->f[10];
|
|
/* 02236614 */ _t20 = cpu->r[12] + 0x00001F88u;
|
|
/* 02236614 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02236618 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223661C */ cpu->f[11] = cpu->f[9] / cpu->f[0];
|
|
/* 02236620 */ _t21 = cpu->r[12] + 0x00001F58u;
|
|
/* 02236620 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02236624 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236628 */ _t22 = cpu->r[11] + 0x00001F28u;
|
|
/* 02236628 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0223662C */ cpu->f[0] = fma(cpu->f[12], cpu->f[11], cpu->f[13]);
|
|
/* 02236630 */ cpu->f[9] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 02236634 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 02236638 */ /* nop */
|
|
/* 0223663C */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0223663C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
L_02236640: ; // 0x2236640
|
|
/* 02236640 */ _t24 = cpu->r[3] + 0x00000184u;
|
|
/* 02236640 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 02236644 */ cpu->r[0] = cpu->r[10] + cpu->r[0];
|
|
/* 02236648 */ /* nop */
|
|
/* 0223664C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 02236650 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236650 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02236650 */ if (_t26) goto L_02236654; else goto L_02236658;
|
|
L_02236654: ; // 0x2236654
|
|
/* 02236654 */ cpu->r[0] = 0x0000003Cu;
|
|
L_02236658: ; // 0x2236658
|
|
/* 02236658 */ _t27 = cpu->r[3] + 0x00000184u;
|
|
/* 02236658 */ rbrew_write16(cpu->mem, _t27, (uint16_t)cpu->r[0]);
|
|
L_0223665C: ; // 0x223665c
|
|
/* 0223665C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02236660 */ return;
|
|
}
|
|
|
|
// fn_02236664 @ 0x2236664
|
|
void Gambit_fn_02236664(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02236664: ; // 0x2236664
|
|
/* 02236664 */ cpu->r[0] = cpu->lr;
|
|
/* 02236668 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02236668 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236668 */ cpu->r[1] = _t0;
|
|
/* 0223666C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223666C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236670 */ /* nop */
|
|
/* 02236674 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02236674 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02236678 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223667C */ _t3 = cpu->r[12] + 0x00001F38u;
|
|
/* 0223667C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02236680 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236680 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02236684 */ _t5 = cpu->r[3] + 0x00000128u;
|
|
/* 02236684 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02236688 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0223668C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223668C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0223668C */ if (_t7) goto L_02236690; else goto L_022366C8;
|
|
L_02236690: ; // 0x2236690
|
|
/* 02236690 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236694 */ _t8 = cpu->r[12] + 0x00001F3Cu;
|
|
/* 02236694 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02236698 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0223669C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223669C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0223669C */ if (_t10) goto L_022366A0; else goto L_022366C8;
|
|
L_022366A0: ; // 0x22366a0
|
|
/* 022366A0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022366A4 */ cpu->f[0] = cpu->f[11] - cpu->f[31];
|
|
/* 022366A8 */ _t11 = cpu->r[12] + 0x00001F44u;
|
|
/* 022366A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022366AC */ cpu->r[12] = 0x10050000u;
|
|
/* 022366B0 */ cpu->f[2] = cpu->f[0] / cpu->f[13];
|
|
/* 022366B4 */ _t12 = cpu->r[12] + 0x00001F48u;
|
|
/* 022366B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022366B8 */ Gambit_fn_0204EA50(cpu);
|
|
/* 022366BC */ cpu->r[12] = 0x10050000u;
|
|
/* 022366C0 */ _t13 = cpu->r[12] + 0x00001F20u;
|
|
/* 022366C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022366C4 */ cpu->f[31] = fma(cpu->f[12], cpu->f[1], cpu->f[31]);
|
|
L_022366C8: ; // 0x22366c8
|
|
/* 022366C8 */ cpu->f[1] = cpu->f[31];
|
|
/* 022366CC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022366CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022366D0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022366D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 022366D4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022366D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022366D4 */ if (_t17) goto L_022366D8; // else: addr-0 trap, fall-through
|
|
L_022366D8: ; // 0x22366d8
|
|
/* 022366D8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022366D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022366DC */ cpu->lr = cpu->r[0];
|
|
/* 022366E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022366E4 */ return;
|
|
}
|
|
|
|
// fn_02236668 @ 0x2236668
|
|
void Gambit_fn_02236668(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02236668: ; // 0x2236668
|
|
/* 02236668 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02236668 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236668 */ cpu->r[1] = _t0;
|
|
/* 0223666C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223666C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02236670 */ /* nop */
|
|
/* 02236674 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02236674 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02236678 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223667C */ _t3 = cpu->r[12] + 0x00001F38u;
|
|
/* 0223667C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02236680 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236680 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02236684 */ _t5 = cpu->r[3] + 0x00000128u;
|
|
/* 02236684 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02236688 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0223668C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223668C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0223668C */ if (_t7) goto L_02236690; else goto L_022366C8;
|
|
L_02236690: ; // 0x2236690
|
|
/* 02236690 */ cpu->r[12] = 0x10050000u;
|
|
/* 02236694 */ _t8 = cpu->r[12] + 0x00001F3Cu;
|
|
/* 02236694 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02236698 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 0223669C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223669C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0223669C */ if (_t10) goto L_022366A0; else goto L_022366C8;
|
|
L_022366A0: ; // 0x22366a0
|
|
/* 022366A0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022366A4 */ cpu->f[0] = cpu->f[11] - cpu->f[31];
|
|
/* 022366A8 */ _t11 = cpu->r[12] + 0x00001F44u;
|
|
/* 022366A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022366AC */ cpu->r[12] = 0x10050000u;
|
|
/* 022366B0 */ cpu->f[2] = cpu->f[0] / cpu->f[13];
|
|
/* 022366B4 */ _t12 = cpu->r[12] + 0x00001F48u;
|
|
/* 022366B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022366B8 */ Gambit_fn_0204EA50(cpu);
|
|
/* 022366BC */ cpu->r[12] = 0x10050000u;
|
|
/* 022366C0 */ _t13 = cpu->r[12] + 0x00001F20u;
|
|
/* 022366C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022366C4 */ cpu->f[31] = fma(cpu->f[12], cpu->f[1], cpu->f[31]);
|
|
L_022366C8: ; // 0x22366c8
|
|
/* 022366C8 */ cpu->f[1] = cpu->f[31];
|
|
/* 022366CC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022366CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022366D0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022366D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 022366D4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022366D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022366D4 */ if (_t17) goto L_022366D8; // else: addr-0 trap, fall-through
|
|
L_022366D8: ; // 0x22366d8
|
|
/* 022366D8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022366D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022366DC */ cpu->lr = cpu->r[0];
|
|
/* 022366E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022366E4 */ return;
|
|
}
|
|
|
|
// fn_022366E8 @ 0x22366e8
|
|
void Gambit_fn_022366E8(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, _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;
|
|
double _ft98, _ft99;
|
|
|
|
L_022366E8: ; // 0x22366e8
|
|
/* 022366E8 */ _t0 = cpu->r[1] + 0xFFFFFEC8u;
|
|
/* 022366E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022366E8 */ cpu->r[1] = _t0;
|
|
/* 022366EC */ /* nop */
|
|
/* 022366F0 */ _t1 = cpu->r[1] + 0x00000128u;
|
|
/* 022366F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022366F4 */ /* nop */
|
|
/* 022366F8 */ cpu->r[0] = cpu->lr;
|
|
/* 022366FC */ _t2 = cpu->r[1] + 0x00000118u;
|
|
/* 022366FC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02236700 */ _t3 = cpu->r[1] + 0x00000130u;
|
|
/* 02236700 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02236704 */ /* nop */
|
|
/* 02236708 */ _t4 = cpu->r[1] + 0x00000120u;
|
|
/* 02236708 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0223670C */ _t5 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0223670C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02236710 */ cpu->r[29] = cpu->r[3];
|
|
/* 02236714 */ cpu->r[27] = cpu->r[5];
|
|
/* 02236718 */ _t6 = cpu->r[27] + 0x0000015Cu;
|
|
/* 02236718 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223671C */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Cu, 0x0000001Eu);
|
|
/* 02236720 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02236724 */ cpu->r[26] = 0x10050000u;
|
|
/* 02236728 */ cpu->r[28] = cpu->r[10] - cpu->r[0];
|
|
/* 02236728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223672C */ _t7 = cpu->r[29] + 0x00000030u;
|
|
/* 0223672C */ cpu->r[25] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02236730 */ cpu->r[26] = cpu->r[26] + 0x00001F8Cu;
|
|
/* 02236734 */ cpu->r[30] = cpu->r[4];
|
|
/* 02236738 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236738 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02236738 */ if (_t9) goto L_02236834; else goto L_0223673C;
|
|
L_0223673C: ; // 0x223673c
|
|
/* 0223673C */ _t10 = cpu->r[29] + 0x00000051u;
|
|
/* 0223673C */ cpu->r[9] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02236740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02236744 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236744 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02236744 */ if (_t12) goto L_02236798; else goto L_02236748;
|
|
L_02236748: ; // 0x2236748
|
|
/* 02236748 */ /* nop */
|
|
/* 0223674C */ /* nop */
|
|
/* 02236750 */ _t13 = cpu->r[29] + 0x000000D8u;
|
|
/* 02236750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02236754 */ /* nop */
|
|
/* 02236758 */ _t14 = cpu->r[30] + 0x00000008u;
|
|
/* 02236758 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0223675C */ /* nop */
|
|
/* 02236760 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02236760 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02236764 */ cpu->f[11] = cpu->f[12] - cpu->f[0];
|
|
/* 02236768 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02236768 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0223676C */ _t17 = cpu->r[1] + 0x00000038u;
|
|
/* 0223676C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02236770 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236770 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 02236774 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02236778 */ _t20 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02236778 */ rbrew_write32(cpu->mem, _t20, cpu->r[9]);
|
|
/* 0223677C */ cpu->r[3] = cpu->r[29];
|
|
/* 02236780 */ _t21 = cpu->r[1] + 0x00000040u;
|
|
/* 02236780 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02236784 */ Gambit_fn_02236664(cpu);
|
|
/* 02236788 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223678C */ cpu->r[4] = cpu->r[27];
|
|
/* 02236790 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 02236794 */ Gambit_fn_0222C8F0(cpu);
|
|
L_02236798: ; // 0x2236798
|
|
/* 02236798 */ _t22 = cpu->r[29] + 0x000001B0u;
|
|
/* 02236798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223679C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022367A0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022367A0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022367A0 */ if (_t24) goto L_022367B4; else goto L_022367A4;
|
|
L_022367A4: ; // 0x22367a4
|
|
/* 022367A4 */ _t25 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022367A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022367A8 */ _t26 = cpu->r[29] + 0x000001B4u;
|
|
/* 022367A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022367AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]);
|
|
/* 022367B0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022367B0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022367B0 */ if (_t28) goto L_022367EC; else goto L_022367B4;
|
|
L_022367B4: ; // 0x22367b4
|
|
/* 022367B4 */ cpu->r[5] = 0x00000000u;
|
|
/* 022367B8 */ cpu->r[4] = 0x00000007u;
|
|
/* 022367BC */ cpu->r[3] = cpu->r[25];
|
|
/* 022367C0 */ Gambit_fn_027B8224(cpu);
|
|
/* 022367C4 */ _t29 = cpu->r[27] + 0x0000008Cu;
|
|
/* 022367C4 */ cpu->r[11] = rbrew_read16(cpu->mem, _t29);
|
|
/* 022367C8 */ cpu->r[4] = 0x00000002u;
|
|
/* 022367CC */ cpu->r[3] = cpu->r[25];
|
|
/* 022367D0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 022367D4 */ Gambit_fn_027B8224(cpu);
|
|
/* 022367D8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022367DC */ cpu->r[5] = cpu->r[26];
|
|
/* 022367E0 */ cpu->r[4] = cpu->r[29] + 0x000001B0u;
|
|
/* 022367E4 */ cpu->r[3] = cpu->r[25];
|
|
/* 022367E8 */ Gambit_fn_027B72F0(cpu);
|
|
L_022367EC: ; // 0x22367ec
|
|
/* 022367EC */ _t30 = cpu->r[29] + 0x000001BCu;
|
|
/* 022367EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022367F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022367F4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022367F4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022367F4 */ if (_t32) goto L_022368D4; else goto L_022367F8;
|
|
L_022367F8: ; // 0x22367f8
|
|
/* 022367F8 */ _t33 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022367F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022367FC */ _t34 = cpu->r[29] + 0x000001C0u;
|
|
/* 022367FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02236800 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02236804 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236804 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02236804 */ if (_t36) goto L_02236808; else goto L_022368D4;
|
|
L_02236808: ; // 0x2236808
|
|
/* 02236808 */ _t37 = cpu->r[31] + 0x00000028u;
|
|
/* 02236808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0223680C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02236810 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236810 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02236810 */ if (_t39) goto L_02236828; else goto L_02236814;
|
|
L_02236814: ; // 0x2236814
|
|
/* 02236814 */ _t40 = cpu->r[3] + 0x00000050u;
|
|
/* 02236814 */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02236818 */ _t41 = cpu->r[6] + 0x00000024u;
|
|
/* 02236818 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223681C */ cpu->ctr = cpu->r[8];
|
|
/* 02236820 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02236824 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02236828: ; // 0x2236828
|
|
/* 02236828 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223682C */ _t42 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0223682C */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[0]);
|
|
/* 02236830 */ goto L_022368D4;
|
|
L_02236834: ; // 0x2236834
|
|
/* 02236834 */ cpu->r[3] = cpu->r[29];
|
|
/* 02236838 */ Gambit_fn_0222CA14(cpu);
|
|
/* 0223683C */ _t43 = cpu->r[29] + 0x000001BCu;
|
|
/* 0223683C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02236840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02236844 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236844 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02236844 */ if (_t45) goto L_02236858; else goto L_02236848;
|
|
L_02236848: ; // 0x2236848
|
|
/* 02236848 */ _t46 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02236848 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0223684C */ _t47 = cpu->r[29] + 0x000001C0u;
|
|
/* 0223684C */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02236850 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 02236854 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236854 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02236854 */ if (_t49) goto L_02236890; else goto L_02236858;
|
|
L_02236858: ; // 0x2236858
|
|
/* 02236858 */ cpu->r[5] = 0x00000001u;
|
|
/* 0223685C */ cpu->r[4] = 0x00000007u;
|
|
/* 02236860 */ cpu->r[3] = cpu->r[25];
|
|
/* 02236864 */ Gambit_fn_027B8224(cpu);
|
|
/* 02236868 */ _t50 = cpu->r[27] + 0x0000008Cu;
|
|
/* 02236868 */ cpu->r[0] = rbrew_read16(cpu->mem, _t50);
|
|
/* 0223686C */ cpu->r[4] = 0x00000002u;
|
|
/* 02236870 */ cpu->r[3] = cpu->r[25];
|
|
/* 02236874 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02236878 */ Gambit_fn_027B8224(cpu);
|
|
/* 0223687C */ cpu->r[6] = 0x00000000u;
|
|
/* 02236880 */ cpu->r[5] = cpu->r[26];
|
|
/* 02236884 */ cpu->r[4] = cpu->r[29] + 0x000001BCu;
|
|
/* 02236888 */ cpu->r[3] = cpu->r[25];
|
|
/* 0223688C */ Gambit_fn_027B72F0(cpu);
|
|
L_02236890: ; // 0x2236890
|
|
/* 02236890 */ _t51 = cpu->r[29] + 0x000001B0u;
|
|
/* 02236890 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02236894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02236898 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236898 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02236898 */ if (_t53) goto L_022368D4; else goto L_0223689C;
|
|
L_0223689C: ; // 0x223689c
|
|
/* 0223689C */ _t54 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0223689C */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022368A0 */ _t55 = cpu->r[29] + 0x000001B4u;
|
|
/* 022368A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022368A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 022368A8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022368A8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022368A8 */ if (_t57) goto L_022368AC; else goto L_022368D4;
|
|
L_022368AC: ; // 0x22368ac
|
|
/* 022368AC */ _t58 = cpu->r[31] + 0x00000028u;
|
|
/* 022368AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022368B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022368B4 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022368B4 */ _t60 = _t59 & 0x00000001u;
|
|
/* 022368B4 */ if (_t60) goto L_022368CC; else goto L_022368B8;
|
|
L_022368B8: ; // 0x22368b8
|
|
/* 022368B8 */ _t61 = cpu->r[3] + 0x00000050u;
|
|
/* 022368B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022368BC */ _t62 = cpu->r[11] + 0x00000024u;
|
|
/* 022368BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022368C0 */ cpu->ctr = cpu->r[12];
|
|
/* 022368C4 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022368C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022368CC: ; // 0x22368cc
|
|
/* 022368CC */ cpu->r[0] = 0x00000001u;
|
|
/* 022368D0 */ _t63 = cpu->r[31] + 0x0000004Cu;
|
|
/* 022368D0 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[0]);
|
|
L_022368D4: ; // 0x22368d4
|
|
/* 022368D4 */ cpu->r[6] = 0x10050000u;
|
|
/* 022368D8 */ _t64 = cpu->r[27] + 0x00000000u;
|
|
/* 022368D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022368DC */ cpu->r[12] = 0x10050000u;
|
|
/* 022368E0 */ cpu->r[31] = cpu->r[27] + 0x00000048u;
|
|
/* 022368E4 */ _t65 = cpu->r[6] + 0x00001F20u;
|
|
/* 022368E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022368E8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022368E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022368EC */ _t66 = cpu->r[12] + 0x00001F28u;
|
|
/* 022368EC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022368F0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022368F0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 022368F0 */ if (_t68) goto L_0223692C; else goto L_022368F4;
|
|
L_022368F4: ; // 0x22368f4
|
|
/* 022368F4 */ cpu->r[3] = cpu->r[27] + 0x0000012Cu;
|
|
/* 022368F8 */ Gambit_fn_02C69350(cpu);
|
|
/* 022368FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 02236900 */ _t69 = cpu->r[27] + 0x00000000u;
|
|
/* 02236900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02236904 */ _t70 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236904 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02236904 */ if (_t71) goto L_02236908; else goto L_02236924;
|
|
L_02236908: ; // 0x2236908
|
|
/* 02236908 */ cpu->f[13] = cpu->f[30] / cpu->f[1];
|
|
/* 0223690C */ _t72 = cpu->r[27] + 0x00000134u;
|
|
/* 0223690C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02236910 */ /* nop */
|
|
/* 02236914 */ /* nop */
|
|
/* 02236918 */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
/* 0223691C */ /* nop */
|
|
/* 02236920 */ _t73 = cpu->r[27] + 0x00000050u;
|
|
/* 02236920 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
L_02236924: ; // 0x2236924
|
|
/* 02236924 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 02236928 */ _t74 = cpu->r[27] + 0x00000000u;
|
|
/* 02236928 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
L_0223692C: ; // 0x223692c
|
|
/* 0223692C */ _t75 = cpu->r[29] + 0x00000004u;
|
|
/* 0223692C */ cpu->r[6] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02236930 */ _t76 = cpu->r[6] + 0x00000254u;
|
|
/* 02236930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02236934 */ cpu->ctr = cpu->r[0];
|
|
/* 02236938 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223693C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02236940 */ /* nop */
|
|
/* 02236944 */ /* nop */
|
|
/* 02236948 */ _t77 = cpu->r[29] + 0x00000090u;
|
|
/* 02236948 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0223694C */ /* nop */
|
|
/* 02236950 */ /* nop */
|
|
/* 02236954 */ _t78 = cpu->r[3] + 0x00000008u;
|
|
/* 02236954 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02236958 */ _t79 = cpu->r[1] + 0x00000020u;
|
|
/* 02236958 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0223695C */ cpu->f[0] = cpu->f[9] - cpu->f[11];
|
|
/* 02236960 */ _t80 = cpu->r[1] + 0x00000030u;
|
|
/* 02236960 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[31]);
|
|
/* 02236964 */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02236964 */ rbrew_write32(cpu->mem, _t81, cpu->r[12]);
|
|
/* 02236968 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 02236968 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 0223696C */ _t83 = cpu->r[1] + 0x00000028u;
|
|
/* 0223696C */ cpu->r[7] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02236970 */ cpu->r[3] = cpu->r[31];
|
|
/* 02236974 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02236978 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 0223697C */ _t84 = cpu->r[1] + 0x00000034u;
|
|
/* 0223697C */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 02236980 */ Gambit_fn_02C692EC(cpu);
|
|
/* 02236984 */ _t85 = cpu->r[1] + 0x00000054u;
|
|
/* 02236984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02236988 */ _t86 = cpu->r[1] + 0x00000050u;
|
|
/* 02236988 */ cpu->r[11] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0223698C */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223698C */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 02236990 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02236990 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02236994 */ _t89 = cpu->r[1] + 0x00000058u;
|
|
/* 02236994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02236998 */ cpu->f[9] = cpu->f[12] * cpu->f[12];
|
|
/* 0223699C */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 0223699C */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 022369A0 */ _t91 = cpu->r[1] + 0x00000008u;
|
|
/* 022369A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022369A4 */ _t92 = cpu->r[1] + 0x00000010u;
|
|
/* 022369A4 */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 022369A8 */ _t93 = cpu->r[1] + 0x00000010u;
|
|
/* 022369A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022369AC */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 022369B0 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 022369B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 022369B8 */ _t94 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022369B8 */ _t95 = _t94 & 0x00000001u;
|
|
/* 022369B8 */ if (_t95) goto L_022369BC; else goto L_022369F8;
|
|
L_022369BC: ; // 0x22369bc
|
|
/* 022369BC */ cpu->r[9] = 0x10050000u;
|
|
/* 022369C0 */ cpu->r[7] = 0x10050000u;
|
|
/* 022369C4 */ _t96 = cpu->r[9] + 0x00001F30u;
|
|
/* 022369C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 022369C8 */ _t97 = cpu->r[7] + 0x00001F34u;
|
|
/* 022369C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 022369CC */ _ft98 = sqrt(cpu->f[11]);
|
|
/* 022369CC */ _ft99 = (double)(int32_t)0x00000001u;
|
|
/* 022369CC */ cpu->f[8] = _ft99 / _ft98;
|
|
/* 022369D0 */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 022369D4 */ cpu->f[12] = cpu->f[8] * cpu->f[0];
|
|
/* 022369D8 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[11], -(cpu->f[13]));
|
|
/* 022369DC */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 022369E0 */ _t100 = cpu->r[1] + 0x00000010u;
|
|
/* 022369E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022369E4 */ /* nop */
|
|
/* 022369E8 */ cpu->f[11] = cpu->f[11] * cpu->f[8];
|
|
/* 022369EC */ /* nop */
|
|
/* 022369F0 */ _t101 = cpu->r[1] + 0x00000010u;
|
|
/* 022369F0 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[11]);
|
|
/* 022369F4 */ /* nop */
|
|
L_022369F8: ; // 0x22369f8
|
|
/* 022369F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022369FC */ cpu->r[4] = cpu->r[31];
|
|
/* 02236A00 */ cpu->r[5] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02236A04 */ Gambit_fn_02C692EC(cpu);
|
|
/* 02236A08 */ _t102 = cpu->r[1] + 0x00000060u;
|
|
/* 02236A08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02236A0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02236A10 */ _t103 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02236A10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02236A14 */ _t104 = cpu->r[1] + 0x00000064u;
|
|
/* 02236A14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02236A18 */ cpu->r[12] = cpu->r[1] + 0x00000044u;
|
|
/* 02236A1C */ _t105 = cpu->r[1] + 0x00000048u;
|
|
/* 02236A1C */ rbrew_write32(cpu->mem, _t105, cpu->r[7]);
|
|
/* 02236A20 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02236A24 */ cpu->r[5] = cpu->r[31];
|
|
/* 02236A28 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 02236A28 */ rbrew_write32(cpu->mem, _t106, cpu->r[6]);
|
|
/* 02236A2C */ cpu->r[6] = cpu->r[12];
|
|
/* 02236A30 */ _t107 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02236A30 */ rbrew_write32(cpu->mem, _t107, cpu->r[9]);
|
|
/* 02236A34 */ Gambit_fn_0216C948(cpu);
|
|
/* 02236A38 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02236A3C */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02236A40 */ cpu->r[4] = cpu->r[4] + 0x00006338u;
|
|
/* 02236A44 */ Gambit_fn_021620C4(cpu);
|
|
/* 02236A48 */ _t108 = cpu->r[30] + 0x00000004u;
|
|
/* 02236A48 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 02236A4C */ cpu->r[3] = cpu->r[1] + 0x000000C8u;
|
|
/* 02236A50 */ _t109 = cpu->r[30] + 0x00000008u;
|
|
/* 02236A50 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02236A54 */ _t110 = cpu->r[30] + 0x00000000u;
|
|
/* 02236A54 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02236A58 */ Gambit_fn_02C69840(cpu);
|
|
/* 02236A5C */ cpu->r[3] = cpu->r[1] + 0x000000C8u;
|
|
/* 02236A60 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 02236A64 */ cpu->r[5] = cpu->r[1] + 0x00000098u;
|
|
/* 02236A68 */ Gambit_fn_02C69544(cpu);
|
|
/* 02236A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02236A70 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236A70 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02236A70 */ if (_t112) goto L_02236AB8; else goto L_02236A74;
|
|
L_02236A74: ; // 0x2236a74
|
|
/* 02236A74 */ _t113 = cpu->r[29] + 0x000001B0u;
|
|
/* 02236A74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02236A78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02236A7C */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236A7C */ _t115 = _t114 & 0x00000001u;
|
|
/* 02236A7C */ if (_t115) goto L_02236AF8; else goto L_02236A80;
|
|
L_02236A80: ; // 0x2236a80
|
|
/* 02236A80 */ _t116 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02236A80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02236A84 */ _t117 = cpu->r[29] + 0x000001B4u;
|
|
/* 02236A84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02236A88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 02236A8C */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236A8C */ _t119 = _t118 & 0x00000001u;
|
|
/* 02236A8C */ if (_t119) goto L_02236A90; else goto L_02236AF8;
|
|
L_02236A90: ; // 0x2236a90
|
|
/* 02236A90 */ cpu->r[3] = cpu->r[1] + 0x00000098u;
|
|
/* 02236A94 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 02236A98 */ Gambit_fn_02C69510(cpu);
|
|
/* 02236A9C */ _t120 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02236A9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02236AA0 */ _t121 = cpu->r[31] + 0x00000074u;
|
|
/* 02236AA0 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[30]);
|
|
/* 02236AA4 */ cpu->r[12] = cpu->r[12] | 0x00000008u;
|
|
/* 02236AA8 */ _t122 = cpu->r[31] + 0x00000070u;
|
|
/* 02236AA8 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[30]);
|
|
/* 02236AAC */ _t123 = cpu->r[31] + 0x00000078u;
|
|
/* 02236AAC */ rbrew_write_f32(cpu->mem, _t123, cpu->f[30]);
|
|
/* 02236AB0 */ _t124 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02236AB0 */ rbrew_write32(cpu->mem, _t124, cpu->r[12]);
|
|
/* 02236AB4 */ goto L_02236AF8;
|
|
L_02236AB8: ; // 0x2236ab8
|
|
/* 02236AB8 */ _t125 = cpu->r[29] + 0x000001BCu;
|
|
/* 02236AB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02236ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02236AC0 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236AC0 */ _t127 = _t126 & 0x00000001u;
|
|
/* 02236AC0 */ if (_t127) goto L_02236AF8; else goto L_02236AC4;
|
|
L_02236AC4: ; // 0x2236ac4
|
|
/* 02236AC4 */ _t128 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02236AC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02236AC8 */ _t129 = cpu->r[29] + 0x000001C0u;
|
|
/* 02236AC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02236ACC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02236AD0 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236AD0 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02236AD0 */ if (_t131) goto L_02236AD4; else goto L_02236AF8;
|
|
L_02236AD4: ; // 0x2236ad4
|
|
/* 02236AD4 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 02236AD8 */ cpu->r[3] = cpu->r[1] + 0x00000098u;
|
|
/* 02236ADC */ Gambit_fn_02C69510(cpu);
|
|
/* 02236AE0 */ _t132 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02236AE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02236AE4 */ _t133 = cpu->r[31] + 0x00000074u;
|
|
/* 02236AE4 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[30]);
|
|
/* 02236AE8 */ cpu->r[12] = cpu->r[12] | 0x00000008u;
|
|
/* 02236AEC */ _t134 = cpu->r[31] + 0x00000070u;
|
|
/* 02236AEC */ rbrew_write_f32(cpu->mem, _t134, cpu->f[30]);
|
|
/* 02236AF0 */ _t135 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02236AF0 */ rbrew_write32(cpu->mem, _t135, cpu->r[12]);
|
|
/* 02236AF4 */ _t136 = cpu->r[31] + 0x00000078u;
|
|
/* 02236AF4 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[30]);
|
|
L_02236AF8: ; // 0x2236af8
|
|
/* 02236AF8 */ /* nop */
|
|
/* 02236AFC */ _t137 = cpu->r[1] + 0x00000120u;
|
|
/* 02236AFC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02236B00 */ _t138 = cpu->r[1] + 0x00000130u;
|
|
/* 02236B00 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 02236B04 */ _t139 = cpu->r[1] + 0x00000118u;
|
|
/* 02236B04 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 02236B08 */ _t140 = cpu->r[1] + 0x00000128u;
|
|
/* 02236B08 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 02236B0C */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236B0C */ _t142 = _t141 & 0x00000001u;
|
|
/* 02236B0C */ if (_t142) goto L_02236B10; // else: addr-0 trap, fall-through
|
|
L_02236B10: ; // 0x2236b10
|
|
/* 02236B10 */ _t143 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02236B10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02236B14 */ cpu->lr = cpu->r[0];
|
|
/* 02236B18 */ cpu->r[1] = cpu->r[1] + 0x00000138u;
|
|
/* 02236B1C */ return;
|
|
}
|
|
|
|
// fn_02236B20 @ 0x2236b20
|
|
void Gambit_fn_02236B20(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, _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, _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, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _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, _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;
|
|
double _ft82, _ft83, _ft120, _ft121, _ft236, _ft237, _ft259, _ft260, _ft291, _ft292;
|
|
|
|
L_02236B20: ; // 0x2236b20
|
|
/* 02236B20 */ _t0 = cpu->r[1] + 0xFFFFFDF0u;
|
|
/* 02236B20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02236B20 */ cpu->r[1] = _t0;
|
|
/* 02236B24 */ _t1 = cpu->r[1] + 0x00000120u;
|
|
/* 02236B24 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[17]);
|
|
/* 02236B28 */ _t2 = cpu->r[1] + 0x00000130u;
|
|
/* 02236B28 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[18]);
|
|
/* 02236B2C */ _t3 = cpu->r[1] + 0x00000140u;
|
|
/* 02236B2C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[19]);
|
|
/* 02236B30 */ /* nop */
|
|
/* 02236B34 */ _t4 = cpu->r[1] + 0x00000150u;
|
|
/* 02236B34 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[20]);
|
|
/* 02236B38 */ /* nop */
|
|
/* 02236B3C */ _t5 = cpu->r[1] + 0x00000160u;
|
|
/* 02236B3C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[21]);
|
|
/* 02236B40 */ /* nop */
|
|
/* 02236B44 */ _t6 = cpu->r[1] + 0x00000170u;
|
|
/* 02236B44 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[22]);
|
|
/* 02236B48 */ /* nop */
|
|
/* 02236B4C */ _t7 = cpu->r[1] + 0x00000180u;
|
|
/* 02236B4C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[23]);
|
|
/* 02236B50 */ /* nop */
|
|
/* 02236B54 */ _t8 = cpu->r[1] + 0x00000190u;
|
|
/* 02236B54 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[24]);
|
|
/* 02236B58 */ /* nop */
|
|
/* 02236B5C */ _t9 = cpu->r[1] + 0x000001A0u;
|
|
/* 02236B5C */ rbrew_write_f64(cpu->mem, _t9, cpu->f[25]);
|
|
/* 02236B60 */ /* nop */
|
|
/* 02236B64 */ _t10 = cpu->r[1] + 0x000001B0u;
|
|
/* 02236B64 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[26]);
|
|
/* 02236B68 */ /* nop */
|
|
/* 02236B6C */ _t11 = cpu->r[1] + 0x00000128u;
|
|
/* 02236B6C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[17]);
|
|
/* 02236B70 */ _t12 = cpu->r[1] + 0x00000138u;
|
|
/* 02236B70 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[18]);
|
|
/* 02236B74 */ _t13 = cpu->r[1] + 0x00000148u;
|
|
/* 02236B74 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[19]);
|
|
/* 02236B78 */ /* nop */
|
|
/* 02236B7C */ _t14 = cpu->r[1] + 0x00000158u;
|
|
/* 02236B7C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[20]);
|
|
/* 02236B80 */ _t15 = cpu->r[1] + 0x00000168u;
|
|
/* 02236B80 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[21]);
|
|
/* 02236B84 */ _t16 = cpu->r[1] + 0x00000178u;
|
|
/* 02236B84 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[22]);
|
|
/* 02236B88 */ /* nop */
|
|
/* 02236B8C */ _t17 = cpu->r[1] + 0x00000188u;
|
|
/* 02236B8C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[23]);
|
|
/* 02236B90 */ _t18 = cpu->r[1] + 0x00000198u;
|
|
/* 02236B90 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[24]);
|
|
/* 02236B94 */ _t19 = cpu->r[1] + 0x000001A8u;
|
|
/* 02236B94 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[25]);
|
|
/* 02236B98 */ cpu->r[0] = cpu->lr;
|
|
/* 02236B9C */ _t20 = cpu->r[1] + 0x000001B8u;
|
|
/* 02236B9C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[26]);
|
|
/* 02236BA0 */ _t21 = cpu->r[1] + 0x000001C0u;
|
|
/* 02236BA0 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[27]);
|
|
/* 02236BA4 */ /* nop */
|
|
/* 02236BA8 */ _t22 = cpu->r[1] + 0x000001C8u;
|
|
/* 02236BA8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[27]);
|
|
/* 02236BAC */ _t23 = cpu->r[1] + 0x000001D0u;
|
|
/* 02236BAC */ rbrew_write_f64(cpu->mem, _t23, cpu->f[28]);
|
|
/* 02236BB0 */ /* nop */
|
|
/* 02236BB4 */ _t24 = cpu->r[1] + 0x000001D8u;
|
|
/* 02236BB4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[28]);
|
|
/* 02236BB8 */ _t25 = cpu->r[1] + 0x000001E0u;
|
|
/* 02236BB8 */ rbrew_write_f64(cpu->mem, _t25, cpu->f[29]);
|
|
/* 02236BBC */ /* nop */
|
|
/* 02236BC0 */ _t26 = cpu->r[1] + 0x000001E8u;
|
|
/* 02236BC0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[29]);
|
|
/* 02236BC4 */ _t27 = cpu->r[1] + 0x000001F0u;
|
|
/* 02236BC4 */ rbrew_write_f64(cpu->mem, _t27, cpu->f[30]);
|
|
/* 02236BC8 */ /* nop */
|
|
/* 02236BCC */ _t28 = cpu->r[1] + 0x000001F8u;
|
|
/* 02236BCC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[30]);
|
|
/* 02236BD0 */ _t29 = cpu->r[1] + 0x00000200u;
|
|
/* 02236BD0 */ rbrew_write_f64(cpu->mem, _t29, cpu->f[31]);
|
|
/* 02236BD4 */ /* nop */
|
|
/* 02236BD8 */ /* nop */
|
|
/* 02236BDC */ _t30 = cpu->r[1] + 0x00000208u;
|
|
/* 02236BDC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 02236BE0 */ _t31 = cpu->r[1] + 0x00000214u;
|
|
/* 02236BE0 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02236BE4 */ cpu->r[29] = cpu->r[4];
|
|
/* 02236BE8 */ _t32 = cpu->r[3] + 0x0000012Cu;
|
|
/* 02236BE8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02236BEC */ cpu->f[8] = cpu->f[10] + cpu->f[10];
|
|
/* 02236BF0 */ _t33 = cpu->r[3] + 0x00000138u;
|
|
/* 02236BF0 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02236BF4 */ cpu->f[11] = cpu->f[8] - cpu->f[1];
|
|
/* 02236BF8 */ cpu->f[7] = (uint32_t)(int32_t)cpu->f[27];
|
|
/* 02236BFC */ cpu->r[0] = cpu->r[1] + 0x00000040u;
|
|
/* 02236C00 */ _t34 = cpu->r[3] + 0x00000138u;
|
|
/* 02236C00 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 02236C04 */ /* nop */
|
|
/* 02236C08 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 02236C08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02236C0C */ cpu->r[31] = cpu->r[3];
|
|
/* 02236C10 */ Gambit_fn_0223657C(cpu);
|
|
/* 02236C14 */ _t36 = cpu->r[31] + 0x00000138u;
|
|
/* 02236C14 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02236C18 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236C1C */ cpu->f[7] = cpu->f[9] - cpu->f[27];
|
|
/* 02236C20 */ _t37 = cpu->r[11] + 0x00001F98u;
|
|
/* 02236C20 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02236C24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[10]);
|
|
/* 02236C28 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236C28 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02236C28 */ if (_t39) goto L_02237580; else goto L_02236C2C;
|
|
L_02236C2C: ; // 0x2236c2c
|
|
/* 02236C2C */ cpu->r[9] = 0x10050000u;
|
|
/* 02236C30 */ cpu->r[8] = 0x10050000u;
|
|
/* 02236C34 */ _t40 = cpu->r[9] + 0x00001F98u;
|
|
/* 02236C34 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02236C38 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02236C3C */ _t41 = cpu->r[8] + 0x00001F38u;
|
|
/* 02236C3C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02236C40 */ cpu->f[12] = cpu->f[7] + cpu->f[9];
|
|
/* 02236C44 */ _t42 = cpu->r[5] + 0x00006320u;
|
|
/* 02236C44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02236C44 */ cpu->r[5] = _t42;
|
|
/* 02236C48 */ _t43 = cpu->r[5] + 0x00000004u;
|
|
/* 02236C48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02236C4C */ cpu->r[5] = 0x10050000u;
|
|
/* 02236C50 */ cpu->f[13] = cpu->f[12] / cpu->f[8];
|
|
/* 02236C54 */ _t44 = cpu->r[5] + 0x00001F5Cu;
|
|
/* 02236C54 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02236C58 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02236C5C */ _t45 = cpu->r[5] + 0x00006318u;
|
|
/* 02236C5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02236C5C */ cpu->r[5] = _t45;
|
|
/* 02236C60 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02236C64 */ _t46 = cpu->r[12] + 0x00006000u;
|
|
/* 02236C64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02236C68 */ _t47 = cpu->r[12] + 0x00000274u;
|
|
/* 02236C68 */ cpu->r[22] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02236C6C */ _t48 = cpu->r[31] + 0x00000088u;
|
|
/* 02236C6C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02236C70 */ _t49 = cpu->r[31] + 0x00000090u;
|
|
/* 02236C70 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02236C74 */ _t50 = cpu->r[1] + 0x00000090u;
|
|
/* 02236C74 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[7]);
|
|
/* 02236C78 */ _t51 = cpu->r[31] + 0x00000004u;
|
|
/* 02236C78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02236C7C */ _t52 = cpu->r[5] + 0x00000004u;
|
|
/* 02236C7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02236C80 */ _t53 = cpu->r[1] + 0x00000088u;
|
|
/* 02236C80 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 02236C84 */ _t54 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02236C84 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02236C88 */ _t55 = cpu->r[1] + 0x00000080u;
|
|
/* 02236C88 */ rbrew_write32(cpu->mem, _t55, cpu->r[10]);
|
|
/* 02236C8C */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 02236C90 */ _t56 = cpu->r[1] + 0x00000084u;
|
|
/* 02236C90 */ rbrew_write32(cpu->mem, _t56, cpu->r[12]);
|
|
/* 02236C94 */ cpu->r[0] = cpu->r[1] + 0x00000040u;
|
|
/* 02236C98 */ _t57 = cpu->r[1] + 0x00000094u;
|
|
/* 02236C98 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[8]);
|
|
/* 02236C9C */ _t58 = cpu->r[30] + 0x00000254u;
|
|
/* 02236C9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02236CA0 */ /* nop */
|
|
/* 02236CA4 */ cpu->ctr = cpu->r[12];
|
|
/* 02236CA8 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 02236CA8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02236CAC */ cpu->f[23] = cpu->f[29];
|
|
/* 02236CB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02236CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02236CB8 */ _t60 = cpu->r[30] + 0x00000254u;
|
|
/* 02236CB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02236CBC */ cpu->ctr = cpu->r[11];
|
|
/* 02236CC0 */ _t61 = cpu->r[3] + 0x00000000u;
|
|
/* 02236CC0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02236CC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02236CC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02236CCC */ _t62 = cpu->r[3] + 0x00000008u;
|
|
/* 02236CCC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02236CD0 */ _t63 = cpu->r[1] + 0x00000098u;
|
|
/* 02236CD0 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[31]);
|
|
/* 02236CD4 */ _t64 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02236CD4 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[9]);
|
|
/* 02236CD8 */ /* nop */
|
|
/* 02236CDC */ cpu->r[12] = 0x10050000u;
|
|
/* 02236CE0 */ /* nop */
|
|
/* 02236CE4 */ cpu->r[10] = 0x10050000u;
|
|
/* 02236CE8 */ _t65 = cpu->r[12] + 0x00001F20u;
|
|
/* 02236CE8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02236CEC */ /* nop */
|
|
/* 02236CF0 */ _t66 = cpu->r[10] + 0x00001F34u;
|
|
/* 02236CF0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02236CF4 */ /* nop */
|
|
/* 02236CF8 */ _t67 = cpu->r[1] + 0x000000D8u;
|
|
/* 02236CF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02236CFC */ _t68 = cpu->r[1] + 0x000000DCu;
|
|
/* 02236CFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02236D00 */ _t69 = cpu->r[1] + 0x000000C4u;
|
|
/* 02236D00 */ rbrew_write32(cpu->mem, _t69, cpu->r[5]);
|
|
/* 02236D04 */ _t70 = cpu->r[1] + 0x000000C8u;
|
|
/* 02236D04 */ rbrew_write32(cpu->mem, _t70, cpu->r[7]);
|
|
/* 02236D08 */ _t71 = cpu->r[1] + 0x000000C8u;
|
|
/* 02236D08 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02236D0C */ _t72 = cpu->r[1] + 0x00000094u;
|
|
/* 02236D0C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02236D10 */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 02236D14 */ _t73 = cpu->r[1] + 0x000000C4u;
|
|
/* 02236D14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02236D18 */ _t74 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02236D18 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[8]);
|
|
/* 02236D1C */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 02236D20 */ _t75 = cpu->r[1] + 0x00000084u;
|
|
/* 02236D20 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[6]);
|
|
/* 02236D24 */ cpu->r[7] = 0x10050000u;
|
|
/* 02236D28 */ _t76 = cpu->r[1] + 0x00000090u;
|
|
/* 02236D28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02236D2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 02236D30 */ _t77 = cpu->r[7] + 0x00001F30u;
|
|
/* 02236D30 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02236D34 */ _t78 = cpu->r[1] + 0x00000080u;
|
|
/* 02236D34 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[0]);
|
|
/* 02236D38 */ _t79 = cpu->r[1] + 0x00000088u;
|
|
/* 02236D38 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[11]);
|
|
/* 02236D3C */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236D3C */ _t81 = _t80 & 0x00000001u;
|
|
/* 02236D3C */ if (_t81) goto L_02236D40; else goto L_02236D60;
|
|
L_02236D40: ; // 0x2236d40
|
|
/* 02236D40 */ _ft82 = sqrt(cpu->f[10]);
|
|
/* 02236D40 */ _ft83 = (double)(int32_t)0x00000001u;
|
|
/* 02236D40 */ cpu->f[11] = _ft83 / _ft82;
|
|
/* 02236D44 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 02236D48 */ cpu->f[13] = cpu->f[11] * cpu->f[25];
|
|
/* 02236D4C */ cpu->f[12] = -fma(cpu->f[12], cpu->f[10], -(cpu->f[26]));
|
|
/* 02236D50 */ cpu->f[11] = cpu->f[12] * cpu->f[13];
|
|
/* 02236D54 */ /* nop */
|
|
/* 02236D58 */ /* nop */
|
|
/* 02236D5C */ /* nop */
|
|
L_02236D60: ; // 0x2236d60
|
|
/* 02236D60 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02236D64 */ cpu->r[23] = 0x00000000u;
|
|
/* 02236D68 */ cpu->r[24] = cpu->r[21];
|
|
/* 02236D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02236D6C */ cpu->r[30] = cpu->r[30] + 0x00001EF8u;
|
|
/* 02236D70 */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236D70 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02236D70 */ if (_t85) goto L_02236D74; else goto L_022371E0;
|
|
L_02236D74: ; // 0x2236d74
|
|
/* 02236D74 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02236D78 */ cpu->r[25] = 0x00040000u;
|
|
/* 02236D7C */ cpu->f[21] = cpu->f[28];
|
|
/* 02236D80 */ _t86 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 02236D80 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02236D84 */ cpu->r[10] = 0x10050000u;
|
|
/* 02236D88 */ cpu->r[25] = cpu->r[25] + 0x0000000Au;
|
|
/* 02236D8C */ cpu->r[26] = 0x101C0000u;
|
|
/* 02236D90 */ _t87 = cpu->r[10] + 0x00001F28u;
|
|
/* 02236D90 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02236D94 */ cpu->f[22] = cpu->f[25];
|
|
/* 02236D98 */ cpu->r[11] = 0x10050000u;
|
|
/* 02236D9C */ cpu->r[26] = cpu->r[26] + 0x0000556Cu;
|
|
/* 02236DA0 */ cpu->r[28] = 0x101C0000u;
|
|
/* 02236DA4 */ _t88 = cpu->r[11] + 0x00001F38u;
|
|
/* 02236DA4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02236DA8 */ cpu->r[27] = 0x00000000u;
|
|
/* 02236DAC */ cpu->r[28] = cpu->r[28] + 0x00005544u;
|
|
L_02236DB0: ; // 0x2236db0
|
|
/* 02236DB0 */ cpu->r[8] = 0x10050000u;
|
|
/* 02236DB4 */ cpu->r[11] = 0x43300000u;
|
|
/* 02236DB8 */ _t89 = cpu->r[8] + 0x00001F78u;
|
|
/* 02236DB8 */ cpu->f[6] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 02236DBC */ _t90 = cpu->r[31] + 0x00000088u;
|
|
/* 02236DBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02236DC0 */ cpu->r[0] = cpu->r[23] ^ 0x80000000u;
|
|
/* 02236DC4 */ _t91 = cpu->r[1] + 0x00000040u;
|
|
/* 02236DC4 */ rbrew_write32(cpu->mem, _t91, cpu->r[11]);
|
|
/* 02236DC8 */ _t92 = cpu->r[1] + 0x00000044u;
|
|
/* 02236DC8 */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 02236DCC */ _t93 = cpu->r[1] + 0x00000040u;
|
|
/* 02236DCC */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t93);
|
|
/* 02236DD0 */ _t94 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02236DD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02236DD4 */ cpu->f[8] = cpu->f[7] - cpu->f[6];
|
|
/* 02236DD8 */ _t95 = cpu->r[1] + 0x00000030u;
|
|
/* 02236DD8 */ rbrew_write32(cpu->mem, _t95, cpu->r[8]);
|
|
/* 02236DDC */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 02236DDC */ rbrew_write32(cpu->mem, _t96, cpu->r[9]);
|
|
/* 02236DE0 */ cpu->f[6] = (double)(float)cpu->f[8];
|
|
/* 02236DE4 */ _t97 = cpu->r[31] + 0x00000130u;
|
|
/* 02236DE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02236DE8 */ _t98 = cpu->r[1] + 0x00000034u;
|
|
/* 02236DE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02236DEC */ cpu->f[9] = cpu->f[6] + cpu->f[22];
|
|
/* 02236DF0 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02236DF4 */ _t99 = cpu->r[31] + 0x00000090u;
|
|
/* 02236DF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02236DF8 */ cpu->f[17] = cpu->f[30] * cpu->f[9];
|
|
/* 02236DFC */ cpu->f[6] = cpu->f[12] + cpu->f[27];
|
|
/* 02236E00 */ _t100 = cpu->r[31] + 0x00000004u;
|
|
/* 02236E00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02236E04 */ cpu->f[7] = cpu->f[6] + cpu->f[17];
|
|
/* 02236E08 */ _t101 = cpu->r[1] + 0x00000038u;
|
|
/* 02236E08 */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 02236E0C */ _t102 = cpu->r[1] + 0x00000034u;
|
|
/* 02236E0C */ rbrew_write_f32(cpu->mem, _t102, cpu->f[7]);
|
|
/* 02236E10 */ _t103 = cpu->r[6] + 0x00000254u;
|
|
/* 02236E10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02236E14 */ cpu->ctr = cpu->r[7];
|
|
/* 02236E18 */ cpu->r[3] = cpu->r[31];
|
|
/* 02236E1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02236E20 */ _t104 = cpu->r[3] + 0x00000000u;
|
|
/* 02236E20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02236E24 */ _t105 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02236E24 */ rbrew_write32(cpu->mem, _t105, cpu->r[12]);
|
|
/* 02236E28 */ _t106 = cpu->r[3] + 0x00000004u;
|
|
/* 02236E28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02236E2C */ _t107 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02236E2C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 02236E30 */ _t108 = cpu->r[1] + 0x00000020u;
|
|
/* 02236E30 */ rbrew_write32(cpu->mem, _t108, cpu->r[4]);
|
|
/* 02236E34 */ _t109 = cpu->r[1] + 0x00000020u;
|
|
/* 02236E34 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02236E38 */ _t110 = cpu->r[3] + 0x00000008u;
|
|
/* 02236E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02236E3C */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 02236E40 */ cpu->f[11] = cpu->f[8] + cpu->f[27];
|
|
/* 02236E44 */ _t111 = cpu->r[1] + 0x00000024u;
|
|
/* 02236E44 */ rbrew_write32(cpu->mem, _t111, cpu->r[0]);
|
|
/* 02236E48 */ /* nop */
|
|
/* 02236E4C */ cpu->f[12] = cpu->f[11] + cpu->f[17];
|
|
/* 02236E50 */ _t112 = cpu->r[1] + 0x00000024u;
|
|
/* 02236E50 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02236E54 */ _t113 = cpu->r[1] + 0x00000020u;
|
|
/* 02236E54 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[12]);
|
|
/* 02236E58 */ /* nop */
|
|
/* 02236E5C */ _t114 = cpu->r[1] + 0x00000038u;
|
|
/* 02236E5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02236E60 */ /* nop */
|
|
/* 02236E64 */ /* nop */
|
|
/* 02236E68 */ _t115 = cpu->r[1] + 0x00000014u;
|
|
/* 02236E68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 02236E6C */ cpu->f[9] = cpu->f[7] - cpu->f[8];
|
|
/* 02236E70 */ cpu->f[12] = cpu->f[12] * cpu->f[12];
|
|
/* 02236E74 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 02236E74 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02236E78 */ cpu->f[0] = fma(cpu->f[10], cpu->f[10], cpu->f[12]);
|
|
/* 02236E7C */ cpu->f[1] = fma(cpu->f[9], cpu->f[9], cpu->f[0]);
|
|
/* 02236E80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[21]);
|
|
/* 02236E84 */ _t117 = cpu->r[1] + 0x00000018u;
|
|
/* 02236E84 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[9]);
|
|
/* 02236E88 */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236E88 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02236E88 */ if (_t119) goto L_02236E8C; else goto L_02236EBC;
|
|
L_02236E8C: ; // 0x2236e8c
|
|
/* 02236E8C */ _ft120 = sqrt(cpu->f[1]);
|
|
/* 02236E8C */ _ft121 = (double)(int32_t)0x00000001u;
|
|
/* 02236E8C */ cpu->f[18] = _ft121 / _ft120;
|
|
/* 02236E90 */ cpu->f[19] = cpu->f[18] * cpu->f[18];
|
|
/* 02236E94 */ cpu->f[20] = cpu->f[18] * cpu->f[25];
|
|
/* 02236E98 */ cpu->f[19] = -fma(cpu->f[19], cpu->f[1], -(cpu->f[26]));
|
|
/* 02236E9C */ cpu->f[18] = cpu->f[19] * cpu->f[20];
|
|
/* 02236EA0 */ /* nop */
|
|
/* 02236EA4 */ _t122 = cpu->r[1] + 0x00000018u;
|
|
/* 02236EA4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 02236EA8 */ /* nop */
|
|
/* 02236EAC */ cpu->f[10] = cpu->f[10] * cpu->f[18];
|
|
/* 02236EB0 */ /* nop */
|
|
/* 02236EB4 */ cpu->f[1] = cpu->f[1] * cpu->f[18];
|
|
/* 02236EB8 */ _t123 = cpu->r[1] + 0x00000018u;
|
|
/* 02236EB8 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[10]);
|
|
L_02236EBC: ; // 0x2236ebc
|
|
/* 02236EBC */ _t124 = cpu->r[31] + 0x00000134u;
|
|
/* 02236EBC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02236EC0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[21]);
|
|
/* 02236EC4 */ _t125 = cpu->r[31] + 0x000001D8u;
|
|
/* 02236EC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02236EC8 */ cpu->f[3] = cpu->f[24];
|
|
/* 02236ECC */ _t126 = cpu->r[30] + 0x00000000u;
|
|
/* 02236ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02236ED0 */ _t127 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236ED0 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02236ED0 */ if (_t128) goto L_02236F10; else goto L_02236ED4;
|
|
L_02236ED4: ; // 0x2236ed4
|
|
/* 02236ED4 */ cpu->f[1] = cpu->f[2];
|
|
/* 02236ED8 */ cpu->r[6] = cpu->r[31] + 0x000001D4u;
|
|
/* 02236EDC */ cpu->r[5] = 0x00000000u;
|
|
/* 02236EE0 */ cpu->f[2] = cpu->f[3];
|
|
/* 02236EE4 */ _t129 = cpu->r[1] + 0x00000008u;
|
|
/* 02236EE4 */ rbrew_write32(cpu->mem, _t129, cpu->r[6]);
|
|
/* 02236EE8 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02236EEC */ cpu->r[6] = cpu->r[5];
|
|
/* 02236EF0 */ cpu->r[7] = cpu->r[25];
|
|
/* 02236EF4 */ cpu->r[8] = 0x000001F0u;
|
|
/* 02236EF8 */ cpu->r[10] = cpu->r[27];
|
|
/* 02236EFC */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02236F00 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02236F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02236F04 */ _t130 = cpu->r[31] + 0x000001D4u;
|
|
/* 02236F04 */ rbrew_write32(cpu->mem, _t130, cpu->r[3]);
|
|
/* 02236F08 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236F08 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02236F08 */ if (_t132) goto L_022370AC; else goto L_02236F0C;
|
|
L_02236F0C: ; // 0x2236f0c
|
|
/* 02236F0C */ goto L_02236F3C;
|
|
L_02236F10: ; // 0x2236f10
|
|
/* 02236F10 */ cpu->r[8] = cpu->r[9];
|
|
/* 02236F14 */ cpu->f[4] = cpu->f[31];
|
|
/* 02236F18 */ cpu->r[9] = cpu->r[31] + 0x000001D4u;
|
|
/* 02236F1C */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02236F20 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02236F24 */ cpu->r[6] = cpu->r[25];
|
|
/* 02236F28 */ cpu->r[7] = 0x000001F0u;
|
|
/* 02236F2C */ Gambit_fn_0204A864(cpu);
|
|
/* 02236F30 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02236F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02236F34 */ _t133 = cpu->r[31] + 0x000001D4u;
|
|
/* 02236F34 */ rbrew_write32(cpu->mem, _t133, cpu->r[3]);
|
|
/* 02236F38 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236F38 */ _t135 = _t134 & 0x00000001u;
|
|
/* 02236F38 */ if (_t135) goto L_022370AC; else goto L_02236F3C;
|
|
L_02236F3C: ; // 0x2236f3c
|
|
/* 02236F3C */ _t136 = cpu->r[31] + 0x000001D8u;
|
|
/* 02236F3C */ cpu->r[20] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02236F40 */ _t137 = cpu->r[20] + 0x00000000u;
|
|
/* 02236F40 */ cpu->r[4] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02236F44 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02236F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02236F48 */ cpu->r[19] = cpu->r[20] + 0x000000A8u;
|
|
/* 02236F4C */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236F4C */ _t139 = _t138 & 0x00000001u;
|
|
/* 02236F4C */ if (_t139) goto L_02236F88; else goto L_02236F50;
|
|
L_02236F50: ; // 0x2236f50
|
|
/* 02236F50 */ cpu->r[3] = cpu->r[20] + 0x00000138u;
|
|
/* 02236F54 */ Gambit_fn_02C69350(cpu);
|
|
/* 02236F58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[21]);
|
|
/* 02236F5C */ _t140 = cpu->r[20] + 0x00000000u;
|
|
/* 02236F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02236F60 */ _t141 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02236F60 */ _t142 = _t141 & 0x00000001u;
|
|
/* 02236F60 */ if (_t142) goto L_02236F64; else goto L_02236F80;
|
|
L_02236F64: ; // 0x2236f64
|
|
/* 02236F64 */ cpu->f[13] = cpu->f[31] / cpu->f[1];
|
|
/* 02236F68 */ _t143 = cpu->r[20] + 0x00000140u;
|
|
/* 02236F68 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02236F6C */ /* nop */
|
|
/* 02236F70 */ /* nop */
|
|
/* 02236F74 */ cpu->f[8] = cpu->f[9] * cpu->f[13];
|
|
/* 02236F78 */ /* nop */
|
|
/* 02236F7C */ _t144 = cpu->r[20] + 0x000000B0u;
|
|
/* 02236F7C */ rbrew_write_f32(cpu->mem, _t144, cpu->f[8]);
|
|
L_02236F80: ; // 0x2236f80
|
|
/* 02236F80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 02236F84 */ _t145 = cpu->r[20] + 0x00000000u;
|
|
/* 02236F84 */ rbrew_write32(cpu->mem, _t145, cpu->r[0]);
|
|
L_02236F88: ; // 0x2236f88
|
|
/* 02236F88 */ /* nop */
|
|
/* 02236F8C */ /* nop */
|
|
/* 02236F90 */ _t146 = cpu->r[19] + 0x00000008u;
|
|
/* 02236F90 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 02236F94 */ /* nop */
|
|
/* 02236F98 */ /* nop */
|
|
/* 02236F9C */ _t147 = cpu->r[1] + 0x00000018u;
|
|
/* 02236F9C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 02236FA0 */ cpu->f[8] = fma(cpu->f[6], cpu->f[7], cpu->f[13]);
|
|
/* 02236FA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[21]);
|
|
/* 02236FA8 */ _t148 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02236FA8 */ _t149 = _t148 & 0x00000001u;
|
|
/* 02236FA8 */ if (_t149) goto L_02236FAC; else goto L_022370AC;
|
|
L_02236FAC: ; // 0x2236fac
|
|
/* 02236FAC */ _t150 = cpu->r[1] + 0x00000038u;
|
|
/* 02236FAC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 02236FB0 */ /* nop */
|
|
/* 02236FB4 */ _t151 = cpu->r[1] + 0x00000024u;
|
|
/* 02236FB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 02236FB8 */ /* nop */
|
|
/* 02236FBC */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02236FC0 */ _t152 = cpu->r[26] + 0x00000000u;
|
|
/* 02236FC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02236FC4 */ /* nop */
|
|
/* 02236FC8 */ /* nop */
|
|
/* 02236FCC */ _t153 = cpu->r[1] + 0x00000058u;
|
|
/* 02236FCC */ rbrew_write_f32(cpu->mem, _t153, cpu->f[12]);
|
|
/* 02236FD0 */ _t154 = cpu->r[20] + 0x000000C0u;
|
|
/* 02236FD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02236FD4 */ _t155 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02236FD4 */ rbrew_write32(cpu->mem, _t155, cpu->r[5]);
|
|
/* 02236FD8 */ _t156 = cpu->r[20] + 0x000000C4u;
|
|
/* 02236FD8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02236FDC */ _t157 = cpu->r[1] + 0x00000060u;
|
|
/* 02236FDC */ rbrew_write32(cpu->mem, _t157, cpu->r[6]);
|
|
/* 02236FE0 */ _t158 = cpu->r[20] + 0x000000C8u;
|
|
/* 02236FE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02236FE4 */ cpu->r[9] = cpu->r[22] + cpu->r[10];
|
|
/* 02236FE8 */ _t159 = cpu->r[1] + 0x00000064u;
|
|
/* 02236FE8 */ rbrew_write32(cpu->mem, _t159, cpu->r[7]);
|
|
/* 02236FEC */ _t160 = cpu->r[9] + 0x00000104u;
|
|
/* 02236FEC */ cpu->r[4] = rbrew_read8(cpu->mem, _t160);
|
|
/* 02236FF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02236FF4 */ _t161 = cpu->r[31] + 0x00000051u;
|
|
/* 02236FF4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t161);
|
|
/* 02236FF8 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02236FF8 */ _t163 = _t162 & 0x00000001u;
|
|
/* 02236FF8 */ if (_t163) goto L_0223704C; else goto L_02236FFC;
|
|
L_02236FFC: ; // 0x2236ffc
|
|
/* 02236FFC */ cpu->r[7] = cpu->r[1] + 0x00000050u;
|
|
/* 02237000 */ cpu->r[6] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02237004 */ cpu->r[3] = cpu->r[22];
|
|
/* 02237008 */ Gambit_fn_021F000C(cpu);
|
|
/* 0223700C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02237010 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237010 */ _t165 = _t164 & 0x00000001u;
|
|
/* 02237010 */ if (_t165) goto L_0223704C; else goto L_02237014;
|
|
L_02237014: ; // 0x2237014
|
|
/* 02237014 */ _t166 = cpu->r[31] + 0x00000020u;
|
|
/* 02237014 */ cpu->r[9] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02237018 */ _t167 = cpu->r[31] + 0x00000058u;
|
|
/* 02237018 */ cpu->r[6] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0223701C */ _t168 = cpu->r[31] + 0x00000051u;
|
|
/* 0223701C */ cpu->r[12] = rbrew_read8(cpu->mem, _t168);
|
|
/* 02237020 */ _t169 = cpu->r[31] + 0x00000054u;
|
|
/* 02237020 */ cpu->r[5] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02237024 */ cpu->f[1] = cpu->f[21];
|
|
/* 02237028 */ _t170 = cpu->r[1] + 0x00000008u;
|
|
/* 02237028 */ rbrew_write32(cpu->mem, _t170, cpu->r[12]);
|
|
/* 0223702C */ _t171 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0223702C */ cpu->r[11] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02237030 */ cpu->r[4] = 0x00000000u;
|
|
/* 02237034 */ cpu->r[7] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02237038 */ cpu->r[10] = cpu->r[20];
|
|
/* 0223703C */ cpu->r[0] = cpu->r[11] + cpu->r[23];
|
|
/* 02237040 */ cpu->r[8] = cpu->r[1] + 0x00000050u;
|
|
/* 02237044 */ _t172 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237044 */ rbrew_write32(cpu->mem, _t172, cpu->r[0]);
|
|
/* 02237048 */ Gambit_fn_0223D840(cpu);
|
|
L_0223704C: ; // 0x223704c
|
|
/* 0223704C */ _t173 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223704C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 02237050 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02237054 */ _t174 = cpu->r[1] + 0x00000064u;
|
|
/* 02237054 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 02237058 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 0223705C */ _t175 = cpu->r[1] + 0x00000028u;
|
|
/* 0223705C */ rbrew_write_f32(cpu->mem, _t175, cpu->f[10]);
|
|
/* 02237060 */ cpu->r[5] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237064 */ _t176 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02237064 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[11]);
|
|
/* 02237068 */ Gambit_fn_02819758(cpu);
|
|
/* 0223706C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[23], cpu->f[21]);
|
|
/* 02237070 */ _t177 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237070 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02237074 */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237074 */ _t179 = _t178 & 0x00000001u;
|
|
/* 02237074 */ if (_t179) goto L_02237080; else goto L_02237078;
|
|
L_02237078: ; // 0x2237078
|
|
/* 02237078 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[23], cpu->f[13]);
|
|
/* 0223707C */ _t180 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223707C */ _t181 = _t180 & 0x00000001u;
|
|
/* 0223707C */ if (_t181) goto L_02237080; else goto L_022371D4;
|
|
L_02237080: ; // 0x2237080
|
|
/* 02237080 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[21]);
|
|
/* 02237084 */ _t182 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237084 */ _t183 = _t182 & 0x00000001u;
|
|
/* 02237084 */ if (_t183) goto L_022371D4; else goto L_02237088;
|
|
L_02237088: ; // 0x2237088
|
|
/* 02237088 */ _t184 = cpu->r[1] + 0x00000028u;
|
|
/* 02237088 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 0223708C */ _t185 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223708C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 02237090 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02237090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02237094 */ _t186 = cpu->r[1] + 0x00000048u;
|
|
/* 02237094 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[6]);
|
|
/* 02237098 */ cpu->f[23] = cpu->f[13];
|
|
/* 0223709C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 022370A0 */ _t187 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022370A0 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[7]);
|
|
/* 022370A4 */ _t188 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022370A4 */ _t189 = _t188 & 0x00000001u;
|
|
/* 022370A4 */ if (_t189) goto L_022370A8; else goto L_02236DB0;
|
|
L_022370A8: ; // 0x22370a8
|
|
/* 022370A8 */ goto L_022371E0;
|
|
L_022370AC: ; // 0x22370ac
|
|
/* 022370AC */ _t190 = cpu->r[29] + 0x00000000u;
|
|
/* 022370AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 022370B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022370B4 */ _t191 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022370B4 */ _t192 = _t191 & 0x00000001u;
|
|
/* 022370B4 */ if (_t192) goto L_022370C8; else goto L_022370B8;
|
|
L_022370B8: ; // 0x22370b8
|
|
/* 022370B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022370BC */ _t193 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022370BC */ _t194 = _t193 & 0x00000001u;
|
|
/* 022370BC */ if (_t194) goto L_022370C0; else goto L_022371D4;
|
|
L_022370C0: ; // 0x22370c0
|
|
/* 022370C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000002u);
|
|
/* 022370C4 */ _t195 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022370C4 */ _t196 = _t195 & 0x00000001u;
|
|
/* 022370C4 */ if (_t196) goto L_022371D4; else goto L_022370C8;
|
|
L_022370C8: ; // 0x22370c8
|
|
/* 022370C8 */ _t197 = cpu->r[31] + 0x00000004u;
|
|
/* 022370C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t197);
|
|
/* 022370CC */ _t198 = cpu->r[9] + 0x0000025Cu;
|
|
/* 022370CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t198);
|
|
/* 022370D0 */ cpu->ctr = cpu->r[0];
|
|
/* 022370D4 */ _t199 = cpu->r[31] + 0x00000051u;
|
|
/* 022370D4 */ cpu->r[20] = rbrew_read8(cpu->mem, _t199);
|
|
/* 022370D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022370DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022370E0 */ _t200 = cpu->r[28] + 0x00000000u;
|
|
/* 022370E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 022370E4 */ cpu->r[11] = cpu->r[22] + cpu->r[0];
|
|
/* 022370E8 */ _t201 = cpu->r[11] + 0x00000104u;
|
|
/* 022370E8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t201);
|
|
/* 022370EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022370F0 */ cpu->r[7] = cpu->r[3];
|
|
/* 022370F4 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022370F4 */ _t203 = _t202 & 0x00000001u;
|
|
/* 022370F4 */ if (_t203) goto L_022371D4; else goto L_022370F8;
|
|
L_022370F8: ; // 0x22370f8
|
|
/* 022370F8 */ cpu->r[6] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022370FC */ cpu->r[5] = cpu->r[20];
|
|
/* 02237100 */ cpu->r[3] = cpu->r[22];
|
|
/* 02237104 */ Gambit_fn_021F000C(cpu);
|
|
/* 02237108 */ cpu->r[20] = cpu->r[3];
|
|
/* 02237108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0223710C */ _t204 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223710C */ _t205 = _t204 & 0x00000001u;
|
|
/* 0223710C */ if (_t205) goto L_022371D4; else goto L_02237110;
|
|
L_02237110: ; // 0x2237110
|
|
/* 02237110 */ _t206 = cpu->r[31] + 0x00000004u;
|
|
/* 02237110 */ cpu->r[5] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02237114 */ _t207 = cpu->r[31] + 0x00000051u;
|
|
/* 02237114 */ cpu->r[7] = rbrew_read8(cpu->mem, _t207);
|
|
/* 02237118 */ _t208 = cpu->r[5] + 0x0000025Cu;
|
|
/* 02237118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t208);
|
|
/* 0223711C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02237120 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237124 */ cpu->ctr = cpu->r[0];
|
|
/* 02237128 */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237128 */ _t210 = _t209 & 0x00000001u;
|
|
/* 02237128 */ if (_t210) goto L_02237188; else goto L_0223712C;
|
|
L_0223712C: ; // 0x223712c
|
|
/* 0223712C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237130 */ cpu->r[19] = cpu->r[3];
|
|
/* 02237134 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237138 */ Gambit_fn_02236664(cpu);
|
|
/* 0223713C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237140 */ cpu->f[17] = cpu->f[1];
|
|
/* 02237144 */ Gambit_fn_02236260(cpu);
|
|
/* 02237148 */ _t211 = cpu->r[31] + 0x00000054u;
|
|
/* 02237148 */ cpu->r[5] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0223714C */ cpu->f[2] = cpu->f[1];
|
|
/* 02237150 */ cpu->r[3] = cpu->r[20];
|
|
/* 02237154 */ _t212 = cpu->r[31] + 0x00000058u;
|
|
/* 02237154 */ cpu->r[6] = rbrew_read32(cpu->mem, _t212);
|
|
/* 02237158 */ cpu->f[1] = cpu->f[17];
|
|
/* 0223715C */ _t213 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0223715C */ cpu->r[12] = rbrew_read32(cpu->mem, _t213);
|
|
/* 02237160 */ cpu->r[8] = cpu->r[19];
|
|
/* 02237164 */ cpu->r[4] = 0x00000000u;
|
|
/* 02237168 */ _t214 = cpu->r[31] + 0x00000064u;
|
|
/* 02237168 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t214);
|
|
/* 0223716C */ cpu->r[10] = cpu->r[12] + cpu->r[23];
|
|
/* 02237170 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02237174 */ Gambit_fn_0223A5D0(cpu);
|
|
/* 02237178 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02237178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0223717C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02237180 */ _t215 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237180 */ _t216 = _t215 & 0x00000001u;
|
|
/* 02237180 */ if (_t216) goto L_02237184; else goto L_02236DB0;
|
|
L_02237184: ; // 0x2237184
|
|
/* 02237184 */ goto L_022371E0;
|
|
L_02237188: ; // 0x2237188
|
|
/* 02237188 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223718C */ cpu->r[19] = cpu->r[3];
|
|
/* 02237190 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237194 */ Gambit_fn_02236664(cpu);
|
|
/* 02237198 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223719C */ cpu->f[17] = cpu->f[1];
|
|
/* 022371A0 */ Gambit_fn_02236260(cpu);
|
|
/* 022371A4 */ _t217 = cpu->r[31] + 0x00000054u;
|
|
/* 022371A4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t217);
|
|
/* 022371A8 */ cpu->f[2] = cpu->f[1];
|
|
/* 022371AC */ cpu->r[3] = cpu->r[20];
|
|
/* 022371B0 */ _t218 = cpu->r[31] + 0x00000058u;
|
|
/* 022371B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t218);
|
|
/* 022371B4 */ cpu->f[1] = cpu->f[17];
|
|
/* 022371B8 */ _t219 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022371B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t219);
|
|
/* 022371BC */ cpu->r[8] = cpu->r[19];
|
|
/* 022371C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 022371C4 */ _t220 = cpu->r[31] + 0x00000064u;
|
|
/* 022371C4 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t220);
|
|
/* 022371C8 */ cpu->r[10] = cpu->r[12] + cpu->r[23];
|
|
/* 022371CC */ cpu->r[7] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022371D0 */ Gambit_fn_0223A5FC(cpu);
|
|
L_022371D4: ; // 0x22371d4
|
|
/* 022371D4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 022371D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022371D8 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 022371DC */ _t221 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022371DC */ _t222 = _t221 & 0x00000001u;
|
|
/* 022371DC */ if (_t222) goto L_022371E0; else goto L_02236DB0;
|
|
L_022371E0: ; // 0x22371e0
|
|
/* 022371E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[23], cpu->f[28]);
|
|
/* 022371E4 */ _t223 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022371E4 */ _t224 = _t223 & 0x00000001u;
|
|
/* 022371E4 */ if (_t224) goto L_02237580; else goto L_022371E8;
|
|
L_022371E8: ; // 0x22371e8
|
|
/* 022371E8 */ _t225 = cpu->r[31] + 0x00000004u;
|
|
/* 022371E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t225);
|
|
/* 022371EC */ _t226 = cpu->r[11] + 0x00000254u;
|
|
/* 022371EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t226);
|
|
/* 022371F0 */ cpu->ctr = cpu->r[4];
|
|
/* 022371F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022371F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022371FC */ /* nop */
|
|
/* 02237200 */ /* nop */
|
|
/* 02237204 */ _t227 = cpu->r[31] + 0x00000090u;
|
|
/* 02237204 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 02237208 */ /* nop */
|
|
/* 0223720C */ /* nop */
|
|
/* 02237210 */ _t228 = cpu->r[1] + 0x00000078u;
|
|
/* 02237210 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 02237214 */ _t229 = cpu->r[3] + 0x00000008u;
|
|
/* 02237214 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 02237218 */ cpu->f[12] = cpu->f[0] * cpu->f[0];
|
|
/* 0223721C */ _t230 = cpu->r[1] + 0x00000074u;
|
|
/* 0223721C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t230);
|
|
/* 02237220 */ cpu->f[10] = cpu->f[6] - cpu->f[9];
|
|
/* 02237224 */ cpu->f[13] = fma(cpu->f[11], cpu->f[11], cpu->f[12]);
|
|
/* 02237228 */ _t231 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02237228 */ rbrew_write_f32(cpu->mem, _t231, cpu->f[10]);
|
|
/* 0223722C */ cpu->r[10] = 0x10050000u;
|
|
/* 02237230 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[13]);
|
|
/* 02237234 */ _t232 = cpu->r[10] + 0x00001F28u;
|
|
/* 02237234 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 02237238 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223723C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 02237240 */ _t233 = cpu->r[9] + 0x00001F9Cu;
|
|
/* 02237240 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 02237244 */ _t234 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237244 */ _t235 = _t234 & 0x00000001u;
|
|
/* 02237244 */ if (_t235) goto L_02237248; else goto L_02237278;
|
|
L_02237248: ; // 0x2237248
|
|
/* 02237248 */ _ft236 = sqrt(cpu->f[9]);
|
|
/* 02237248 */ _ft237 = (double)(int32_t)0x00000001u;
|
|
/* 02237248 */ cpu->f[10] = _ft237 / _ft236;
|
|
/* 0223724C */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 02237250 */ cpu->f[6] = cpu->f[10] * cpu->f[11];
|
|
/* 02237254 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[9], -(cpu->f[26]));
|
|
/* 02237258 */ cpu->f[6] = cpu->f[6] * cpu->f[25];
|
|
/* 0223725C */ cpu->f[10] = cpu->f[13] * cpu->f[6];
|
|
/* 02237260 */ _t238 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02237260 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 02237264 */ /* nop */
|
|
/* 02237268 */ cpu->f[6] = cpu->f[6] * cpu->f[10];
|
|
/* 0223726C */ /* nop */
|
|
/* 02237270 */ /* nop */
|
|
/* 02237274 */ _t239 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02237274 */ rbrew_write_f32(cpu->mem, _t239, cpu->f[6]);
|
|
L_02237278: ; // 0x2237278
|
|
/* 02237278 */ _t240 = cpu->r[1] + 0x00000048u;
|
|
/* 02237278 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t240);
|
|
/* 0223727C */ _t241 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223727C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 02237280 */ _t242 = cpu->r[1] + 0x00000068u;
|
|
/* 02237280 */ rbrew_write_f32(cpu->mem, _t242, cpu->f[8]);
|
|
/* 02237284 */ _t243 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02237284 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t243);
|
|
/* 02237288 */ _t244 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02237288 */ rbrew_write_f32(cpu->mem, _t244, cpu->f[28]);
|
|
/* 0223728C */ /* nop */
|
|
/* 02237290 */ cpu->f[12] = cpu->f[12] + cpu->f[10];
|
|
/* 02237294 */ _t245 = cpu->r[31] + 0x00000088u;
|
|
/* 02237294 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t245);
|
|
/* 02237298 */ /* nop */
|
|
/* 0223729C */ _t246 = cpu->r[31] + 0x00000090u;
|
|
/* 0223729C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t246);
|
|
/* 022372A0 */ /* nop */
|
|
/* 022372A4 */ _t247 = cpu->r[1] + 0x00000068u;
|
|
/* 022372A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t247);
|
|
/* 022372A8 */ cpu->f[6] = cpu->f[12] - cpu->f[0];
|
|
/* 022372AC */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 022372B0 */ cpu->f[6] = cpu->f[6] * cpu->f[6];
|
|
/* 022372B4 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[6]);
|
|
/* 022372B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[28]);
|
|
/* 022372BC */ _t248 = cpu->r[1] + 0x00000070u;
|
|
/* 022372BC */ rbrew_write_f32(cpu->mem, _t248, cpu->f[12]);
|
|
/* 022372C0 */ _t249 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022372C0 */ _t250 = _t249 & 0x00000001u;
|
|
/* 022372C0 */ if (_t250) goto L_02237308; else goto L_022372C4;
|
|
L_022372C4: ; // 0x22372c4
|
|
/* 022372C4 */ _t251 = cpu->r[31] + 0x00000004u;
|
|
/* 022372C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t251);
|
|
/* 022372C8 */ _t252 = cpu->r[6] + 0x00000254u;
|
|
/* 022372C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t252);
|
|
/* 022372CC */ cpu->ctr = cpu->r[7];
|
|
/* 022372D0 */ cpu->f[30] = cpu->f[28] * cpu->f[11];
|
|
/* 022372D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022372D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022372DC */ _t253 = cpu->r[3] + 0x00000008u;
|
|
/* 022372DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 022372E0 */ _t254 = cpu->r[31] + 0x00000090u;
|
|
/* 022372E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 022372E4 */ _t255 = cpu->r[3] + 0x00000000u;
|
|
/* 022372E4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 022372E8 */ cpu->f[11] = cpu->f[9] - cpu->f[10];
|
|
/* 022372EC */ _t256 = cpu->r[31] + 0x00000088u;
|
|
/* 022372EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t256);
|
|
/* 022372F0 */ cpu->f[10] = cpu->f[7] - cpu->f[8];
|
|
/* 022372F4 */ cpu->f[11] = cpu->f[11] * cpu->f[11];
|
|
/* 022372F8 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 022372FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 02237300 */ _t257 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237300 */ _t258 = _t257 & 0x00000001u;
|
|
/* 02237300 */ if (_t258) goto L_022373F4; else goto L_02237304;
|
|
L_02237304: ; // 0x2237304
|
|
/* 02237304 */ goto L_0223735C;
|
|
L_02237308: ; // 0x2237308
|
|
/* 02237308 */ _ft259 = sqrt(cpu->f[11]);
|
|
/* 02237308 */ _ft260 = (double)(int32_t)0x00000001u;
|
|
/* 02237308 */ cpu->f[13] = _ft260 / _ft259;
|
|
/* 0223730C */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 02237310 */ cpu->f[8] = cpu->f[13] * cpu->f[25];
|
|
/* 02237314 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[26]));
|
|
/* 02237318 */ cpu->f[13] = cpu->f[7] * cpu->f[8];
|
|
/* 0223731C */ _t261 = cpu->r[31] + 0x00000004u;
|
|
/* 0223731C */ cpu->r[6] = rbrew_read32(cpu->mem, _t261);
|
|
/* 02237320 */ _t262 = cpu->r[6] + 0x00000254u;
|
|
/* 02237320 */ cpu->r[7] = rbrew_read32(cpu->mem, _t262);
|
|
/* 02237324 */ cpu->ctr = cpu->r[7];
|
|
/* 02237328 */ cpu->f[30] = cpu->f[13] * cpu->f[11];
|
|
/* 0223732C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237334 */ _t263 = cpu->r[3] + 0x00000008u;
|
|
/* 02237334 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 02237338 */ _t264 = cpu->r[31] + 0x00000090u;
|
|
/* 02237338 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 0223733C */ _t265 = cpu->r[3] + 0x00000000u;
|
|
/* 0223733C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t265);
|
|
/* 02237340 */ cpu->f[11] = cpu->f[9] - cpu->f[10];
|
|
/* 02237344 */ _t266 = cpu->r[31] + 0x00000088u;
|
|
/* 02237344 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t266);
|
|
/* 02237348 */ cpu->f[10] = cpu->f[7] - cpu->f[8];
|
|
/* 0223734C */ cpu->f[11] = cpu->f[11] * cpu->f[11];
|
|
/* 02237350 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 02237354 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 02237358 */ _t267 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237358 */ _t268 = _t267 & 0x00000001u;
|
|
/* 02237358 */ if (_t268) goto L_022373F4; else goto L_0223735C;
|
|
L_0223735C: ; // 0x223735c
|
|
/* 0223735C */ cpu->f[12] = cpu->f[28] * cpu->f[9];
|
|
/* 02237360 */ _t269 = cpu->r[31] + 0x00000004u;
|
|
/* 02237360 */ cpu->r[8] = rbrew_read32(cpu->mem, _t269);
|
|
/* 02237364 */ cpu->f[26] = cpu->f[30] / cpu->f[12];
|
|
/* 02237368 */ _t270 = cpu->r[8] + 0x00000254u;
|
|
/* 02237368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t270);
|
|
/* 0223736C */ cpu->ctr = cpu->r[0];
|
|
/* 02237370 */ _t271 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02237370 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t271);
|
|
/* 02237374 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237378 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223737C */ _t272 = cpu->r[31] + 0x00000130u;
|
|
/* 0223737C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t272);
|
|
/* 02237380 */ _t273 = cpu->r[3] + 0x00000004u;
|
|
/* 02237380 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t273);
|
|
/* 02237384 */ _t274 = cpu->r[1] + 0x000000A4u;
|
|
/* 02237384 */ rbrew_write_f32(cpu->mem, _t274, cpu->f[12]);
|
|
/* 02237388 */ _t275 = cpu->r[1] + 0x00000070u;
|
|
/* 02237388 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t275);
|
|
/* 0223738C */ _t276 = cpu->r[1] + 0x000000B4u;
|
|
/* 0223738C */ rbrew_write_f32(cpu->mem, _t276, cpu->f[9]);
|
|
/* 02237390 */ _t277 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02237390 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t277);
|
|
/* 02237394 */ cpu->f[13] = cpu->f[0] - cpu->f[30];
|
|
/* 02237398 */ _t278 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237398 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[28]);
|
|
/* 0223739C */ cpu->f[0] = fma(cpu->f[13], cpu->f[26], cpu->f[30]);
|
|
/* 022373A0 */ /* nop */
|
|
/* 022373A4 */ _t279 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022373A4 */ rbrew_write_f32(cpu->mem, _t279, cpu->f[0]);
|
|
/* 022373A8 */ /* nop */
|
|
/* 022373AC */ /* nop */
|
|
/* 022373B0 */ /* nop */
|
|
/* 022373B4 */ _t280 = cpu->r[1] + 0x000000ACu;
|
|
/* 022373B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t280);
|
|
/* 022373B8 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 022373BC */ _t281 = cpu->r[1] + 0x000000B0u;
|
|
/* 022373BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t281);
|
|
/* 022373C0 */ _t282 = cpu->r[1] + 0x000000CCu;
|
|
/* 022373C0 */ rbrew_write32(cpu->mem, _t282, cpu->r[12]);
|
|
/* 022373C4 */ cpu->f[12] = cpu->f[10] + cpu->f[27];
|
|
/* 022373C8 */ _t283 = cpu->r[1] + 0x000000D0u;
|
|
/* 022373C8 */ rbrew_write32(cpu->mem, _t283, cpu->r[4]);
|
|
/* 022373CC */ _t284 = cpu->r[1] + 0x000000D0u;
|
|
/* 022373CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t284);
|
|
/* 022373D0 */ _t285 = cpu->r[31] + 0x00000134u;
|
|
/* 022373D0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t285);
|
|
/* 022373D4 */ cpu->f[13] = cpu->f[0] - cpu->f[12];
|
|
/* 022373D8 */ _t286 = cpu->r[1] + 0x000000A8u;
|
|
/* 022373D8 */ rbrew_write_f32(cpu->mem, _t286, cpu->f[28]);
|
|
/* 022373DC */ cpu->f[1] = cpu->f[13] + cpu->f[6];
|
|
/* 022373E0 */ _t287 = cpu->r[1] + 0x000000B4u;
|
|
/* 022373E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t287);
|
|
/* 022373E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[28]);
|
|
/* 022373E8 */ _t288 = cpu->r[1] + 0x000000D4u;
|
|
/* 022373E8 */ rbrew_write32(cpu->mem, _t288, cpu->r[0]);
|
|
/* 022373EC */ _t289 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022373EC */ _t290 = _t289 & 0x00000001u;
|
|
/* 022373EC */ if (_t290) goto L_02237580; else goto L_022373F0;
|
|
L_022373F0: ; // 0x22373f0
|
|
/* 022373F0 */ goto L_0223749C;
|
|
L_022373F4: ; // 0x22373f4
|
|
/* 022373F4 */ _ft291 = sqrt(cpu->f[9]);
|
|
/* 022373F4 */ _ft292 = (double)(int32_t)0x00000001u;
|
|
/* 022373F4 */ cpu->f[0] = _ft292 / _ft291;
|
|
/* 022373F8 */ cpu->f[12] = cpu->f[0] * cpu->f[0];
|
|
/* 022373FC */ cpu->f[13] = cpu->f[0] * cpu->f[25];
|
|
/* 02237400 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[9], -(cpu->f[26]));
|
|
/* 02237404 */ cpu->f[0] = cpu->f[12] * cpu->f[13];
|
|
/* 02237408 */ cpu->f[12] = cpu->f[0] * cpu->f[9];
|
|
/* 0223740C */ _t293 = cpu->r[31] + 0x00000004u;
|
|
/* 0223740C */ cpu->r[8] = rbrew_read32(cpu->mem, _t293);
|
|
/* 02237410 */ cpu->f[26] = cpu->f[30] / cpu->f[12];
|
|
/* 02237414 */ _t294 = cpu->r[8] + 0x00000254u;
|
|
/* 02237414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t294);
|
|
/* 02237418 */ cpu->ctr = cpu->r[0];
|
|
/* 0223741C */ _t295 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0223741C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t295);
|
|
/* 02237420 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237424 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237428 */ _t296 = cpu->r[31] + 0x00000130u;
|
|
/* 02237428 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t296);
|
|
/* 0223742C */ _t297 = cpu->r[3] + 0x00000004u;
|
|
/* 0223742C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 02237430 */ _t298 = cpu->r[1] + 0x000000A4u;
|
|
/* 02237430 */ rbrew_write_f32(cpu->mem, _t298, cpu->f[12]);
|
|
/* 02237434 */ _t299 = cpu->r[1] + 0x00000070u;
|
|
/* 02237434 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 02237438 */ _t300 = cpu->r[1] + 0x000000B4u;
|
|
/* 02237438 */ rbrew_write_f32(cpu->mem, _t300, cpu->f[9]);
|
|
/* 0223743C */ _t301 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0223743C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t301);
|
|
/* 02237440 */ cpu->f[13] = cpu->f[0] - cpu->f[30];
|
|
/* 02237444 */ cpu->f[0] = fma(cpu->f[13], cpu->f[26], cpu->f[30]);
|
|
/* 02237448 */ _t302 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237448 */ rbrew_write_f32(cpu->mem, _t302, cpu->f[28]);
|
|
/* 0223744C */ /* nop */
|
|
/* 02237450 */ _t303 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02237450 */ rbrew_write_f32(cpu->mem, _t303, cpu->f[0]);
|
|
/* 02237454 */ /* nop */
|
|
/* 02237458 */ /* nop */
|
|
/* 0223745C */ /* nop */
|
|
/* 02237460 */ _t304 = cpu->r[1] + 0x000000ACu;
|
|
/* 02237460 */ cpu->r[12] = rbrew_read32(cpu->mem, _t304);
|
|
/* 02237464 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 02237468 */ _t305 = cpu->r[1] + 0x000000B0u;
|
|
/* 02237468 */ cpu->r[4] = rbrew_read32(cpu->mem, _t305);
|
|
/* 0223746C */ _t306 = cpu->r[1] + 0x000000CCu;
|
|
/* 0223746C */ rbrew_write32(cpu->mem, _t306, cpu->r[12]);
|
|
/* 02237470 */ cpu->f[12] = cpu->f[10] + cpu->f[27];
|
|
/* 02237474 */ _t307 = cpu->r[1] + 0x000000D0u;
|
|
/* 02237474 */ rbrew_write32(cpu->mem, _t307, cpu->r[4]);
|
|
/* 02237478 */ _t308 = cpu->r[1] + 0x000000D0u;
|
|
/* 02237478 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t308);
|
|
/* 0223747C */ _t309 = cpu->r[31] + 0x00000134u;
|
|
/* 0223747C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t309);
|
|
/* 02237480 */ cpu->f[13] = cpu->f[0] - cpu->f[12];
|
|
/* 02237484 */ _t310 = cpu->r[1] + 0x000000A8u;
|
|
/* 02237484 */ rbrew_write_f32(cpu->mem, _t310, cpu->f[28]);
|
|
/* 02237488 */ cpu->f[1] = cpu->f[13] + cpu->f[6];
|
|
/* 0223748C */ _t311 = cpu->r[1] + 0x000000B4u;
|
|
/* 0223748C */ cpu->r[0] = rbrew_read32(cpu->mem, _t311);
|
|
/* 02237490 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[28]);
|
|
/* 02237494 */ _t312 = cpu->r[1] + 0x000000D4u;
|
|
/* 02237494 */ rbrew_write32(cpu->mem, _t312, cpu->r[0]);
|
|
/* 02237498 */ _t313 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237498 */ _t314 = _t313 & 0x00000001u;
|
|
/* 02237498 */ if (_t314) goto L_02237580; else goto L_0223749C;
|
|
L_0223749C: ; // 0x223749c
|
|
/* 0223749C */ cpu->r[6] = 0x101F0000u;
|
|
/* 022374A0 */ _t315 = cpu->r[30] + 0x00000000u;
|
|
/* 022374A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t315);
|
|
/* 022374A4 */ cpu->r[6] = cpu->r[6] + 0x00006350u;
|
|
/* 022374A8 */ _t316 = cpu->r[31] + 0x000001D8u;
|
|
/* 022374A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t316);
|
|
/* 022374AC */ /* nop */
|
|
/* 022374B0 */ _t317 = cpu->r[6] + 0x00000008u;
|
|
/* 022374B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t317);
|
|
/* 022374B4 */ cpu->r[6] = 0x101E0000u;
|
|
/* 022374B8 */ /* nop */
|
|
/* 022374BC */ _t318 = cpu->r[6] + 0xFFFF9598u;
|
|
/* 022374BC */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t318);
|
|
/* 022374C0 */ cpu->f[10] = -cpu->f[11];
|
|
/* 022374C4 */ /* nop */
|
|
/* 022374C8 */ _t319 = cpu->r[1] + 0x000000B8u;
|
|
/* 022374C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t319);
|
|
/* 022374CC */ _t320 = cpu->r[1] + 0x000000BCu;
|
|
/* 022374CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t320);
|
|
/* 022374D0 */ _t321 = cpu->r[1] + 0x000000C0u;
|
|
/* 022374D0 */ rbrew_write_f32(cpu->mem, _t321, cpu->f[10]);
|
|
/* 022374D4 */ _t322 = cpu->r[1] + 0x000000C0u;
|
|
/* 022374D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t322);
|
|
/* 022374D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[28]);
|
|
/* 022374DC */ _t323 = cpu->r[1] + 0x000000E0u;
|
|
/* 022374DC */ rbrew_write32(cpu->mem, _t323, cpu->r[10]);
|
|
/* 022374E0 */ cpu->r[10] = 0x00040000u;
|
|
/* 022374E4 */ _t324 = cpu->r[1] + 0x000000E4u;
|
|
/* 022374E4 */ rbrew_write32(cpu->mem, _t324, cpu->r[0]);
|
|
/* 022374E8 */ cpu->r[10] = cpu->r[10] + 0x0000000Au;
|
|
/* 022374EC */ _t325 = cpu->r[1] + 0x000000E8u;
|
|
/* 022374EC */ rbrew_write32(cpu->mem, _t325, cpu->r[6]);
|
|
/* 022374F0 */ _t326 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022374F0 */ _t327 = _t326 & 0x00000001u;
|
|
/* 022374F0 */ if (_t327) goto L_02237530; else goto L_022374F4;
|
|
L_022374F4: ; // 0x22374f4
|
|
/* 022374F4 */ cpu->f[1] = cpu->f[31];
|
|
/* 022374F8 */ cpu->r[5] = 0x00000000u;
|
|
/* 022374FC */ cpu->r[7] = cpu->r[10] + 0x00000080u;
|
|
/* 02237500 */ cpu->f[2] = cpu->f[3];
|
|
/* 02237504 */ cpu->r[8] = cpu->r[31] + 0x000001D4u;
|
|
/* 02237508 */ cpu->r[6] = cpu->r[5];
|
|
/* 0223750C */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 02237510 */ _t328 = cpu->r[1] + 0x00000008u;
|
|
/* 02237510 */ rbrew_write32(cpu->mem, _t328, cpu->r[8]);
|
|
/* 02237514 */ cpu->r[8] = 0x000011FFu;
|
|
/* 02237518 */ cpu->r[10] = cpu->r[5];
|
|
/* 0223751C */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02237520 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02237520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02237524 */ _t329 = cpu->r[31] + 0x000001D4u;
|
|
/* 02237524 */ rbrew_write32(cpu->mem, _t329, cpu->r[3]);
|
|
/* 02237528 */ _t330 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237528 */ _t331 = _t330 & 0x00000001u;
|
|
/* 02237528 */ if (_t331) goto L_02237580; else goto L_0223752C;
|
|
L_0223752C: ; // 0x223752c
|
|
/* 0223752C */ goto L_02237564;
|
|
L_02237530: ; // 0x2237530
|
|
/* 02237530 */ cpu->r[8] = cpu->r[9];
|
|
/* 02237534 */ cpu->f[2] = cpu->f[31];
|
|
/* 02237538 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223753C */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 02237540 */ cpu->r[6] = cpu->r[10] + 0x00000080u;
|
|
/* 02237544 */ _t332 = cpu->r[12] + 0x00001FA0u;
|
|
/* 02237544 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t332);
|
|
/* 02237548 */ cpu->r[9] = cpu->r[31] + 0x000001D4u;
|
|
/* 0223754C */ cpu->r[5] = cpu->r[1] + 0x000000E0u;
|
|
/* 02237550 */ cpu->r[7] = 0x000011FFu;
|
|
/* 02237554 */ Gambit_fn_0204A864(cpu);
|
|
/* 02237558 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02237558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223755C */ _t333 = cpu->r[31] + 0x000001D4u;
|
|
/* 0223755C */ rbrew_write32(cpu->mem, _t333, cpu->r[3]);
|
|
/* 02237560 */ _t334 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237560 */ _t335 = _t334 & 0x00000001u;
|
|
/* 02237560 */ if (_t335) goto L_02237580; else goto L_02237564;
|
|
L_02237564: ; // 0x2237564
|
|
/* 02237564 */ _t336 = cpu->r[31] + 0x000001D8u;
|
|
/* 02237564 */ cpu->r[5] = rbrew_read32(cpu->mem, _t336);
|
|
/* 02237568 */ _t337 = cpu->r[5] + 0x0000015Cu;
|
|
/* 02237568 */ cpu->r[8] = rbrew_read32(cpu->mem, _t337);
|
|
/* 0223756C */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 0223756C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02237570 */ _t338 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237570 */ _t339 = _t338 & 0x00000001u;
|
|
/* 02237570 */ if (_t339) goto L_02237580; else goto L_02237574;
|
|
L_02237574: ; // 0x2237574
|
|
/* 02237574 */ cpu->r[4] = cpu->r[5] + 0x00000060u;
|
|
/* 02237578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223757C */ Gambit_fn_022366E8(cpu);
|
|
L_02237580: ; // 0x2237580
|
|
/* 02237580 */ /* nop */
|
|
/* 02237584 */ _t340 = cpu->r[1] + 0x00000178u;
|
|
/* 02237584 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t340);
|
|
/* 02237588 */ _t341 = cpu->r[1] + 0x00000158u;
|
|
/* 02237588 */ cpu->f[20] = rbrew_read_f32(cpu->mem, _t341);
|
|
/* 0223758C */ _t342 = cpu->r[1] + 0x00000170u;
|
|
/* 0223758C */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t342);
|
|
/* 02237590 */ _t343 = cpu->r[1] + 0x00000148u;
|
|
/* 02237590 */ cpu->f[19] = rbrew_read_f32(cpu->mem, _t343);
|
|
/* 02237594 */ _t344 = cpu->r[1] + 0x00000150u;
|
|
/* 02237594 */ cpu->f[20] = rbrew_read_f64(cpu->mem, _t344);
|
|
/* 02237598 */ _t345 = cpu->r[1] + 0x00000140u;
|
|
/* 02237598 */ cpu->f[19] = rbrew_read_f64(cpu->mem, _t345);
|
|
/* 0223759C */ _t346 = cpu->r[1] + 0x00000198u;
|
|
/* 0223759C */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t346);
|
|
/* 022375A0 */ _t347 = cpu->r[1] + 0x00000168u;
|
|
/* 022375A0 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t347);
|
|
/* 022375A4 */ _t348 = cpu->r[1] + 0x00000190u;
|
|
/* 022375A4 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t348);
|
|
/* 022375A8 */ _t349 = cpu->r[1] + 0x00000160u;
|
|
/* 022375A8 */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t349);
|
|
/* 022375AC */ _t350 = cpu->r[1] + 0x000001B8u;
|
|
/* 022375AC */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t350);
|
|
/* 022375B0 */ _t351 = cpu->r[1] + 0x00000188u;
|
|
/* 022375B0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t351);
|
|
/* 022375B4 */ _t352 = cpu->r[1] + 0x000001B0u;
|
|
/* 022375B4 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t352);
|
|
/* 022375B8 */ _t353 = cpu->r[1] + 0x00000180u;
|
|
/* 022375B8 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t353);
|
|
/* 022375BC */ _t354 = cpu->r[1] + 0x000001D8u;
|
|
/* 022375BC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t354);
|
|
/* 022375C0 */ _t355 = cpu->r[1] + 0x000001C8u;
|
|
/* 022375C0 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t355);
|
|
/* 022375C4 */ _t356 = cpu->r[1] + 0x00000138u;
|
|
/* 022375C4 */ cpu->f[18] = rbrew_read_f32(cpu->mem, _t356);
|
|
/* 022375C8 */ _t357 = cpu->r[1] + 0x000001C0u;
|
|
/* 022375C8 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t357);
|
|
/* 022375CC */ _t358 = cpu->r[1] + 0x000001E8u;
|
|
/* 022375CC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t358);
|
|
/* 022375D0 */ _t359 = cpu->r[1] + 0x00000130u;
|
|
/* 022375D0 */ cpu->f[18] = rbrew_read_f64(cpu->mem, _t359);
|
|
/* 022375D4 */ _t360 = cpu->r[1] + 0x000001E0u;
|
|
/* 022375D4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t360);
|
|
/* 022375D8 */ _t361 = cpu->r[1] + 0x00000128u;
|
|
/* 022375D8 */ cpu->f[17] = rbrew_read_f32(cpu->mem, _t361);
|
|
/* 022375DC */ _t362 = cpu->r[1] + 0x00000208u;
|
|
/* 022375DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t362);
|
|
/* 022375E0 */ _t363 = cpu->r[1] + 0x00000120u;
|
|
/* 022375E0 */ cpu->f[17] = rbrew_read_f64(cpu->mem, _t363);
|
|
/* 022375E4 */ _t364 = cpu->r[1] + 0x00000200u;
|
|
/* 022375E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t364);
|
|
/* 022375E8 */ _t365 = cpu->r[1] + 0x000001D0u;
|
|
/* 022375E8 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t365);
|
|
/* 022375EC */ _t366 = cpu->r[1] + 0x000001F8u;
|
|
/* 022375EC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t366);
|
|
/* 022375F0 */ _t367 = cpu->r[1] + 0x000001A8u;
|
|
/* 022375F0 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t367);
|
|
/* 022375F4 */ _t368 = cpu->r[1] + 0x000001F0u;
|
|
/* 022375F4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t368);
|
|
/* 022375F8 */ _t369 = cpu->r[1] + 0x000001A0u;
|
|
/* 022375F8 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t369);
|
|
/* 022375FC */ _t370 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022375FC */ _t371 = _t370 & 0x00000001u;
|
|
/* 022375FC */ if (_t371) goto L_02237600; // else: addr-0 trap, fall-through
|
|
L_02237600: ; // 0x2237600
|
|
/* 02237600 */ _t372 = cpu->r[1] + 0x00000214u;
|
|
/* 02237600 */ cpu->r[0] = rbrew_read32(cpu->mem, _t372);
|
|
/* 02237604 */ cpu->lr = cpu->r[0];
|
|
/* 02237608 */ cpu->r[1] = cpu->r[1] + 0x00000210u;
|
|
/* 0223760C */ return;
|
|
}
|
|
|
|
// fn_02237610 @ 0x2237610
|
|
void Gambit_fn_02237610(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_02237610: ; // 0x2237610
|
|
/* 02237610 */ cpu->r[0] = cpu->lr;
|
|
/* 02237614 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02237614 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02237614 */ cpu->r[1] = _t0;
|
|
/* 02237618 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02237618 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223761C */ /* nop */
|
|
/* 02237620 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 02237620 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02237624 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02237624 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02237628 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02237628 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223762C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0223762C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02237630 */ _t6 = cpu->r[12] + 0x00000254u;
|
|
/* 02237630 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02237634 */ _t7 = cpu->r[4] + 0x00000008u;
|
|
/* 02237634 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02237638 */ cpu->ctr = cpu->r[11];
|
|
/* 0223763C */ _t8 = cpu->r[4] + 0x00000038u;
|
|
/* 0223763C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02237640 */ cpu->f[31] = cpu->f[13] + cpu->f[0];
|
|
/* 02237644 */ cpu->r[31] = cpu->r[3];
|
|
/* 02237648 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223764C */ _t9 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0223764C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02237650 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02237650 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02237654 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 02237658 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223765C */ cpu->f[1] = cpu->f[13] - cpu->f[31];
|
|
/* 02237660 */ _t11 = cpu->r[12] + 0x00001F20u;
|
|
/* 02237660 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02237664 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02237668 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223766C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223766C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223766C */ if (_t13) goto L_02237670; else goto L_022376D8;
|
|
L_02237670: ; // 0x2237670
|
|
/* 02237670 */ cpu->f[1] = cpu->f[0];
|
|
/* 02237674 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237678 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223767C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223767C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02237680 */ Gambit_fn_02236B20(cpu);
|
|
/* 02237684 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02237688 */ _t15 = cpu->r[12] + 0x00006000u;
|
|
/* 02237688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223768C */ _t16 = cpu->r[12] + 0x00000268u;
|
|
/* 0223768C */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02237690 */ Gambit_fn_0261F73C(cpu);
|
|
/* 02237694 */ _t17 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02237694 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02237698 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02237698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223769C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 022376A0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022376A0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022376A0 */ if (_t20) goto L_022376A4; else goto L_022376E8;
|
|
L_022376A4: ; // 0x22376a4
|
|
/* 022376A4 */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 022376A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022376A8 */ _t22 = cpu->r[11] + 0x0000039Cu;
|
|
/* 022376A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022376AC */ cpu->ctr = cpu->r[0];
|
|
/* 022376B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022376B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022376B8 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022376B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022376BC */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022376BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022376C0 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 022376C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022376C4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022376C4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022376C4 */ if (_t27) goto L_022376C8; // else: addr-0 trap, fall-through
|
|
L_022376C8: ; // 0x22376c8
|
|
/* 022376C8 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022376C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022376CC */ cpu->lr = cpu->r[0];
|
|
/* 022376D0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022376D4 */ return;
|
|
L_022376D8: ; // 0x22376d8
|
|
/* 022376D8 */ cpu->r[10] = 0x00000002u;
|
|
/* 022376DC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022376E0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022376E0 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 022376E4 */ Gambit_fn_02236B20(cpu);
|
|
L_022376E8: ; // 0x22376e8
|
|
/* 022376E8 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 022376E8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022376EC */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 022376EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022376F0 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 022376F0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 022376F4 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022376F4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022376F4 */ if (_t34) goto L_022376F8; // else: addr-0 trap, fall-through
|
|
L_022376F8: ; // 0x22376f8
|
|
/* 022376F8 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022376F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022376FC */ cpu->lr = cpu->r[0];
|
|
/* 02237700 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02237704 */ return;
|
|
}
|
|
|
|
// fn_02237614 @ 0x2237614
|
|
void Gambit_fn_02237614(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_02237614: ; // 0x2237614
|
|
/* 02237614 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02237614 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02237614 */ cpu->r[1] = _t0;
|
|
/* 02237618 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02237618 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223761C */ /* nop */
|
|
/* 02237620 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 02237620 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02237624 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02237624 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02237628 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02237628 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223762C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0223762C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02237630 */ _t6 = cpu->r[12] + 0x00000254u;
|
|
/* 02237630 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02237634 */ _t7 = cpu->r[4] + 0x00000008u;
|
|
/* 02237634 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02237638 */ cpu->ctr = cpu->r[11];
|
|
/* 0223763C */ _t8 = cpu->r[4] + 0x00000038u;
|
|
/* 0223763C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02237640 */ cpu->f[31] = cpu->f[13] + cpu->f[0];
|
|
/* 02237644 */ cpu->r[31] = cpu->r[3];
|
|
/* 02237648 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223764C */ _t9 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0223764C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02237650 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02237650 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02237654 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 02237658 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223765C */ cpu->f[1] = cpu->f[13] - cpu->f[31];
|
|
/* 02237660 */ _t11 = cpu->r[12] + 0x00001F20u;
|
|
/* 02237660 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02237664 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02237668 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223766C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223766C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223766C */ if (_t13) goto L_02237670; else goto L_022376D8;
|
|
L_02237670: ; // 0x2237670
|
|
/* 02237670 */ cpu->f[1] = cpu->f[0];
|
|
/* 02237674 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237678 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223767C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223767C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02237680 */ Gambit_fn_02236B20(cpu);
|
|
/* 02237684 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02237688 */ _t15 = cpu->r[12] + 0x00006000u;
|
|
/* 02237688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223768C */ _t16 = cpu->r[12] + 0x00000268u;
|
|
/* 0223768C */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02237690 */ Gambit_fn_0261F73C(cpu);
|
|
/* 02237694 */ _t17 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02237694 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02237698 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02237698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223769C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 022376A0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022376A0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022376A0 */ if (_t20) goto L_022376A4; else goto L_022376E8;
|
|
L_022376A4: ; // 0x22376a4
|
|
/* 022376A4 */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 022376A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022376A8 */ _t22 = cpu->r[11] + 0x0000039Cu;
|
|
/* 022376A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022376AC */ cpu->ctr = cpu->r[0];
|
|
/* 022376B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022376B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022376B8 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022376B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022376BC */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022376BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022376C0 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 022376C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022376C4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022376C4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022376C4 */ if (_t27) goto L_022376C8; // else: addr-0 trap, fall-through
|
|
L_022376C8: ; // 0x22376c8
|
|
/* 022376C8 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022376C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022376CC */ cpu->lr = cpu->r[0];
|
|
/* 022376D0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022376D4 */ return;
|
|
L_022376D8: ; // 0x22376d8
|
|
/* 022376D8 */ cpu->r[10] = 0x00000002u;
|
|
/* 022376DC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022376E0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022376E0 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 022376E4 */ Gambit_fn_02236B20(cpu);
|
|
L_022376E8: ; // 0x22376e8
|
|
/* 022376E8 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 022376E8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022376EC */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 022376EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022376F0 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 022376F0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 022376F4 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022376F4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022376F4 */ if (_t34) goto L_022376F8; // else: addr-0 trap, fall-through
|
|
L_022376F8: ; // 0x22376f8
|
|
/* 022376F8 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022376F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022376FC */ cpu->lr = cpu->r[0];
|
|
/* 02237700 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02237704 */ return;
|
|
}
|
|
|
|
// fn_02237708 @ 0x2237708
|
|
void Gambit_fn_02237708(CPUState* cpu) {
|
|
L_02237708: ; // 0x2237708
|
|
/* 02237708 */ return;
|
|
}
|
|
|
|
// fn_0223770C @ 0x223770c
|
|
void Gambit_fn_0223770C(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;
|
|
|
|
L_0223770C: ; // 0x223770c
|
|
/* 0223770C */ cpu->r[0] = cpu->lr;
|
|
/* 02237710 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02237710 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02237710 */ cpu->r[1] = _t0;
|
|
/* 02237714 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02237714 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02237718 */ /* nop */
|
|
/* 0223771C */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0223771C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02237720 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 02237720 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02237724 */ /* nop */
|
|
/* 02237728 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02237728 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0223772C */ _t5 = cpu->r[1] + 0x00000030u;
|
|
/* 0223772C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02237730 */ cpu->r[31] = cpu->r[3];
|
|
/* 02237734 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237734 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02237738 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02237738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223773C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02237740 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237740 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02237740 */ if (_t9) goto L_0223774C; else goto L_02237744;
|
|
L_02237744: ; // 0x2237744
|
|
/* 02237744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02237748 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237748 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02237748 */ if (_t11) goto L_0223774C; else goto L_022377C0;
|
|
L_0223774C: ; // 0x223774c
|
|
/* 0223774C */ _t12 = cpu->r[31] + 0x00000184u;
|
|
/* 0223774C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02237750 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x00000015u);
|
|
/* 02237750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02237754 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237754 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02237754 */ if (_t14) goto L_022377C0; else goto L_02237758;
|
|
L_02237758: ; // 0x2237758
|
|
/* 02237758 */ _t15 = cpu->r[31] + 0x00000188u;
|
|
/* 02237758 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223775C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02237760 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237760 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02237760 */ if (_t17) goto L_02237774; else goto L_02237764;
|
|
L_02237764: ; // 0x2237764
|
|
/* 02237764 */ _t18 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02237764 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02237768 */ _t19 = cpu->r[31] + 0x0000018Cu;
|
|
/* 02237768 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223776C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 02237770 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237770 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02237770 */ if (_t21) goto L_0223778C; else goto L_02237774;
|
|
L_02237774: ; // 0x2237774
|
|
/* 02237774 */ cpu->r[5] = 0x10050000u;
|
|
/* 02237778 */ _t22 = cpu->r[31] + 0x00000030u;
|
|
/* 02237778 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223777C */ cpu->r[4] = cpu->r[31] + 0x00000188u;
|
|
/* 02237780 */ cpu->r[5] = cpu->r[5] + 0x00001FA8u;
|
|
/* 02237784 */ cpu->r[6] = 0x00000000u;
|
|
/* 02237788 */ Gambit_fn_027B72F0(cpu);
|
|
L_0223778C: ; // 0x223778c
|
|
/* 0223778C */ _t23 = cpu->r[31] + 0x00000194u;
|
|
/* 0223778C */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02237790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02237794 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237794 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02237794 */ if (_t25) goto L_022377A8; else goto L_02237798;
|
|
L_02237798: ; // 0x2237798
|
|
/* 02237798 */ _t26 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02237798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223779C */ _t27 = cpu->r[31] + 0x00000198u;
|
|
/* 0223779C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022377A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 022377A4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022377A4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022377A4 */ if (_t29) goto L_022377C0; else goto L_022377A8;
|
|
L_022377A8: ; // 0x22377a8
|
|
/* 022377A8 */ cpu->r[5] = 0x10050000u;
|
|
/* 022377AC */ _t30 = cpu->r[31] + 0x00000030u;
|
|
/* 022377AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022377B0 */ cpu->r[4] = cpu->r[31] + 0x00000194u;
|
|
/* 022377B4 */ cpu->r[5] = cpu->r[5] + 0x00001FB0u;
|
|
/* 022377B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022377BC */ Gambit_fn_027B72F0(cpu);
|
|
L_022377C0: ; // 0x22377c0
|
|
/* 022377C0 */ _t31 = cpu->r[31] + 0x00000184u;
|
|
/* 022377C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022377C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x0000000Fu);
|
|
/* 022377C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022377CC */ _t32 = cpu->r[31] + 0x00000184u;
|
|
/* 022377CC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 022377D0 */ Gambit_fn_0222C128(cpu);
|
|
/* 022377D4 */ _t33 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022377D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022377D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022377DC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022377DC */ _t35 = _t34 & 0x00000001u;
|
|
/* 022377DC */ if (_t35) goto L_022377E8; else goto L_022377E0;
|
|
L_022377E0: ; // 0x22377e0
|
|
/* 022377E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 022377E4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022377E4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022377E4 */ if (_t37) goto L_022377E8; else goto L_0223791C;
|
|
L_022377E8: ; // 0x22377e8
|
|
/* 022377E8 */ _t38 = cpu->r[31] + 0x00000088u;
|
|
/* 022377E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022377EC */ _t39 = cpu->r[31] + 0x00000090u;
|
|
/* 022377EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022377F0 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022377F0 */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 022377F4 */ _t41 = cpu->r[31] + 0x0000008Cu;
|
|
/* 022377F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022377F8 */ _t42 = cpu->r[31] + 0x00000004u;
|
|
/* 022377F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022377FC */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022377FC */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02237800 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 02237800 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 02237804 */ _t45 = cpu->r[10] + 0x00000254u;
|
|
/* 02237804 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02237808 */ cpu->ctr = cpu->r[11];
|
|
/* 0223780C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237810 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237814 */ cpu->r[4] = cpu->r[3];
|
|
/* 02237818 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0223781C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02237820 */ _t46 = cpu->r[31] + 0x00000128u;
|
|
/* 02237820 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02237824 */ _t47 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02237828 */ cpu->f[13] = cpu->f[13] + cpu->f[1];
|
|
/* 0223782C */ _t48 = cpu->r[31] + 0x00000130u;
|
|
/* 0223782C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 02237830 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237834 */ _t49 = cpu->r[31] + 0x00000128u;
|
|
/* 02237834 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02237838 */ Gambit_fn_022362F8(cpu);
|
|
/* 0223783C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237840 */ _t50 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237840 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[1]);
|
|
/* 02237844 */ Gambit_fn_02236260(cpu);
|
|
/* 02237848 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223784C */ _t51 = cpu->r[31] + 0x00000184u;
|
|
/* 0223784C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t51);
|
|
/* 02237850 */ _t52 = cpu->r[12] + 0x00001F24u;
|
|
/* 02237850 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02237854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02237858 */ _t53 = cpu->r[31] + 0x00000134u;
|
|
/* 02237858 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 0223785C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223785C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0223785C */ if (_t55) goto L_02237860; else goto L_022378E4;
|
|
L_02237860: ; // 0x2237860
|
|
/* 02237860 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 02237860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02237864 */ _t57 = cpu->r[12] + 0x00000254u;
|
|
/* 02237864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02237868 */ cpu->ctr = cpu->r[0];
|
|
/* 0223786C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237870 */ cpu->f[30] = cpu->f[31];
|
|
/* 02237874 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237878 */ _t58 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237878 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0223787C */ _t59 = cpu->r[3] + 0x00000004u;
|
|
/* 0223787C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02237880 */ _t60 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02237880 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02237884 */ cpu->f[10] = cpu->f[0] - cpu->f[10];
|
|
/* 02237888 */ _t61 = cpu->r[31] + 0x00000130u;
|
|
/* 02237888 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0223788C */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02237890 */ cpu->r[9] = 0x10050000u;
|
|
/* 02237894 */ cpu->f[0] = cpu->f[10] - cpu->f[11];
|
|
/* 02237898 */ _t62 = cpu->r[9] + 0x00001F5Cu;
|
|
/* 02237898 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0223789C */ cpu->f[10] = cpu->f[0] * cpu->f[12];
|
|
/* 022378A0 */ cpu->f[11] = cpu->f[10] + cpu->f[31];
|
|
/* 022378A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 022378A8 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022378A8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 022378A8 */ if (_t64) goto L_022378AC; else goto L_022378B0;
|
|
L_022378AC: ; // 0x22378ac
|
|
/* 022378AC */ cpu->f[30] = cpu->f[31] - cpu->f[10];
|
|
L_022378B0: ; // 0x22378b0
|
|
/* 022378B0 */ cpu->r[11] = 0x10050000u;
|
|
/* 022378B4 */ _t65 = cpu->r[11] + 0x00001FA4u;
|
|
/* 022378B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022378B8 */ cpu->f[13] = cpu->f[0] - cpu->f[30];
|
|
/* 022378BC */ /* nop */
|
|
/* 022378C0 */ _t66 = cpu->r[31] + 0x00000138u;
|
|
/* 022378C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022378C4 */ cpu->r[10] = 0x10050000u;
|
|
/* 022378C8 */ cpu->f[12] = cpu->f[10] - cpu->f[30];
|
|
/* 022378CC */ _t67 = cpu->r[10] + 0x00001F20u;
|
|
/* 022378CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022378D0 */ /* nop */
|
|
/* 022378D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022378D8 */ _t68 = cpu->r[31] + 0x00000138u;
|
|
/* 022378D8 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 022378DC */ Gambit_fn_0222DADC(cpu);
|
|
/* 022378E0 */ goto L_0223791C;
|
|
L_022378E4: ; // 0x22378e4
|
|
/* 022378E4 */ _t69 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022378E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022378E8 */ _t70 = cpu->r[31] + 0x00000130u;
|
|
/* 022378E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022378EC */ _t71 = cpu->r[31] + 0x00000138u;
|
|
/* 022378EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022378F0 */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 022378F4 */ cpu->f[0] = cpu->f[12] + cpu->f[12];
|
|
/* 022378F8 */ cpu->f[9] = cpu->f[9] + cpu->f[11];
|
|
/* 022378FC */ _t72 = cpu->r[31] + 0x00000184u;
|
|
/* 022378FC */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t72);
|
|
/* 02237900 */ cpu->f[10] = cpu->f[0] - cpu->f[9];
|
|
/* 02237904 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02237908 */ /* nop */
|
|
/* 0223790C */ _t73 = cpu->r[31] + 0x00000184u;
|
|
/* 0223790C */ rbrew_write16(cpu->mem, _t73, (uint16_t)cpu->r[12]);
|
|
/* 02237910 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237914 */ _t74 = cpu->r[31] + 0x00000138u;
|
|
/* 02237914 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[11]);
|
|
/* 02237918 */ Gambit_fn_0222DADC(cpu);
|
|
L_0223791C: ; // 0x223791c
|
|
/* 0223791C */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 0223791C */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02237920 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 02237920 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02237924 */ _t77 = cpu->r[1] + 0x00000020u;
|
|
/* 02237924 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02237928 */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02237928 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 0223792C */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0223792C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t79);
|
|
/* 02237930 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237930 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02237930 */ if (_t81) goto L_02237934; // else: addr-0 trap, fall-through
|
|
L_02237934: ; // 0x2237934
|
|
/* 02237934 */ _t82 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02237938 */ cpu->lr = cpu->r[0];
|
|
/* 0223793C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02237940 */ return;
|
|
}
|
|
|
|
// fn_02237710 @ 0x2237710
|
|
void Gambit_fn_02237710(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;
|
|
|
|
L_02237710: ; // 0x2237710
|
|
/* 02237710 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02237710 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02237710 */ cpu->r[1] = _t0;
|
|
/* 02237714 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02237714 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02237718 */ /* nop */
|
|
/* 0223771C */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0223771C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02237720 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 02237720 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02237724 */ /* nop */
|
|
/* 02237728 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02237728 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0223772C */ _t5 = cpu->r[1] + 0x00000030u;
|
|
/* 0223772C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02237730 */ cpu->r[31] = cpu->r[3];
|
|
/* 02237734 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237734 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02237738 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02237738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223773C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02237740 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237740 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02237740 */ if (_t9) goto L_0223774C; else goto L_02237744;
|
|
L_02237744: ; // 0x2237744
|
|
/* 02237744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02237748 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237748 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02237748 */ if (_t11) goto L_0223774C; else goto L_022377C0;
|
|
L_0223774C: ; // 0x223774c
|
|
/* 0223774C */ _t12 = cpu->r[31] + 0x00000184u;
|
|
/* 0223774C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02237750 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x00000015u);
|
|
/* 02237750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02237754 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237754 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02237754 */ if (_t14) goto L_022377C0; else goto L_02237758;
|
|
L_02237758: ; // 0x2237758
|
|
/* 02237758 */ _t15 = cpu->r[31] + 0x00000188u;
|
|
/* 02237758 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223775C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02237760 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237760 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02237760 */ if (_t17) goto L_02237774; else goto L_02237764;
|
|
L_02237764: ; // 0x2237764
|
|
/* 02237764 */ _t18 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02237764 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02237768 */ _t19 = cpu->r[31] + 0x0000018Cu;
|
|
/* 02237768 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223776C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 02237770 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237770 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02237770 */ if (_t21) goto L_0223778C; else goto L_02237774;
|
|
L_02237774: ; // 0x2237774
|
|
/* 02237774 */ cpu->r[5] = 0x10050000u;
|
|
/* 02237778 */ _t22 = cpu->r[31] + 0x00000030u;
|
|
/* 02237778 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223777C */ cpu->r[4] = cpu->r[31] + 0x00000188u;
|
|
/* 02237780 */ cpu->r[5] = cpu->r[5] + 0x00001FA8u;
|
|
/* 02237784 */ cpu->r[6] = 0x00000000u;
|
|
/* 02237788 */ Gambit_fn_027B72F0(cpu);
|
|
L_0223778C: ; // 0x223778c
|
|
/* 0223778C */ _t23 = cpu->r[31] + 0x00000194u;
|
|
/* 0223778C */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02237790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02237794 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237794 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02237794 */ if (_t25) goto L_022377A8; else goto L_02237798;
|
|
L_02237798: ; // 0x2237798
|
|
/* 02237798 */ _t26 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02237798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223779C */ _t27 = cpu->r[31] + 0x00000198u;
|
|
/* 0223779C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022377A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 022377A4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022377A4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022377A4 */ if (_t29) goto L_022377C0; else goto L_022377A8;
|
|
L_022377A8: ; // 0x22377a8
|
|
/* 022377A8 */ cpu->r[5] = 0x10050000u;
|
|
/* 022377AC */ _t30 = cpu->r[31] + 0x00000030u;
|
|
/* 022377AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022377B0 */ cpu->r[4] = cpu->r[31] + 0x00000194u;
|
|
/* 022377B4 */ cpu->r[5] = cpu->r[5] + 0x00001FB0u;
|
|
/* 022377B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022377BC */ Gambit_fn_027B72F0(cpu);
|
|
L_022377C0: ; // 0x22377c0
|
|
/* 022377C0 */ _t31 = cpu->r[31] + 0x00000184u;
|
|
/* 022377C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022377C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x0000000Fu);
|
|
/* 022377C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022377CC */ _t32 = cpu->r[31] + 0x00000184u;
|
|
/* 022377CC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 022377D0 */ Gambit_fn_0222C128(cpu);
|
|
/* 022377D4 */ _t33 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022377D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022377D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022377DC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022377DC */ _t35 = _t34 & 0x00000001u;
|
|
/* 022377DC */ if (_t35) goto L_022377E8; else goto L_022377E0;
|
|
L_022377E0: ; // 0x22377e0
|
|
/* 022377E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 022377E4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022377E4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022377E4 */ if (_t37) goto L_022377E8; else goto L_0223791C;
|
|
L_022377E8: ; // 0x22377e8
|
|
/* 022377E8 */ _t38 = cpu->r[31] + 0x00000088u;
|
|
/* 022377E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022377EC */ _t39 = cpu->r[31] + 0x00000090u;
|
|
/* 022377EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022377F0 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022377F0 */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 022377F4 */ _t41 = cpu->r[31] + 0x0000008Cu;
|
|
/* 022377F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022377F8 */ _t42 = cpu->r[31] + 0x00000004u;
|
|
/* 022377F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022377FC */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022377FC */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02237800 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 02237800 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 02237804 */ _t45 = cpu->r[10] + 0x00000254u;
|
|
/* 02237804 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02237808 */ cpu->ctr = cpu->r[11];
|
|
/* 0223780C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237810 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237814 */ cpu->r[4] = cpu->r[3];
|
|
/* 02237818 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0223781C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02237820 */ _t46 = cpu->r[31] + 0x00000128u;
|
|
/* 02237820 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02237824 */ _t47 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02237828 */ cpu->f[13] = cpu->f[13] + cpu->f[1];
|
|
/* 0223782C */ _t48 = cpu->r[31] + 0x00000130u;
|
|
/* 0223782C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 02237830 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237834 */ _t49 = cpu->r[31] + 0x00000128u;
|
|
/* 02237834 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02237838 */ Gambit_fn_022362F8(cpu);
|
|
/* 0223783C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237840 */ _t50 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237840 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[1]);
|
|
/* 02237844 */ Gambit_fn_02236260(cpu);
|
|
/* 02237848 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223784C */ _t51 = cpu->r[31] + 0x00000184u;
|
|
/* 0223784C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t51);
|
|
/* 02237850 */ _t52 = cpu->r[12] + 0x00001F24u;
|
|
/* 02237850 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02237854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02237858 */ _t53 = cpu->r[31] + 0x00000134u;
|
|
/* 02237858 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 0223785C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223785C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0223785C */ if (_t55) goto L_02237860; else goto L_022378E4;
|
|
L_02237860: ; // 0x2237860
|
|
/* 02237860 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 02237860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02237864 */ _t57 = cpu->r[12] + 0x00000254u;
|
|
/* 02237864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02237868 */ cpu->ctr = cpu->r[0];
|
|
/* 0223786C */ cpu->r[3] = cpu->r[31];
|
|
/* 02237870 */ cpu->f[30] = cpu->f[31];
|
|
/* 02237874 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237878 */ _t58 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237878 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0223787C */ _t59 = cpu->r[3] + 0x00000004u;
|
|
/* 0223787C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02237880 */ _t60 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02237880 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02237884 */ cpu->f[10] = cpu->f[0] - cpu->f[10];
|
|
/* 02237888 */ _t61 = cpu->r[31] + 0x00000130u;
|
|
/* 02237888 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0223788C */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02237890 */ cpu->r[9] = 0x10050000u;
|
|
/* 02237894 */ cpu->f[0] = cpu->f[10] - cpu->f[11];
|
|
/* 02237898 */ _t62 = cpu->r[9] + 0x00001F5Cu;
|
|
/* 02237898 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0223789C */ cpu->f[10] = cpu->f[0] * cpu->f[12];
|
|
/* 022378A0 */ cpu->f[11] = cpu->f[10] + cpu->f[31];
|
|
/* 022378A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 022378A8 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022378A8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 022378A8 */ if (_t64) goto L_022378AC; else goto L_022378B0;
|
|
L_022378AC: ; // 0x22378ac
|
|
/* 022378AC */ cpu->f[30] = cpu->f[31] - cpu->f[10];
|
|
L_022378B0: ; // 0x22378b0
|
|
/* 022378B0 */ cpu->r[11] = 0x10050000u;
|
|
/* 022378B4 */ _t65 = cpu->r[11] + 0x00001FA4u;
|
|
/* 022378B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022378B8 */ cpu->f[13] = cpu->f[0] - cpu->f[30];
|
|
/* 022378BC */ /* nop */
|
|
/* 022378C0 */ _t66 = cpu->r[31] + 0x00000138u;
|
|
/* 022378C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022378C4 */ cpu->r[10] = 0x10050000u;
|
|
/* 022378C8 */ cpu->f[12] = cpu->f[10] - cpu->f[30];
|
|
/* 022378CC */ _t67 = cpu->r[10] + 0x00001F20u;
|
|
/* 022378CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022378D0 */ /* nop */
|
|
/* 022378D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022378D8 */ _t68 = cpu->r[31] + 0x00000138u;
|
|
/* 022378D8 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 022378DC */ Gambit_fn_0222DADC(cpu);
|
|
/* 022378E0 */ goto L_0223791C;
|
|
L_022378E4: ; // 0x22378e4
|
|
/* 022378E4 */ _t69 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022378E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022378E8 */ _t70 = cpu->r[31] + 0x00000130u;
|
|
/* 022378E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022378EC */ _t71 = cpu->r[31] + 0x00000138u;
|
|
/* 022378EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022378F0 */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 022378F4 */ cpu->f[0] = cpu->f[12] + cpu->f[12];
|
|
/* 022378F8 */ cpu->f[9] = cpu->f[9] + cpu->f[11];
|
|
/* 022378FC */ _t72 = cpu->r[31] + 0x00000184u;
|
|
/* 022378FC */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t72);
|
|
/* 02237900 */ cpu->f[10] = cpu->f[0] - cpu->f[9];
|
|
/* 02237904 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02237908 */ /* nop */
|
|
/* 0223790C */ _t73 = cpu->r[31] + 0x00000184u;
|
|
/* 0223790C */ rbrew_write16(cpu->mem, _t73, (uint16_t)cpu->r[12]);
|
|
/* 02237910 */ cpu->r[3] = cpu->r[31];
|
|
/* 02237914 */ _t74 = cpu->r[31] + 0x00000138u;
|
|
/* 02237914 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[11]);
|
|
/* 02237918 */ Gambit_fn_0222DADC(cpu);
|
|
L_0223791C: ; // 0x223791c
|
|
/* 0223791C */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 0223791C */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02237920 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 02237920 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02237924 */ _t77 = cpu->r[1] + 0x00000020u;
|
|
/* 02237924 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02237928 */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02237928 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 0223792C */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0223792C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t79);
|
|
/* 02237930 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237930 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02237930 */ if (_t81) goto L_02237934; // else: addr-0 trap, fall-through
|
|
L_02237934: ; // 0x2237934
|
|
/* 02237934 */ _t82 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02237938 */ cpu->lr = cpu->r[0];
|
|
/* 0223793C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02237940 */ return;
|
|
}
|
|
|
|
// fn_02237944 @ 0x2237944
|
|
void Gambit_fn_02237944(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, _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;
|
|
double _ft56, _ft57;
|
|
|
|
L_02237944: ; // 0x2237944
|
|
/* 02237944 */ _t0 = cpu->r[1] + 0xFFFFFF18u;
|
|
/* 02237944 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02237944 */ cpu->r[1] = _t0;
|
|
/* 02237948 */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02237948 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0223794C */ _t2 = cpu->r[1] + 0x000000A8u;
|
|
/* 0223794C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[28]);
|
|
/* 02237950 */ cpu->r[0] = cpu->lr;
|
|
/* 02237954 */ _t3 = cpu->r[1] + 0x000000B8u;
|
|
/* 02237954 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02237958 */ /* nop */
|
|
/* 0223795C */ _t4 = cpu->r[1] + 0x000000C8u;
|
|
/* 0223795C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02237960 */ /* nop */
|
|
/* 02237964 */ _t5 = cpu->r[1] + 0x000000D8u;
|
|
/* 02237964 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02237968 */ /* nop */
|
|
/* 0223796C */ _t6 = cpu->r[1] + 0x000000B0u;
|
|
/* 0223796C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02237970 */ _t7 = cpu->r[1] + 0x000000C0u;
|
|
/* 02237970 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[29]);
|
|
/* 02237974 */ /* nop */
|
|
/* 02237978 */ _t8 = cpu->r[1] + 0x000000D0u;
|
|
/* 02237978 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 0223797C */ _t9 = cpu->r[1] + 0x000000E0u;
|
|
/* 0223797C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 02237980 */ _t10 = cpu->r[1] + 0x000000ECu;
|
|
/* 02237980 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02237984 */ _t11 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237984 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 02237988 */ _t12 = cpu->r[1] + 0x000000A4u;
|
|
/* 02237988 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 0223798C */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0223798C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02237990 */ _t14 = cpu->r[11] + 0x00000254u;
|
|
/* 02237990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02237994 */ cpu->r[31] = cpu->r[4];
|
|
/* 02237998 */ cpu->ctr = cpu->r[0];
|
|
/* 0223799C */ _t15 = cpu->r[31] + 0x00000144u;
|
|
/* 0223799C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022379A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022379A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022379A8 */ _t16 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022379A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022379AC */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 022379AC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022379B0 */ cpu->f[0] = cpu->f[8] + cpu->f[11];
|
|
/* 022379B4 */ cpu->r[7] = 0x10050000u;
|
|
/* 022379B8 */ cpu->f[0] = cpu->f[0] - cpu->f[30];
|
|
/* 022379BC */ _t18 = cpu->r[7] + 0x00001F20u;
|
|
/* 022379BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022379C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022379C4 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022379C4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022379C4 */ if (_t20) goto L_022379C8; else goto L_02237A44;
|
|
L_022379C8: ; // 0x22379c8
|
|
/* 022379C8 */ _t21 = cpu->r[30] + 0x00000138u;
|
|
/* 022379C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022379CC */ cpu->f[13] = cpu->f[11] + cpu->f[11];
|
|
/* 022379D0 */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[9];
|
|
/* 022379D4 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 022379D8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022379DC */ /* nop */
|
|
/* 022379E0 */ _t22 = cpu->r[1] + 0x00000090u;
|
|
/* 022379E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022379E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022379E8 */ _t23 = cpu->r[30] + 0x00000138u;
|
|
/* 022379E8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 022379EC */ Gambit_fn_0223657C(cpu);
|
|
/* 022379F0 */ _t24 = cpu->r[30] + 0x00000004u;
|
|
/* 022379F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022379F4 */ _t25 = cpu->r[9] + 0x0000025Cu;
|
|
/* 022379F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022379F8 */ cpu->ctr = cpu->r[0];
|
|
/* 022379FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237A00 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 02237A00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02237A04 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02237A04 */ rbrew_write32(cpu->mem, _t27, cpu->r[6]);
|
|
/* 02237A08 */ _t28 = cpu->r[3] + 0x00000004u;
|
|
/* 02237A08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02237A0C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237A0C */ rbrew_write32(cpu->mem, _t29, cpu->r[8]);
|
|
/* 02237A10 */ _t30 = cpu->r[3] + 0x00000008u;
|
|
/* 02237A10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02237A14 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237A14 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02237A18 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02237A18 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
/* 02237A1C */ cpu->f[0] = cpu->f[9] * cpu->f[9];
|
|
/* 02237A20 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02237A20 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02237A24 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02237A24 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02237A28 */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 02237A2C */ cpu->f[13] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 02237A30 */ cpu->r[12] = 0x10050000u;
|
|
/* 02237A34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 02237A38 */ _t35 = cpu->r[12] + 0x00001F30u;
|
|
/* 02237A38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02237A3C */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237A3C */ _t37 = _t36 & 0x00000001u;
|
|
/* 02237A3C */ if (_t37) goto L_02237A40; else goto L_02237AE4;
|
|
L_02237A40: ; // 0x2237a40
|
|
/* 02237A40 */ goto L_02237AAC;
|
|
L_02237A44: ; // 0x2237a44
|
|
/* 02237A44 */ _t38 = cpu->r[30] + 0x00000134u;
|
|
/* 02237A44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02237A48 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 02237A4C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237A4C */ _t40 = _t39 & 0x00000001u;
|
|
/* 02237A4C */ if (_t40) goto L_02237A50; else goto L_02237A58;
|
|
L_02237A50: ; // 0x2237a50
|
|
/* 02237A50 */ cpu->r[3] = cpu->r[30];
|
|
/* 02237A54 */ Gambit_fn_02790488(cpu);
|
|
L_02237A58: ; // 0x2237a58
|
|
/* 02237A58 */ _t41 = cpu->r[30] + 0x00000004u;
|
|
/* 02237A58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02237A5C */ _t42 = cpu->r[9] + 0x0000025Cu;
|
|
/* 02237A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02237A60 */ cpu->ctr = cpu->r[0];
|
|
/* 02237A64 */ cpu->r[3] = cpu->r[30];
|
|
/* 02237A68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237A6C */ _t43 = cpu->r[3] + 0x00000000u;
|
|
/* 02237A6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02237A70 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 02237A70 */ rbrew_write32(cpu->mem, _t44, cpu->r[6]);
|
|
/* 02237A74 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 02237A74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02237A78 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237A78 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
/* 02237A7C */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 02237A7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02237A80 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237A80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02237A84 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 02237A84 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 02237A88 */ cpu->f[0] = cpu->f[9] * cpu->f[9];
|
|
/* 02237A8C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 02237A8C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02237A90 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02237A90 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02237A94 */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 02237A98 */ cpu->f[13] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 02237A9C */ cpu->r[12] = 0x10050000u;
|
|
/* 02237AA0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 02237AA4 */ _t52 = cpu->r[12] + 0x00001F30u;
|
|
/* 02237AA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02237AA8 */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237AA8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02237AA8 */ if (_t54) goto L_02237AAC; else goto L_02237AE4;
|
|
L_02237AAC: ; // 0x2237aac
|
|
/* 02237AAC */ cpu->r[10] = 0x10050000u;
|
|
/* 02237AB0 */ _t55 = cpu->r[10] + 0x00001F34u;
|
|
/* 02237AB0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02237AB4 */ _ft56 = sqrt(cpu->f[13]);
|
|
/* 02237AB4 */ _ft57 = (double)(int32_t)0x00000001u;
|
|
/* 02237AB4 */ cpu->f[6] = _ft57 / _ft56;
|
|
/* 02237AB8 */ cpu->f[7] = cpu->f[6] * cpu->f[6];
|
|
/* 02237ABC */ cpu->f[8] = cpu->f[6] * cpu->f[0];
|
|
/* 02237AC0 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[13], -(cpu->f[12]));
|
|
/* 02237AC4 */ cpu->f[6] = cpu->f[7] * cpu->f[8];
|
|
/* 02237AC8 */ /* nop */
|
|
/* 02237ACC */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 02237ACC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02237AD0 */ /* nop */
|
|
/* 02237AD4 */ cpu->f[11] = cpu->f[11] * cpu->f[6];
|
|
/* 02237AD8 */ /* nop */
|
|
/* 02237ADC */ cpu->f[13] = cpu->f[13] * cpu->f[6];
|
|
/* 02237AE0 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 02237AE0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
L_02237AE4: ; // 0x2237ae4
|
|
/* 02237AE4 */ cpu->r[7] = 0x10050000u;
|
|
/* 02237AE8 */ _t60 = cpu->r[7] + 0x00001FBCu;
|
|
/* 02237AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02237AEC */ cpu->r[9] = 0x101F0000u;
|
|
/* 02237AF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 02237AF4 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 02237AF8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237AF8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02237AF8 */ if (_t62) goto L_02237B04; else goto L_02237AFC;
|
|
L_02237AFC: ; // 0x2237afc
|
|
/* 02237AFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02237B00 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237B00 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02237B00 */ if (_t64) goto L_02237B04; else goto L_02237B48;
|
|
L_02237B04: ; // 0x2237b04
|
|
/* 02237B04 */ _t65 = cpu->r[9] + 0x00000008u;
|
|
/* 02237B04 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02237B08 */ _t66 = cpu->r[9] + 0x00000004u;
|
|
/* 02237B08 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02237B0C */ _t67 = cpu->r[30] + 0x00000030u;
|
|
/* 02237B0C */ cpu->r[29] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02237B10 */ cpu->r[4] = 0x00000007u;
|
|
/* 02237B14 */ _t68 = cpu->r[9] + 0x00000000u;
|
|
/* 02237B14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02237B18 */ cpu->r[5] = 0x00000001u;
|
|
/* 02237B1C */ cpu->r[3] = cpu->r[29];
|
|
/* 02237B20 */ Gambit_fn_027B8224(cpu);
|
|
/* 02237B24 */ _t69 = cpu->r[31] + 0x00000148u;
|
|
/* 02237B24 */ cpu->r[9] = rbrew_read16(cpu->mem, _t69);
|
|
/* 02237B28 */ cpu->r[3] = cpu->r[29];
|
|
/* 02237B2C */ cpu->r[4] = 0x00000002u;
|
|
/* 02237B30 */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02237B34 */ Gambit_fn_027B8224(cpu);
|
|
/* 02237B38 */ _t70 = cpu->r[30] + 0x000001C8u;
|
|
/* 02237B38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02237B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02237B40 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237B40 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02237B40 */ if (_t72) goto L_02237B44; else goto L_02237BD0;
|
|
L_02237B44: ; // 0x2237b44
|
|
/* 02237B44 */ goto L_02237BE0;
|
|
L_02237B48: ; // 0x2237b48
|
|
/* 02237B48 */ _t73 = cpu->r[9] + 0x00000000u;
|
|
/* 02237B48 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02237B4C */ _t74 = cpu->r[9] + 0x00000004u;
|
|
/* 02237B4C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02237B50 */ cpu->f[12] = -cpu->f[31];
|
|
/* 02237B54 */ _t75 = cpu->r[9] + 0x00000008u;
|
|
/* 02237B54 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02237B58 */ cpu->f[13] = -cpu->f[29];
|
|
/* 02237B5C */ _t76 = cpu->r[1] + 0x00000044u;
|
|
/* 02237B5C */ rbrew_write_f32(cpu->mem, _t76, cpu->f[12]);
|
|
/* 02237B60 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 02237B60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02237B64 */ _t78 = cpu->r[1] + 0x00000048u;
|
|
/* 02237B64 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[13]);
|
|
/* 02237B68 */ _t79 = cpu->r[1] + 0x00000048u;
|
|
/* 02237B68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02237B6C */ cpu->f[0] = -cpu->f[28];
|
|
/* 02237B70 */ _t80 = cpu->r[1] + 0x00000080u;
|
|
/* 02237B70 */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 02237B74 */ _t81 = cpu->r[1] + 0x00000080u;
|
|
/* 02237B74 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02237B78 */ _t82 = cpu->r[1] + 0x00000084u;
|
|
/* 02237B78 */ rbrew_write32(cpu->mem, _t82, cpu->r[12]);
|
|
/* 02237B7C */ _t83 = cpu->r[1] + 0x00000084u;
|
|
/* 02237B7C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02237B80 */ _t84 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02237B80 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 02237B84 */ _t85 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02237B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02237B88 */ _t86 = cpu->r[1] + 0x00000088u;
|
|
/* 02237B88 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 02237B8C */ _t87 = cpu->r[1] + 0x00000088u;
|
|
/* 02237B8C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02237B90 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237B90 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[8]);
|
|
/* 02237B94 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 02237B94 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[9]);
|
|
/* 02237B98 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 02237B98 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[7]);
|
|
/* 02237B9C */ _t91 = cpu->r[30] + 0x00000030u;
|
|
/* 02237B9C */ cpu->r[29] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02237BA0 */ cpu->r[5] = 0x00000001u;
|
|
/* 02237BA4 */ cpu->r[4] = 0x00000007u;
|
|
/* 02237BA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02237BAC */ Gambit_fn_027B8224(cpu);
|
|
/* 02237BB0 */ _t92 = cpu->r[31] + 0x00000148u;
|
|
/* 02237BB0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t92);
|
|
/* 02237BB4 */ cpu->r[4] = 0x00000002u;
|
|
/* 02237BB8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02237BBC */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02237BC0 */ Gambit_fn_027B8224(cpu);
|
|
/* 02237BC4 */ _t93 = cpu->r[30] + 0x000001C8u;
|
|
/* 02237BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02237BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02237BCC */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237BCC */ _t95 = _t94 & 0x00000001u;
|
|
/* 02237BCC */ if (_t95) goto L_02237BE0; else goto L_02237BD0;
|
|
L_02237BD0: ; // 0x2237bd0
|
|
/* 02237BD0 */ _t96 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02237BD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02237BD4 */ _t97 = cpu->r[30] + 0x000001CCu;
|
|
/* 02237BD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02237BD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02237BDC */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237BDC */ _t99 = _t98 & 0x00000001u;
|
|
/* 02237BDC */ if (_t99) goto L_02237BF8; else goto L_02237BE0;
|
|
L_02237BE0: ; // 0x2237be0
|
|
/* 02237BE0 */ cpu->r[5] = 0x10050000u;
|
|
/* 02237BE4 */ cpu->r[4] = cpu->r[30] + 0x000001C8u;
|
|
/* 02237BE8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02237BEC */ cpu->r[5] = cpu->r[5] + 0x00001FD8u;
|
|
/* 02237BF0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02237BF4 */ Gambit_fn_027B72F0(cpu);
|
|
L_02237BF8: ; // 0x2237bf8
|
|
/* 02237BF8 */ _t100 = cpu->r[30] + 0x00000004u;
|
|
/* 02237BF8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02237BFC */ _t101 = cpu->r[6] + 0x00000254u;
|
|
/* 02237BFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02237C00 */ cpu->ctr = cpu->r[7];
|
|
/* 02237C04 */ cpu->r[3] = cpu->r[30];
|
|
/* 02237C08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237C0C */ _t102 = cpu->r[3] + 0x00000000u;
|
|
/* 02237C0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02237C10 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 02237C10 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 02237C14 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02237C18 */ _t104 = cpu->r[1] + 0x00000038u;
|
|
/* 02237C18 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[12]);
|
|
/* 02237C1C */ _t105 = cpu->r[3] + 0x00000004u;
|
|
/* 02237C1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02237C20 */ _t106 = cpu->r[11] + 0x00006344u;
|
|
/* 02237C20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02237C20 */ cpu->r[11] = _t106;
|
|
/* 02237C24 */ _t107 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237C24 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[13]);
|
|
/* 02237C28 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 02237C28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 02237C2C */ _t109 = cpu->r[11] + 0x00000004u;
|
|
/* 02237C2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02237C30 */ _t110 = cpu->r[1] + 0x00000034u;
|
|
/* 02237C30 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[11]);
|
|
/* 02237C34 */ _t111 = cpu->r[1] + 0x00000018u;
|
|
/* 02237C34 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[13]);
|
|
/* 02237C38 */ _t112 = cpu->r[11] + 0x00000008u;
|
|
/* 02237C38 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02237C3C */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 02237C3C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02237C40 */ _t114 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02237C40 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[7]);
|
|
/* 02237C44 */ _t115 = cpu->r[1] + 0x00000040u;
|
|
/* 02237C44 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[0]);
|
|
/* 02237C48 */ cpu->r[5] = 0x00000422u;
|
|
/* 02237C4C */ _t116 = cpu->r[1] + 0x00000020u;
|
|
/* 02237C4C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 02237C50 */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02237C50 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 02237C54 */ _t118 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237C54 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
/* 02237C58 */ _t119 = cpu->r[1] + 0x00000030u;
|
|
/* 02237C58 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[10]);
|
|
/* 02237C5C */ cpu->r[4] = 0x10050000u;
|
|
/* 02237C60 */ _t120 = cpu->r[1] + 0x00000014u;
|
|
/* 02237C60 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[12]);
|
|
/* 02237C64 */ cpu->r[4] = cpu->r[4] + 0x00001FC0u;
|
|
/* 02237C68 */ _t121 = cpu->r[1] + 0x00000024u;
|
|
/* 02237C68 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[29]);
|
|
/* 02237C6C */ _t122 = cpu->r[1] + 0x00000028u;
|
|
/* 02237C6C */ rbrew_write_f32(cpu->mem, _t122, cpu->f[28]);
|
|
/* 02237C70 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02237C74 */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02237C74 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[9]);
|
|
/* 02237C78 */ Gambit_fn_0204D380(cpu);
|
|
/* 02237C7C */ _t124 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02237C7C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02237C80 */ _t125 = cpu->r[1] + 0x00000020u;
|
|
/* 02237C80 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 02237C84 */ _t126 = cpu->r[1] + 0x00000014u;
|
|
/* 02237C84 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 02237C88 */ _t127 = cpu->r[1] + 0x00000054u;
|
|
/* 02237C88 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[7]);
|
|
/* 02237C8C */ _t128 = cpu->r[1] + 0x00000040u;
|
|
/* 02237C8C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02237C90 */ _t129 = cpu->r[1] + 0x00000030u;
|
|
/* 02237C90 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 02237C94 */ _t130 = cpu->r[1] + 0x00000018u;
|
|
/* 02237C94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 02237C98 */ _t131 = cpu->r[1] + 0x00000050u;
|
|
/* 02237C98 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[10]);
|
|
/* 02237C9C */ _t132 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02237C9C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02237CA0 */ _t133 = cpu->r[1] + 0x00000034u;
|
|
/* 02237CA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02237CA4 */ _t134 = cpu->r[1] + 0x00000038u;
|
|
/* 02237CA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 02237CA8 */ _t135 = cpu->r[1] + 0x00000024u;
|
|
/* 02237CA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 02237CAC */ _t136 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02237CAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 02237CB0 */ _t137 = cpu->r[1] + 0x00000064u;
|
|
/* 02237CB0 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[8]);
|
|
/* 02237CB4 */ _t138 = cpu->r[1] + 0x00000070u;
|
|
/* 02237CB4 */ rbrew_write_f32(cpu->mem, _t138, cpu->f[11]);
|
|
/* 02237CB8 */ _t139 = cpu->r[1] + 0x00000068u;
|
|
/* 02237CB8 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[9]);
|
|
/* 02237CBC */ _t140 = cpu->r[30] + 0x000001C8u;
|
|
/* 02237CBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02237CC0 */ _t141 = cpu->r[1] + 0x00000060u;
|
|
/* 02237CC0 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[0]);
|
|
/* 02237CC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02237CC8 */ _t142 = cpu->r[1] + 0x00000078u;
|
|
/* 02237CC8 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[13]);
|
|
/* 02237CCC */ _t143 = cpu->r[1] + 0x00000058u;
|
|
/* 02237CCC */ rbrew_write_f32(cpu->mem, _t143, cpu->f[6]);
|
|
/* 02237CD0 */ _t144 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02237CD0 */ rbrew_write_f32(cpu->mem, _t144, cpu->f[10]);
|
|
/* 02237CD4 */ _t145 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02237CD4 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[12]);
|
|
/* 02237CD8 */ _t146 = cpu->r[1] + 0x00000028u;
|
|
/* 02237CD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 02237CDC */ _t147 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02237CDC */ rbrew_write_f32(cpu->mem, _t147, cpu->f[7]);
|
|
/* 02237CE0 */ _t148 = cpu->r[1] + 0x00000074u;
|
|
/* 02237CE0 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[12]);
|
|
/* 02237CE4 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237CE4 */ _t150 = _t149 & 0x00000001u;
|
|
/* 02237CE4 */ if (_t150) goto L_02237D24; else goto L_02237CE8;
|
|
L_02237CE8: ; // 0x2237ce8
|
|
/* 02237CE8 */ _t151 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02237CE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02237CEC */ _t152 = cpu->r[30] + 0x000001CCu;
|
|
/* 02237CEC */ cpu->r[6] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02237CF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[6]);
|
|
/* 02237CF4 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237CF4 */ _t154 = _t153 & 0x00000001u;
|
|
/* 02237CF4 */ if (_t154) goto L_02237CF8; else goto L_02237D24;
|
|
L_02237CF8: ; // 0x2237cf8
|
|
/* 02237CF8 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 02237CFC */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02237D00 */ Gambit_fn_02C69510(cpu);
|
|
/* 02237D04 */ _t155 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237D04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02237D08 */ cpu->r[11] = 0x10050000u;
|
|
/* 02237D0C */ _t156 = cpu->r[11] + 0x00001F28u;
|
|
/* 02237D0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 02237D10 */ cpu->r[8] = cpu->r[8] | 0x00000008u;
|
|
/* 02237D14 */ _t157 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02237D14 */ rbrew_write32(cpu->mem, _t157, cpu->r[8]);
|
|
/* 02237D18 */ _t158 = cpu->r[31] + 0x00000074u;
|
|
/* 02237D18 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[10]);
|
|
/* 02237D1C */ _t159 = cpu->r[31] + 0x00000078u;
|
|
/* 02237D1C */ rbrew_write_f32(cpu->mem, _t159, cpu->f[10]);
|
|
/* 02237D20 */ _t160 = cpu->r[31] + 0x00000070u;
|
|
/* 02237D20 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[10]);
|
|
L_02237D24: ; // 0x2237d24
|
|
/* 02237D24 */ _t161 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02237D24 */ cpu->r[29] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02237D28 */ _t162 = cpu->r[1] + 0x000000E0u;
|
|
/* 02237D28 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 02237D2C */ _t163 = cpu->r[1] + 0x000000C0u;
|
|
/* 02237D2C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 02237D30 */ _t164 = cpu->r[1] + 0x000000D8u;
|
|
/* 02237D30 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 02237D34 */ _t165 = cpu->r[1] + 0x000000D0u;
|
|
/* 02237D34 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 02237D38 */ _t166 = cpu->r[1] + 0x000000B8u;
|
|
/* 02237D38 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t166);
|
|
/* 02237D3C */ _t167 = cpu->r[1] + 0x000000C8u;
|
|
/* 02237D3C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t167);
|
|
/* 02237D40 */ _t168 = cpu->r[1] + 0x000000B0u;
|
|
/* 02237D40 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 02237D44 */ _t169 = cpu->r[1] + 0x000000A4u;
|
|
/* 02237D44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02237D48 */ _t170 = cpu->r[1] + 0x000000A8u;
|
|
/* 02237D48 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t170);
|
|
/* 02237D4C */ _t171 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237D4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02237D50 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237D50 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02237D50 */ if (_t173) goto L_02237D54; // else: addr-0 trap, fall-through
|
|
L_02237D54: ; // 0x2237d54
|
|
/* 02237D54 */ _t174 = cpu->r[1] + 0x000000ECu;
|
|
/* 02237D54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02237D58 */ cpu->lr = cpu->r[0];
|
|
/* 02237D5C */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 02237D60 */ return;
|
|
}
|
|
|
|
// fn_02237D64 @ 0x2237d64
|
|
void Gambit_fn_02237D64(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, _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, _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, _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, _t640, _t641, _t642, _t643, _t644, _t645, _t646, _t647, _t648, _t649, _t650, _t651, _t652, _t653, _t654, _t655, _t656, _t657, _t658, _t659, _t660, _t661, _t662, _t663, _t664, _t665, _t666, _t667, _t668, _t669, _t670, _t671;
|
|
double _ft39, _ft40, _ft185, _ft186, _ft512, _ft513;
|
|
|
|
L_02237D64: ; // 0x2237d64
|
|
/* 02237D64 */ _t0 = cpu->r[1] + 0xFFFFFD80u;
|
|
/* 02237D64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02237D64 */ cpu->r[1] = _t0;
|
|
/* 02237D68 */ /* nop */
|
|
/* 02237D6C */ cpu->r[0] = cpu->lr;
|
|
/* 02237D70 */ _t1 = cpu->r[1] + 0x000001F0u;
|
|
/* 02237D70 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[23]);
|
|
/* 02237D74 */ _t2 = cpu->r[1] + 0x00000200u;
|
|
/* 02237D74 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[24]);
|
|
/* 02237D78 */ _t3 = cpu->r[1] + 0x00000210u;
|
|
/* 02237D78 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[25]);
|
|
/* 02237D7C */ /* nop */
|
|
/* 02237D80 */ _t4 = cpu->r[1] + 0x00000220u;
|
|
/* 02237D80 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[26]);
|
|
/* 02237D84 */ /* nop */
|
|
/* 02237D88 */ _t5 = cpu->r[1] + 0x00000230u;
|
|
/* 02237D88 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[27]);
|
|
/* 02237D8C */ /* nop */
|
|
/* 02237D90 */ _t6 = cpu->r[1] + 0x00000240u;
|
|
/* 02237D90 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02237D94 */ /* nop */
|
|
/* 02237D98 */ _t7 = cpu->r[1] + 0x00000250u;
|
|
/* 02237D98 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[29]);
|
|
/* 02237D9C */ /* nop */
|
|
/* 02237DA0 */ _t8 = cpu->r[1] + 0x00000260u;
|
|
/* 02237DA0 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02237DA4 */ /* nop */
|
|
/* 02237DA8 */ _t9 = cpu->r[1] + 0x00000270u;
|
|
/* 02237DA8 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[31]);
|
|
/* 02237DAC */ _t10 = cpu->r[1] + 0x000001F8u;
|
|
/* 02237DAC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[23]);
|
|
/* 02237DB0 */ /* nop */
|
|
/* 02237DB4 */ _t11 = cpu->r[1] + 0x00000208u;
|
|
/* 02237DB4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[24]);
|
|
/* 02237DB8 */ /* nop */
|
|
/* 02237DBC */ _t12 = cpu->r[1] + 0x00000218u;
|
|
/* 02237DBC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[25]);
|
|
/* 02237DC0 */ _t13 = cpu->r[1] + 0x00000228u;
|
|
/* 02237DC0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[26]);
|
|
/* 02237DC4 */ _t14 = cpu->r[1] + 0x00000238u;
|
|
/* 02237DC4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[27]);
|
|
/* 02237DC8 */ _t15 = cpu->r[1] + 0x00000284u;
|
|
/* 02237DC8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02237DCC */ _t16 = cpu->r[1] + 0x00000248u;
|
|
/* 02237DCC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[28]);
|
|
/* 02237DD0 */ _t17 = cpu->r[1] + 0x00000258u;
|
|
/* 02237DD0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[29]);
|
|
/* 02237DD4 */ /* nop */
|
|
/* 02237DD8 */ _t18 = cpu->r[1] + 0x00000268u;
|
|
/* 02237DD8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[30]);
|
|
/* 02237DDC */ _t19 = cpu->r[1] + 0x00000278u;
|
|
/* 02237DDC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[31]);
|
|
/* 02237DE0 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02237DE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02237DE4 */ _t21 = cpu->r[11] + 0x00000254u;
|
|
/* 02237DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02237DE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02237DEC */ cpu->r[30] = cpu->r[3];
|
|
/* 02237DF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02237DF4 */ /* nop */
|
|
/* 02237DF8 */ /* nop */
|
|
/* 02237DFC */ _t22 = cpu->r[30] + 0x00000090u;
|
|
/* 02237DFC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02237E00 */ /* nop */
|
|
/* 02237E04 */ /* nop */
|
|
/* 02237E08 */ _t23 = cpu->r[1] + 0x000000ECu;
|
|
/* 02237E08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02237E0C */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 02237E0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02237E10 */ _t25 = cpu->r[1] + 0x00000060u;
|
|
/* 02237E10 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 02237E14 */ cpu->f[6] = cpu->f[7] - cpu->f[8];
|
|
/* 02237E18 */ _t26 = cpu->r[1] + 0x000000F0u;
|
|
/* 02237E18 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02237E1C */ _t27 = cpu->r[1] + 0x000000F4u;
|
|
/* 02237E1C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[6]);
|
|
/* 02237E20 */ _t28 = cpu->r[1] + 0x000000F4u;
|
|
/* 02237E20 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02237E24 */ _t29 = cpu->r[1] + 0x00000064u;
|
|
/* 02237E24 */ rbrew_write32(cpu->mem, _t29, cpu->r[4]);
|
|
/* 02237E28 */ _t30 = cpu->r[1] + 0x00000064u;
|
|
/* 02237E28 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02237E2C */ _t31 = cpu->r[1] + 0x00000068u;
|
|
/* 02237E2C */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 02237E30 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 02237E34 */ _t32 = cpu->r[1] + 0x00000060u;
|
|
/* 02237E34 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02237E38 */ _t33 = cpu->r[1] + 0x00000068u;
|
|
/* 02237E38 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02237E3C */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 02237E40 */ cpu->r[12] = 0x10050000u;
|
|
/* 02237E44 */ cpu->f[29] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 02237E48 */ _t34 = cpu->r[12] + 0x00001F20u;
|
|
/* 02237E48 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02237E4C */ cpu->r[10] = 0x10050000u;
|
|
/* 02237E50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[30]);
|
|
/* 02237E54 */ _t35 = cpu->r[10] + 0x00001F30u;
|
|
/* 02237E54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02237E58 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02237E58 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02237E58 */ if (_t37) goto L_02237E5C; else goto L_02237E94;
|
|
L_02237E5C: ; // 0x2237e5c
|
|
/* 02237E5C */ cpu->r[8] = 0x10050000u;
|
|
/* 02237E60 */ _t38 = cpu->r[8] + 0x00001F34u;
|
|
/* 02237E60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02237E64 */ _ft39 = sqrt(cpu->f[29]);
|
|
/* 02237E64 */ _ft40 = (double)(int32_t)0x00000001u;
|
|
/* 02237E64 */ cpu->f[11] = _ft40 / _ft39;
|
|
/* 02237E68 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 02237E6C */ cpu->f[13] = cpu->f[11] * cpu->f[31];
|
|
/* 02237E70 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[29], -(cpu->f[0]));
|
|
/* 02237E74 */ cpu->f[11] = cpu->f[12] * cpu->f[13];
|
|
/* 02237E78 */ /* nop */
|
|
/* 02237E7C */ _t41 = cpu->r[1] + 0x00000068u;
|
|
/* 02237E7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02237E80 */ /* nop */
|
|
/* 02237E84 */ cpu->f[0] = cpu->f[0] * cpu->f[11];
|
|
/* 02237E88 */ /* nop */
|
|
/* 02237E8C */ cpu->f[29] = cpu->f[29] * cpu->f[11];
|
|
/* 02237E90 */ _t42 = cpu->r[1] + 0x00000068u;
|
|
/* 02237E90 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
L_02237E94: ; // 0x2237e94
|
|
/* 02237E94 */ cpu->r[7] = 0x10050000u;
|
|
/* 02237E98 */ _t43 = cpu->r[30] + 0x00000114u;
|
|
/* 02237E98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02237E9C */ cpu->r[26] = 0x00000000u;
|
|
/* 02237EA0 */ cpu->r[5] = 0x10050000u;
|
|
/* 02237EA4 */ _t44 = cpu->r[7] + 0x00001F28u;
|
|
/* 02237EA4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02237EA8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 02237EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02237EAC */ _t45 = cpu->r[5] + 0x00001F24u;
|
|
/* 02237EAC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02237EB0 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237EB0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02237EB0 */ if (_t47) goto L_02237EB4; else goto L_02238AA0;
|
|
L_02237EB4: ; // 0x2237eb4
|
|
/* 02237EB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02237EB8 */ Gambit_fn_021BF004(cpu);
|
|
/* 02237EBC */ _t48 = cpu->r[30] + 0x00000134u;
|
|
/* 02237EBC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02237EC0 */ cpu->f[6] = cpu->f[29] / cpu->f[6];
|
|
/* 02237EC4 */ cpu->r[12] = 0x10050000u;
|
|
/* 02237EC8 */ cpu->f[7] = (uint32_t)(int32_t)cpu->f[6];
|
|
/* 02237ECC */ _t49 = cpu->r[12] + 0x00001F78u;
|
|
/* 02237ECC */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 02237ED0 */ cpu->r[0] = 0x43300000u;
|
|
/* 02237ED4 */ cpu->r[8] = cpu->r[1] + 0x000000A0u;
|
|
/* 02237ED8 */ /* nop */
|
|
/* 02237EDC */ _t50 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237EDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02237EE0 */ _t51 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237EE0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02237EE4 */ cpu->r[4] = cpu->r[31] ^ 0x80000000u;
|
|
/* 02237EE8 */ _t52 = cpu->r[1] + 0x000000A4u;
|
|
/* 02237EE8 */ rbrew_write32(cpu->mem, _t52, cpu->r[4]);
|
|
/* 02237EEC */ _t53 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237EEC */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 02237EF0 */ cpu->f[10] = cpu->f[9] - cpu->f[12];
|
|
/* 02237EF4 */ cpu->f[8] = (double)(float)cpu->f[10];
|
|
/* 02237EF8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[6]);
|
|
/* 02237EFC */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02237EFC */ _t55 = _t54 & 0x00000001u;
|
|
/* 02237EFC */ if (_t55) goto L_02237F0C; else goto L_02237F00;
|
|
L_02237F00: ; // 0x2237f00
|
|
/* 02237F00 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[30]);
|
|
/* 02237F04 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02237F04 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02237F04 */ if (_t57) goto L_02237F0C; else goto L_02237F08;
|
|
L_02237F08: ; // 0x2237f08
|
|
/* 02237F08 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
L_02237F0C: ; // 0x2237f0c
|
|
/* 02237F0C */ cpu->r[5] = 0x10050000u;
|
|
/* 02237F10 */ cpu->r[0] = cpu->r[31] ^ 0x80000000u;
|
|
/* 02237F14 */ _t58 = cpu->r[5] + 0x00001F78u;
|
|
/* 02237F14 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 02237F18 */ cpu->r[9] = 0x43300000u;
|
|
/* 02237F1C */ _t59 = cpu->r[1] + 0x000000A4u;
|
|
/* 02237F1C */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02237F20 */ _t60 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237F20 */ rbrew_write32(cpu->mem, _t60, cpu->r[9]);
|
|
/* 02237F24 */ _t61 = cpu->r[1] + 0x000000A0u;
|
|
/* 02237F24 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t61);
|
|
/* 02237F28 */ /* nop */
|
|
/* 02237F2C */ cpu->f[13] = cpu->f[12] - cpu->f[11];
|
|
/* 02237F30 */ cpu->f[11] = (double)(float)cpu->f[13];
|
|
/* 02237F34 */ cpu->f[0] = cpu->f[29] / cpu->f[11];
|
|
/* 02237F38 */ _t62 = cpu->r[1] + 0x00000068u;
|
|
/* 02237F38 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02237F3C */ /* nop */
|
|
/* 02237F40 */ /* nop */
|
|
/* 02237F44 */ cpu->f[9] = cpu->f[10] * cpu->f[0];
|
|
/* 02237F48 */ _t63 = cpu->r[1] + 0x000000FCu;
|
|
/* 02237F48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02237F4C */ _t64 = cpu->r[1] + 0x000000F8u;
|
|
/* 02237F4C */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02237F50 */ /* nop */
|
|
/* 02237F54 */ _t65 = cpu->r[1] + 0x00000140u;
|
|
/* 02237F54 */ rbrew_write32(cpu->mem, _t65, cpu->r[9]);
|
|
/* 02237F58 */ _t66 = cpu->r[1] + 0x00000144u;
|
|
/* 02237F58 */ rbrew_write32(cpu->mem, _t66, cpu->r[11]);
|
|
/* 02237F5C */ _t67 = cpu->r[1] + 0x00000144u;
|
|
/* 02237F5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02237F60 */ _t68 = cpu->r[1] + 0x00000140u;
|
|
/* 02237F60 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02237F64 */ _t69 = cpu->r[1] + 0x00000094u;
|
|
/* 02237F64 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[0]);
|
|
/* 02237F68 */ _t70 = cpu->r[1] + 0x00000090u;
|
|
/* 02237F68 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[12]);
|
|
/* 02237F6C */ /* nop */
|
|
/* 02237F70 */ _t71 = cpu->r[30] + 0x00000090u;
|
|
/* 02237F70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02237F74 */ /* nop */
|
|
/* 02237F78 */ _t72 = cpu->r[1] + 0x00000100u;
|
|
/* 02237F78 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[9]);
|
|
/* 02237F7C */ _t73 = cpu->r[1] + 0x00000100u;
|
|
/* 02237F7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02237F80 */ /* nop */
|
|
/* 02237F84 */ _t74 = cpu->r[1] + 0x00000104u;
|
|
/* 02237F84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02237F88 */ _t75 = cpu->r[1] + 0x00000148u;
|
|
/* 02237F88 */ rbrew_write32(cpu->mem, _t75, cpu->r[12]);
|
|
/* 02237F8C */ _t76 = cpu->r[1] + 0x00000108u;
|
|
/* 02237F8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02237F90 */ _t77 = cpu->r[1] + 0x00000148u;
|
|
/* 02237F90 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02237F94 */ _t78 = cpu->r[1] + 0x0000014Cu;
|
|
/* 02237F94 */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 02237F98 */ _t79 = cpu->r[1] + 0x0000014Cu;
|
|
/* 02237F98 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02237F9C */ cpu->f[11] = cpu->f[12] + cpu->f[6];
|
|
/* 02237FA0 */ _t80 = cpu->r[1] + 0x00000150u;
|
|
/* 02237FA0 */ rbrew_write32(cpu->mem, _t80, cpu->r[10]);
|
|
/* 02237FA4 */ _t81 = cpu->r[1] + 0x00000150u;
|
|
/* 02237FA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02237FA8 */ _t82 = cpu->r[1] + 0x00000044u;
|
|
/* 02237FA8 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[8]);
|
|
/* 02237FAC */ _t83 = cpu->r[1] + 0x00000044u;
|
|
/* 02237FAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02237FB0 */ _t84 = cpu->r[1] + 0x0000010Cu;
|
|
/* 02237FB0 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[11]);
|
|
/* 02237FB4 */ _t85 = cpu->r[1] + 0x0000010Cu;
|
|
/* 02237FB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02237FB8 */ _t86 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02237FB8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02237FBC */ _t87 = cpu->r[1] + 0x00000154u;
|
|
/* 02237FBC */ rbrew_write32(cpu->mem, _t87, cpu->r[0]);
|
|
/* 02237FC0 */ _t88 = cpu->r[1] + 0x00000154u;
|
|
/* 02237FC0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02237FC4 */ cpu->r[29] = 0x101F0000u;
|
|
/* 02237FC8 */ cpu->r[29] = cpu->r[29] + 0x00006350u;
|
|
/* 02237FCC */ _t89 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02237FCC */ rbrew_write_f32(cpu->mem, _t89, cpu->f[9]);
|
|
/* 02237FD0 */ _t90 = cpu->r[30] + 0x00000138u;
|
|
/* 02237FD0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 02237FD4 */ cpu->f[11] = cpu->f[13] + cpu->f[12];
|
|
/* 02237FD8 */ _t91 = cpu->r[29] + 0x00000000u;
|
|
/* 02237FD8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02237FDC */ cpu->f[0] = cpu->f[12] + cpu->f[12];
|
|
/* 02237FE0 */ _t92 = cpu->r[29] + 0x00000008u;
|
|
/* 02237FE0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 02237FE4 */ _t93 = cpu->r[1] + 0x00000048u;
|
|
/* 02237FE4 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[11]);
|
|
/* 02237FE8 */ _t94 = cpu->r[1] + 0x00000048u;
|
|
/* 02237FE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02237FEC */ cpu->f[11] = -cpu->f[12];
|
|
/* 02237FF0 */ _t95 = cpu->r[29] + 0x00000004u;
|
|
/* 02237FF0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02237FF4 */ _t96 = cpu->r[1] + 0x00000028u;
|
|
/* 02237FF4 */ rbrew_write32(cpu->mem, _t96, cpu->r[5]);
|
|
/* 02237FF8 */ cpu->f[9] = -cpu->f[10];
|
|
/* 02237FFC */ _t97 = cpu->r[1] + 0x00000098u;
|
|
/* 02237FFC */ rbrew_write_f32(cpu->mem, _t97, cpu->f[6]);
|
|
/* 02238000 */ _t98 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02238000 */ rbrew_write32(cpu->mem, _t98, cpu->r[6]);
|
|
/* 02238004 */ cpu->f[29] = cpu->f[0] - cpu->f[7];
|
|
/* 02238008 */ _t99 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02238008 */ cpu->r[7] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0223800C */ cpu->f[7] = -cpu->f[8];
|
|
/* 02238010 */ _t100 = cpu->r[1] + 0x00000080u;
|
|
/* 02238010 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[11]);
|
|
/* 02238014 */ /* nop */
|
|
/* 02238018 */ _t101 = cpu->r[1] + 0x00000030u;
|
|
/* 02238018 */ rbrew_write32(cpu->mem, _t101, cpu->r[7]);
|
|
/* 0223801C */ _t102 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223801C */ rbrew_write_f32(cpu->mem, _t102, cpu->f[9]);
|
|
/* 02238020 */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02238024 */ _t103 = cpu->r[1] + 0x00000078u;
|
|
/* 02238024 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[7]);
|
|
/* 02238028 */ Gambit_fn_02019890(cpu);
|
|
/* 0223802C */ _t104 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0223802C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02238030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02238034 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238034 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02238034 */ if (_t106) goto L_0223803C; else goto L_02238038;
|
|
L_02238038: ; // 0x2238038
|
|
/* 02238038 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
L_0223803C: ; // 0x223803c
|
|
/* 0223803C */ cpu->r[25] = 0x00000000u;
|
|
/* 02238040 */ cpu->r[27] = 0x101C0000u;
|
|
/* 02238044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[31]);
|
|
/* 02238048 */ cpu->r[27] = cpu->r[27] + 0x00001EF8u;
|
|
/* 0223804C */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223804C */ _t108 = _t107 & 0x00000001u;
|
|
/* 0223804C */ if (_t108) goto L_02238050; else goto L_022381D8;
|
|
L_02238050: ; // 0x2238050
|
|
/* 02238050 */ cpu->f[24] = cpu->f[30];
|
|
/* 02238054 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02238058 */ cpu->f[23] = cpu->f[28];
|
|
/* 0223805C */ _t109 = cpu->r[10] + 0xFFFF958Cu;
|
|
/* 0223805C */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02238060 */ cpu->r[24] = 0x00000000u;
|
|
L_02238064: ; // 0x2238064
|
|
/* 02238064 */ _t110 = cpu->r[30] + 0x00000134u;
|
|
/* 02238064 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02238068 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[24]);
|
|
/* 0223806C */ _t111 = cpu->r[27] + 0x00000000u;
|
|
/* 0223806C */ cpu->r[3] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02238070 */ cpu->f[3] = cpu->f[26];
|
|
/* 02238074 */ _t112 = cpu->r[30] + 0x000000B4u;
|
|
/* 02238074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02238078 */ _t113 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238078 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02238078 */ if (_t114) goto L_022380B8; else goto L_0223807C;
|
|
L_0223807C: ; // 0x223807c
|
|
/* 0223807C */ cpu->f[1] = cpu->f[2];
|
|
/* 02238080 */ cpu->r[5] = 0x00000000u;
|
|
/* 02238084 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02238088 */ cpu->f[2] = cpu->f[3];
|
|
/* 0223808C */ cpu->r[8] = cpu->r[30] + 0x000000B0u;
|
|
/* 02238090 */ cpu->r[7] = 0x00000100u;
|
|
/* 02238094 */ cpu->r[10] = cpu->r[24];
|
|
/* 02238098 */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 02238098 */ rbrew_write32(cpu->mem, _t115, cpu->r[8]);
|
|
/* 0223809C */ cpu->r[6] = cpu->r[5];
|
|
/* 022380A0 */ cpu->r[8] = 0x000011FFu;
|
|
/* 022380A4 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022380A8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022380A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022380AC */ _t116 = cpu->r[30] + 0x000000B0u;
|
|
/* 022380AC */ rbrew_write32(cpu->mem, _t116, cpu->r[3]);
|
|
/* 022380B0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022380B0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 022380B0 */ if (_t118) goto L_0223818C; else goto L_022380B4;
|
|
L_022380B4: ; // 0x22380b4
|
|
/* 022380B4 */ goto L_022380E8;
|
|
L_022380B8: ; // 0x22380b8
|
|
/* 022380B8 */ cpu->f[1] = cpu->f[29];
|
|
/* 022380BC */ cpu->r[8] = cpu->r[9];
|
|
/* 022380C0 */ cpu->r[9] = cpu->r[30] + 0x000000B0u;
|
|
/* 022380C4 */ cpu->f[4] = cpu->f[23];
|
|
/* 022380C8 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 022380CC */ cpu->r[5] = cpu->r[1] + 0x00000078u;
|
|
/* 022380D0 */ cpu->r[6] = 0x00000100u;
|
|
/* 022380D4 */ cpu->r[7] = 0x000011FFu;
|
|
/* 022380D8 */ Gambit_fn_0204A864(cpu);
|
|
/* 022380DC */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022380DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022380E0 */ _t119 = cpu->r[30] + 0x000000B0u;
|
|
/* 022380E0 */ rbrew_write32(cpu->mem, _t119, cpu->r[3]);
|
|
/* 022380E4 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022380E4 */ _t121 = _t120 & 0x00000001u;
|
|
/* 022380E4 */ if (_t121) goto L_0223818C; else goto L_022380E8;
|
|
L_022380E8: ; // 0x22380e8
|
|
/* 022380E8 */ _t122 = cpu->r[30] + 0x000000B4u;
|
|
/* 022380E8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022380EC */ cpu->r[4] = cpu->r[30];
|
|
/* 022380F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 022380F4 */ Gambit_fn_02040DBC(cpu);
|
|
/* 022380F8 */ _t123 = cpu->r[28] + 0x00000168u;
|
|
/* 022380F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t123);
|
|
/* 022380FC */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000004u, 0x00000004u);
|
|
/* 022380FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02238100 */ _t124 = cpu->r[30] + 0x00000134u;
|
|
/* 02238100 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02238104 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238104 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02238104 */ if (_t126) goto L_02238120; else goto L_02238108;
|
|
L_02238108: ; // 0x2238108
|
|
/* 02238108 */ _t127 = cpu->r[28] + 0x00000044u;
|
|
/* 02238108 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0223810C */ cpu->f[6] = cpu->f[7] + cpu->f[8];
|
|
/* 02238110 */ cpu->f[29] = cpu->f[29] - cpu->f[6];
|
|
/* 02238114 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[24]);
|
|
/* 02238118 */ _t128 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238118 */ _t129 = _t128 & 0x00000001u;
|
|
/* 02238118 */ if (_t129) goto L_0223811C; else goto L_0223818C;
|
|
L_0223811C: ; // 0x223811c
|
|
/* 0223811C */ goto L_02238130;
|
|
L_02238120: ; // 0x2238120
|
|
/* 02238120 */ cpu->f[6] = cpu->f[24] + cpu->f[8];
|
|
/* 02238124 */ cpu->f[29] = cpu->f[29] - cpu->f[6];
|
|
/* 02238128 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[24]);
|
|
/* 0223812C */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223812C */ _t131 = _t130 & 0x00000001u;
|
|
/* 0223812C */ if (_t131) goto L_02238130; else goto L_0223818C;
|
|
L_02238130: ; // 0x2238130
|
|
/* 02238130 */ /* nop */
|
|
/* 02238134 */ _t132 = cpu->r[1] + 0x00000080u;
|
|
/* 02238134 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02238138 */ /* nop */
|
|
/* 0223813C */ _t133 = cpu->r[1] + 0x00000030u;
|
|
/* 0223813C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02238140 */ /* nop */
|
|
/* 02238144 */ _t134 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02238144 */ cpu->r[8] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02238148 */ cpu->f[12] = cpu->f[13] * cpu->f[6];
|
|
/* 0223814C */ _t135 = cpu->r[1] + 0x00000070u;
|
|
/* 0223814C */ cpu->r[9] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02238150 */ _t136 = cpu->r[1] + 0x00000084u;
|
|
/* 02238150 */ rbrew_write32(cpu->mem, _t136, cpu->r[8]);
|
|
/* 02238154 */ _t137 = cpu->r[1] + 0x00000074u;
|
|
/* 02238154 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[12]);
|
|
/* 02238158 */ _t138 = cpu->r[1] + 0x00000074u;
|
|
/* 02238158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0223815C */ _t139 = cpu->r[1] + 0x00000088u;
|
|
/* 0223815C */ rbrew_write32(cpu->mem, _t139, cpu->r[9]);
|
|
/* 02238160 */ /* nop */
|
|
/* 02238164 */ _t140 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02238164 */ rbrew_write32(cpu->mem, _t140, cpu->r[0]);
|
|
/* 02238168 */ _t141 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02238168 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 0223816C */ /* nop */
|
|
/* 02238170 */ cpu->f[11] = cpu->f[11] + cpu->f[12];
|
|
/* 02238174 */ /* nop */
|
|
/* 02238178 */ /* nop */
|
|
/* 0223817C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[31]);
|
|
/* 02238180 */ _t142 = cpu->r[1] + 0x00000030u;
|
|
/* 02238180 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[11]);
|
|
/* 02238184 */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02238184 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02238184 */ if (_t144) goto L_02238064; else goto L_02238188;
|
|
L_02238188: ; // 0x2238188
|
|
/* 02238188 */ goto L_022381D8;
|
|
L_0223818C: ; // 0x223818c
|
|
/* 0223818C */ /* nop */
|
|
/* 02238190 */ _t145 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238190 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 02238194 */ /* nop */
|
|
/* 02238198 */ _t146 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02238198 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 0223819C */ cpu->f[10] = cpu->f[11] + cpu->f[11];
|
|
/* 022381A0 */ _t147 = cpu->r[1] + 0x00000098u;
|
|
/* 022381A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 022381A4 */ /* nop */
|
|
/* 022381A8 */ _t148 = cpu->r[1] + 0x00000044u;
|
|
/* 022381A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 022381AC */ cpu->f[6] = cpu->f[6] + cpu->f[7];
|
|
/* 022381B0 */ _t149 = cpu->r[30] + 0x00000138u;
|
|
/* 022381B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 022381B4 */ _t150 = cpu->r[1] + 0x00000048u;
|
|
/* 022381B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 022381B8 */ cpu->f[29] = cpu->f[10] - cpu->f[12];
|
|
/* 022381BC */ _t151 = cpu->r[1] + 0x00000030u;
|
|
/* 022381BC */ rbrew_write_f32(cpu->mem, _t151, cpu->f[6]);
|
|
/* 022381C0 */ _t152 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022381C0 */ rbrew_write_f32(cpu->mem, _t152, cpu->f[6]);
|
|
/* 022381C4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022381C8 */ _t153 = cpu->r[1] + 0x00000028u;
|
|
/* 022381C8 */ rbrew_write_f32(cpu->mem, _t153, cpu->f[8]);
|
|
/* 022381CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[31]);
|
|
/* 022381D0 */ _t154 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022381D0 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[9]);
|
|
/* 022381D4 */ _t155 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022381D4 */ _t156 = _t155 & 0x00000001u;
|
|
/* 022381D4 */ if (_t156) goto L_02238064; else goto L_022381D8;
|
|
L_022381D8: ; // 0x22381d8
|
|
/* 022381D8 */ _t157 = cpu->r[30] + 0x00000088u;
|
|
/* 022381D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t157);
|
|
/* 022381DC */ _t158 = cpu->r[30] + 0x0000008Cu;
|
|
/* 022381DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022381E0 */ _t159 = cpu->r[1] + 0x00000044u;
|
|
/* 022381E0 */ rbrew_write32(cpu->mem, _t159, cpu->r[0]);
|
|
/* 022381E4 */ _t160 = cpu->r[1] + 0x00000048u;
|
|
/* 022381E4 */ rbrew_write32(cpu->mem, _t160, cpu->r[4]);
|
|
/* 022381E8 */ _t161 = cpu->r[1] + 0x00000048u;
|
|
/* 022381E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 022381EC */ _t162 = cpu->r[30] + 0x00000130u;
|
|
/* 022381EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 022381F0 */ _t163 = cpu->r[30] + 0x00000090u;
|
|
/* 022381F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 022381F4 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 022381F8 */ _t164 = cpu->r[30] + 0x00000004u;
|
|
/* 022381F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t164);
|
|
/* 022381FC */ _t165 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022381FC */ rbrew_write32(cpu->mem, _t165, cpu->r[0]);
|
|
/* 02238200 */ _t166 = cpu->r[1] + 0x00000048u;
|
|
/* 02238200 */ rbrew_write_f32(cpu->mem, _t166, cpu->f[13]);
|
|
/* 02238204 */ _t167 = cpu->r[6] + 0x00000254u;
|
|
/* 02238204 */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 02238208 */ cpu->ctr = cpu->r[7];
|
|
/* 0223820C */ cpu->r[3] = cpu->r[30];
|
|
/* 02238210 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238214 */ _t168 = cpu->r[3] + 0x00000000u;
|
|
/* 02238214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02238218 */ _t169 = cpu->r[1] + 0x00000078u;
|
|
/* 02238218 */ rbrew_write32(cpu->mem, _t169, cpu->r[12]);
|
|
/* 0223821C */ _t170 = cpu->r[3] + 0x00000004u;
|
|
/* 0223821C */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02238220 */ _t171 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238220 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 02238224 */ _t172 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02238224 */ rbrew_write32(cpu->mem, _t172, cpu->r[0]);
|
|
/* 02238228 */ _t173 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02238228 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 0223822C */ _t174 = cpu->r[3] + 0x00000008u;
|
|
/* 0223822C */ cpu->r[4] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02238230 */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 02238234 */ _t175 = cpu->r[1] + 0x00000080u;
|
|
/* 02238234 */ rbrew_write32(cpu->mem, _t175, cpu->r[4]);
|
|
/* 02238238 */ _t176 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02238238 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0223823C */ /* nop */
|
|
/* 02238240 */ /* nop */
|
|
/* 02238244 */ _t177 = cpu->r[1] + 0x00000080u;
|
|
/* 02238244 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02238248 */ /* nop */
|
|
/* 0223824C */ /* nop */
|
|
/* 02238250 */ _t178 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02238250 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 02238254 */ _t179 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02238254 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 02238258 */ cpu->f[0] = cpu->f[6] * cpu->f[6];
|
|
/* 0223825C */ _t180 = cpu->r[1] + 0x00000028u;
|
|
/* 0223825C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 02238260 */ cpu->f[8] = cpu->f[10] - cpu->f[12];
|
|
/* 02238264 */ cpu->f[7] = fma(cpu->f[6], cpu->f[6], cpu->f[0]);
|
|
/* 02238268 */ cpu->f[26] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 0223826C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[30]);
|
|
/* 02238270 */ _t181 = cpu->r[1] + 0x00000030u;
|
|
/* 02238270 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[8]);
|
|
/* 02238274 */ _t182 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238274 */ _t183 = _t182 & 0x00000001u;
|
|
/* 02238274 */ if (_t183) goto L_02238278; else goto L_022382B0;
|
|
L_02238278: ; // 0x2238278
|
|
/* 02238278 */ cpu->r[7] = 0x10050000u;
|
|
/* 0223827C */ _t184 = cpu->r[7] + 0x00001F34u;
|
|
/* 0223827C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 02238280 */ _ft185 = sqrt(cpu->f[26]);
|
|
/* 02238280 */ _ft186 = (double)(int32_t)0x00000001u;
|
|
/* 02238280 */ cpu->f[11] = _ft186 / _ft185;
|
|
/* 02238284 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 02238288 */ cpu->f[13] = cpu->f[11] * cpu->f[31];
|
|
/* 0223828C */ cpu->f[12] = -fma(cpu->f[12], cpu->f[26], -(cpu->f[9]));
|
|
/* 02238290 */ cpu->f[11] = cpu->f[12] * cpu->f[13];
|
|
/* 02238294 */ /* nop */
|
|
/* 02238298 */ _t187 = cpu->r[1] + 0x00000030u;
|
|
/* 02238298 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 0223829C */ /* nop */
|
|
/* 022382A0 */ cpu->f[10] = cpu->f[10] * cpu->f[11];
|
|
/* 022382A4 */ /* nop */
|
|
/* 022382A8 */ cpu->f[26] = cpu->f[26] * cpu->f[11];
|
|
/* 022382AC */ _t188 = cpu->r[1] + 0x00000030u;
|
|
/* 022382AC */ rbrew_write_f32(cpu->mem, _t188, cpu->f[10]);
|
|
L_022382B0: ; // 0x22382b0
|
|
/* 022382B0 */ cpu->r[28] = 0x101C0000u;
|
|
/* 022382B4 */ _t189 = cpu->r[28] + 0x00006000u;
|
|
/* 022382B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t189);
|
|
/* 022382B4 */ cpu->r[28] = _t189;
|
|
/* 022382B8 */ _t190 = cpu->r[5] + 0x00000268u;
|
|
/* 022382B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t190);
|
|
/* 022382BC */ Gambit_fn_0261F73C(cpu);
|
|
/* 022382C0 */ _t191 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022382C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t191);
|
|
/* 022382C4 */ _t192 = cpu->r[30] + 0x0000002Cu;
|
|
/* 022382C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t192);
|
|
/* 022382C8 */ cpu->r[0] = cpu->r[8] ^ cpu->r[11];
|
|
/* 022382CC */ cpu->r[11] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 022382D0 */ cpu->r[25] = cpu->r[0] - cpu->r[11];
|
|
/* 022382D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022382D4 */ cpu->r[10] = 0x00000000u;
|
|
/* 022382D8 */ _t193 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022382D8 */ _t194 = _t193 & 0x00000001u;
|
|
/* 022382D8 */ if (_t194) goto L_022382E0; else goto L_022382DC;
|
|
L_022382DC: ; // 0x22382dc
|
|
/* 022382DC */ cpu->r[10] = 0x00080000u;
|
|
L_022382E0: ; // 0x22382e0
|
|
/* 022382E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 022382E4 */ _t195 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 022382E4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 022382E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[30]);
|
|
/* 022382EC */ _t196 = cpu->r[27] + 0x00000000u;
|
|
/* 022382EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t196);
|
|
/* 022382F0 */ cpu->f[3] = cpu->f[29];
|
|
/* 022382F4 */ _t197 = cpu->r[30] + 0x000000B4u;
|
|
/* 022382F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t197);
|
|
/* 022382F8 */ cpu->r[7] = cpu->r[10] | 0x00000002u;
|
|
/* 022382FC */ _t198 = cpu->r[30] + 0x00000134u;
|
|
/* 022382FC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 02238300 */ _t199 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238300 */ _t200 = _t199 & 0x00000001u;
|
|
/* 02238300 */ if (_t200) goto L_0223833C; else goto L_02238304;
|
|
L_02238304: ; // 0x2238304
|
|
/* 02238304 */ cpu->r[5] = 0x00000000u;
|
|
/* 02238308 */ cpu->f[1] = cpu->f[2];
|
|
/* 0223830C */ cpu->r[10] = cpu->r[5];
|
|
/* 02238310 */ cpu->r[0] = cpu->r[30] + 0x000000B0u;
|
|
/* 02238314 */ cpu->f[2] = cpu->f[3];
|
|
/* 02238318 */ cpu->r[6] = cpu->r[5];
|
|
/* 0223831C */ cpu->r[8] = 0x000011FFu;
|
|
/* 02238320 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02238324 */ _t201 = cpu->r[1] + 0x00000008u;
|
|
/* 02238324 */ rbrew_write32(cpu->mem, _t201, cpu->r[0]);
|
|
/* 02238328 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0223832C */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223832C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02238330 */ _t202 = cpu->r[30] + 0x000000B0u;
|
|
/* 02238330 */ rbrew_write32(cpu->mem, _t202, cpu->r[3]);
|
|
/* 02238334 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238334 */ _t204 = _t203 & 0x00000001u;
|
|
/* 02238334 */ if (_t204) goto L_022386EC; else goto L_02238338;
|
|
L_02238338: ; // 0x2238338
|
|
/* 02238338 */ goto L_0223836C;
|
|
L_0223833C: ; // 0x223833c
|
|
/* 0223833C */ cpu->f[1] = cpu->f[26];
|
|
/* 02238340 */ cpu->r[8] = cpu->r[9];
|
|
/* 02238344 */ cpu->r[6] = cpu->r[7];
|
|
/* 02238348 */ cpu->f[4] = cpu->f[28];
|
|
/* 0223834C */ cpu->r[9] = cpu->r[30] + 0x000000B0u;
|
|
/* 02238350 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02238354 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 02238358 */ cpu->r[7] = 0x000011FFu;
|
|
/* 0223835C */ Gambit_fn_0204A864(cpu);
|
|
/* 02238360 */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02238360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02238364 */ _t205 = cpu->r[30] + 0x000000B0u;
|
|
/* 02238364 */ rbrew_write32(cpu->mem, _t205, cpu->r[3]);
|
|
/* 02238368 */ _t206 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238368 */ _t207 = _t206 & 0x00000001u;
|
|
/* 02238368 */ if (_t207) goto L_022386EC; else goto L_0223836C;
|
|
L_0223836C: ; // 0x223836c
|
|
/* 0223836C */ _t208 = cpu->r[30] + 0x000000B4u;
|
|
/* 0223836C */ cpu->r[21] = rbrew_read32(cpu->mem, _t208);
|
|
/* 02238370 */ _t209 = cpu->r[21] + 0x0000015Cu;
|
|
/* 02238370 */ cpu->r[10] = rbrew_read32(cpu->mem, _t209);
|
|
/* 02238374 */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 02238374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02238378 */ _t210 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238378 */ _t211 = _t210 & 0x00000001u;
|
|
/* 02238378 */ if (_t211) goto L_022383EC; else goto L_0223837C;
|
|
L_0223837C: ; // 0x223837c
|
|
/* 0223837C */ _t212 = cpu->r[21] + 0x00000000u;
|
|
/* 0223837C */ cpu->r[0] = rbrew_read32(cpu->mem, _t212);
|
|
/* 02238380 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02238380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02238384 */ cpu->r[31] = cpu->r[21] + 0x000000A8u;
|
|
/* 02238388 */ _t213 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238388 */ _t214 = _t213 & 0x00000001u;
|
|
/* 02238388 */ if (_t214) goto L_022383C4; else goto L_0223838C;
|
|
L_0223838C: ; // 0x223838c
|
|
/* 0223838C */ cpu->r[3] = cpu->r[21] + 0x00000138u;
|
|
/* 02238390 */ Gambit_fn_02C69350(cpu);
|
|
/* 02238394 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 02238398 */ _t215 = cpu->r[21] + 0x00000000u;
|
|
/* 02238398 */ cpu->r[9] = rbrew_read32(cpu->mem, _t215);
|
|
/* 0223839C */ _t216 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223839C */ _t217 = _t216 & 0x00000001u;
|
|
/* 0223839C */ if (_t217) goto L_022383A0; else goto L_022383BC;
|
|
L_022383A0: ; // 0x22383a0
|
|
/* 022383A0 */ cpu->f[6] = cpu->f[28] / cpu->f[1];
|
|
/* 022383A4 */ _t218 = cpu->r[21] + 0x00000140u;
|
|
/* 022383A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 022383A8 */ /* nop */
|
|
/* 022383AC */ /* nop */
|
|
/* 022383B0 */ cpu->f[8] = cpu->f[9] * cpu->f[6];
|
|
/* 022383B4 */ /* nop */
|
|
/* 022383B8 */ _t219 = cpu->r[21] + 0x000000B0u;
|
|
/* 022383B8 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[8]);
|
|
L_022383BC: ; // 0x22383bc
|
|
/* 022383BC */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 022383C0 */ _t220 = cpu->r[21] + 0x00000000u;
|
|
/* 022383C0 */ rbrew_write32(cpu->mem, _t220, cpu->r[9]);
|
|
L_022383C4: ; // 0x22383c4
|
|
/* 022383C4 */ /* nop */
|
|
/* 022383C8 */ /* nop */
|
|
/* 022383CC */ _t221 = cpu->r[31] + 0x00000008u;
|
|
/* 022383CC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 022383D0 */ /* nop */
|
|
/* 022383D4 */ /* nop */
|
|
/* 022383D8 */ _t222 = cpu->r[1] + 0x00000068u;
|
|
/* 022383D8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 022383DC */ cpu->f[9] = fma(cpu->f[7], cpu->f[8], cpu->f[13]);
|
|
/* 022383E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[30]);
|
|
/* 022383E4 */ _t223 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022383E4 */ _t224 = _t223 & 0x00000001u;
|
|
/* 022383E4 */ if (_t224) goto L_022383F4; else goto L_022383E8;
|
|
L_022383E8: ; // 0x22383e8
|
|
/* 022383E8 */ _t225 = cpu->r[21] + 0x0000015Cu;
|
|
/* 022383E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t225);
|
|
L_022383EC: ; // 0x22383ec
|
|
/* 022383EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022383EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022383F0 */ _t226 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022383F0 */ _t227 = _t226 & 0x00000001u;
|
|
/* 022383F0 */ if (_t227) goto L_022386EC; else goto L_022383F4;
|
|
L_022383F4: ; // 0x22383f4
|
|
/* 022383F4 */ cpu->r[3] = cpu->r[21];
|
|
/* 022383F8 */ cpu->r[4] = cpu->r[30];
|
|
/* 022383FC */ Gambit_fn_02040DBC(cpu);
|
|
/* 02238400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02238404 */ _t228 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238404 */ _t229 = _t228 & 0x00000001u;
|
|
/* 02238404 */ if (_t229) goto L_02238658; else goto L_02238408;
|
|
L_02238408: ; // 0x2238408
|
|
/* 02238408 */ _t230 = cpu->r[21] + 0x00000164u;
|
|
/* 02238408 */ cpu->r[6] = rbrew_read32(cpu->mem, _t230);
|
|
/* 0223840C */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02238410 */ cpu->r[7] = cpu->r[5] + 0x101E0000u;
|
|
/* 02238414 */ _t231 = cpu->r[7] + 0xFFFF9484u;
|
|
/* 02238414 */ cpu->r[31] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02238418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223841C */ _t232 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223841C */ _t233 = _t232 & 0x00000001u;
|
|
/* 0223841C */ if (_t233) goto L_02238420; else goto L_02238658;
|
|
L_02238420: ; // 0x2238420
|
|
/* 02238420 */ _t234 = cpu->r[28] + 0x00000000u;
|
|
/* 02238420 */ cpu->r[8] = rbrew_read32(cpu->mem, _t234);
|
|
/* 02238424 */ _t235 = cpu->r[8] + 0x00000264u;
|
|
/* 02238424 */ cpu->r[22] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02238428 */ _t236 = cpu->r[22] + 0x00000030u;
|
|
/* 02238428 */ cpu->r[9] = rbrew_read32(cpu->mem, _t236);
|
|
/* 0223842C */ _t237 = cpu->r[9] + 0x00000014u;
|
|
/* 0223842C */ cpu->r[10] = rbrew_read32(cpu->mem, _t237);
|
|
/* 02238430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02238434 */ _t238 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238434 */ _t239 = _t238 & 0x00000001u;
|
|
/* 02238434 */ if (_t239) goto L_02238658; else goto L_02238438;
|
|
L_02238438: ; // 0x2238438
|
|
/* 02238438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223843C */ cpu->r[24] = 0x00000000u;
|
|
/* 02238440 */ cpu->r[23] = 0x00000001u;
|
|
/* 02238444 */ _t240 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238444 */ _t241 = _t240 & 0x00000001u;
|
|
/* 02238444 */ if (_t241) goto L_0223844C; else goto L_02238448;
|
|
L_02238448: ; // 0x2238448
|
|
/* 02238448 */ cpu->r[31] = 0x00000001u;
|
|
L_0223844C: ; // 0x223844c
|
|
/* 0223844C */ cpu->r[19] = 0x101C0000u;
|
|
/* 02238450 */ cpu->r[27] = 0x101F0000u;
|
|
/* 02238454 */ cpu->r[26] = 0x00000000u;
|
|
/* 02238458 */ cpu->r[19] = cpu->r[19] + 0x00006B80u;
|
|
/* 0223845C */ cpu->r[27] = cpu->r[27] + 0x00006338u;
|
|
L_02238460: ; // 0x2238460
|
|
/* 02238460 */ _t242 = cpu->r[1] + 0x00000050u;
|
|
/* 02238460 */ rbrew_write32(cpu->mem, _t242, cpu->r[26]);
|
|
/* 02238464 */ cpu->r[9] = 0x00000000u;
|
|
/* 02238468 */ cpu->r[8] = cpu->r[1] + 0x00000050u;
|
|
/* 0223846C */ cpu->r[7] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02238470 */ cpu->r[6] = cpu->r[1] + 0x00000110u;
|
|
/* 02238474 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02238478 */ cpu->r[4] = cpu->r[24];
|
|
/* 0223847C */ cpu->r[3] = cpu->r[21];
|
|
/* 02238480 */ cpu->r[10] = cpu->r[1] + 0x00000054u;
|
|
/* 02238484 */ Gambit_fn_02040F70(cpu);
|
|
/* 02238488 */ _t243 = cpu->r[1] + 0x00000054u;
|
|
/* 02238488 */ cpu->r[11] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0223848C */ _t244 = cpu->r[11] + 0x000001ACu;
|
|
/* 0223848C */ cpu->r[25] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02238490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02238494 */ _t245 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238494 */ _t246 = _t245 & 0x00000001u;
|
|
/* 02238494 */ if (_t246) goto L_02238658; else goto L_02238498;
|
|
L_02238498: ; // 0x2238498
|
|
/* 02238498 */ _t247 = cpu->r[19] + 0x00000000u;
|
|
/* 02238498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t247);
|
|
/* 0223849C */ cpu->r[12] = cpu->r[22] + cpu->r[0];
|
|
/* 022384A0 */ _t248 = cpu->r[12] + 0x00000104u;
|
|
/* 022384A0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t248);
|
|
/* 022384A4 */ _t249 = cpu->r[22] + 0x00000030u;
|
|
/* 022384A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t249);
|
|
/* 022384A8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022384AC */ _t250 = cpu->r[4] + cpu->r[6];
|
|
/* 022384AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t250);
|
|
/* 022384B0 */ _t251 = cpu->r[7] + 0x00000008u;
|
|
/* 022384B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t251);
|
|
/* 022384B4 */ _t252 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022384B4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t252);
|
|
/* 022384B8 */ _t253 = cpu->r[11] + 0x00000004u;
|
|
/* 022384B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t253);
|
|
/* 022384BC */ _t254 = cpu->r[1] + 0x00000010u;
|
|
/* 022384BC */ rbrew_write32(cpu->mem, _t254, cpu->r[28]);
|
|
/* 022384C0 */ cpu->r[20] = cpu->r[8] - cpu->r[28];
|
|
/* 022384C4 */ _t255 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022384C4 */ rbrew_write32(cpu->mem, _t255, cpu->r[20]);
|
|
/* 022384C8 */ _t256 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022384C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t256);
|
|
/* 022384CC */ cpu->r[29] = cpu->r[11] - cpu->r[9];
|
|
/* 022384D0 */ _t257 = cpu->r[1] + 0x00000058u;
|
|
/* 022384D0 */ rbrew_write32(cpu->mem, _t257, cpu->r[29]);
|
|
/* 022384D4 */ _t258 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022384D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t258);
|
|
/* 022384D8 */ _t259 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022384D8 */ rbrew_write32(cpu->mem, _t259, cpu->r[20]);
|
|
/* 022384DC */ _t260 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022384DC */ rbrew_write32(cpu->mem, _t260, cpu->r[10]);
|
|
/* 022384E0 */ _t261 = cpu->r[1] + 0x00000014u;
|
|
/* 022384E0 */ rbrew_write32(cpu->mem, _t261, cpu->r[29]);
|
|
/* 022384E4 */ _t262 = cpu->r[1] + 0x00000020u;
|
|
/* 022384E4 */ rbrew_write32(cpu->mem, _t262, cpu->r[28]);
|
|
/* 022384E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 022384EC */ _t263 = cpu->r[1] + 0x00000018u;
|
|
/* 022384EC */ rbrew_write32(cpu->mem, _t263, cpu->r[10]);
|
|
/* 022384F0 */ _t264 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022384F0 */ _t265 = _t264 & 0x00000001u;
|
|
/* 022384F0 */ if (_t265) goto L_02238524; else goto L_022384F4;
|
|
L_022384F4: ; // 0x22384f4
|
|
/* 022384F4 */ goto L_02238510;
|
|
L_022384F8: ; // 0x22384f8
|
|
/* 022384F8 */ cpu->r[4] = cpu->r[20] + cpu->r[28];
|
|
/* 022384FC */ _t266 = cpu->r[4] + 0x00000004u;
|
|
/* 022384FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t266);
|
|
/* 02238500 */ cpu->r[20] = cpu->r[11] - cpu->r[28];
|
|
/* 02238504 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 02238508 */ _t267 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02238508 */ rbrew_write32(cpu->mem, _t267, cpu->r[20]);
|
|
/* 0223850C */ _t268 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223850C */ _t269 = _t268 & 0x00000001u;
|
|
/* 0223850C */ if (_t269) goto L_02238524; else goto L_02238510;
|
|
L_02238510: ; // 0x2238510
|
|
/* 02238510 */ _t270 = cpu->r[20] + 0x0000001Cu;
|
|
/* 02238510 */ cpu->r[4] = rbrew_read32(cpu->mem, _t270);
|
|
/* 02238514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 02238518 */ _t271 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238518 */ _t272 = _t271 & 0x00000001u;
|
|
/* 02238518 */ if (_t272) goto L_02238524; else goto L_0223851C;
|
|
L_0223851C: ; // 0x223851c
|
|
/* 0223851C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 02238520 */ _t273 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238520 */ _t274 = _t273 & 0x00000001u;
|
|
/* 02238520 */ if (_t274) goto L_02238524; else goto L_022384F8;
|
|
L_02238524: ; // 0x2238524
|
|
/* 02238524 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 02238528 */ _t275 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238528 */ _t276 = _t275 & 0x00000001u;
|
|
/* 02238528 */ if (_t276) goto L_022385C4; else goto L_0223852C;
|
|
L_0223852C: ; // 0x223852c
|
|
/* 0223852C */ _t277 = cpu->r[20] + 0x00000004u;
|
|
/* 0223852C */ cpu->r[12] = rbrew_read32(cpu->mem, _t277);
|
|
/* 02238530 */ _t278 = cpu->r[12] + 0x00000354u;
|
|
/* 02238530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t278);
|
|
/* 02238534 */ cpu->ctr = cpu->r[0];
|
|
/* 02238538 */ cpu->r[6] = cpu->r[27];
|
|
/* 0223853C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 02238540 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02238544 */ cpu->r[3] = cpu->r[20];
|
|
/* 02238548 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223854C */ _t279 = cpu->r[1] + 0x00000024u;
|
|
/* 0223854C */ cpu->r[5] = rbrew_read32(cpu->mem, _t279);
|
|
/* 02238550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[5]);
|
|
/* 02238554 */ _t280 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238554 */ _t281 = _t280 & 0x00000001u;
|
|
/* 02238554 */ if (_t281) goto L_0223856C; else goto L_02238558;
|
|
L_02238558: ; // 0x2238558
|
|
/* 02238558 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02238558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223855C */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02238560 */ cpu->r[23] = 0x00000000u;
|
|
/* 02238564 */ _t282 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238564 */ _t283 = _t282 & 0x00000001u;
|
|
/* 02238564 */ if (_t283) goto L_02238568; else goto L_02238460;
|
|
L_02238568: ; // 0x2238568
|
|
/* 02238568 */ goto L_022385D0;
|
|
L_0223856C: ; // 0x223856c
|
|
/* 0223856C */ cpu->r[11] = cpu->r[20] + cpu->r[28];
|
|
/* 02238570 */ _t284 = cpu->r[11] + 0x00000004u;
|
|
/* 02238570 */ cpu->r[6] = rbrew_read32(cpu->mem, _t284);
|
|
/* 02238574 */ cpu->r[20] = cpu->r[6] - cpu->r[28];
|
|
/* 02238578 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 0223857C */ _t285 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223857C */ _t286 = _t285 & 0x00000001u;
|
|
/* 0223857C */ if (_t286) goto L_02238580; else goto L_02238594;
|
|
L_02238580: ; // 0x2238580
|
|
/* 02238580 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02238580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02238584 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02238588 */ _t287 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02238588 */ rbrew_write32(cpu->mem, _t287, cpu->r[20]);
|
|
/* 0223858C */ _t288 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223858C */ _t289 = _t288 & 0x00000001u;
|
|
/* 0223858C */ if (_t289) goto L_02238590; else goto L_02238460;
|
|
L_02238590: ; // 0x2238590
|
|
/* 02238590 */ goto L_022385D0;
|
|
L_02238594: ; // 0x2238594
|
|
/* 02238594 */ _t290 = cpu->r[20] + 0x0000001Cu;
|
|
/* 02238594 */ cpu->r[6] = rbrew_read32(cpu->mem, _t290);
|
|
/* 02238598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0223859C */ _t291 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223859C */ _t292 = _t291 & 0x00000001u;
|
|
/* 0223859C */ if (_t292) goto L_022385B8; else goto L_022385A0;
|
|
L_022385A0: ; // 0x22385a0
|
|
/* 022385A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 022385A4 */ _t293 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022385A4 */ _t294 = _t293 & 0x00000001u;
|
|
/* 022385A4 */ if (_t294) goto L_022385A8; else goto L_0223856C;
|
|
L_022385A8: ; // 0x22385a8
|
|
/* 022385A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 022385AC */ _t295 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022385AC */ rbrew_write32(cpu->mem, _t295, cpu->r[20]);
|
|
/* 022385B0 */ _t296 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022385B0 */ _t297 = _t296 & 0x00000001u;
|
|
/* 022385B0 */ if (_t297) goto L_022385B4; else goto L_0223852C;
|
|
L_022385B4: ; // 0x22385b4
|
|
/* 022385B4 */ goto L_022385C4;
|
|
L_022385B8: ; // 0x22385b8
|
|
/* 022385B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 022385BC */ _t298 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022385BC */ rbrew_write32(cpu->mem, _t298, cpu->r[20]);
|
|
/* 022385C0 */ _t299 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022385C0 */ _t300 = _t299 & 0x00000001u;
|
|
/* 022385C0 */ if (_t300) goto L_022385C4; else goto L_0223852C;
|
|
L_022385C4: ; // 0x22385c4
|
|
/* 022385C4 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 022385C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022385C8 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 022385CC */ _t301 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022385CC */ _t302 = _t301 & 0x00000001u;
|
|
/* 022385CC */ if (_t302) goto L_022385D0; else goto L_02238460;
|
|
L_022385D0: ; // 0x22385d0
|
|
/* 022385D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022385D4 */ _t303 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022385D4 */ _t304 = _t303 & 0x00000001u;
|
|
/* 022385D4 */ if (_t304) goto L_02238658; else goto L_022385D8;
|
|
L_022385D8: ; // 0x22385d8
|
|
/* 022385D8 */ cpu->f[1] = cpu->f[30];
|
|
/* 022385DC */ cpu->r[4] = cpu->r[1] + 0x000000DCu;
|
|
/* 022385E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022385E4 */ _t305 = cpu->r[1] + 0x000000DCu;
|
|
/* 022385E4 */ rbrew_write32(cpu->mem, _t305, cpu->r[26]);
|
|
/* 022385E8 */ Gambit_fn_02236B20(cpu);
|
|
/* 022385EC */ cpu->r[3] = cpu->r[30];
|
|
/* 022385F0 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 022385F4 */ _t306 = cpu->r[30] + 0x00000184u;
|
|
/* 022385F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t306);
|
|
/* 022385F8 */ _t307 = cpu->r[30] + 0x000000FCu;
|
|
/* 022385F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t307);
|
|
/* 022385FC */ _t308 = cpu->r[30] + 0x00000100u;
|
|
/* 022385FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t308);
|
|
/* 02238600 */ _t309 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238600 */ rbrew_write32(cpu->mem, _t309, cpu->r[0]);
|
|
/* 02238604 */ _t310 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238604 */ rbrew_write32(cpu->mem, _t310, cpu->r[4]);
|
|
/* 02238608 */ _t311 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238608 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t311);
|
|
/* 0223860C */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 02238610 */ _t312 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238610 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t312);
|
|
/* 02238614 */ _t313 = cpu->r[30] + 0x00000104u;
|
|
/* 02238614 */ cpu->r[5] = rbrew_read32(cpu->mem, _t313);
|
|
/* 02238618 */ cpu->f[2] = cpu->f[13] + cpu->f[6];
|
|
/* 0223861C */ _t314 = cpu->r[30] + 0x00000184u;
|
|
/* 0223861C */ rbrew_write32(cpu->mem, _t314, cpu->r[6]);
|
|
/* 02238620 */ _t315 = cpu->r[1] + 0x000000BCu;
|
|
/* 02238620 */ rbrew_write32(cpu->mem, _t315, cpu->r[5]);
|
|
/* 02238624 */ _t316 = cpu->r[1] + 0x000000BCu;
|
|
/* 02238624 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t316);
|
|
/* 02238628 */ cpu->r[3] = cpu->r[1] + 0x00000188u;
|
|
/* 0223862C */ _t317 = cpu->r[1] + 0x000000B4u;
|
|
/* 0223862C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t317);
|
|
/* 02238630 */ _t318 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238630 */ rbrew_write_f32(cpu->mem, _t318, cpu->f[2]);
|
|
/* 02238634 */ Gambit_fn_02C69840(cpu);
|
|
/* 02238638 */ _t319 = cpu->r[1] + 0x00000068u;
|
|
/* 02238638 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t319);
|
|
/* 0223863C */ _t320 = cpu->r[1] + 0x00000060u;
|
|
/* 0223863C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t320);
|
|
/* 02238640 */ cpu->f[13] = cpu->f[9] * cpu->f[9];
|
|
/* 02238644 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 02238648 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 0223864C */ _t321 = cpu->r[1] + 0x00000064u;
|
|
/* 0223864C */ rbrew_write_f32(cpu->mem, _t321, cpu->f[30]);
|
|
/* 02238650 */ _t322 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238650 */ _t323 = _t322 & 0x00000001u;
|
|
/* 02238650 */ if (_t323) goto L_02238654; else goto L_02238B3C;
|
|
L_02238654: ; // 0x2238654
|
|
/* 02238654 */ goto L_02238B08;
|
|
L_02238658: ; // 0x2238658
|
|
/* 02238658 */ cpu->f[1] = cpu->f[30];
|
|
/* 0223865C */ cpu->r[4] = cpu->r[1] + 0x000000D8u;
|
|
/* 02238660 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238664 */ _t324 = cpu->r[1] + 0x000000D8u;
|
|
/* 02238664 */ rbrew_write32(cpu->mem, _t324, cpu->r[26]);
|
|
/* 02238668 */ Gambit_fn_02236B20(cpu);
|
|
/* 0223866C */ _t325 = cpu->r[30] + 0x00000004u;
|
|
/* 0223866C */ cpu->r[7] = rbrew_read32(cpu->mem, _t325);
|
|
/* 02238670 */ _t326 = cpu->r[7] + 0x0000039Cu;
|
|
/* 02238670 */ cpu->r[8] = rbrew_read32(cpu->mem, _t326);
|
|
/* 02238674 */ cpu->ctr = cpu->r[8];
|
|
/* 02238678 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223867C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238680 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238684 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 02238688 */ _t327 = cpu->r[30] + 0x00000184u;
|
|
/* 02238688 */ cpu->r[6] = rbrew_read32(cpu->mem, _t327);
|
|
/* 0223868C */ _t328 = cpu->r[30] + 0x000000FCu;
|
|
/* 0223868C */ cpu->r[0] = rbrew_read32(cpu->mem, _t328);
|
|
/* 02238690 */ _t329 = cpu->r[30] + 0x00000100u;
|
|
/* 02238690 */ cpu->r[4] = rbrew_read32(cpu->mem, _t329);
|
|
/* 02238694 */ _t330 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238694 */ rbrew_write32(cpu->mem, _t330, cpu->r[0]);
|
|
/* 02238698 */ _t331 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238698 */ rbrew_write32(cpu->mem, _t331, cpu->r[4]);
|
|
/* 0223869C */ _t332 = cpu->r[1] + 0x000000B8u;
|
|
/* 0223869C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t332);
|
|
/* 022386A0 */ _t333 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022386A0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t333);
|
|
/* 022386A4 */ _t334 = cpu->r[30] + 0x00000104u;
|
|
/* 022386A4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t334);
|
|
/* 022386A8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 022386AC */ cpu->f[2] = cpu->f[13] + cpu->f[6];
|
|
/* 022386B0 */ _t335 = cpu->r[30] + 0x00000184u;
|
|
/* 022386B0 */ rbrew_write32(cpu->mem, _t335, cpu->r[6]);
|
|
/* 022386B4 */ _t336 = cpu->r[1] + 0x000000B4u;
|
|
/* 022386B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t336);
|
|
/* 022386B8 */ _t337 = cpu->r[1] + 0x000000BCu;
|
|
/* 022386B8 */ rbrew_write32(cpu->mem, _t337, cpu->r[5]);
|
|
/* 022386BC */ _t338 = cpu->r[1] + 0x000000BCu;
|
|
/* 022386BC */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t338);
|
|
/* 022386C0 */ cpu->r[3] = cpu->r[1] + 0x00000188u;
|
|
/* 022386C4 */ _t339 = cpu->r[1] + 0x000000B8u;
|
|
/* 022386C4 */ rbrew_write_f32(cpu->mem, _t339, cpu->f[2]);
|
|
/* 022386C8 */ Gambit_fn_02C69840(cpu);
|
|
/* 022386CC */ _t340 = cpu->r[1] + 0x00000068u;
|
|
/* 022386CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t340);
|
|
/* 022386D0 */ _t341 = cpu->r[1] + 0x00000060u;
|
|
/* 022386D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t341);
|
|
/* 022386D4 */ cpu->f[13] = cpu->f[9] * cpu->f[9];
|
|
/* 022386D8 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 022386DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 022386E0 */ _t342 = cpu->r[1] + 0x00000064u;
|
|
/* 022386E0 */ rbrew_write_f32(cpu->mem, _t342, cpu->f[30]);
|
|
/* 022386E4 */ _t343 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022386E4 */ _t344 = _t343 & 0x00000001u;
|
|
/* 022386E4 */ if (_t344) goto L_022386E8; else goto L_02238B3C;
|
|
L_022386E8: ; // 0x22386e8
|
|
/* 022386E8 */ goto L_02238B08;
|
|
L_022386EC: ; // 0x22386ec
|
|
/* 022386EC */ _t345 = cpu->r[30] + 0x00000004u;
|
|
/* 022386EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t345);
|
|
/* 022386F0 */ _t346 = cpu->r[9] + 0x00000254u;
|
|
/* 022386F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t346);
|
|
/* 022386F4 */ cpu->ctr = cpu->r[10];
|
|
/* 022386F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022386FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238700 */ _t347 = cpu->r[29] + 0x00000000u;
|
|
/* 02238700 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t347);
|
|
/* 02238704 */ _t348 = cpu->r[3] + 0x00000000u;
|
|
/* 02238704 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t348);
|
|
/* 02238708 */ _t349 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238708 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t349);
|
|
/* 0223870C */ _t350 = cpu->r[1] + 0x000000A8u;
|
|
/* 0223870C */ rbrew_write_f32(cpu->mem, _t350, cpu->f[10]);
|
|
/* 02238710 */ _t351 = cpu->r[3] + 0x00000004u;
|
|
/* 02238710 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t351);
|
|
/* 02238714 */ cpu->f[10] = cpu->f[12] + cpu->f[12];
|
|
/* 02238718 */ _t352 = cpu->r[29] + 0x00000004u;
|
|
/* 02238718 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t352);
|
|
/* 0223871C */ cpu->f[13] = -cpu->f[0];
|
|
/* 02238720 */ _t353 = cpu->r[30] + 0x00000138u;
|
|
/* 02238720 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t353);
|
|
/* 02238724 */ _t354 = cpu->r[29] + 0x00000008u;
|
|
/* 02238724 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t354);
|
|
/* 02238728 */ cpu->f[1] = cpu->f[10] - cpu->f[11];
|
|
/* 0223872C */ _t355 = cpu->r[1] + 0x000000ACu;
|
|
/* 0223872C */ rbrew_write_f32(cpu->mem, _t355, cpu->f[8]);
|
|
/* 02238730 */ _t356 = cpu->r[3] + 0x00000008u;
|
|
/* 02238730 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t356);
|
|
/* 02238734 */ cpu->f[12] = cpu->f[8] + cpu->f[12];
|
|
/* 02238738 */ _t357 = cpu->r[30] + 0x00000134u;
|
|
/* 02238738 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t357);
|
|
/* 0223873C */ /* nop */
|
|
/* 02238740 */ _t358 = cpu->r[1] + 0x000000B0u;
|
|
/* 02238740 */ rbrew_write_f32(cpu->mem, _t358, cpu->f[11]);
|
|
/* 02238744 */ cpu->f[6] = -cpu->f[7];
|
|
/* 02238748 */ _t359 = cpu->r[27] + 0x00000000u;
|
|
/* 02238748 */ cpu->r[3] = rbrew_read32(cpu->mem, _t359);
|
|
/* 0223874C */ cpu->f[8] = -cpu->f[9];
|
|
/* 02238750 */ _t360 = cpu->r[1] + 0x000000ACu;
|
|
/* 02238750 */ rbrew_write_f32(cpu->mem, _t360, cpu->f[12]);
|
|
/* 02238754 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 02238758 */ _t361 = cpu->r[1] + 0x000000CCu;
|
|
/* 02238758 */ rbrew_write_f32(cpu->mem, _t361, cpu->f[13]);
|
|
/* 0223875C */ _t362 = cpu->r[1] + 0x000000D4u;
|
|
/* 0223875C */ rbrew_write_f32(cpu->mem, _t362, cpu->f[8]);
|
|
/* 02238760 */ _t363 = cpu->r[1] + 0x000000D0u;
|
|
/* 02238760 */ rbrew_write_f32(cpu->mem, _t363, cpu->f[6]);
|
|
/* 02238764 */ _t364 = cpu->r[30] + 0x000000B4u;
|
|
/* 02238764 */ cpu->r[9] = rbrew_read32(cpu->mem, _t364);
|
|
/* 02238768 */ _t365 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238768 */ _t366 = _t365 & 0x00000001u;
|
|
/* 02238768 */ if (_t366) goto L_022387B0; else goto L_0223876C;
|
|
L_0223876C: ; // 0x223876c
|
|
/* 0223876C */ cpu->r[12] = cpu->r[30] + 0x000000B0u;
|
|
/* 02238770 */ cpu->f[1] = cpu->f[2];
|
|
/* 02238774 */ cpu->r[5] = 0x00000000u;
|
|
/* 02238778 */ cpu->r[7] = 0x00040000u;
|
|
/* 0223877C */ cpu->f[2] = cpu->f[29];
|
|
/* 02238780 */ cpu->r[4] = cpu->r[1] + 0x000000A8u;
|
|
/* 02238784 */ cpu->r[6] = cpu->r[5];
|
|
/* 02238788 */ cpu->r[8] = 0x000011FFu;
|
|
/* 0223878C */ cpu->r[7] = cpu->r[7] + 0x0000008Au;
|
|
/* 02238790 */ cpu->r[10] = cpu->r[6];
|
|
/* 02238794 */ _t367 = cpu->r[1] + 0x00000008u;
|
|
/* 02238794 */ rbrew_write32(cpu->mem, _t367, cpu->r[12]);
|
|
/* 02238798 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0223879C */ cpu->r[29] = 0x00000000u;
|
|
/* 022387A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022387A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022387A4 */ _t368 = cpu->r[30] + 0x000000B0u;
|
|
/* 022387A4 */ rbrew_write32(cpu->mem, _t368, cpu->r[3]);
|
|
/* 022387A8 */ _t369 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022387A8 */ _t370 = _t369 & 0x00000001u;
|
|
/* 022387A8 */ if (_t370) goto L_02238928; else goto L_022387AC;
|
|
L_022387AC: ; // 0x22387ac
|
|
/* 022387AC */ goto L_022387E8;
|
|
L_022387B0: ; // 0x22387b0
|
|
/* 022387B0 */ cpu->f[3] = cpu->f[29];
|
|
/* 022387B4 */ cpu->r[6] = 0x00040000u;
|
|
/* 022387B8 */ cpu->r[8] = cpu->r[9];
|
|
/* 022387BC */ cpu->f[4] = cpu->f[28];
|
|
/* 022387C0 */ cpu->r[9] = cpu->r[30] + 0x000000B0u;
|
|
/* 022387C4 */ cpu->r[4] = cpu->r[1] + 0x000000A8u;
|
|
/* 022387C8 */ cpu->r[5] = cpu->r[1] + 0x000000CCu;
|
|
/* 022387CC */ cpu->r[7] = 0x000011FFu;
|
|
/* 022387D0 */ cpu->r[6] = cpu->r[6] + 0x0000008Au;
|
|
/* 022387D4 */ Gambit_fn_0204A864(cpu);
|
|
/* 022387D8 */ cpu->r[29] = 0x00000000u;
|
|
/* 022387DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022387DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022387E0 */ _t371 = cpu->r[30] + 0x000000B0u;
|
|
/* 022387E0 */ rbrew_write32(cpu->mem, _t371, cpu->r[3]);
|
|
/* 022387E4 */ _t372 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022387E4 */ _t373 = _t372 & 0x00000001u;
|
|
/* 022387E4 */ if (_t373) goto L_02238928; else goto L_022387E8;
|
|
L_022387E8: ; // 0x22387e8
|
|
/* 022387E8 */ _t374 = cpu->r[30] + 0x000000B4u;
|
|
/* 022387E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t374);
|
|
/* 022387EC */ _t375 = cpu->r[31] + 0x0000015Cu;
|
|
/* 022387EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t375);
|
|
/* 022387F0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022387F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022387F4 */ _t376 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022387F4 */ _t377 = _t376 & 0x00000001u;
|
|
/* 022387F4 */ if (_t377) goto L_0223881C; else goto L_022387F8;
|
|
L_022387F8: ; // 0x22387f8
|
|
/* 022387F8 */ _t378 = cpu->r[30] + 0x00000004u;
|
|
/* 022387F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t378);
|
|
/* 022387FC */ _t379 = cpu->r[5] + 0x00000354u;
|
|
/* 022387FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t379);
|
|
/* 02238800 */ cpu->ctr = cpu->r[6];
|
|
/* 02238804 */ cpu->r[5] = cpu->r[31];
|
|
/* 02238808 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223880C */ cpu->r[4] = cpu->r[31] + 0x00000060u;
|
|
/* 02238810 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238814 */ cpu->r[29] = 0x00000001u;
|
|
/* 02238818 */ _t380 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02238818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t380);
|
|
L_0223881C: ; // 0x223881c
|
|
/* 0223881C */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 0223881C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02238820 */ _t381 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238820 */ _t382 = _t381 & 0x00000001u;
|
|
/* 02238820 */ if (_t382) goto L_022388D8; else goto L_02238824;
|
|
L_02238824: ; // 0x2238824
|
|
/* 02238824 */ _t383 = cpu->r[31] + 0x00000168u;
|
|
/* 02238824 */ cpu->r[9] = rbrew_read32(cpu->mem, _t383);
|
|
/* 02238828 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000004u, 0x00000004u);
|
|
/* 02238828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0223882C */ _t384 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223882C */ _t385 = _t384 & 0x00000001u;
|
|
/* 0223882C */ if (_t385) goto L_0223883C; else goto L_02238830;
|
|
L_02238830: ; // 0x2238830
|
|
/* 02238830 */ _t386 = cpu->r[31] + 0x00000044u;
|
|
/* 02238830 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t386);
|
|
/* 02238834 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[30]);
|
|
/* 02238838 */ _t387 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238838 */ _t388 = _t387 & 0x00000001u;
|
|
/* 02238838 */ if (_t388) goto L_0223883C; else goto L_022388BC;
|
|
L_0223883C: ; // 0x223883c
|
|
/* 0223883C */ _t389 = cpu->r[30] + 0x00000004u;
|
|
/* 0223883C */ cpu->r[10] = rbrew_read32(cpu->mem, _t389);
|
|
/* 02238840 */ _t390 = cpu->r[10] + 0x0000039Cu;
|
|
/* 02238840 */ cpu->r[11] = rbrew_read32(cpu->mem, _t390);
|
|
/* 02238844 */ cpu->ctr = cpu->r[11];
|
|
/* 02238848 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223884C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238850 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238854 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 02238858 */ _t391 = cpu->r[30] + 0x00000184u;
|
|
/* 02238858 */ cpu->r[6] = rbrew_read32(cpu->mem, _t391);
|
|
/* 0223885C */ _t392 = cpu->r[30] + 0x000000FCu;
|
|
/* 0223885C */ cpu->r[0] = rbrew_read32(cpu->mem, _t392);
|
|
/* 02238860 */ _t393 = cpu->r[30] + 0x00000100u;
|
|
/* 02238860 */ cpu->r[4] = rbrew_read32(cpu->mem, _t393);
|
|
/* 02238864 */ _t394 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238864 */ rbrew_write32(cpu->mem, _t394, cpu->r[0]);
|
|
/* 02238868 */ _t395 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238868 */ rbrew_write32(cpu->mem, _t395, cpu->r[4]);
|
|
/* 0223886C */ _t396 = cpu->r[1] + 0x000000B8u;
|
|
/* 0223886C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t396);
|
|
/* 02238870 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 02238874 */ _t397 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238874 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t397);
|
|
/* 02238878 */ _t398 = cpu->r[30] + 0x00000104u;
|
|
/* 02238878 */ cpu->r[5] = rbrew_read32(cpu->mem, _t398);
|
|
/* 0223887C */ cpu->f[2] = cpu->f[13] + cpu->f[6];
|
|
/* 02238880 */ _t399 = cpu->r[30] + 0x00000184u;
|
|
/* 02238880 */ rbrew_write32(cpu->mem, _t399, cpu->r[6]);
|
|
/* 02238884 */ _t400 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238884 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t400);
|
|
/* 02238888 */ _t401 = cpu->r[1] + 0x000000BCu;
|
|
/* 02238888 */ rbrew_write32(cpu->mem, _t401, cpu->r[5]);
|
|
/* 0223888C */ _t402 = cpu->r[1] + 0x000000BCu;
|
|
/* 0223888C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t402);
|
|
/* 02238890 */ cpu->r[3] = cpu->r[1] + 0x00000188u;
|
|
/* 02238894 */ _t403 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238894 */ rbrew_write_f32(cpu->mem, _t403, cpu->f[2]);
|
|
/* 02238898 */ Gambit_fn_02C69840(cpu);
|
|
/* 0223889C */ _t404 = cpu->r[1] + 0x00000068u;
|
|
/* 0223889C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t404);
|
|
/* 022388A0 */ _t405 = cpu->r[1] + 0x00000060u;
|
|
/* 022388A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t405);
|
|
/* 022388A4 */ cpu->f[13] = cpu->f[9] * cpu->f[9];
|
|
/* 022388A8 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 022388AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 022388B0 */ _t406 = cpu->r[1] + 0x00000064u;
|
|
/* 022388B0 */ rbrew_write_f32(cpu->mem, _t406, cpu->f[30]);
|
|
/* 022388B4 */ _t407 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022388B4 */ _t408 = _t407 & 0x00000001u;
|
|
/* 022388B4 */ if (_t408) goto L_022388B8; else goto L_02238B3C;
|
|
L_022388B8: ; // 0x22388b8
|
|
/* 022388B8 */ goto L_02238B08;
|
|
L_022388BC: ; // 0x22388bc
|
|
/* 022388BC */ _t409 = cpu->r[30] + 0x00000004u;
|
|
/* 022388BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t409);
|
|
/* 022388C0 */ _t410 = cpu->r[12] + 0x0000035Cu;
|
|
/* 022388C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t410);
|
|
/* 022388C4 */ cpu->ctr = cpu->r[0];
|
|
/* 022388C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022388CC */ cpu->r[4] = cpu->r[31] + 0x000000C0u;
|
|
/* 022388D0 */ cpu->r[5] = cpu->r[31];
|
|
/* 022388D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022388D8: ; // 0x22388d8
|
|
/* 022388D8 */ _t411 = cpu->r[30] + 0x000001C8u;
|
|
/* 022388D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t411);
|
|
/* 022388DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022388E0 */ _t412 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022388E0 */ _t413 = _t412 & 0x00000001u;
|
|
/* 022388E0 */ if (_t413) goto L_02238990; else goto L_022388E4;
|
|
L_022388E4: ; // 0x22388e4
|
|
/* 022388E4 */ _t414 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022388E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t414);
|
|
/* 022388E8 */ _t415 = cpu->r[30] + 0x000001CCu;
|
|
/* 022388E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t415);
|
|
/* 022388EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 022388F0 */ _t416 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022388F0 */ _t417 = _t416 & 0x00000001u;
|
|
/* 022388F0 */ if (_t417) goto L_022388F4; else goto L_02238990;
|
|
L_022388F4: ; // 0x22388f4
|
|
/* 022388F4 */ _t418 = cpu->r[31] + 0x00000028u;
|
|
/* 022388F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t418);
|
|
/* 022388F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022388FC */ _t419 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022388FC */ _t420 = _t419 & 0x00000001u;
|
|
/* 022388FC */ if (_t420) goto L_02238914; else goto L_02238900;
|
|
L_02238900: ; // 0x2238900
|
|
/* 02238900 */ _t421 = cpu->r[3] + 0x00000050u;
|
|
/* 02238900 */ cpu->r[7] = rbrew_read32(cpu->mem, _t421);
|
|
/* 02238904 */ _t422 = cpu->r[7] + 0x00000024u;
|
|
/* 02238904 */ cpu->r[8] = rbrew_read32(cpu->mem, _t422);
|
|
/* 02238908 */ cpu->ctr = cpu->r[8];
|
|
/* 0223890C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02238910 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02238914: ; // 0x2238914
|
|
/* 02238914 */ cpu->r[9] = 0x00000001u;
|
|
/* 02238918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0223891C */ _t423 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0223891C */ rbrew_write8(cpu->mem, _t423, (uint8_t)cpu->r[9]);
|
|
/* 02238920 */ _t424 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238920 */ _t425 = _t424 & 0x00000001u;
|
|
/* 02238920 */ if (_t425) goto L_02238998; else goto L_02238924;
|
|
L_02238924: ; // 0x2238924
|
|
/* 02238924 */ goto L_02238A20;
|
|
L_02238928: ; // 0x2238928
|
|
/* 02238928 */ cpu->r[11] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000000Cu, 0x0000000Cu);
|
|
/* 02238928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223892C */ _t426 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223892C */ _t427 = _t426 & 0x00000001u;
|
|
/* 0223892C */ if (_t427) goto L_0223894C; else goto L_02238930;
|
|
L_02238930: ; // 0x2238930
|
|
/* 02238930 */ _t428 = cpu->r[30] + 0x000000B4u;
|
|
/* 02238930 */ cpu->r[4] = rbrew_read32(cpu->mem, _t428);
|
|
/* 02238934 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238938 */ Gambit_fn_02237944(cpu);
|
|
/* 0223893C */ _t429 = cpu->r[30] + 0x000001B0u;
|
|
/* 0223893C */ cpu->r[31] = rbrew_read32(cpu->mem, _t429);
|
|
/* 02238940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02238944 */ _t430 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238944 */ _t431 = _t430 & 0x00000001u;
|
|
/* 02238944 */ if (_t431) goto L_02238948; else goto L_022389A4;
|
|
L_02238948: ; // 0x2238948
|
|
/* 02238948 */ goto L_022389DC;
|
|
L_0223894C: ; // 0x223894c
|
|
/* 0223894C */ _t432 = cpu->r[30] + 0x000001C8u;
|
|
/* 0223894C */ cpu->r[31] = rbrew_read32(cpu->mem, _t432);
|
|
/* 02238950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02238954 */ _t433 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238954 */ _t434 = _t433 & 0x00000001u;
|
|
/* 02238954 */ if (_t434) goto L_02238998; else goto L_02238958;
|
|
L_02238958: ; // 0x2238958
|
|
/* 02238958 */ _t435 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02238958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t435);
|
|
/* 0223895C */ _t436 = cpu->r[30] + 0x000001CCu;
|
|
/* 0223895C */ cpu->r[5] = rbrew_read32(cpu->mem, _t436);
|
|
/* 02238960 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02238964 */ _t437 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238964 */ _t438 = _t437 & 0x00000001u;
|
|
/* 02238964 */ if (_t438) goto L_02238968; else goto L_02238998;
|
|
L_02238968: ; // 0x2238968
|
|
/* 02238968 */ _t439 = cpu->r[31] + 0x00000028u;
|
|
/* 02238968 */ cpu->r[3] = rbrew_read32(cpu->mem, _t439);
|
|
/* 0223896C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238970 */ _t440 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238970 */ _t441 = _t440 & 0x00000001u;
|
|
/* 02238970 */ if (_t441) goto L_02238988; else goto L_02238974;
|
|
L_02238974: ; // 0x2238974
|
|
/* 02238974 */ _t442 = cpu->r[3] + 0x00000050u;
|
|
/* 02238974 */ cpu->r[7] = rbrew_read32(cpu->mem, _t442);
|
|
/* 02238978 */ _t443 = cpu->r[7] + 0x00000024u;
|
|
/* 02238978 */ cpu->r[8] = rbrew_read32(cpu->mem, _t443);
|
|
/* 0223897C */ cpu->ctr = cpu->r[8];
|
|
/* 02238980 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02238984 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02238988: ; // 0x2238988
|
|
/* 02238988 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223898C */ _t444 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0223898C */ rbrew_write8(cpu->mem, _t444, (uint8_t)cpu->r[9]);
|
|
L_02238990: ; // 0x2238990
|
|
/* 02238990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02238994 */ _t445 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238994 */ _t446 = _t445 & 0x00000001u;
|
|
/* 02238994 */ if (_t446) goto L_02238998; else goto L_02238A20;
|
|
L_02238998: ; // 0x2238998
|
|
/* 02238998 */ _t447 = cpu->r[30] + 0x000001B0u;
|
|
/* 02238998 */ cpu->r[31] = rbrew_read32(cpu->mem, _t447);
|
|
/* 0223899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022389A0 */ _t448 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022389A0 */ _t449 = _t448 & 0x00000001u;
|
|
/* 022389A0 */ if (_t449) goto L_022389DC; else goto L_022389A4;
|
|
L_022389A4: ; // 0x22389a4
|
|
/* 022389A4 */ _t450 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022389A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t450);
|
|
/* 022389A8 */ _t451 = cpu->r[30] + 0x000001B4u;
|
|
/* 022389A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t451);
|
|
/* 022389AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 022389B0 */ _t452 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022389B0 */ _t453 = _t452 & 0x00000001u;
|
|
/* 022389B0 */ if (_t453) goto L_022389B4; else goto L_022389DC;
|
|
L_022389B4: ; // 0x22389b4
|
|
/* 022389B4 */ _t454 = cpu->r[31] + 0x00000028u;
|
|
/* 022389B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t454);
|
|
/* 022389B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022389BC */ _t455 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022389BC */ _t456 = _t455 & 0x00000001u;
|
|
/* 022389BC */ if (_t456) goto L_022389D4; else goto L_022389C0;
|
|
L_022389C0: ; // 0x22389c0
|
|
/* 022389C0 */ _t457 = cpu->r[3] + 0x00000050u;
|
|
/* 022389C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t457);
|
|
/* 022389C4 */ _t458 = cpu->r[12] + 0x00000024u;
|
|
/* 022389C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t458);
|
|
/* 022389C8 */ cpu->ctr = cpu->r[0];
|
|
/* 022389CC */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022389D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022389D4: ; // 0x22389d4
|
|
/* 022389D4 */ cpu->r[4] = 0x00000001u;
|
|
/* 022389D8 */ _t459 = cpu->r[31] + 0x0000004Cu;
|
|
/* 022389D8 */ rbrew_write8(cpu->mem, _t459, (uint8_t)cpu->r[4]);
|
|
L_022389DC: ; // 0x22389dc
|
|
/* 022389DC */ _t460 = cpu->r[30] + 0x000001BCu;
|
|
/* 022389DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t460);
|
|
/* 022389E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022389E4 */ _t461 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022389E4 */ _t462 = _t461 & 0x00000001u;
|
|
/* 022389E4 */ if (_t462) goto L_02238A20; else goto L_022389E8;
|
|
L_022389E8: ; // 0x22389e8
|
|
/* 022389E8 */ _t463 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022389E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t463);
|
|
/* 022389EC */ _t464 = cpu->r[30] + 0x000001C0u;
|
|
/* 022389EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t464);
|
|
/* 022389F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]);
|
|
/* 022389F4 */ _t465 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022389F4 */ _t466 = _t465 & 0x00000001u;
|
|
/* 022389F4 */ if (_t466) goto L_022389F8; else goto L_02238A20;
|
|
L_022389F8: ; // 0x22389f8
|
|
/* 022389F8 */ _t467 = cpu->r[31] + 0x00000028u;
|
|
/* 022389F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t467);
|
|
/* 022389FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238A00 */ _t468 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238A00 */ _t469 = _t468 & 0x00000001u;
|
|
/* 02238A00 */ if (_t469) goto L_02238A18; else goto L_02238A04;
|
|
L_02238A04: ; // 0x2238a04
|
|
/* 02238A04 */ _t470 = cpu->r[3] + 0x00000050u;
|
|
/* 02238A04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t470);
|
|
/* 02238A08 */ _t471 = cpu->r[8] + 0x00000024u;
|
|
/* 02238A08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t471);
|
|
/* 02238A0C */ cpu->ctr = cpu->r[9];
|
|
/* 02238A10 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02238A14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02238A18: ; // 0x2238a18
|
|
/* 02238A18 */ cpu->r[10] = 0x00000001u;
|
|
/* 02238A1C */ _t472 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02238A1C */ rbrew_write8(cpu->mem, _t472, (uint8_t)cpu->r[10]);
|
|
L_02238A20: ; // 0x2238a20
|
|
/* 02238A20 */ _t473 = cpu->r[30] + 0x00000004u;
|
|
/* 02238A20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t473);
|
|
/* 02238A24 */ _t474 = cpu->r[11] + 0x00000254u;
|
|
/* 02238A24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t474);
|
|
/* 02238A28 */ cpu->ctr = cpu->r[12];
|
|
/* 02238A2C */ cpu->r[3] = cpu->r[30];
|
|
/* 02238A30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238A34 */ _t475 = cpu->r[3] + 0x00000000u;
|
|
/* 02238A34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t475);
|
|
/* 02238A38 */ _t476 = cpu->r[1] + 0x000000E0u;
|
|
/* 02238A38 */ rbrew_write32(cpu->mem, _t476, cpu->r[6]);
|
|
/* 02238A3C */ _t477 = cpu->r[3] + 0x00000004u;
|
|
/* 02238A3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t477);
|
|
/* 02238A40 */ _t478 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238A40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t478);
|
|
/* 02238A44 */ _t479 = cpu->r[1] + 0x000000E4u;
|
|
/* 02238A44 */ rbrew_write32(cpu->mem, _t479, cpu->r[7]);
|
|
/* 02238A48 */ _t480 = cpu->r[3] + 0x00000008u;
|
|
/* 02238A48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t480);
|
|
/* 02238A4C */ _t481 = cpu->r[1] + 0x000000E4u;
|
|
/* 02238A4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t481);
|
|
/* 02238A50 */ _t482 = cpu->r[1] + 0x000000E8u;
|
|
/* 02238A50 */ rbrew_write32(cpu->mem, _t482, cpu->r[8]);
|
|
/* 02238A54 */ _t483 = cpu->r[1] + 0x00000128u;
|
|
/* 02238A54 */ rbrew_write32(cpu->mem, _t483, cpu->r[6]);
|
|
/* 02238A58 */ cpu->f[0] = cpu->f[0] + cpu->f[12];
|
|
/* 02238A5C */ _t484 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02238A5C */ rbrew_write32(cpu->mem, _t484, cpu->r[7]);
|
|
/* 02238A60 */ _t485 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02238A60 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t485);
|
|
/* 02238A64 */ cpu->r[10] = cpu->r[1] + 0x000000E0u;
|
|
/* 02238A68 */ _t486 = cpu->r[1] + 0x000000E4u;
|
|
/* 02238A68 */ rbrew_write_f32(cpu->mem, _t486, cpu->f[0]);
|
|
/* 02238A6C */ cpu->f[7] = cpu->f[7] - cpu->f[12];
|
|
/* 02238A70 */ _t487 = cpu->r[1] + 0x00000130u;
|
|
/* 02238A70 */ rbrew_write32(cpu->mem, _t487, cpu->r[8]);
|
|
/* 02238A74 */ cpu->r[3] = cpu->r[10];
|
|
/* 02238A78 */ _t488 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02238A78 */ rbrew_write_f32(cpu->mem, _t488, cpu->f[7]);
|
|
/* 02238A7C */ Gambit_fn_027E3F3C(cpu);
|
|
/* 02238A80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238A84 */ _t489 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238A84 */ _t490 = _t489 & 0x00000001u;
|
|
/* 02238A84 */ if (_t490) goto L_02238AA0; else goto L_02238A88;
|
|
L_02238A88: ; // 0x2238a88
|
|
/* 02238A88 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 02238A8C */ Gambit_fn_027E3F3C(cpu);
|
|
/* 02238A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238A94 */ _t491 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238A94 */ _t492 = _t491 & 0x00000001u;
|
|
/* 02238A94 */ if (_t492) goto L_02238AA0; else goto L_02238A98;
|
|
L_02238A98: ; // 0x2238a98
|
|
/* 02238A98 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238A9C */ Gambit_fn_02790488(cpu);
|
|
L_02238AA0: ; // 0x2238aa0
|
|
/* 02238AA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238AA4 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 02238AA8 */ _t493 = cpu->r[30] + 0x00000184u;
|
|
/* 02238AA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t493);
|
|
/* 02238AAC */ _t494 = cpu->r[30] + 0x000000FCu;
|
|
/* 02238AAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t494);
|
|
/* 02238AB0 */ _t495 = cpu->r[30] + 0x00000100u;
|
|
/* 02238AB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t495);
|
|
/* 02238AB4 */ _t496 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238AB4 */ rbrew_write32(cpu->mem, _t496, cpu->r[0]);
|
|
/* 02238AB8 */ _t497 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238AB8 */ rbrew_write32(cpu->mem, _t497, cpu->r[4]);
|
|
/* 02238ABC */ _t498 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238ABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t498);
|
|
/* 02238AC0 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 02238AC4 */ _t499 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238AC4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t499);
|
|
/* 02238AC8 */ _t500 = cpu->r[30] + 0x00000104u;
|
|
/* 02238AC8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t500);
|
|
/* 02238ACC */ cpu->f[2] = cpu->f[13] + cpu->f[6];
|
|
/* 02238AD0 */ _t501 = cpu->r[30] + 0x00000184u;
|
|
/* 02238AD0 */ rbrew_write32(cpu->mem, _t501, cpu->r[6]);
|
|
/* 02238AD4 */ _t502 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238AD4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t502);
|
|
/* 02238AD8 */ _t503 = cpu->r[1] + 0x000000BCu;
|
|
/* 02238AD8 */ rbrew_write32(cpu->mem, _t503, cpu->r[5]);
|
|
/* 02238ADC */ _t504 = cpu->r[1] + 0x000000BCu;
|
|
/* 02238ADC */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t504);
|
|
/* 02238AE0 */ cpu->r[3] = cpu->r[1] + 0x00000188u;
|
|
/* 02238AE4 */ _t505 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238AE4 */ rbrew_write_f32(cpu->mem, _t505, cpu->f[2]);
|
|
/* 02238AE8 */ Gambit_fn_02C69840(cpu);
|
|
/* 02238AEC */ _t506 = cpu->r[1] + 0x00000068u;
|
|
/* 02238AEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t506);
|
|
/* 02238AF0 */ _t507 = cpu->r[1] + 0x00000060u;
|
|
/* 02238AF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t507);
|
|
/* 02238AF4 */ cpu->f[13] = cpu->f[9] * cpu->f[9];
|
|
/* 02238AF8 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 02238AFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 02238B00 */ _t508 = cpu->r[1] + 0x00000064u;
|
|
/* 02238B00 */ rbrew_write_f32(cpu->mem, _t508, cpu->f[30]);
|
|
/* 02238B04 */ _t509 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238B04 */ _t510 = _t509 & 0x00000001u;
|
|
/* 02238B04 */ if (_t510) goto L_02238B08; else goto L_02238B3C;
|
|
L_02238B08: ; // 0x2238b08
|
|
/* 02238B08 */ cpu->r[9] = 0x10050000u;
|
|
/* 02238B0C */ _t511 = cpu->r[9] + 0x00001F34u;
|
|
/* 02238B0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t511);
|
|
/* 02238B10 */ _ft512 = sqrt(cpu->f[11]);
|
|
/* 02238B10 */ _ft513 = (double)(int32_t)0x00000001u;
|
|
/* 02238B10 */ cpu->f[13] = _ft513 / _ft512;
|
|
/* 02238B14 */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 02238B18 */ cpu->f[9] = cpu->f[13] * cpu->f[31];
|
|
/* 02238B1C */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[10]));
|
|
/* 02238B20 */ cpu->f[13] = cpu->f[7] * cpu->f[9];
|
|
/* 02238B24 */ _t514 = cpu->r[1] + 0x00000068u;
|
|
/* 02238B24 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t514);
|
|
/* 02238B28 */ /* nop */
|
|
/* 02238B2C */ cpu->f[7] = cpu->f[7] * cpu->f[13];
|
|
/* 02238B30 */ /* nop */
|
|
/* 02238B34 */ _t515 = cpu->r[1] + 0x00000068u;
|
|
/* 02238B34 */ rbrew_write_f32(cpu->mem, _t515, cpu->f[7]);
|
|
/* 02238B38 */ /* nop */
|
|
L_02238B3C: ; // 0x2238b3c
|
|
/* 02238B3C */ cpu->r[4] = 0x101F0000u;
|
|
/* 02238B40 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02238B44 */ cpu->r[5] = cpu->r[1] + 0x00000060u;
|
|
/* 02238B48 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 02238B4C */ Gambit_fn_021C6DD8(cpu);
|
|
/* 02238B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238B54 */ _t516 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238B54 */ _t517 = _t516 & 0x00000001u;
|
|
/* 02238B54 */ if (_t517) goto L_02238B58; else goto L_02238B6C;
|
|
L_02238B58: ; // 0x2238b58
|
|
/* 02238B58 */ cpu->r[4] = 0x00000000u;
|
|
/* 02238B5C */ cpu->r[5] = 0x80000000u;
|
|
/* 02238B60 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02238B64 */ cpu->r[6] = cpu->r[4];
|
|
/* 02238B68 */ Gambit_fn_021E1408(cpu);
|
|
L_02238B6C: ; // 0x2238b6c
|
|
/* 02238B6C */ cpu->r[3] = cpu->r[1] + 0x00000188u;
|
|
/* 02238B70 */ cpu->r[4] = cpu->r[1] + 0x00000158u;
|
|
/* 02238B74 */ cpu->r[5] = cpu->r[30] + 0x0000013Cu;
|
|
/* 02238B78 */ Gambit_fn_02C69544(cpu);
|
|
/* 02238B7C */ cpu->r[4] = 0x101F0000u;
|
|
/* 02238B80 */ cpu->r[4] = cpu->r[4] + 0x00006368u;
|
|
/* 02238B84 */ /* nop */
|
|
/* 02238B88 */ _t518 = cpu->r[4] + 0x00000008u;
|
|
/* 02238B88 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t518);
|
|
/* 02238B8C */ /* nop */
|
|
/* 02238B90 */ _t519 = cpu->r[30] + 0x00000114u;
|
|
/* 02238B90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t519);
|
|
/* 02238B94 */ cpu->f[0] = cpu->f[6] + cpu->f[6];
|
|
/* 02238B98 */ /* nop */
|
|
/* 02238B9C */ _t520 = cpu->r[1] + 0x00000134u;
|
|
/* 02238B9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t520);
|
|
/* 02238BA0 */ _t521 = cpu->r[1] + 0x00000138u;
|
|
/* 02238BA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t521);
|
|
/* 02238BA4 */ _t522 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02238BA4 */ rbrew_write_f32(cpu->mem, _t522, cpu->f[0]);
|
|
/* 02238BA8 */ _t523 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02238BA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t523);
|
|
/* 02238BAC */ _t524 = cpu->r[1] + 0x00000028u;
|
|
/* 02238BAC */ rbrew_write32(cpu->mem, _t524, cpu->r[10]);
|
|
/* 02238BB0 */ _t525 = cpu->r[1] + 0x00000028u;
|
|
/* 02238BB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t525);
|
|
/* 02238BB4 */ _t526 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02238BB4 */ rbrew_write32(cpu->mem, _t526, cpu->r[11]);
|
|
/* 02238BB8 */ _t527 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02238BB8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t527);
|
|
/* 02238BBC */ _t528 = cpu->r[1] + 0x00000030u;
|
|
/* 02238BBC */ rbrew_write32(cpu->mem, _t528, cpu->r[12]);
|
|
/* 02238BC0 */ _t529 = cpu->r[1] + 0x00000030u;
|
|
/* 02238BC0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t529);
|
|
/* 02238BC4 */ _t530 = cpu->r[30] + 0x00000170u;
|
|
/* 02238BC4 */ rbrew_write_f32(cpu->mem, _t530, cpu->f[6]);
|
|
/* 02238BC8 */ _t531 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02238BC8 */ rbrew_write_f32(cpu->mem, _t531, cpu->f[13]);
|
|
/* 02238BCC */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 02238BCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02238BD0 */ _t532 = cpu->r[30] + 0x00000174u;
|
|
/* 02238BD0 */ rbrew_write_f32(cpu->mem, _t532, cpu->f[8]);
|
|
/* 02238BD4 */ _t533 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238BD4 */ _t534 = _t533 & 0x00000001u;
|
|
/* 02238BD4 */ if (_t534) goto L_02238BE0; else goto L_02238BD8;
|
|
L_02238BD8: ; // 0x2238bd8
|
|
/* 02238BD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238BDC */ Gambit_fn_02790488(cpu);
|
|
L_02238BE0: ; // 0x2238be0
|
|
/* 02238BE0 */ _t535 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02238BE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t535);
|
|
/* 02238BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000002u);
|
|
/* 02238BE8 */ _t536 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238BE8 */ _t537 = _t536 & 0x00000001u;
|
|
/* 02238BE8 */ if (_t537) goto L_02238BF4; else goto L_02238BEC;
|
|
L_02238BEC: ; // 0x2238bec
|
|
/* 02238BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 02238BF0 */ _t538 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238BF0 */ _t539 = _t538 & 0x00000001u;
|
|
/* 02238BF0 */ if (_t539) goto L_02238BF4; else goto L_02238E24;
|
|
L_02238BF4: ; // 0x2238bf4
|
|
/* 02238BF4 */ _t540 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238BF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t540);
|
|
/* 02238BF8 */ cpu->r[7] = 0x10050000u;
|
|
/* 02238BFC */ _t541 = cpu->r[30] + 0x00000188u;
|
|
/* 02238BFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t541);
|
|
/* 02238C00 */ cpu->f[9] = cpu->f[10] + cpu->f[10];
|
|
/* 02238C04 */ _t542 = cpu->r[7] + 0x00001F80u;
|
|
/* 02238C04 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t542);
|
|
/* 02238C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02238C0C */ cpu->f[31] = cpu->f[9] / cpu->f[8];
|
|
/* 02238C10 */ _t543 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238C10 */ _t544 = _t543 & 0x00000001u;
|
|
/* 02238C10 */ if (_t544) goto L_02238C48; else goto L_02238C14;
|
|
L_02238C14: ; // 0x2238c14
|
|
/* 02238C14 */ _t545 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02238C14 */ cpu->r[5] = rbrew_read32(cpu->mem, _t545);
|
|
/* 02238C18 */ _t546 = cpu->r[30] + 0x0000018Cu;
|
|
/* 02238C18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t546);
|
|
/* 02238C1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02238C20 */ _t547 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238C20 */ _t548 = _t547 & 0x00000001u;
|
|
/* 02238C20 */ if (_t548) goto L_02238C24; else goto L_02238C48;
|
|
L_02238C24: ; // 0x2238c24
|
|
/* 02238C24 */ cpu->r[3] = cpu->r[30] + 0x0000013Cu;
|
|
/* 02238C28 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 02238C2C */ Gambit_fn_02C69510(cpu);
|
|
/* 02238C30 */ _t549 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02238C30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t549);
|
|
/* 02238C34 */ _t550 = cpu->r[31] + 0x00000074u;
|
|
/* 02238C34 */ rbrew_write_f32(cpu->mem, _t550, cpu->f[31]);
|
|
/* 02238C38 */ _t551 = cpu->r[31] + 0x00000078u;
|
|
/* 02238C38 */ rbrew_write_f32(cpu->mem, _t551, cpu->f[28]);
|
|
/* 02238C3C */ cpu->r[7] = cpu->r[7] | 0x00000008u;
|
|
/* 02238C40 */ _t552 = cpu->r[31] + 0x00000070u;
|
|
/* 02238C40 */ rbrew_write_f32(cpu->mem, _t552, cpu->f[28]);
|
|
/* 02238C44 */ _t553 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02238C44 */ rbrew_write32(cpu->mem, _t553, cpu->r[7]);
|
|
L_02238C48: ; // 0x2238c48
|
|
/* 02238C48 */ _t554 = cpu->r[30] + 0x00000194u;
|
|
/* 02238C48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t554);
|
|
/* 02238C4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02238C50 */ _t555 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238C50 */ _t556 = _t555 & 0x00000001u;
|
|
/* 02238C50 */ if (_t556) goto L_02238CAC; else goto L_02238C54;
|
|
L_02238C54: ; // 0x2238c54
|
|
/* 02238C54 */ _t557 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02238C54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t557);
|
|
/* 02238C58 */ _t558 = cpu->r[30] + 0x00000198u;
|
|
/* 02238C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t558);
|
|
/* 02238C5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 02238C60 */ _t559 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238C60 */ _t560 = _t559 & 0x00000001u;
|
|
/* 02238C60 */ if (_t560) goto L_02238C64; else goto L_02238CAC;
|
|
L_02238C64: ; // 0x2238c64
|
|
/* 02238C64 */ _t561 = cpu->r[1] + 0x000000C8u;
|
|
/* 02238C64 */ rbrew_write_f32(cpu->mem, _t561, cpu->f[28]);
|
|
/* 02238C68 */ _t562 = cpu->r[1] + 0x000000C0u;
|
|
/* 02238C68 */ rbrew_write_f32(cpu->mem, _t562, cpu->f[28]);
|
|
/* 02238C6C */ _t563 = cpu->r[1] + 0x000000B4u;
|
|
/* 02238C6C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t563);
|
|
/* 02238C70 */ _t564 = cpu->r[1] + 0x000000C4u;
|
|
/* 02238C70 */ rbrew_write_f32(cpu->mem, _t564, cpu->f[28]);
|
|
/* 02238C74 */ _t565 = cpu->r[8] + 0x00000064u;
|
|
/* 02238C74 */ rbrew_write_f32(cpu->mem, _t565, cpu->f[11]);
|
|
/* 02238C78 */ _t566 = cpu->r[1] + 0x000000B8u;
|
|
/* 02238C78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t566);
|
|
/* 02238C7C */ _t567 = cpu->r[8] + 0x00000068u;
|
|
/* 02238C7C */ rbrew_write_f32(cpu->mem, _t567, cpu->f[12]);
|
|
/* 02238C80 */ _t568 = cpu->r[1] + 0x000000BCu;
|
|
/* 02238C80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t568);
|
|
/* 02238C84 */ _t569 = cpu->r[8] + 0x0000006Cu;
|
|
/* 02238C84 */ rbrew_write_f32(cpu->mem, _t569, cpu->f[13]);
|
|
/* 02238C88 */ _t570 = cpu->r[1] + 0x000000C0u;
|
|
/* 02238C88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t570);
|
|
/* 02238C8C */ _t571 = cpu->r[8] + 0x0000012Cu;
|
|
/* 02238C8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t571);
|
|
/* 02238C90 */ _t572 = cpu->r[8] + 0x00000070u;
|
|
/* 02238C90 */ rbrew_write_f32(cpu->mem, _t572, cpu->f[0]);
|
|
/* 02238C94 */ _t573 = cpu->r[1] + 0x000000C4u;
|
|
/* 02238C94 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t573);
|
|
/* 02238C98 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 02238C9C */ _t574 = cpu->r[8] + 0x00000074u;
|
|
/* 02238C9C */ rbrew_write_f32(cpu->mem, _t574, cpu->f[6]);
|
|
/* 02238CA0 */ _t575 = cpu->r[1] + 0x000000C8u;
|
|
/* 02238CA0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t575);
|
|
/* 02238CA4 */ _t576 = cpu->r[8] + 0x0000012Cu;
|
|
/* 02238CA4 */ rbrew_write32(cpu->mem, _t576, cpu->r[11]);
|
|
/* 02238CA8 */ _t577 = cpu->r[8] + 0x00000078u;
|
|
/* 02238CA8 */ rbrew_write_f32(cpu->mem, _t577, cpu->f[10]);
|
|
L_02238CAC: ; // 0x2238cac
|
|
/* 02238CAC */ _t578 = cpu->r[30] + 0x00000184u;
|
|
/* 02238CAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t578);
|
|
/* 02238CB0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000014u, 0x00000015u);
|
|
/* 02238CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02238CB4 */ _t579 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238CB4 */ _t580 = _t579 & 0x00000001u;
|
|
/* 02238CB4 */ if (_t580) goto L_02238D6C; else goto L_02238CB8;
|
|
L_02238CB8: ; // 0x2238cb8
|
|
/* 02238CB8 */ _t581 = cpu->r[30] + 0x00000188u;
|
|
/* 02238CB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t581);
|
|
/* 02238CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02238CC0 */ _t582 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238CC0 */ _t583 = _t582 & 0x00000001u;
|
|
/* 02238CC0 */ if (_t583) goto L_02238D4C; else goto L_02238CC4;
|
|
L_02238CC4: ; // 0x2238cc4
|
|
/* 02238CC4 */ _t584 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02238CC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t584);
|
|
/* 02238CC8 */ _t585 = cpu->r[30] + 0x0000018Cu;
|
|
/* 02238CC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t585);
|
|
/* 02238CCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 02238CD0 */ _t586 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238CD0 */ _t587 = _t586 & 0x00000001u;
|
|
/* 02238CD0 */ if (_t587) goto L_02238CD4; else goto L_02238D4C;
|
|
L_02238CD4: ; // 0x2238cd4
|
|
/* 02238CD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02238CD8 */ Gambit_fn_028B08CC(cpu);
|
|
/* 02238CDC */ cpu->r[31] = cpu->r[3];
|
|
/* 02238CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02238CE0 */ _t588 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238CE0 */ _t589 = _t588 & 0x00000001u;
|
|
/* 02238CE0 */ if (_t589) goto L_02238D4C; else goto L_02238CE4;
|
|
L_02238CE4: ; // 0x2238ce4
|
|
/* 02238CE4 */ _t590 = cpu->r[31] + 0x00000024u;
|
|
/* 02238CE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t590);
|
|
/* 02238CE8 */ _t591 = cpu->r[5] + 0x0000001Cu;
|
|
/* 02238CE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t591);
|
|
/* 02238CEC */ cpu->ctr = cpu->r[6];
|
|
/* 02238CF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02238CF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02238CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238CFC */ _t592 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238CFC */ _t593 = _t592 & 0x00000001u;
|
|
/* 02238CFC */ if (_t593) goto L_02238D4C; else goto L_02238D00;
|
|
L_02238D00: ; // 0x2238d00
|
|
/* 02238D00 */ _t594 = cpu->r[31] + 0x00000034u;
|
|
/* 02238D00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t594);
|
|
/* 02238D04 */ _t595 = cpu->r[11] + 0x0000010Cu;
|
|
/* 02238D04 */ cpu->r[7] = rbrew_read32(cpu->mem, _t595);
|
|
/* 02238D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02238D0C */ _t596 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238D0C */ _t597 = _t596 & 0x00000001u;
|
|
/* 02238D0C */ if (_t597) goto L_02238D4C; else goto L_02238D10;
|
|
L_02238D10: ; // 0x2238d10
|
|
/* 02238D10 */ _t598 = cpu->r[11] + 0x00000004u;
|
|
/* 02238D10 */ cpu->r[9] = rbrew_read8(cpu->mem, _t598);
|
|
/* 02238D14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02238D18 */ _t599 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238D18 */ _t600 = _t599 & 0x00000001u;
|
|
/* 02238D18 */ if (_t600) goto L_02238D4C; else goto L_02238D1C;
|
|
L_02238D1C: ; // 0x2238d1c
|
|
/* 02238D1C */ _t601 = cpu->r[11] + 0x00000128u;
|
|
/* 02238D1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t601);
|
|
/* 02238D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02238D24 */ _t602 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238D24 */ _t603 = _t602 & 0x00000001u;
|
|
/* 02238D24 */ if (_t603) goto L_02238D60; else goto L_02238D28;
|
|
L_02238D28: ; // 0x2238d28
|
|
/* 02238D28 */ cpu->r[10] = cpu->r[30] + 0x000001A0u;
|
|
/* 02238D2C */ _t604 = cpu->r[12] + 0x00000004u;
|
|
/* 02238D2C */ rbrew_write32(cpu->mem, _t604, cpu->r[10]);
|
|
/* 02238D30 */ _t605 = cpu->r[30] + 0x00000184u;
|
|
/* 02238D30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t605);
|
|
/* 02238D34 */ _t606 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238D34 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t606);
|
|
/* 02238D38 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000016u, 0x00000013u);
|
|
/* 02238D3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[30]);
|
|
/* 02238D40 */ _t607 = cpu->r[30] + 0x00000184u;
|
|
/* 02238D40 */ rbrew_write32(cpu->mem, _t607, cpu->r[11]);
|
|
/* 02238D44 */ _t608 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238D44 */ _t609 = _t608 & 0x00000001u;
|
|
/* 02238D44 */ if (_t609) goto L_02238D48; else goto L_02238E08;
|
|
L_02238D48: ; // 0x2238d48
|
|
/* 02238D48 */ goto L_02238D78;
|
|
L_02238D4C: ; // 0x2238d4c
|
|
/* 02238D4C */ _t610 = cpu->r[30] + 0x00000184u;
|
|
/* 02238D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t610);
|
|
/* 02238D50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x00000015u);
|
|
/* 02238D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02238D54 */ cpu->r[12] = 0x00000000u;
|
|
/* 02238D58 */ _t611 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238D58 */ _t612 = _t611 & 0x00000001u;
|
|
/* 02238D58 */ if (_t612) goto L_02238D6C; else goto L_02238D5C;
|
|
L_02238D5C: ; // 0x2238d5c
|
|
/* 02238D5C */ goto L_02238E24;
|
|
L_02238D60: ; // 0x2238d60
|
|
/* 02238D60 */ _t613 = cpu->r[30] + 0x00000184u;
|
|
/* 02238D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t613);
|
|
/* 02238D64 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x00000015u);
|
|
/* 02238D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02238D68 */ _t614 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238D68 */ _t615 = _t614 & 0x00000001u;
|
|
/* 02238D68 */ if (_t615) goto L_02238D6C; else goto L_02238E24;
|
|
L_02238D6C: ; // 0x2238d6c
|
|
/* 02238D6C */ _t616 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02238D6C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t616);
|
|
/* 02238D70 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[30]);
|
|
/* 02238D74 */ _t617 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02238D74 */ _t618 = _t617 & 0x00000001u;
|
|
/* 02238D74 */ if (_t618) goto L_02238D78; else goto L_02238E08;
|
|
L_02238D78: ; // 0x2238d78
|
|
/* 02238D78 */ cpu->f[6] = cpu->f[12] + cpu->f[12];
|
|
/* 02238D7C */ _t619 = cpu->r[30] + 0x00000138u;
|
|
/* 02238D7C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t619);
|
|
/* 02238D80 */ _t620 = cpu->r[30] + 0x000001A0u;
|
|
/* 02238D80 */ rbrew_write_f32(cpu->mem, _t620, cpu->f[30]);
|
|
/* 02238D84 */ cpu->f[7] = cpu->f[7] / cpu->f[6];
|
|
/* 02238D88 */ _t621 = cpu->r[30] + 0x000001A8u;
|
|
/* 02238D88 */ rbrew_write_f32(cpu->mem, _t621, cpu->f[28]);
|
|
/* 02238D8C */ cpu->r[5] = 0x10050000u;
|
|
/* 02238D90 */ _t622 = cpu->r[5] + 0x00001FE4u;
|
|
/* 02238D90 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t622);
|
|
/* 02238D94 */ cpu->f[9] = cpu->f[7] * cpu->f[13];
|
|
/* 02238D98 */ _t623 = cpu->r[30] + 0x000001A4u;
|
|
/* 02238D98 */ rbrew_write_f32(cpu->mem, _t623, cpu->f[9]);
|
|
/* 02238D9C */ cpu->r[3] = cpu->r[30];
|
|
/* 02238DA0 */ _t624 = cpu->r[30] + 0x000001ACu;
|
|
/* 02238DA0 */ rbrew_write_f32(cpu->mem, _t624, cpu->f[28]);
|
|
/* 02238DA4 */ Gambit_fn_0222DADC(cpu);
|
|
/* 02238DA8 */ /* nop */
|
|
/* 02238DAC */ _t625 = cpu->r[1] + 0x00000248u;
|
|
/* 02238DAC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t625);
|
|
/* 02238DB0 */ _t626 = cpu->r[1] + 0x00000228u;
|
|
/* 02238DB0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t626);
|
|
/* 02238DB4 */ _t627 = cpu->r[1] + 0x00000240u;
|
|
/* 02238DB4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t627);
|
|
/* 02238DB8 */ _t628 = cpu->r[1] + 0x00000238u;
|
|
/* 02238DB8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t628);
|
|
/* 02238DBC */ _t629 = cpu->r[1] + 0x00000208u;
|
|
/* 02238DBC */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t629);
|
|
/* 02238DC0 */ _t630 = cpu->r[1] + 0x00000230u;
|
|
/* 02238DC0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t630);
|
|
/* 02238DC4 */ _t631 = cpu->r[1] + 0x00000258u;
|
|
/* 02238DC4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t631);
|
|
/* 02238DC8 */ _t632 = cpu->r[1] + 0x00000200u;
|
|
/* 02238DC8 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t632);
|
|
/* 02238DCC */ _t633 = cpu->r[1] + 0x00000250u;
|
|
/* 02238DCC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t633);
|
|
/* 02238DD0 */ _t634 = cpu->r[1] + 0x000001F8u;
|
|
/* 02238DD0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t634);
|
|
/* 02238DD4 */ _t635 = cpu->r[1] + 0x00000278u;
|
|
/* 02238DD4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t635);
|
|
/* 02238DD8 */ _t636 = cpu->r[1] + 0x000001F0u;
|
|
/* 02238DD8 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t636);
|
|
/* 02238DDC */ _t637 = cpu->r[1] + 0x00000270u;
|
|
/* 02238DDC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t637);
|
|
/* 02238DE0 */ _t638 = cpu->r[1] + 0x00000220u;
|
|
/* 02238DE0 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t638);
|
|
/* 02238DE4 */ _t639 = cpu->r[1] + 0x00000268u;
|
|
/* 02238DE4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t639);
|
|
/* 02238DE8 */ _t640 = cpu->r[1] + 0x00000218u;
|
|
/* 02238DE8 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t640);
|
|
/* 02238DEC */ _t641 = cpu->r[1] + 0x00000260u;
|
|
/* 02238DEC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t641);
|
|
/* 02238DF0 */ _t642 = cpu->r[1] + 0x00000210u;
|
|
/* 02238DF0 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t642);
|
|
/* 02238DF4 */ _t643 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02238DF4 */ _t644 = _t643 & 0x00000001u;
|
|
/* 02238DF4 */ if (_t644) goto L_02238DF8; // else: addr-0 trap, fall-through
|
|
L_02238DF8: ; // 0x2238df8
|
|
/* 02238DF8 */ _t645 = cpu->r[1] + 0x00000284u;
|
|
/* 02238DF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t645);
|
|
/* 02238DFC */ cpu->lr = cpu->r[0];
|
|
/* 02238E00 */ cpu->r[1] = cpu->r[1] + 0x00000280u;
|
|
/* 02238E04 */ return;
|
|
L_02238E08: ; // 0x2238e08
|
|
/* 02238E08 */ cpu->r[5] = 0x10050000u;
|
|
/* 02238E0C */ _t646 = cpu->r[5] + 0x00001FE4u;
|
|
/* 02238E0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t646);
|
|
/* 02238E10 */ _t647 = cpu->r[30] + 0x000001A0u;
|
|
/* 02238E10 */ rbrew_write_f32(cpu->mem, _t647, cpu->f[30]);
|
|
/* 02238E14 */ cpu->f[9] = cpu->f[7] * cpu->f[7];
|
|
/* 02238E18 */ _t648 = cpu->r[30] + 0x000001A8u;
|
|
/* 02238E18 */ rbrew_write_f32(cpu->mem, _t648, cpu->f[28]);
|
|
/* 02238E1C */ _t649 = cpu->r[30] + 0x000001A4u;
|
|
/* 02238E1C */ rbrew_write_f32(cpu->mem, _t649, cpu->f[9]);
|
|
/* 02238E20 */ _t650 = cpu->r[30] + 0x000001ACu;
|
|
/* 02238E20 */ rbrew_write_f32(cpu->mem, _t650, cpu->f[28]);
|
|
L_02238E24: ; // 0x2238e24
|
|
/* 02238E24 */ cpu->r[3] = cpu->r[30];
|
|
/* 02238E28 */ Gambit_fn_0222DADC(cpu);
|
|
/* 02238E2C */ /* nop */
|
|
/* 02238E30 */ _t651 = cpu->r[1] + 0x00000248u;
|
|
/* 02238E30 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t651);
|
|
/* 02238E34 */ _t652 = cpu->r[1] + 0x00000228u;
|
|
/* 02238E34 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t652);
|
|
/* 02238E38 */ _t653 = cpu->r[1] + 0x00000240u;
|
|
/* 02238E38 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t653);
|
|
/* 02238E3C */ _t654 = cpu->r[1] + 0x00000218u;
|
|
/* 02238E3C */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t654);
|
|
/* 02238E40 */ _t655 = cpu->r[1] + 0x00000220u;
|
|
/* 02238E40 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t655);
|
|
/* 02238E44 */ _t656 = cpu->r[1] + 0x00000210u;
|
|
/* 02238E44 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t656);
|
|
/* 02238E48 */ _t657 = cpu->r[1] + 0x00000268u;
|
|
/* 02238E48 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t657);
|
|
/* 02238E4C */ _t658 = cpu->r[1] + 0x00000238u;
|
|
/* 02238E4C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t658);
|
|
/* 02238E50 */ _t659 = cpu->r[1] + 0x00000260u;
|
|
/* 02238E50 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t659);
|
|
/* 02238E54 */ _t660 = cpu->r[1] + 0x00000230u;
|
|
/* 02238E54 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t660);
|
|
/* 02238E58 */ _t661 = cpu->r[1] + 0x00000208u;
|
|
/* 02238E58 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t661);
|
|
/* 02238E5C */ _t662 = cpu->r[1] + 0x00000258u;
|
|
/* 02238E5C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t662);
|
|
/* 02238E60 */ _t663 = cpu->r[1] + 0x00000200u;
|
|
/* 02238E60 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t663);
|
|
/* 02238E64 */ _t664 = cpu->r[1] + 0x00000250u;
|
|
/* 02238E64 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t664);
|
|
/* 02238E68 */ _t665 = cpu->r[1] + 0x000001F8u;
|
|
/* 02238E68 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t665);
|
|
/* 02238E6C */ _t666 = cpu->r[1] + 0x00000278u;
|
|
/* 02238E6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t666);
|
|
/* 02238E70 */ _t667 = cpu->r[1] + 0x000001F0u;
|
|
/* 02238E70 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t667);
|
|
/* 02238E74 */ _t668 = cpu->r[1] + 0x00000270u;
|
|
/* 02238E74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t668);
|
|
/* 02238E78 */ _t669 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02238E78 */ _t670 = _t669 & 0x00000001u;
|
|
/* 02238E78 */ if (_t670) goto L_02238E7C; // else: addr-0 trap, fall-through
|
|
L_02238E7C: ; // 0x2238e7c
|
|
/* 02238E7C */ _t671 = cpu->r[1] + 0x00000284u;
|
|
/* 02238E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t671);
|
|
/* 02238E80 */ cpu->lr = cpu->r[0];
|
|
/* 02238E84 */ cpu->r[1] = cpu->r[1] + 0x00000280u;
|
|
/* 02238E88 */ return;
|
|
}
|
|
|
|
// fn_02238E8C @ 0x2238e8c
|
|
void Gambit_fn_02238E8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02238E8C: ; // 0x2238e8c
|
|
/* 02238E8C */ cpu->r[0] = cpu->lr;
|
|
/* 02238E90 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02238E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02238E94 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02238E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02238E94 */ cpu->r[1] = _t1;
|
|
/* 02238E98 */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 02238E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02238E9C */ _t3 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02238E9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02238EA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02238EA4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238EA4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02238EA4 */ if (_t5) goto L_02238EA8; else goto L_02238EC0;
|
|
L_02238EA8: ; // 0x2238ea8
|
|
/* 02238EA8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02238EAC */ cpu->r[12] = 0x10050000u;
|
|
/* 02238EB0 */ cpu->lr = cpu->r[0];
|
|
/* 02238EB4 */ _t7 = cpu->r[12] + 0x00001F20u;
|
|
/* 02238EB4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02238EB8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02238EBC */ return;
|
|
L_02238EC0: ; // 0x2238ec0
|
|
/* 02238EC0 */ cpu->r[3] = cpu->r[4];
|
|
/* 02238EC4 */ Gambit_fn_021BCFBC(cpu);
|
|
/* 02238EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238ECC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238ECC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02238ECC */ if (_t9) goto L_02238EE8; else goto L_02238ED0;
|
|
L_02238ED0: ; // 0x2238ed0
|
|
/* 02238ED0 */ cpu->r[12] = 0x10050000u;
|
|
/* 02238ED4 */ cpu->r[11] = 0x10050000u;
|
|
/* 02238ED8 */ _t10 = cpu->r[12] + 0x00001F24u;
|
|
/* 02238ED8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02238EDC */ _t11 = cpu->r[11] + 0x00001FE8u;
|
|
/* 02238EDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02238EE0 */ cpu->f[1] = cpu->f[13] * cpu->f[0];
|
|
/* 02238EE4 */ goto L_02238EFC;
|
|
L_02238EE8: ; // 0x2238ee8
|
|
/* 02238EE8 */ cpu->r[12] = 0x10050000u;
|
|
/* 02238EEC */ cpu->r[11] = 0x10050000u;
|
|
/* 02238EF0 */ _t12 = cpu->r[12] + 0x00001F28u;
|
|
/* 02238EF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02238EF4 */ _t13 = cpu->r[11] + 0x00001FE8u;
|
|
/* 02238EF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02238EF8 */ cpu->f[1] = cpu->f[13] * cpu->f[0];
|
|
L_02238EFC: ; // 0x2238efc
|
|
/* 02238EFC */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02238F00 */ cpu->lr = cpu->r[0];
|
|
/* 02238F04 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02238F08 */ return;
|
|
}
|
|
|
|
// fn_02238E94 @ 0x2238e94
|
|
void Gambit_fn_02238E94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02238E94: ; // 0x2238e94
|
|
/* 02238E94 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02238E94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238E94 */ cpu->r[1] = _t0;
|
|
/* 02238E98 */ _t1 = cpu->r[5] + 0x00000000u;
|
|
/* 02238E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02238E9C */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02238E9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02238EA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02238EA4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238EA4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02238EA4 */ if (_t4) goto L_02238EA8; else goto L_02238EC0;
|
|
L_02238EA8: ; // 0x2238ea8
|
|
/* 02238EA8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02238EAC */ cpu->r[12] = 0x10050000u;
|
|
/* 02238EB0 */ cpu->lr = cpu->r[0];
|
|
/* 02238EB4 */ _t6 = cpu->r[12] + 0x00001F20u;
|
|
/* 02238EB4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02238EB8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02238EBC */ return;
|
|
L_02238EC0: ; // 0x2238ec0
|
|
/* 02238EC0 */ cpu->r[3] = cpu->r[4];
|
|
/* 02238EC4 */ Gambit_fn_021BCFBC(cpu);
|
|
/* 02238EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02238ECC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238ECC */ _t8 = _t7 & 0x00000001u;
|
|
/* 02238ECC */ if (_t8) goto L_02238EE8; else goto L_02238ED0;
|
|
L_02238ED0: ; // 0x2238ed0
|
|
/* 02238ED0 */ cpu->r[12] = 0x10050000u;
|
|
/* 02238ED4 */ cpu->r[11] = 0x10050000u;
|
|
/* 02238ED8 */ _t9 = cpu->r[12] + 0x00001F24u;
|
|
/* 02238ED8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02238EDC */ _t10 = cpu->r[11] + 0x00001FE8u;
|
|
/* 02238EDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02238EE0 */ cpu->f[1] = cpu->f[13] * cpu->f[0];
|
|
/* 02238EE4 */ goto L_02238EFC;
|
|
L_02238EE8: ; // 0x2238ee8
|
|
/* 02238EE8 */ cpu->r[12] = 0x10050000u;
|
|
/* 02238EEC */ cpu->r[11] = 0x10050000u;
|
|
/* 02238EF0 */ _t11 = cpu->r[12] + 0x00001F28u;
|
|
/* 02238EF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02238EF4 */ _t12 = cpu->r[11] + 0x00001FE8u;
|
|
/* 02238EF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02238EF8 */ cpu->f[1] = cpu->f[13] * cpu->f[0];
|
|
L_02238EFC: ; // 0x2238efc
|
|
/* 02238EFC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02238F00 */ cpu->lr = cpu->r[0];
|
|
/* 02238F04 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02238F08 */ return;
|
|
}
|
|
|
|
// fn_02238F0C @ 0x2238f0c
|
|
void Gambit_fn_02238F0C(CPUState* cpu) {
|
|
L_02238F0C: ; // 0x2238f0c
|
|
/* 02238F0C */ cpu->r[3] = 0x00000000u;
|
|
/* 02238F10 */ return;
|
|
}
|
|
|
|
// fn_02238F14 @ 0x2238f14
|
|
void Gambit_fn_02238F14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02238F14: ; // 0x2238f14
|
|
/* 02238F14 */ cpu->r[0] = cpu->lr;
|
|
/* 02238F18 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02238F18 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02238F1C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02238F1C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02238F1C */ cpu->r[1] = _t1;
|
|
/* 02238F20 */ _t2 = cpu->r[4] + 0x00000168u;
|
|
/* 02238F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02238F24 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000004u, 0x00000004u);
|
|
/* 02238F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02238F28 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238F28 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02238F28 */ if (_t4) goto L_02238F44; else goto L_02238F2C;
|
|
L_02238F2C: ; // 0x2238f2c
|
|
/* 02238F2C */ _t5 = cpu->r[4] + 0x00000044u;
|
|
/* 02238F2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02238F30 */ cpu->r[11] = 0x00000001u;
|
|
/* 02238F34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02238F38 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F38 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02238F3C */ Gambit_fn_02236B20(cpu);
|
|
/* 02238F40 */ goto L_02238F5C;
|
|
L_02238F44: ; // 0x2238f44
|
|
/* 02238F44 */ cpu->r[12] = 0x10050000u;
|
|
/* 02238F48 */ cpu->r[11] = 0x00000001u;
|
|
/* 02238F4C */ _t7 = cpu->r[12] + 0x00001F20u;
|
|
/* 02238F4C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02238F50 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02238F54 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02238F58 */ Gambit_fn_02236B20(cpu);
|
|
L_02238F5C: ; // 0x2238f5c
|
|
/* 02238F5C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02238F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02238F60 */ cpu->lr = cpu->r[0];
|
|
/* 02238F64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02238F68 */ return;
|
|
}
|
|
|
|
// fn_02238F1C @ 0x2238f1c
|
|
void Gambit_fn_02238F1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02238F1C: ; // 0x2238f1c
|
|
/* 02238F1C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02238F1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238F1C */ cpu->r[1] = _t0;
|
|
/* 02238F20 */ _t1 = cpu->r[4] + 0x00000168u;
|
|
/* 02238F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02238F24 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000004u, 0x00000004u);
|
|
/* 02238F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02238F28 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02238F28 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02238F28 */ if (_t3) goto L_02238F44; else goto L_02238F2C;
|
|
L_02238F2C: ; // 0x2238f2c
|
|
/* 02238F2C */ _t4 = cpu->r[4] + 0x00000044u;
|
|
/* 02238F2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02238F30 */ cpu->r[11] = 0x00000001u;
|
|
/* 02238F34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02238F38 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F38 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02238F3C */ Gambit_fn_02236B20(cpu);
|
|
/* 02238F40 */ goto L_02238F5C;
|
|
L_02238F44: ; // 0x2238f44
|
|
/* 02238F44 */ cpu->r[12] = 0x10050000u;
|
|
/* 02238F48 */ cpu->r[11] = 0x00000001u;
|
|
/* 02238F4C */ _t6 = cpu->r[12] + 0x00001F20u;
|
|
/* 02238F4C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02238F50 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02238F54 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F54 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02238F58 */ Gambit_fn_02236B20(cpu);
|
|
L_02238F5C: ; // 0x2238f5c
|
|
/* 02238F5C */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02238F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02238F60 */ cpu->lr = cpu->r[0];
|
|
/* 02238F64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02238F68 */ return;
|
|
}
|
|
|
|
// fn_02238F6C @ 0x2238f6c
|
|
void Gambit_fn_02238F6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02238F6C: ; // 0x2238f6c
|
|
/* 02238F6C */ cpu->r[0] = cpu->lr;
|
|
/* 02238F70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02238F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238F70 */ cpu->r[1] = _t0;
|
|
/* 02238F74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238F74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02238F78 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02238F7C */ cpu->r[30] = cpu->r[5];
|
|
/* 02238F80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02238F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02238F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02238F88 */ Gambit_fn_022366E8(cpu);
|
|
/* 02238F8C */ cpu->r[4] = cpu->r[30];
|
|
/* 02238F90 */ cpu->r[3] = cpu->r[31];
|
|
/* 02238F94 */ Gambit_fn_02238F14(cpu);
|
|
/* 02238F98 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02238F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02238F9C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02238FA0 */ cpu->lr = cpu->r[0];
|
|
/* 02238FA4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02238FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02238FAC */ cpu->r[3] = 0x00000001u;
|
|
/* 02238FB0 */ return;
|
|
}
|
|
|
|
// fn_02238F70 @ 0x2238f70
|
|
void Gambit_fn_02238F70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02238F70: ; // 0x2238f70
|
|
/* 02238F70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02238F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238F70 */ cpu->r[1] = _t0;
|
|
/* 02238F74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238F74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02238F78 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02238F7C */ cpu->r[30] = cpu->r[5];
|
|
/* 02238F80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02238F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02238F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02238F88 */ Gambit_fn_022366E8(cpu);
|
|
/* 02238F8C */ cpu->r[4] = cpu->r[30];
|
|
/* 02238F90 */ cpu->r[3] = cpu->r[31];
|
|
/* 02238F94 */ Gambit_fn_02238F14(cpu);
|
|
/* 02238F98 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02238F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02238F9C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02238F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02238FA0 */ cpu->lr = cpu->r[0];
|
|
/* 02238FA4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02238FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02238FAC */ cpu->r[3] = 0x00000001u;
|
|
/* 02238FB0 */ return;
|
|
}
|
|
|
|
// fn_02238FB4 @ 0x2238fb4
|
|
void Gambit_fn_02238FB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02238FB4: ; // 0x2238fb4
|
|
/* 02238FB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02238FB8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02238FB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02238FBC */ cpu->r[4] = cpu->r[5];
|
|
/* 02238FC0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02238FC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02238FC0 */ cpu->r[1] = _t1;
|
|
/* 02238FC4 */ Gambit_fn_02238F14(cpu);
|
|
/* 02238FC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02238FCC */ cpu->lr = cpu->r[0];
|
|
/* 02238FD0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02238FD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02238FD8 */ return;
|
|
}
|
|
|
|
// fn_02238FC0 @ 0x2238fc0
|
|
void Gambit_fn_02238FC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02238FC0: ; // 0x2238fc0
|
|
/* 02238FC0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02238FC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238FC0 */ cpu->r[1] = _t0;
|
|
/* 02238FC4 */ Gambit_fn_02238F14(cpu);
|
|
/* 02238FC8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02238FCC */ cpu->lr = cpu->r[0];
|
|
/* 02238FD0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02238FD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02238FD8 */ return;
|
|
}
|
|
|
|
// fn_02238FDC @ 0x2238fdc
|
|
void Gambit_fn_02238FDC(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_02238FDC: ; // 0x2238fdc
|
|
/* 02238FDC */ cpu->r[0] = cpu->lr;
|
|
/* 02238FE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02238FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238FE0 */ cpu->r[1] = _t0;
|
|
/* 02238FE4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02238FE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02238FE8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238FE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02238FEC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02238FEC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02238FF0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02238FF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02238FF4 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02238FF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02238FF8 */ _t6 = cpu->r[11] + 0x00000254u;
|
|
/* 02238FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02238FFC */ cpu->ctr = cpu->r[0];
|
|
/* 02239000 */ cpu->r[29] = cpu->r[3];
|
|
/* 02239004 */ cpu->r[30] = cpu->r[4];
|
|
/* 02239008 */ cpu->r[31] = cpu->r[5];
|
|
/* 0223900C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239010 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02239010 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239014 */ _t8 = cpu->r[30] + 0x00000010u;
|
|
/* 02239014 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[11]);
|
|
/* 02239018 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02239018 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223901C */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 0223901C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[8]);
|
|
/* 02239020 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 02239020 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02239024 */ _t12 = cpu->r[30] + 0x00000018u;
|
|
/* 02239024 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 02239028 */ _t13 = cpu->r[29] + 0x00000088u;
|
|
/* 02239028 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223902C */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 0223902C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02239030 */ _t15 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02239030 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02239034 */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 02239034 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 02239038 */ _t17 = cpu->r[29] + 0x00000090u;
|
|
/* 02239038 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0223903C */ cpu->r[12] = 0x10050000u;
|
|
/* 02239040 */ _t18 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02239040 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
/* 02239044 */ _t19 = cpu->r[29] + 0x00000134u;
|
|
/* 02239044 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02239048 */ _t20 = cpu->r[12] + 0x00001F30u;
|
|
/* 02239048 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0223904C */ _t21 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0223904C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 02239050 */ _t22 = cpu->r[29] + 0x00000138u;
|
|
/* 02239050 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02239054 */ cpu->f[9] = fma(cpu->f[12], cpu->f[13], cpu->f[9]);
|
|
/* 02239058 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 02239058 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 0223905C */ _t24 = cpu->r[29] + 0x00000138u;
|
|
/* 0223905C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02239060 */ cpu->f[8] = fma(cpu->f[0], cpu->f[13], cpu->f[8]);
|
|
/* 02239064 */ _t25 = cpu->r[30] + 0x00000014u;
|
|
/* 02239064 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[8]);
|
|
/* 02239068 */ _t26 = cpu->r[29] + 0x00000138u;
|
|
/* 02239068 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223906C */ _t27 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0223906C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02239070 */ cpu->r[12] = 0x10050000u;
|
|
/* 02239074 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[13], -(cpu->f[10]));
|
|
/* 02239078 */ _t28 = cpu->r[12] + 0x00001F20u;
|
|
/* 02239078 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0223907C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 02239080 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239080 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02239080 */ if (_t30) goto L_02239084; else goto L_02239108;
|
|
L_02239084: ; // 0x2239084
|
|
/* 02239084 */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 02239084 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02239088 */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 02239088 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0223908C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 02239090 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239090 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02239090 */ if (_t34) goto L_02239094; else goto L_022390A4;
|
|
L_02239094: ; // 0x2239094
|
|
/* 02239094 */ cpu->f[12] = cpu->f[11] + cpu->f[9];
|
|
/* 02239098 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0223909C */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223909C */ _t36 = _t35 & 0x00000001u;
|
|
/* 0223909C */ if (_t36) goto L_022390B0; else goto L_022390A0;
|
|
L_022390A0: ; // 0x22390a0
|
|
/* 022390A0 */ goto L_022390B4;
|
|
L_022390A4: ; // 0x22390a4
|
|
/* 022390A4 */ cpu->f[12] = cpu->f[11] - cpu->f[9];
|
|
/* 022390A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 022390AC */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022390AC */ _t38 = _t37 & 0x00000001u;
|
|
/* 022390AC */ if (_t38) goto L_022390B0; else goto L_022390B4;
|
|
L_022390B0: ; // 0x22390b0
|
|
/* 022390B0 */ cpu->f[12] = cpu->f[10];
|
|
L_022390B4: ; // 0x22390b4
|
|
/* 022390B4 */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 022390B4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 022390B8 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 022390B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022390BC */ _t41 = cpu->r[30] + 0x00000014u;
|
|
/* 022390BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022390C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022390C4 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022390C4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022390C4 */ if (_t43) goto L_022390C8; else goto L_022390D8;
|
|
L_022390C8: ; // 0x22390c8
|
|
/* 022390C8 */ cpu->f[13] = cpu->f[12] + cpu->f[9];
|
|
/* 022390CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022390D0 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022390D0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022390D0 */ if (_t45) goto L_022390D4; else goto L_022390E4;
|
|
L_022390D4: ; // 0x22390d4
|
|
/* 022390D4 */ goto L_02239104;
|
|
L_022390D8: ; // 0x22390d8
|
|
/* 022390D8 */ cpu->f[13] = cpu->f[12] - cpu->f[9];
|
|
/* 022390DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022390E0 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022390E0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022390E0 */ if (_t47) goto L_02239104; else goto L_022390E4;
|
|
L_022390E4: ; // 0x22390e4
|
|
/* 022390E4 */ _t48 = cpu->r[30] + 0x00000014u;
|
|
/* 022390E4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022390E8 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022390E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022390EC */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022390EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022390F0 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 022390F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022390F4 */ cpu->lr = cpu->r[0];
|
|
/* 022390F8 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022390F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022390FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02239100 */ return;
|
|
L_02239104: ; // 0x2239104
|
|
/* 02239104 */ _t53 = cpu->r[30] + 0x00000014u;
|
|
/* 02239104 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
L_02239108: ; // 0x2239108
|
|
/* 02239108 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239108 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223910C */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223910C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02239110 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 02239110 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02239114 */ cpu->lr = cpu->r[0];
|
|
/* 02239118 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02239118 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0223911C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02239120 */ return;
|
|
}
|
|
|
|
// fn_02238FE0 @ 0x2238fe0
|
|
void Gambit_fn_02238FE0(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_02238FE0: ; // 0x2238fe0
|
|
/* 02238FE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02238FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02238FE0 */ cpu->r[1] = _t0;
|
|
/* 02238FE4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02238FE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02238FE8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02238FE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02238FEC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02238FEC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02238FF0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02238FF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02238FF4 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02238FF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02238FF8 */ _t6 = cpu->r[11] + 0x00000254u;
|
|
/* 02238FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02238FFC */ cpu->ctr = cpu->r[0];
|
|
/* 02239000 */ cpu->r[29] = cpu->r[3];
|
|
/* 02239004 */ cpu->r[30] = cpu->r[4];
|
|
/* 02239008 */ cpu->r[31] = cpu->r[5];
|
|
/* 0223900C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239010 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02239010 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239014 */ _t8 = cpu->r[30] + 0x00000010u;
|
|
/* 02239014 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[11]);
|
|
/* 02239018 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02239018 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223901C */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 0223901C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[8]);
|
|
/* 02239020 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 02239020 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02239024 */ _t12 = cpu->r[30] + 0x00000018u;
|
|
/* 02239024 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 02239028 */ _t13 = cpu->r[29] + 0x00000088u;
|
|
/* 02239028 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223902C */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 0223902C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02239030 */ _t15 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02239030 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02239034 */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 02239034 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 02239038 */ _t17 = cpu->r[29] + 0x00000090u;
|
|
/* 02239038 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0223903C */ cpu->r[12] = 0x10050000u;
|
|
/* 02239040 */ _t18 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02239040 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
/* 02239044 */ _t19 = cpu->r[29] + 0x00000134u;
|
|
/* 02239044 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02239048 */ _t20 = cpu->r[12] + 0x00001F30u;
|
|
/* 02239048 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0223904C */ _t21 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0223904C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 02239050 */ _t22 = cpu->r[29] + 0x00000138u;
|
|
/* 02239050 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02239054 */ cpu->f[9] = fma(cpu->f[12], cpu->f[13], cpu->f[9]);
|
|
/* 02239058 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 02239058 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 0223905C */ _t24 = cpu->r[29] + 0x00000138u;
|
|
/* 0223905C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02239060 */ cpu->f[8] = fma(cpu->f[0], cpu->f[13], cpu->f[8]);
|
|
/* 02239064 */ _t25 = cpu->r[30] + 0x00000014u;
|
|
/* 02239064 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[8]);
|
|
/* 02239068 */ _t26 = cpu->r[29] + 0x00000138u;
|
|
/* 02239068 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223906C */ _t27 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0223906C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02239070 */ cpu->r[12] = 0x10050000u;
|
|
/* 02239074 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[13], -(cpu->f[10]));
|
|
/* 02239078 */ _t28 = cpu->r[12] + 0x00001F20u;
|
|
/* 02239078 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0223907C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 02239080 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239080 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02239080 */ if (_t30) goto L_02239084; else goto L_02239108;
|
|
L_02239084: ; // 0x2239084
|
|
/* 02239084 */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 02239084 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02239088 */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 02239088 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0223908C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 02239090 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239090 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02239090 */ if (_t34) goto L_02239094; else goto L_022390A4;
|
|
L_02239094: ; // 0x2239094
|
|
/* 02239094 */ cpu->f[12] = cpu->f[11] + cpu->f[9];
|
|
/* 02239098 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0223909C */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223909C */ _t36 = _t35 & 0x00000001u;
|
|
/* 0223909C */ if (_t36) goto L_022390B0; else goto L_022390A0;
|
|
L_022390A0: ; // 0x22390a0
|
|
/* 022390A0 */ goto L_022390B4;
|
|
L_022390A4: ; // 0x22390a4
|
|
/* 022390A4 */ cpu->f[12] = cpu->f[11] - cpu->f[9];
|
|
/* 022390A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 022390AC */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022390AC */ _t38 = _t37 & 0x00000001u;
|
|
/* 022390AC */ if (_t38) goto L_022390B0; else goto L_022390B4;
|
|
L_022390B0: ; // 0x22390b0
|
|
/* 022390B0 */ cpu->f[12] = cpu->f[10];
|
|
L_022390B4: ; // 0x22390b4
|
|
/* 022390B4 */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 022390B4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 022390B8 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 022390B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022390BC */ _t41 = cpu->r[30] + 0x00000014u;
|
|
/* 022390BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022390C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022390C4 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022390C4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022390C4 */ if (_t43) goto L_022390C8; else goto L_022390D8;
|
|
L_022390C8: ; // 0x22390c8
|
|
/* 022390C8 */ cpu->f[13] = cpu->f[12] + cpu->f[9];
|
|
/* 022390CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022390D0 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022390D0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022390D0 */ if (_t45) goto L_022390D4; else goto L_022390E4;
|
|
L_022390D4: ; // 0x22390d4
|
|
/* 022390D4 */ goto L_02239104;
|
|
L_022390D8: ; // 0x22390d8
|
|
/* 022390D8 */ cpu->f[13] = cpu->f[12] - cpu->f[9];
|
|
/* 022390DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022390E0 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022390E0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022390E0 */ if (_t47) goto L_02239104; else goto L_022390E4;
|
|
L_022390E4: ; // 0x22390e4
|
|
/* 022390E4 */ _t48 = cpu->r[30] + 0x00000014u;
|
|
/* 022390E4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022390E8 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022390E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022390EC */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022390EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022390F0 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 022390F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022390F4 */ cpu->lr = cpu->r[0];
|
|
/* 022390F8 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022390F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022390FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02239100 */ return;
|
|
L_02239104: ; // 0x2239104
|
|
/* 02239104 */ _t53 = cpu->r[30] + 0x00000014u;
|
|
/* 02239104 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
L_02239108: ; // 0x2239108
|
|
/* 02239108 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239108 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223910C */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223910C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02239110 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 02239110 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02239114 */ cpu->lr = cpu->r[0];
|
|
/* 02239118 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02239118 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0223911C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02239120 */ return;
|
|
}
|
|
|
|
// fn_02239124 @ 0x2239124
|
|
void Gambit_fn_02239124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02239124: ; // 0x2239124
|
|
/* 02239124 */ cpu->r[0] = cpu->lr;
|
|
/* 02239128 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02239128 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0223912C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0223912C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0223912C */ cpu->r[1] = _t1;
|
|
/* 02239130 */ _t2 = cpu->r[3] + 0x00000060u;
|
|
/* 02239130 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02239134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02239138 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239138 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02239138 */ if (_t4) goto L_02239180; else goto L_0223913C;
|
|
L_0223913C: ; // 0x223913c
|
|
/* 0223913C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02239140 */ _t5 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 02239140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02239140 */ cpu->r[9] = _t5;
|
|
/* 02239144 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02239148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223914C */ cpu->r[4] = cpu->r[4] + 0xFFFFFBC4u;
|
|
/* 02239150 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239150 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02239150 */ if (_t7) goto L_02239154; else goto L_02239168;
|
|
L_02239154: ; // 0x2239154
|
|
/* 02239154 */ cpu->r[0] = 0x10050000u;
|
|
/* 02239158 */ cpu->r[12] = 0x00000001u;
|
|
/* 0223915C */ cpu->r[0] = cpu->r[0] + 0x00001EC0u;
|
|
/* 02239160 */ _t8 = cpu->r[9] + 0x00000000u;
|
|
/* 02239160 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02239164 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 02239164 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_02239168: ; // 0x2239168
|
|
/* 02239168 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02239168 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223916C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0223916C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02239170 */ cpu->ctr = cpu->r[10];
|
|
/* 02239174 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223917C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223917C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223917C */ if (_t13) goto L_02239194; else goto L_02239180;
|
|
L_02239180: ; // 0x2239180
|
|
/* 02239180 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02239184 */ cpu->lr = cpu->r[0];
|
|
/* 02239188 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0223918C */ cpu->r[3] = 0x00000000u;
|
|
/* 02239190 */ return;
|
|
L_02239194: ; // 0x2239194
|
|
/* 02239194 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02239198 */ cpu->lr = cpu->r[0];
|
|
/* 0223919C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022391A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022391A4 */ return;
|
|
}
|
|
|
|
// fn_0223912C @ 0x223912c
|
|
void Gambit_fn_0223912C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0223912C: ; // 0x223912c
|
|
/* 0223912C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0223912C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223912C */ cpu->r[1] = _t0;
|
|
/* 02239130 */ _t1 = cpu->r[3] + 0x00000060u;
|
|
/* 02239130 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02239134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02239138 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239138 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02239138 */ if (_t3) goto L_02239180; else goto L_0223913C;
|
|
L_0223913C: ; // 0x223913c
|
|
/* 0223913C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02239140 */ _t4 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 02239140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02239140 */ cpu->r[9] = _t4;
|
|
/* 02239144 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02239148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223914C */ cpu->r[4] = cpu->r[4] + 0xFFFFFBC4u;
|
|
/* 02239150 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239150 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02239150 */ if (_t6) goto L_02239154; else goto L_02239168;
|
|
L_02239154: ; // 0x2239154
|
|
/* 02239154 */ cpu->r[0] = 0x10050000u;
|
|
/* 02239158 */ cpu->r[12] = 0x00000001u;
|
|
/* 0223915C */ cpu->r[0] = cpu->r[0] + 0x00001EC0u;
|
|
/* 02239160 */ _t7 = cpu->r[9] + 0x00000000u;
|
|
/* 02239160 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02239164 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 02239164 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02239168: ; // 0x2239168
|
|
/* 02239168 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02239168 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223916C */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 0223916C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02239170 */ cpu->ctr = cpu->r[10];
|
|
/* 02239174 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223917C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223917C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0223917C */ if (_t12) goto L_02239194; else goto L_02239180;
|
|
L_02239180: ; // 0x2239180
|
|
/* 02239180 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02239184 */ cpu->lr = cpu->r[0];
|
|
/* 02239188 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0223918C */ cpu->r[3] = 0x00000000u;
|
|
/* 02239190 */ return;
|
|
L_02239194: ; // 0x2239194
|
|
/* 02239194 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02239198 */ cpu->lr = cpu->r[0];
|
|
/* 0223919C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022391A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022391A4 */ return;
|
|
}
|
|
|
|
// fn_022391A8 @ 0x22391a8
|
|
void Gambit_fn_022391A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022391A8: ; // 0x22391a8
|
|
/* 022391A8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022391A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022391AC */ _t1 = cpu->r[12] + 0x0000037Cu;
|
|
/* 022391AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022391B0 */ cpu->ctr = cpu->r[0];
|
|
/* 022391B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022391B8 @ 0x22391b8
|
|
void Gambit_fn_022391B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_022391B8: ; // 0x22391b8
|
|
/* 022391B8 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 022391B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022391BC */ _t1 = cpu->r[3] + 0x00000184u;
|
|
/* 022391BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022391C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 022391C4 */ _t2 = cpu->r[3] + 0x00000178u;
|
|
/* 022391C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 022391C8 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022391C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022391CC */ _t4 = rbrew_rlwinm(cpu->r[0], 0x0000000Eu, 0x00000010u, 0x00000011u);
|
|
/* 022391CC */ _t5 = cpu->r[12] & 0xFFFF3FFFu;
|
|
/* 022391CC */ cpu->r[12] = _t5 | _t4;
|
|
/* 022391D0 */ _t6 = cpu->r[3] + 0x0000017Cu;
|
|
/* 022391D0 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 022391D4 */ _t7 = cpu->r[4] + 0x00000008u;
|
|
/* 022391D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022391D8 */ _t8 = cpu->r[3] + 0x00000184u;
|
|
/* 022391D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022391DC */ _t9 = cpu->r[3] + 0x00000180u;
|
|
/* 022391DC */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 022391E0 */ return;
|
|
}
|
|
|
|
// fn_022391E4 @ 0x22391e4
|
|
void Gambit_fn_022391E4(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;
|
|
|
|
L_022391E4: ; // 0x22391e4
|
|
/* 022391E4 */ cpu->r[0] = cpu->lr;
|
|
/* 022391E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022391E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022391E8 */ cpu->r[1] = _t0;
|
|
/* 022391EC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022391EC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022391F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022391F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022391F4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022391F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022391F8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022391F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022391FC */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 022391FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02239200 */ cpu->ctr = cpu->r[0];
|
|
/* 02239204 */ cpu->r[31] = cpu->r[4];
|
|
/* 02239208 */ cpu->r[30] = cpu->r[3];
|
|
/* 0223920C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239210 */ _t6 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02239210 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02239214 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02239214 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239218 */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 0223921C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0223921C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02239220 */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02239224 */ _t9 = cpu->r[30] + 0x00000134u;
|
|
/* 02239224 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239228 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0223922C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223922C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223922C */ if (_t11) goto L_02239230; else goto L_02239250;
|
|
L_02239230: ; // 0x2239230
|
|
/* 02239230 */ cpu->r[3] = cpu->r[30];
|
|
/* 02239234 */ Gambit_fn_02790488(cpu);
|
|
/* 02239238 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223923C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0223923C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02239240 */ cpu->lr = cpu->r[0];
|
|
/* 02239244 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02239244 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02239248 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223924C */ return;
|
|
L_02239250: ; // 0x2239250
|
|
/* 02239250 */ cpu->f[13] = cpu->f[0] + cpu->f[0];
|
|
/* 02239254 */ cpu->f[13] = cpu->f[13] - cpu->f[11];
|
|
/* 02239258 */ _t15 = cpu->r[30] + 0x00000138u;
|
|
/* 02239258 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0223925C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02239260 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239260 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02239260 */ if (_t17) goto L_02239264; else goto L_02239268;
|
|
L_02239264: ; // 0x2239264
|
|
/* 02239264 */ cpu->f[13] = cpu->f[0];
|
|
L_02239268: ; // 0x2239268
|
|
/* 02239268 */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 0223926C */ _t18 = cpu->r[30] + 0x00000138u;
|
|
/* 0223926C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02239270 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 02239274 */ /* nop */
|
|
/* 02239278 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02239278 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223927C */ cpu->r[3] = cpu->r[30];
|
|
/* 02239280 */ Gambit_fn_0223657C(cpu);
|
|
/* 02239284 */ _t20 = cpu->r[30] + 0x00000004u;
|
|
/* 02239284 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02239288 */ _t21 = cpu->r[12] + 0x0000027Cu;
|
|
/* 02239288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223928C */ cpu->ctr = cpu->r[0];
|
|
/* 02239290 */ cpu->r[4] = cpu->r[31];
|
|
/* 02239294 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239298 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223929C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0223929C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022392A0 */ cpu->lr = cpu->r[0];
|
|
/* 022392A4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022392A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022392A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022392AC */ return;
|
|
}
|
|
|
|
// fn_022391E8 @ 0x22391e8
|
|
void Gambit_fn_022391E8(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;
|
|
|
|
L_022391E8: ; // 0x22391e8
|
|
/* 022391E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022391E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022391E8 */ cpu->r[1] = _t0;
|
|
/* 022391EC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022391EC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022391F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022391F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022391F4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022391F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022391F8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022391F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022391FC */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 022391FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02239200 */ cpu->ctr = cpu->r[0];
|
|
/* 02239204 */ cpu->r[31] = cpu->r[4];
|
|
/* 02239208 */ cpu->r[30] = cpu->r[3];
|
|
/* 0223920C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239210 */ _t6 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02239210 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02239214 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02239214 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239218 */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 0223921C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0223921C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02239220 */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02239224 */ _t9 = cpu->r[30] + 0x00000134u;
|
|
/* 02239224 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239228 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0223922C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223922C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223922C */ if (_t11) goto L_02239230; else goto L_02239250;
|
|
L_02239230: ; // 0x2239230
|
|
/* 02239230 */ cpu->r[3] = cpu->r[30];
|
|
/* 02239234 */ Gambit_fn_02790488(cpu);
|
|
/* 02239238 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223923C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0223923C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02239240 */ cpu->lr = cpu->r[0];
|
|
/* 02239244 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02239244 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02239248 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223924C */ return;
|
|
L_02239250: ; // 0x2239250
|
|
/* 02239250 */ cpu->f[13] = cpu->f[0] + cpu->f[0];
|
|
/* 02239254 */ cpu->f[13] = cpu->f[13] - cpu->f[11];
|
|
/* 02239258 */ _t15 = cpu->r[30] + 0x00000138u;
|
|
/* 02239258 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0223925C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02239260 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239260 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02239260 */ if (_t17) goto L_02239264; else goto L_02239268;
|
|
L_02239264: ; // 0x2239264
|
|
/* 02239264 */ cpu->f[13] = cpu->f[0];
|
|
L_02239268: ; // 0x2239268
|
|
/* 02239268 */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 0223926C */ _t18 = cpu->r[30] + 0x00000138u;
|
|
/* 0223926C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02239270 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 02239274 */ /* nop */
|
|
/* 02239278 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02239278 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223927C */ cpu->r[3] = cpu->r[30];
|
|
/* 02239280 */ Gambit_fn_0223657C(cpu);
|
|
/* 02239284 */ _t20 = cpu->r[30] + 0x00000004u;
|
|
/* 02239284 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02239288 */ _t21 = cpu->r[12] + 0x0000027Cu;
|
|
/* 02239288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223928C */ cpu->ctr = cpu->r[0];
|
|
/* 02239290 */ cpu->r[4] = cpu->r[31];
|
|
/* 02239294 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239298 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223929C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0223929C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022392A0 */ cpu->lr = cpu->r[0];
|
|
/* 022392A4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022392A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022392A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022392AC */ return;
|
|
}
|
|
|
|
// fn_022392B0 @ 0x22392b0
|
|
void Gambit_fn_022392B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022392B0: ; // 0x22392b0
|
|
/* 022392B0 */ cpu->r[0] = cpu->lr;
|
|
/* 022392B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022392B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022392B4 */ cpu->r[1] = _t0;
|
|
/* 022392B8 */ cpu->r[11] = cpu->r[5];
|
|
/* 022392BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022392BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022392C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022392C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000000Fu);
|
|
/* 022392C8 */ cpu->r[8] = cpu->r[7];
|
|
/* 022392CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022392CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022392D0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022392D0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022392D0 */ if (_t4) goto L_02239318; else goto L_022392D4;
|
|
L_022392D4: ; // 0x22392d4
|
|
/* 022392D4 */ _t5 = cpu->r[31] + 0x00000184u;
|
|
/* 022392D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022392D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000010u, 0x00000011u);
|
|
/* 022392D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022392DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022392DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022392DC */ if (_t7) goto L_02239318; else goto L_022392E0;
|
|
L_022392E0: ; // 0x22392e0
|
|
/* 022392E0 */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 022392E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022392E4 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 022392E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022392E8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022392E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022392EC */ _t11 = cpu->r[12] + 0x00000274u;
|
|
/* 022392EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022392F0 */ cpu->ctr = cpu->r[9];
|
|
/* 022392F4 */ cpu->r[6] = cpu->r[11];
|
|
/* 022392F8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022392FC */ cpu->r[5] = cpu->r[31] + 0x000000C4u;
|
|
/* 02239300 */ cpu->r[3] = cpu->r[31];
|
|
/* 02239304 */ cpu->r[4] = cpu->r[31] + 0x00000178u;
|
|
/* 02239308 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223930C */ _t12 = cpu->r[31] + 0x00000184u;
|
|
/* 0223930C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02239310 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000012u, 0x0000000Fu);
|
|
/* 02239314 */ _t13 = cpu->r[31] + 0x00000184u;
|
|
/* 02239314 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
L_02239318: ; // 0x2239318
|
|
/* 02239318 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02239318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223931C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223931C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02239320 */ cpu->lr = cpu->r[0];
|
|
/* 02239324 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02239328 */ return;
|
|
}
|
|
|
|
// fn_022392B4 @ 0x22392b4
|
|
void Gambit_fn_022392B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022392B4: ; // 0x22392b4
|
|
/* 022392B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022392B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022392B4 */ cpu->r[1] = _t0;
|
|
/* 022392B8 */ cpu->r[11] = cpu->r[5];
|
|
/* 022392BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022392BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022392C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022392C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000000Fu);
|
|
/* 022392C8 */ cpu->r[8] = cpu->r[7];
|
|
/* 022392CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022392CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022392D0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022392D0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022392D0 */ if (_t4) goto L_02239318; else goto L_022392D4;
|
|
L_022392D4: ; // 0x22392d4
|
|
/* 022392D4 */ _t5 = cpu->r[31] + 0x00000184u;
|
|
/* 022392D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022392D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000010u, 0x00000011u);
|
|
/* 022392D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022392DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022392DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022392DC */ if (_t7) goto L_02239318; else goto L_022392E0;
|
|
L_022392E0: ; // 0x22392e0
|
|
/* 022392E0 */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 022392E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022392E4 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 022392E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022392E8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022392E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022392EC */ _t11 = cpu->r[12] + 0x00000274u;
|
|
/* 022392EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022392F0 */ cpu->ctr = cpu->r[9];
|
|
/* 022392F4 */ cpu->r[6] = cpu->r[11];
|
|
/* 022392F8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022392FC */ cpu->r[5] = cpu->r[31] + 0x000000C4u;
|
|
/* 02239300 */ cpu->r[3] = cpu->r[31];
|
|
/* 02239304 */ cpu->r[4] = cpu->r[31] + 0x00000178u;
|
|
/* 02239308 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223930C */ _t12 = cpu->r[31] + 0x00000184u;
|
|
/* 0223930C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02239310 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000012u, 0x0000000Fu);
|
|
/* 02239314 */ _t13 = cpu->r[31] + 0x00000184u;
|
|
/* 02239314 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
L_02239318: ; // 0x2239318
|
|
/* 02239318 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02239318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223931C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223931C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02239320 */ cpu->lr = cpu->r[0];
|
|
/* 02239324 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02239328 */ return;
|
|
}
|
|
|
|
// fn_0223932C @ 0x223932c
|
|
void Gambit_fn_0223932C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0223932C: ; // 0x223932c
|
|
/* 0223932C */ _t0 = cpu->r[3] + 0x00000184u;
|
|
/* 0223932C */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02239330 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000016u, 0x00000017u);
|
|
/* 02239330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02239334 */ _t1 = cpu->r[4] + 0x00000002u;
|
|
/* 02239334 */ cpu->r[0] = rbrew_read16(cpu->mem, _t1);
|
|
/* 02239338 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239338 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02239338 */ if (_t3) goto L_0223933C; else goto L_02239360;
|
|
L_0223933C: ; // 0x223933c
|
|
/* 0223933C */ cpu->r[10] = 0x00000002u;
|
|
/* 02239340 */ _t4 = cpu->r[3] + 0x00000064u;
|
|
/* 02239340 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 02239344 */ _t5 = rbrew_rlwinm(cpu->r[10], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 02239344 */ _t6 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 02239344 */ cpu->r[0] = _t6 | _t5;
|
|
/* 02239348 */ cpu->r[12] = cpu->r[0] & 0x0000FEFFu;
|
|
/* 02239348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223934C */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 0223934C */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[11]);
|
|
/* 02239350 */ cpu->r[0] = 0x00000000u;
|
|
/* 02239354 */ _t8 = cpu->r[4] + 0x00000002u;
|
|
/* 02239354 */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[12]);
|
|
/* 02239358 */ _t9 = cpu->r[4] + 0x00000003u;
|
|
/* 02239358 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0223935C */ return;
|
|
L_02239360: ; // 0x2239360
|
|
/* 02239360 */ cpu->r[10] = 0x00000003u;
|
|
/* 02239364 */ cpu->r[12] = 0x00000005u;
|
|
/* 02239368 */ _t10 = rbrew_rlwinm(cpu->r[10], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 02239368 */ _t11 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 02239368 */ cpu->r[0] = _t11 | _t10;
|
|
/* 0223936C */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 0223936C */ rbrew_write16(cpu->mem, _t12, (uint16_t)cpu->r[12]);
|
|
/* 02239370 */ _t13 = cpu->r[4] + 0x00000002u;
|
|
/* 02239370 */ rbrew_write16(cpu->mem, _t13, (uint16_t)cpu->r[0]);
|
|
/* 02239374 */ return;
|
|
}
|
|
|
|
// fn_02239378 @ 0x2239378
|
|
void Gambit_fn_02239378(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;
|
|
|
|
L_02239378: ; // 0x2239378
|
|
/* 02239378 */ cpu->r[0] = cpu->lr;
|
|
/* 0223937C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0223937C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223937C */ cpu->r[1] = _t0;
|
|
/* 02239380 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02239380 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02239384 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02239384 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02239388 */ cpu->r[31] = cpu->r[6];
|
|
/* 0223938C */ cpu->r[30] = cpu->r[5];
|
|
/* 02239390 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 02239390 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02239394 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 02239394 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02239398 */ cpu->r[29] = cpu->r[3];
|
|
/* 0223939C */ Gambit_fn_021BC7D8(cpu);
|
|
/* 022393A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022393A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022393A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022393A4 */ if (_t6) goto L_022393A8; else goto L_022394D4;
|
|
L_022393A8: ; // 0x22393a8
|
|
/* 022393A8 */ cpu->r[11] = 0x10050000u;
|
|
/* 022393AC */ _t7 = cpu->r[29] + 0x00000004u;
|
|
/* 022393AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022393B0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022393B4 */ _t8 = cpu->r[11] + 0x00001F20u;
|
|
/* 022393B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022393B8 */ _t9 = cpu->r[10] + 0x00003858u;
|
|
/* 022393B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022393B8 */ cpu->r[10] = _t9;
|
|
/* 022393BC */ _t10 = cpu->r[10] + 0x00000008u;
|
|
/* 022393BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022393C0 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022393C4 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 022393C4 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 022393C8 */ cpu->r[3] = cpu->r[3] + 0x00003840u;
|
|
/* 022393CC */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 022393CC */ rbrew_write32(cpu->mem, _t12, cpu->r[8]);
|
|
/* 022393D0 */ cpu->r[6] = 0x10110000u;
|
|
/* 022393D4 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 022393D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022393D8 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 022393D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022393DC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022393DC */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 022393E0 */ cpu->r[6] = cpu->r[6] + 0xFFFFEEECu;
|
|
/* 022393E4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022393E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 022393E8 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022393E8 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
/* 022393EC */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 022393EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022393F0 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 022393F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022393F4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022393F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 022393F8 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022393F8 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 022393FC */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 022393FC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02239400 */ _t23 = cpu->r[9] + 0x00000254u;
|
|
/* 02239400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02239404 */ cpu->ctr = cpu->r[0];
|
|
/* 02239408 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223940C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239410 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02239410 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02239414 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02239418 */ _t25 = cpu->r[29] + 0x00000138u;
|
|
/* 02239418 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223941C */ cpu->r[12] = cpu->r[12] + 0x00006350u;
|
|
/* 02239420 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239420 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02239424 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02239424 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02239428 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223942C */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0223942C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 02239430 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02239430 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02239434 */ /* nop */
|
|
/* 02239438 */ _t30 = cpu->r[8] + 0x00001F5Cu;
|
|
/* 02239438 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223943C */ _t31 = cpu->r[12] + 0x00000008u;
|
|
/* 0223943C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02239440 */ /* nop */
|
|
/* 02239444 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02239444 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02239448 */ cpu->f[11] = -cpu->f[12];
|
|
/* 0223944C */ /* nop */
|
|
/* 02239450 */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 02239450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02239454 */ _t34 = cpu->r[29] + 0x0000012Cu;
|
|
/* 02239454 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02239458 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 02239458 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 0223945C */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 0223945C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02239460 */ cpu->f[0] = cpu->f[12] + cpu->f[12];
|
|
/* 02239464 */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239464 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02239468 */ cpu->f[11] = cpu->f[9] + cpu->f[12];
|
|
/* 0223946C */ _t38 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223946C */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02239470 */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02239470 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02239474 */ _t40 = cpu->r[1] + 0x00000038u;
|
|
/* 02239474 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 02239478 */ _t41 = cpu->r[1] + 0x00000038u;
|
|
/* 02239478 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0223947C */ cpu->f[9] = cpu->f[0] - cpu->f[10];
|
|
/* 02239480 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 02239480 */ rbrew_write32(cpu->mem, _t42, cpu->r[12]);
|
|
/* 02239484 */ _t43 = cpu->r[1] + 0x00000034u;
|
|
/* 02239484 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02239488 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0223948C */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 0223948C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 02239490 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 02239490 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[9]);
|
|
/* 02239494 */ cpu->r[4] = cpu->r[30];
|
|
/* 02239498 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239498 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[8]);
|
|
/* 0223949C */ cpu->r[5] = cpu->r[31];
|
|
/* 022394A0 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 022394A0 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[11]);
|
|
/* 022394A4 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 022394A4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022394A8 */ Gambit_fn_027DDD78(cpu);
|
|
/* 022394AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022394B0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022394B0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022394B0 */ if (_t50) goto L_022394D4; else goto L_022394B4;
|
|
L_022394B4: ; // 0x22394b4
|
|
/* 022394B4 */ _t51 = cpu->r[1] + 0x00000044u;
|
|
/* 022394B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022394B8 */ _t52 = cpu->r[1] + 0x00000054u;
|
|
/* 022394B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022394BC */ _t53 = cpu->r[1] + 0x00000048u;
|
|
/* 022394BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022394C0 */ cpu->lr = cpu->r[0];
|
|
/* 022394C4 */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022394C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022394C8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022394CC */ cpu->r[3] = 0x00000001u;
|
|
/* 022394D0 */ return;
|
|
L_022394D4: ; // 0x22394d4
|
|
/* 022394D4 */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 022394D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022394D8 */ _t56 = cpu->r[1] + 0x00000054u;
|
|
/* 022394D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022394DC */ _t57 = cpu->r[1] + 0x00000048u;
|
|
/* 022394DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022394E0 */ cpu->lr = cpu->r[0];
|
|
/* 022394E4 */ _t58 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022394E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022394E8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022394EC */ cpu->r[3] = 0x00000000u;
|
|
/* 022394F0 */ return;
|
|
}
|
|
|
|
// fn_0223937C @ 0x223937c
|
|
void Gambit_fn_0223937C(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;
|
|
|
|
L_0223937C: ; // 0x223937c
|
|
/* 0223937C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0223937C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223937C */ cpu->r[1] = _t0;
|
|
/* 02239380 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02239380 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02239384 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02239384 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02239388 */ cpu->r[31] = cpu->r[6];
|
|
/* 0223938C */ cpu->r[30] = cpu->r[5];
|
|
/* 02239390 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 02239390 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02239394 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 02239394 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02239398 */ cpu->r[29] = cpu->r[3];
|
|
/* 0223939C */ Gambit_fn_021BC7D8(cpu);
|
|
/* 022393A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022393A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022393A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022393A4 */ if (_t6) goto L_022393A8; else goto L_022394D4;
|
|
L_022393A8: ; // 0x22393a8
|
|
/* 022393A8 */ cpu->r[11] = 0x10050000u;
|
|
/* 022393AC */ _t7 = cpu->r[29] + 0x00000004u;
|
|
/* 022393AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022393B0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022393B4 */ _t8 = cpu->r[11] + 0x00001F20u;
|
|
/* 022393B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022393B8 */ _t9 = cpu->r[10] + 0x00003858u;
|
|
/* 022393B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022393B8 */ cpu->r[10] = _t9;
|
|
/* 022393BC */ _t10 = cpu->r[10] + 0x00000008u;
|
|
/* 022393BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022393C0 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022393C4 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 022393C4 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 022393C8 */ cpu->r[3] = cpu->r[3] + 0x00003840u;
|
|
/* 022393CC */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 022393CC */ rbrew_write32(cpu->mem, _t12, cpu->r[8]);
|
|
/* 022393D0 */ cpu->r[6] = 0x10110000u;
|
|
/* 022393D4 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 022393D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022393D8 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 022393D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022393DC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022393DC */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 022393E0 */ cpu->r[6] = cpu->r[6] + 0xFFFFEEECu;
|
|
/* 022393E4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022393E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 022393E8 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022393E8 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
/* 022393EC */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 022393EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022393F0 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 022393F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022393F4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022393F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 022393F8 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022393F8 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 022393FC */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 022393FC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02239400 */ _t23 = cpu->r[9] + 0x00000254u;
|
|
/* 02239400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02239404 */ cpu->ctr = cpu->r[0];
|
|
/* 02239408 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223940C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239410 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02239410 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02239414 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02239418 */ _t25 = cpu->r[29] + 0x00000138u;
|
|
/* 02239418 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223941C */ cpu->r[12] = cpu->r[12] + 0x00006350u;
|
|
/* 02239420 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239420 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02239424 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02239424 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02239428 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223942C */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0223942C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 02239430 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02239430 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02239434 */ /* nop */
|
|
/* 02239438 */ _t30 = cpu->r[8] + 0x00001F5Cu;
|
|
/* 02239438 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223943C */ _t31 = cpu->r[12] + 0x00000008u;
|
|
/* 0223943C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02239440 */ /* nop */
|
|
/* 02239444 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02239444 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02239448 */ cpu->f[11] = -cpu->f[12];
|
|
/* 0223944C */ /* nop */
|
|
/* 02239450 */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 02239450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02239454 */ _t34 = cpu->r[29] + 0x0000012Cu;
|
|
/* 02239454 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02239458 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 02239458 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 0223945C */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 0223945C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02239460 */ cpu->f[0] = cpu->f[12] + cpu->f[12];
|
|
/* 02239464 */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239464 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02239468 */ cpu->f[11] = cpu->f[9] + cpu->f[12];
|
|
/* 0223946C */ _t38 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223946C */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02239470 */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02239470 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02239474 */ _t40 = cpu->r[1] + 0x00000038u;
|
|
/* 02239474 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 02239478 */ _t41 = cpu->r[1] + 0x00000038u;
|
|
/* 02239478 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0223947C */ cpu->f[9] = cpu->f[0] - cpu->f[10];
|
|
/* 02239480 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 02239480 */ rbrew_write32(cpu->mem, _t42, cpu->r[12]);
|
|
/* 02239484 */ _t43 = cpu->r[1] + 0x00000034u;
|
|
/* 02239484 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02239488 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0223948C */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 0223948C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 02239490 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 02239490 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[9]);
|
|
/* 02239494 */ cpu->r[4] = cpu->r[30];
|
|
/* 02239498 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239498 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[8]);
|
|
/* 0223949C */ cpu->r[5] = cpu->r[31];
|
|
/* 022394A0 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 022394A0 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[11]);
|
|
/* 022394A4 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 022394A4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022394A8 */ Gambit_fn_027DDD78(cpu);
|
|
/* 022394AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022394B0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022394B0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022394B0 */ if (_t50) goto L_022394D4; else goto L_022394B4;
|
|
L_022394B4: ; // 0x22394b4
|
|
/* 022394B4 */ _t51 = cpu->r[1] + 0x00000044u;
|
|
/* 022394B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022394B8 */ _t52 = cpu->r[1] + 0x00000054u;
|
|
/* 022394B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022394BC */ _t53 = cpu->r[1] + 0x00000048u;
|
|
/* 022394BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022394C0 */ cpu->lr = cpu->r[0];
|
|
/* 022394C4 */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022394C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022394C8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022394CC */ cpu->r[3] = 0x00000001u;
|
|
/* 022394D0 */ return;
|
|
L_022394D4: ; // 0x22394d4
|
|
/* 022394D4 */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 022394D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022394D8 */ _t56 = cpu->r[1] + 0x00000054u;
|
|
/* 022394D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022394DC */ _t57 = cpu->r[1] + 0x00000048u;
|
|
/* 022394DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022394E0 */ cpu->lr = cpu->r[0];
|
|
/* 022394E4 */ _t58 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022394E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022394E8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022394EC */ cpu->r[3] = 0x00000000u;
|
|
/* 022394F0 */ return;
|
|
}
|
|
|
|
// fn_022394F4 @ 0x22394f4
|
|
void Gambit_fn_022394F4(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, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55;
|
|
double _ft33, _ft34;
|
|
|
|
L_022394F4: ; // 0x22394f4
|
|
/* 022394F4 */ cpu->r[0] = cpu->lr;
|
|
/* 022394F8 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022394F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022394F8 */ cpu->r[1] = _t0;
|
|
/* 022394FC */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022394FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02239500 */ cpu->r[31] = cpu->r[3];
|
|
/* 02239504 */ _t2 = cpu->r[1] + 0x000000A4u;
|
|
/* 02239504 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02239508 */ _t3 = cpu->r[31] + 0x00000184u;
|
|
/* 02239508 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223950C */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223950C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02239510 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239510 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02239510 */ if (_t5) goto L_02239670; else goto L_02239514;
|
|
L_02239514: ; // 0x2239514
|
|
/* 02239514 */ _t6 = cpu->r[31] + 0x00000100u;
|
|
/* 02239514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02239518 */ _t7 = cpu->r[31] + 0x00000104u;
|
|
/* 02239518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223951C */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 0223951C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02239520 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02239520 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239524 */ _t10 = cpu->r[31] + 0x000000FCu;
|
|
/* 02239524 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02239528 */ _t11 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02239528 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0223952C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223952C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02239530 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239530 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02239534 */ cpu->f[2] = cpu->f[11] + cpu->f[12];
|
|
/* 02239538 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02239538 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0223953C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223953C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02239540 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02239544 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02239544 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[2]);
|
|
/* 02239548 */ Gambit_fn_02C69840(cpu);
|
|
/* 0223954C */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0223954C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02239550 */ _t18 = cpu->r[12] + 0x0000025Cu;
|
|
/* 02239550 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02239554 */ cpu->ctr = cpu->r[11];
|
|
/* 02239558 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223955C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239560 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 02239560 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02239564 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02239564 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 02239568 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 02239568 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223956C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223956C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 02239570 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 02239570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02239574 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02239574 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02239578 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02239578 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223957C */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 02239580 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02239580 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02239584 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239588 */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0223958C */ _t27 = cpu->r[10] + 0x00001F20u;
|
|
/* 0223958C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02239590 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02239594 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239594 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 02239598 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239598 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02239598 */ if (_t30) goto L_0223959C; else goto L_022395D8;
|
|
L_0223959C: ; // 0x223959c
|
|
/* 0223959C */ cpu->r[9] = 0x10050000u;
|
|
/* 022395A0 */ cpu->r[8] = 0x10050000u;
|
|
/* 022395A4 */ _t31 = cpu->r[9] + 0x00001F30u;
|
|
/* 022395A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022395A8 */ _t32 = cpu->r[8] + 0x00001F34u;
|
|
/* 022395A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022395AC */ _ft33 = sqrt(cpu->f[12]);
|
|
/* 022395AC */ _ft34 = (double)(int32_t)0x00000001u;
|
|
/* 022395AC */ cpu->f[13] = _ft34 / _ft33;
|
|
/* 022395B0 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 022395B4 */ cpu->f[10] = cpu->f[13] * cpu->f[11];
|
|
/* 022395B8 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[12], -(cpu->f[0]));
|
|
/* 022395BC */ cpu->f[13] = cpu->f[9] * cpu->f[10];
|
|
/* 022395C0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022395C0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022395C4 */ /* nop */
|
|
/* 022395C8 */ cpu->f[11] = cpu->f[11] * cpu->f[13];
|
|
/* 022395CC */ /* nop */
|
|
/* 022395D0 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 022395D0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 022395D4 */ /* nop */
|
|
L_022395D8: ; // 0x22395d8
|
|
/* 022395D8 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022395DC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 022395E0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022395E4 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 022395E8 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 022395EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022395F0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022395F0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 022395F0 */ if (_t38) goto L_022395F4; else goto L_02239608;
|
|
L_022395F4: ; // 0x22395f4
|
|
/* 022395F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 022395F8 */ cpu->r[5] = 0x80000000u;
|
|
/* 022395FC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02239600 */ cpu->r[6] = cpu->r[4];
|
|
/* 02239604 */ Gambit_fn_021E1408(cpu);
|
|
L_02239608: ; // 0x2239608
|
|
/* 02239608 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 0223960C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02239610 */ cpu->r[5] = cpu->r[31] + 0x0000013Cu;
|
|
/* 02239614 */ Gambit_fn_02C69544(cpu);
|
|
/* 02239618 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0223961C */ cpu->r[11] = 0x10050000u;
|
|
/* 02239620 */ cpu->r[10] = cpu->r[10] + 0x00006368u;
|
|
/* 02239624 */ _t39 = cpu->r[11] + 0x00001F24u;
|
|
/* 02239624 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02239628 */ /* nop */
|
|
/* 0223962C */ /* nop */
|
|
/* 02239630 */ /* nop */
|
|
/* 02239634 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02239634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02239638 */ _t41 = cpu->r[10] + 0x00000008u;
|
|
/* 02239638 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0223963C */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 0223963C */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02239640 */ cpu->f[9] = cpu->f[10] + cpu->f[10];
|
|
/* 02239644 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 02239644 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02239648 */ _t44 = cpu->r[1] + 0x00000030u;
|
|
/* 02239648 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0223964C */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223964C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02239650 */ _t46 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239650 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02239654 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02239654 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[9]);
|
|
/* 02239658 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 02239658 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0223965C */ _t49 = cpu->r[31] + 0x0000016Cu;
|
|
/* 0223965C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02239660 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 02239660 */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 02239664 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 02239664 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02239668 */ _t52 = cpu->r[31] + 0x00000170u;
|
|
/* 02239668 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
/* 0223966C */ _t53 = cpu->r[31] + 0x00000174u;
|
|
/* 0223966C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
L_02239670: ; // 0x2239670
|
|
/* 02239670 */ _t54 = cpu->r[1] + 0x000000A4u;
|
|
/* 02239670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02239674 */ _t55 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02239674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02239678 */ cpu->lr = cpu->r[0];
|
|
/* 0223967C */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 02239680 */ return;
|
|
}
|
|
|
|
// fn_022394F8 @ 0x22394f8
|
|
void Gambit_fn_022394F8(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, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55;
|
|
double _ft33, _ft34;
|
|
|
|
L_022394F8: ; // 0x22394f8
|
|
/* 022394F8 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022394F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022394F8 */ cpu->r[1] = _t0;
|
|
/* 022394FC */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022394FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02239500 */ cpu->r[31] = cpu->r[3];
|
|
/* 02239504 */ _t2 = cpu->r[1] + 0x000000A4u;
|
|
/* 02239504 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02239508 */ _t3 = cpu->r[31] + 0x00000184u;
|
|
/* 02239508 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223950C */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223950C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02239510 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239510 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02239510 */ if (_t5) goto L_02239670; else goto L_02239514;
|
|
L_02239514: ; // 0x2239514
|
|
/* 02239514 */ _t6 = cpu->r[31] + 0x00000100u;
|
|
/* 02239514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02239518 */ _t7 = cpu->r[31] + 0x00000104u;
|
|
/* 02239518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223951C */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 0223951C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02239520 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02239520 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239524 */ _t10 = cpu->r[31] + 0x000000FCu;
|
|
/* 02239524 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02239528 */ _t11 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02239528 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0223952C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223952C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02239530 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239530 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02239534 */ cpu->f[2] = cpu->f[11] + cpu->f[12];
|
|
/* 02239538 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02239538 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0223953C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223953C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02239540 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02239544 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02239544 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[2]);
|
|
/* 02239548 */ Gambit_fn_02C69840(cpu);
|
|
/* 0223954C */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0223954C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02239550 */ _t18 = cpu->r[12] + 0x0000025Cu;
|
|
/* 02239550 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02239554 */ cpu->ctr = cpu->r[11];
|
|
/* 02239558 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223955C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02239560 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 02239560 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02239564 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02239564 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 02239568 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 02239568 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223956C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223956C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 02239570 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 02239570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02239574 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02239574 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02239578 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02239578 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223957C */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 02239580 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02239580 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02239584 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239588 */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0223958C */ _t27 = cpu->r[10] + 0x00001F20u;
|
|
/* 0223958C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02239590 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02239594 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239594 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 02239598 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239598 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02239598 */ if (_t30) goto L_0223959C; else goto L_022395D8;
|
|
L_0223959C: ; // 0x223959c
|
|
/* 0223959C */ cpu->r[9] = 0x10050000u;
|
|
/* 022395A0 */ cpu->r[8] = 0x10050000u;
|
|
/* 022395A4 */ _t31 = cpu->r[9] + 0x00001F30u;
|
|
/* 022395A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022395A8 */ _t32 = cpu->r[8] + 0x00001F34u;
|
|
/* 022395A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022395AC */ _ft33 = sqrt(cpu->f[12]);
|
|
/* 022395AC */ _ft34 = (double)(int32_t)0x00000001u;
|
|
/* 022395AC */ cpu->f[13] = _ft34 / _ft33;
|
|
/* 022395B0 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 022395B4 */ cpu->f[10] = cpu->f[13] * cpu->f[11];
|
|
/* 022395B8 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[12], -(cpu->f[0]));
|
|
/* 022395BC */ cpu->f[13] = cpu->f[9] * cpu->f[10];
|
|
/* 022395C0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022395C0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022395C4 */ /* nop */
|
|
/* 022395C8 */ cpu->f[11] = cpu->f[11] * cpu->f[13];
|
|
/* 022395CC */ /* nop */
|
|
/* 022395D0 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 022395D0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 022395D4 */ /* nop */
|
|
L_022395D8: ; // 0x22395d8
|
|
/* 022395D8 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022395DC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 022395E0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022395E4 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 022395E8 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 022395EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022395F0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022395F0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 022395F0 */ if (_t38) goto L_022395F4; else goto L_02239608;
|
|
L_022395F4: ; // 0x22395f4
|
|
/* 022395F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 022395F8 */ cpu->r[5] = 0x80000000u;
|
|
/* 022395FC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02239600 */ cpu->r[6] = cpu->r[4];
|
|
/* 02239604 */ Gambit_fn_021E1408(cpu);
|
|
L_02239608: ; // 0x2239608
|
|
/* 02239608 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 0223960C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02239610 */ cpu->r[5] = cpu->r[31] + 0x0000013Cu;
|
|
/* 02239614 */ Gambit_fn_02C69544(cpu);
|
|
/* 02239618 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0223961C */ cpu->r[11] = 0x10050000u;
|
|
/* 02239620 */ cpu->r[10] = cpu->r[10] + 0x00006368u;
|
|
/* 02239624 */ _t39 = cpu->r[11] + 0x00001F24u;
|
|
/* 02239624 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02239628 */ /* nop */
|
|
/* 0223962C */ /* nop */
|
|
/* 02239630 */ /* nop */
|
|
/* 02239634 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02239634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02239638 */ _t41 = cpu->r[10] + 0x00000008u;
|
|
/* 02239638 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0223963C */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 0223963C */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02239640 */ cpu->f[9] = cpu->f[10] + cpu->f[10];
|
|
/* 02239644 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 02239644 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02239648 */ _t44 = cpu->r[1] + 0x00000030u;
|
|
/* 02239648 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0223964C */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223964C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02239650 */ _t46 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239650 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02239654 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02239654 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[9]);
|
|
/* 02239658 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 02239658 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0223965C */ _t49 = cpu->r[31] + 0x0000016Cu;
|
|
/* 0223965C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02239660 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 02239660 */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 02239664 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 02239664 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02239668 */ _t52 = cpu->r[31] + 0x00000170u;
|
|
/* 02239668 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
/* 0223966C */ _t53 = cpu->r[31] + 0x00000174u;
|
|
/* 0223966C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
L_02239670: ; // 0x2239670
|
|
/* 02239670 */ _t54 = cpu->r[1] + 0x000000A4u;
|
|
/* 02239670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02239674 */ _t55 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02239674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02239678 */ cpu->lr = cpu->r[0];
|
|
/* 0223967C */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 02239680 */ return;
|
|
}
|
|
|
|
// fn_02239684 @ 0x2239684
|
|
void Gambit_fn_02239684(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t15, _t16;
|
|
double _ft13, _ft14;
|
|
|
|
L_02239684: ; // 0x2239684
|
|
/* 02239684 */ cpu->r[0] = cpu->lr;
|
|
/* 02239688 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02239688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02239688 */ cpu->r[1] = _t0;
|
|
/* 0223968C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223968C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02239690 */ cpu->r[31] = cpu->r[4];
|
|
/* 02239694 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02239694 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02239698 */ Gambit_fn_0222E348(cpu);
|
|
/* 0223969C */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 0223969C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022396A0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 022396A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022396A4 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 022396A8 */ cpu->r[12] = 0x10050000u;
|
|
/* 022396AC */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 022396B0 */ _t5 = cpu->r[12] + 0x00001F28u;
|
|
/* 022396B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022396B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022396B8 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022396B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022396B8 */ if (_t7) goto L_022396BC; else goto L_02239700;
|
|
L_022396BC: ; // 0x22396bc
|
|
/* 022396BC */ cpu->r[11] = 0x10050000u;
|
|
/* 022396C0 */ _t8 = cpu->r[11] + 0x00001F20u;
|
|
/* 022396C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022396C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022396C8 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022396C8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022396C8 */ if (_t10) goto L_022396CC; else goto L_02239700;
|
|
L_022396CC: ; // 0x22396cc
|
|
/* 022396CC */ cpu->r[10] = 0x10050000u;
|
|
/* 022396D0 */ cpu->r[9] = 0x10050000u;
|
|
/* 022396D4 */ _t11 = cpu->r[10] + 0x00001F34u;
|
|
/* 022396D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022396D8 */ _t12 = cpu->r[9] + 0x00001F30u;
|
|
/* 022396D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022396DC */ _ft13 = sqrt(cpu->f[11]);
|
|
/* 022396DC */ _ft14 = (double)(int32_t)0x00000001u;
|
|
/* 022396DC */ cpu->f[9] = _ft14 / _ft13;
|
|
/* 022396E0 */ cpu->f[8] = cpu->f[9] * cpu->f[9];
|
|
/* 022396E4 */ cpu->f[10] = cpu->f[9] * cpu->f[0];
|
|
/* 022396E8 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[13]));
|
|
/* 022396EC */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 022396F0 */ cpu->f[9] = cpu->f[8] * cpu->f[10];
|
|
/* 022396F4 */ /* nop */
|
|
/* 022396F8 */ /* nop */
|
|
/* 022396FC */ /* nop */
|
|
L_02239700: ; // 0x2239700
|
|
/* 02239700 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02239700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02239704 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02239708 */ cpu->lr = cpu->r[0];
|
|
/* 0223970C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02239710 */ return;
|
|
}
|
|
|
|
// fn_02239688 @ 0x2239688
|
|
void Gambit_fn_02239688(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t15, _t16;
|
|
double _ft13, _ft14;
|
|
|
|
L_02239688: ; // 0x2239688
|
|
/* 02239688 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02239688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02239688 */ cpu->r[1] = _t0;
|
|
/* 0223968C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223968C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02239690 */ cpu->r[31] = cpu->r[4];
|
|
/* 02239694 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02239694 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02239698 */ Gambit_fn_0222E348(cpu);
|
|
/* 0223969C */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 0223969C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022396A0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 022396A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022396A4 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 022396A8 */ cpu->r[12] = 0x10050000u;
|
|
/* 022396AC */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 022396B0 */ _t5 = cpu->r[12] + 0x00001F28u;
|
|
/* 022396B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022396B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022396B8 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022396B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022396B8 */ if (_t7) goto L_022396BC; else goto L_02239700;
|
|
L_022396BC: ; // 0x22396bc
|
|
/* 022396BC */ cpu->r[11] = 0x10050000u;
|
|
/* 022396C0 */ _t8 = cpu->r[11] + 0x00001F20u;
|
|
/* 022396C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022396C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022396C8 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022396C8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022396C8 */ if (_t10) goto L_022396CC; else goto L_02239700;
|
|
L_022396CC: ; // 0x22396cc
|
|
/* 022396CC */ cpu->r[10] = 0x10050000u;
|
|
/* 022396D0 */ cpu->r[9] = 0x10050000u;
|
|
/* 022396D4 */ _t11 = cpu->r[10] + 0x00001F34u;
|
|
/* 022396D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022396D8 */ _t12 = cpu->r[9] + 0x00001F30u;
|
|
/* 022396D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022396DC */ _ft13 = sqrt(cpu->f[11]);
|
|
/* 022396DC */ _ft14 = (double)(int32_t)0x00000001u;
|
|
/* 022396DC */ cpu->f[9] = _ft14 / _ft13;
|
|
/* 022396E0 */ cpu->f[8] = cpu->f[9] * cpu->f[9];
|
|
/* 022396E4 */ cpu->f[10] = cpu->f[9] * cpu->f[0];
|
|
/* 022396E8 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[13]));
|
|
/* 022396EC */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 022396F0 */ cpu->f[9] = cpu->f[8] * cpu->f[10];
|
|
/* 022396F4 */ /* nop */
|
|
/* 022396F8 */ /* nop */
|
|
/* 022396FC */ /* nop */
|
|
L_02239700: ; // 0x2239700
|
|
/* 02239700 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02239700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02239704 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02239708 */ cpu->lr = cpu->r[0];
|
|
/* 0223970C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02239710 */ return;
|
|
}
|
|
|
|
// fn_02239714 @ 0x2239714
|
|
void Gambit_fn_02239714(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02239714: ; // 0x2239714
|
|
/* 02239714 */ cpu->r[0] = cpu->lr;
|
|
/* 02239718 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02239718 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02239718 */ cpu->r[1] = _t0;
|
|
/* 0223971C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223971C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02239720 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239720 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02239724 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02239724 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02239728 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02239728 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223972C */ _t5 = cpu->r[12] + 0x00000324u;
|
|
/* 0223972C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02239730 */ cpu->ctr = cpu->r[0];
|
|
/* 02239734 */ cpu->r[31] = cpu->r[3];
|
|
/* 02239738 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223973C */ cpu->r[30] = cpu->r[3];
|
|
/* 02239740 */ cpu->r[3] = cpu->r[31];
|
|
/* 02239744 */ Gambit_fn_02236260(cpu);
|
|
/* 02239748 */ _t6 = cpu->r[31] + 0x00000094u;
|
|
/* 02239748 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0223974C */ _t7 = cpu->r[31] + 0x000000A4u;
|
|
/* 0223974C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239750 */ _t8 = cpu->r[31] + 0x000000ACu;
|
|
/* 02239750 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02239754 */ _t9 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02239754 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239758 */ cpu->f[13] = cpu->f[7] - cpu->f[8];
|
|
/* 0223975C */ cpu->f[10] = cpu->f[6] - cpu->f[11];
|
|
/* 02239760 */ /* nop */
|
|
/* 02239764 */ /* nop */
|
|
/* 02239768 */ /* nop */
|
|
/* 0223976C */ /* nop */
|
|
/* 02239770 */ cpu->f[4] = cpu->f[12] + cpu->f[1];
|
|
/* 02239774 */ cpu->f[2] = cpu->f[13] + cpu->f[1];
|
|
/* 02239778 */ cpu->f[3] = cpu->f[11] - cpu->f[1];
|
|
/* 0223977C */ cpu->r[12] = 0x10050000u;
|
|
/* 02239780 */ cpu->f[1] = cpu->f[0] - cpu->f[1];
|
|
/* 02239784 */ _t10 = cpu->r[12] + 0x00001F20u;
|
|
/* 02239784 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02239788 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223978C */ Gambit_fn_02031EFC(cpu);
|
|
/* 02239790 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02239790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02239794 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239794 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02239798 */ cpu->lr = cpu->r[0];
|
|
/* 0223979C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0223979C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022397A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022397A4 */ return;
|
|
}
|
|
|
|
// fn_02239718 @ 0x2239718
|
|
void Gambit_fn_02239718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02239718: ; // 0x2239718
|
|
/* 02239718 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02239718 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02239718 */ cpu->r[1] = _t0;
|
|
/* 0223971C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223971C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02239720 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239720 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02239724 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02239724 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02239728 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02239728 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223972C */ _t5 = cpu->r[12] + 0x00000324u;
|
|
/* 0223972C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02239730 */ cpu->ctr = cpu->r[0];
|
|
/* 02239734 */ cpu->r[31] = cpu->r[3];
|
|
/* 02239738 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223973C */ cpu->r[30] = cpu->r[3];
|
|
/* 02239740 */ cpu->r[3] = cpu->r[31];
|
|
/* 02239744 */ Gambit_fn_02236260(cpu);
|
|
/* 02239748 */ _t6 = cpu->r[31] + 0x00000094u;
|
|
/* 02239748 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0223974C */ _t7 = cpu->r[31] + 0x000000A4u;
|
|
/* 0223974C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239750 */ _t8 = cpu->r[31] + 0x000000ACu;
|
|
/* 02239750 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02239754 */ _t9 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02239754 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239758 */ cpu->f[13] = cpu->f[7] - cpu->f[8];
|
|
/* 0223975C */ cpu->f[10] = cpu->f[6] - cpu->f[11];
|
|
/* 02239760 */ /* nop */
|
|
/* 02239764 */ /* nop */
|
|
/* 02239768 */ /* nop */
|
|
/* 0223976C */ /* nop */
|
|
/* 02239770 */ cpu->f[4] = cpu->f[12] + cpu->f[1];
|
|
/* 02239774 */ cpu->f[2] = cpu->f[13] + cpu->f[1];
|
|
/* 02239778 */ cpu->f[3] = cpu->f[11] - cpu->f[1];
|
|
/* 0223977C */ cpu->r[12] = 0x10050000u;
|
|
/* 02239780 */ cpu->f[1] = cpu->f[0] - cpu->f[1];
|
|
/* 02239784 */ _t10 = cpu->r[12] + 0x00001F20u;
|
|
/* 02239784 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02239788 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223978C */ Gambit_fn_02031EFC(cpu);
|
|
/* 02239790 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02239790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02239794 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239794 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02239798 */ cpu->lr = cpu->r[0];
|
|
/* 0223979C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0223979C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022397A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022397A4 */ return;
|
|
}
|
|
|
|
// fn_022397A8 @ 0x22397a8
|
|
void Gambit_fn_022397A8(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_022397A8: ; // 0x22397a8
|
|
/* 022397A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022397AC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022397AC */ _t1 = _t0 & 0x00000001u;
|
|
/* 022397AC */ if (_t1) goto L_02239854; else goto L_022397B0;
|
|
L_022397B0: ; // 0x22397b0
|
|
/* 022397B0 */ _t2 = cpu->r[4] + 0x0000002Cu;
|
|
/* 022397B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022397B4 */ _t3 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022397B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022397B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 022397BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022397BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 022397BC */ if (_t5) goto L_02239854; else goto L_022397C0;
|
|
L_022397C0: ; // 0x22397c0
|
|
/* 022397C0 */ cpu->r[10] = cpu->r[3] + 0x000001E4u;
|
|
/* 022397C4 */ _t6 = cpu->r[3] + 0x000001F0u;
|
|
/* 022397C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022397C8 */ cpu->r[6] = 0x00000001u;
|
|
/* 022397CC */ cpu->r[9] = 0x00000000u;
|
|
/* 022397D0 */ goto L_0223980C;
|
|
L_022397D4: ; // 0x22397d4
|
|
/* 022397D4 */ _t7 = cpu->r[10] + 0x00000008u;
|
|
/* 022397D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022397D8 */ _t8 = cpu->r[10] + 0x00000004u;
|
|
/* 022397D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022397DC */ cpu->r[7] = cpu->r[7] + cpu->r[9];
|
|
/* 022397E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[8]);
|
|
/* 022397E4 */ _t9 = cpu->r[10] + 0x00000000u;
|
|
/* 022397E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022397E8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022397E8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022397E8 */ if (_t11) goto L_022397F0; else goto L_022397EC;
|
|
L_022397EC: ; // 0x22397ec
|
|
/* 022397EC */ cpu->r[7] = cpu->r[7] - cpu->r[8];
|
|
L_022397F0: ; // 0x22397f0
|
|
/* 022397F0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022397F4 */ _t12 = cpu->r[12] + cpu->r[5];
|
|
/* 022397F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022397F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[4]);
|
|
/* 022397FC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022397FC */ _t14 = _t13 & 0x00000001u;
|
|
/* 022397FC */ if (_t14) goto L_02239800; else goto L_02239808;
|
|
L_02239800: ; // 0x2239800
|
|
/* 02239800 */ cpu->r[3] = 0x00000001u;
|
|
/* 02239804 */ return;
|
|
L_02239808: ; // 0x2239808
|
|
/* 02239808 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
L_0223980C: ; // 0x223980c
|
|
/* 0223980C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02239810 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239810 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02239810 */ if (_t16) goto L_022397D4; else goto L_02239814;
|
|
L_02239814: ; // 0x2239814
|
|
/* 02239814 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 02239818 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239818 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02239818 */ if (_t18) goto L_0223981C; else goto L_022397D4;
|
|
L_0223981C: ; // 0x223981c
|
|
/* 0223981C */ _t19 = cpu->r[10] + 0x00000004u;
|
|
/* 0223981C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02239820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 02239824 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02239824 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02239824 */ if (_t21) goto L_02239828; else goto L_02239854;
|
|
L_02239828: ; // 0x2239828
|
|
/* 02239828 */ _t22 = cpu->r[10] + 0x00000008u;
|
|
/* 02239828 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223982C */ _t23 = cpu->r[10] + 0x00000004u;
|
|
/* 0223982C */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02239830 */ cpu->r[0] = cpu->r[5] + cpu->r[11];
|
|
/* 02239834 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02239838 */ _t24 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02239838 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0223983C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 02239840 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02239840 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02239844 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02239844 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02239844 */ if (_t27) goto L_0223984C; else goto L_02239848;
|
|
L_02239848: ; // 0x2239848
|
|
/* 02239848 */ cpu->r[0] = cpu->r[0] - cpu->r[6];
|
|
L_0223984C: ; // 0x223984c
|
|
/* 0223984C */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02239850 */ _t28 = cpu->r[7] + cpu->r[8];
|
|
/* 02239850 */ rbrew_write32(cpu->mem, _t28, cpu->r[4]);
|
|
L_02239854: ; // 0x2239854
|
|
/* 02239854 */ cpu->r[3] = 0x00000000u;
|
|
/* 02239858 */ return;
|
|
}
|
|
|
|
// fn_0223985C @ 0x223985c
|
|
void Gambit_fn_0223985C(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, _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, _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;
|
|
double _ft155, _ft156, _ft199, _ft200;
|
|
|
|
L_0223985C: ; // 0x223985c
|
|
/* 0223985C */ _t0 = cpu->r[1] + 0xFFFFFE80u;
|
|
/* 0223985C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223985C */ cpu->r[1] = _t0;
|
|
/* 02239860 */ _t1 = cpu->r[1] + 0x00000120u;
|
|
/* 02239860 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02239864 */ cpu->r[0] = cpu->lr;
|
|
/* 02239868 */ _t2 = cpu->r[1] + 0x00000170u;
|
|
/* 02239868 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223986C */ /* nop */
|
|
/* 02239870 */ _t3 = cpu->r[1] + 0x00000150u;
|
|
/* 02239870 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02239874 */ /* nop */
|
|
/* 02239878 */ _t4 = cpu->r[1] + 0x00000140u;
|
|
/* 02239878 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 0223987C */ _t5 = cpu->r[1] + 0x00000178u;
|
|
/* 0223987C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02239880 */ /* nop */
|
|
/* 02239884 */ _t6 = cpu->r[1] + 0x00000158u;
|
|
/* 02239884 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 02239888 */ _t7 = cpu->r[1] + 0x00000160u;
|
|
/* 02239888 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0223988C */ _t8 = cpu->r[1] + 0x00000184u;
|
|
/* 0223988C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02239890 */ _t9 = cpu->r[1] + 0x00000148u;
|
|
/* 02239890 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 02239894 */ _t10 = cpu->r[1] + 0x00000124u;
|
|
/* 02239894 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02239898 */ /* nop */
|
|
/* 0223989C */ _t11 = cpu->r[1] + 0x00000130u;
|
|
/* 0223989C */ rbrew_write_f64(cpu->mem, _t11, cpu->f[27]);
|
|
/* 022398A0 */ _t12 = cpu->r[1] + 0x00000168u;
|
|
/* 022398A0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[30]);
|
|
/* 022398A4 */ /* nop */
|
|
/* 022398A8 */ _t13 = cpu->r[1] + 0x0000012Cu;
|
|
/* 022398A8 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 022398AC */ _t14 = cpu->r[1] + 0x00000138u;
|
|
/* 022398AC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[27]);
|
|
/* 022398B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022398B4 */ _t15 = cpu->r[1] + 0x00000128u;
|
|
/* 022398B4 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 022398B8 */ _t16 = cpu->r[31] + 0x00000114u;
|
|
/* 022398B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022398BC */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000000Cu, 0x0000000Du);
|
|
/* 022398BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022398C0 */ cpu->r[30] = cpu->r[4];
|
|
/* 022398C4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022398C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022398C4 */ if (_t18) goto L_02239EFC; else goto L_022398C8;
|
|
L_022398C8: ; // 0x22398c8
|
|
/* 022398C8 */ _t19 = cpu->r[31] + 0x0000008Cu;
|
|
/* 022398C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022398CC */ _t20 = cpu->r[31] + 0x00000088u;
|
|
/* 022398CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022398D0 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022398D0 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 022398D4 */ _t22 = cpu->r[31] + 0x00000090u;
|
|
/* 022398D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022398D8 */ _t23 = cpu->r[31] + 0x00000004u;
|
|
/* 022398D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022398DC */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022398DC */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022398E0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022398E0 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 022398E4 */ _t26 = cpu->r[12] + 0x00000254u;
|
|
/* 022398E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022398E8 */ cpu->ctr = cpu->r[5];
|
|
/* 022398EC */ cpu->r[3] = cpu->r[31];
|
|
/* 022398F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022398F4 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 022398F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022398F8 */ _t28 = cpu->r[1] + 0x00000064u;
|
|
/* 022398F8 */ rbrew_write32(cpu->mem, _t28, cpu->r[11]);
|
|
/* 022398FC */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 022398FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02239900 */ _t30 = cpu->r[31] + 0x00000130u;
|
|
/* 02239900 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02239904 */ cpu->r[7] = 0x10050000u;
|
|
/* 02239908 */ _t31 = cpu->r[1] + 0x00000068u;
|
|
/* 02239908 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0223990C */ _t32 = cpu->r[7] + 0x00001F20u;
|
|
/* 0223990C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02239910 */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 02239910 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02239914 */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02239914 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 02239918 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 02239918 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 0223991C */ /* nop */
|
|
/* 02239920 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02239920 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02239924 */ /* nop */
|
|
/* 02239928 */ _t37 = cpu->r[1] + 0x00000088u;
|
|
/* 02239928 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0223992C */ _t38 = cpu->r[1] + 0x00000088u;
|
|
/* 0223992C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02239930 */ /* nop */
|
|
/* 02239934 */ _t39 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02239934 */ rbrew_write32(cpu->mem, _t39, cpu->r[5]);
|
|
/* 02239938 */ /* nop */
|
|
/* 0223993C */ /* nop */
|
|
/* 02239940 */ _t40 = cpu->r[1] + 0x00000080u;
|
|
/* 02239940 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02239944 */ /* nop */
|
|
/* 02239948 */ _t41 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02239948 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223994C */ _t42 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0223994C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02239950 */ _t43 = cpu->r[1] + 0x00000040u;
|
|
/* 02239950 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[10]);
|
|
/* 02239954 */ /* nop */
|
|
/* 02239958 */ _t44 = cpu->r[1] + 0x000000E0u;
|
|
/* 02239958 */ rbrew_write32(cpu->mem, _t44, cpu->r[7]);
|
|
/* 0223995C */ /* nop */
|
|
/* 02239960 */ _t45 = cpu->r[1] + 0x00000090u;
|
|
/* 02239960 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02239964 */ /* nop */
|
|
/* 02239968 */ _t46 = cpu->r[1] + 0x000000DCu;
|
|
/* 02239968 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0223996C */ /* nop */
|
|
/* 02239970 */ _t47 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02239970 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02239974 */ /* nop */
|
|
/* 02239978 */ _t48 = cpu->r[1] + 0x000000A4u;
|
|
/* 02239978 */ cpu->r[28] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0223997C */ _t49 = cpu->r[1] + 0x00000094u;
|
|
/* 0223997C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[11]);
|
|
/* 02239980 */ _t50 = cpu->r[1] + 0x00000094u;
|
|
/* 02239980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02239984 */ _t51 = cpu->r[1] + 0x000000F8u;
|
|
/* 02239984 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 02239988 */ _t52 = cpu->r[1] + 0x000000E8u;
|
|
/* 02239988 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0223998C */ _t53 = cpu->r[1] + 0x000000ACu;
|
|
/* 0223998C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[11]);
|
|
/* 02239990 */ _t54 = cpu->r[1] + 0x000000ACu;
|
|
/* 02239990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02239994 */ _t55 = cpu->r[1] + 0x000000A0u;
|
|
/* 02239994 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 02239998 */ _t56 = cpu->r[1] + 0x000000A0u;
|
|
/* 02239998 */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0223999C */ _t57 = cpu->r[1] + 0x000000E4u;
|
|
/* 0223999C */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 022399A0 */ _t58 = cpu->r[1] + 0x000000E4u;
|
|
/* 022399A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022399A4 */ _t59 = cpu->r[30] + 0x00000004u;
|
|
/* 022399A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022399A8 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 022399A8 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[31]);
|
|
/* 022399AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 022399B0 */ _t61 = cpu->r[1] + 0x000000F0u;
|
|
/* 022399B0 */ rbrew_write32(cpu->mem, _t61, cpu->r[7]);
|
|
/* 022399B4 */ _t62 = cpu->r[1] + 0x00000100u;
|
|
/* 022399B4 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 022399B8 */ _t63 = cpu->r[1] + 0x000000F4u;
|
|
/* 022399B8 */ rbrew_write32(cpu->mem, _t63, cpu->r[9]);
|
|
/* 022399BC */ _t64 = cpu->r[1] + 0x00000084u;
|
|
/* 022399BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022399C0 */ _t65 = cpu->r[1] + 0x00000098u;
|
|
/* 022399C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022399C4 */ _t66 = cpu->r[1] + 0x000000D8u;
|
|
/* 022399C4 */ rbrew_write32(cpu->mem, _t66, cpu->r[4]);
|
|
/* 022399C8 */ _t67 = cpu->r[1] + 0x000000ECu;
|
|
/* 022399C8 */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 022399CC */ _t68 = cpu->r[1] + 0x000000A8u;
|
|
/* 022399CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022399D0 */ _t69 = cpu->r[1] + 0x000000D4u;
|
|
/* 022399D0 */ rbrew_write32(cpu->mem, _t69, cpu->r[3]);
|
|
/* 022399D4 */ cpu->f[9] = cpu->f[11];
|
|
/* 022399D8 */ _t70 = cpu->r[1] + 0x000000FCu;
|
|
/* 022399D8 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 022399DC */ _t71 = cpu->r[1] + 0x000000FCu;
|
|
/* 022399DC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022399E0 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022399E0 */ _t73 = _t72 & 0x00000001u;
|
|
/* 022399E0 */ if (_t73) goto L_022399E4; else goto L_022399F4;
|
|
L_022399E4: ; // 0x22399e4
|
|
/* 022399E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[7]);
|
|
/* 022399E8 */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 022399E8 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[12]);
|
|
/* 022399EC */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022399EC */ _t76 = _t75 & 0x00000001u;
|
|
/* 022399EC */ if (_t76) goto L_02239A10; else goto L_022399F0;
|
|
L_022399F0: ; // 0x22399f0
|
|
/* 022399F0 */ goto L_02239A84;
|
|
L_022399F4: ; // 0x22399f4
|
|
/* 022399F4 */ _t77 = cpu->r[1] + 0x000000D8u;
|
|
/* 022399F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 022399F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022399FC */ _t78 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022399FC */ _t79 = _t78 & 0x00000001u;
|
|
/* 022399FC */ if (_t79) goto L_02239A00; else goto L_02239A04;
|
|
L_02239A00: ; // 0x2239a00
|
|
/* 02239A00 */ cpu->f[11] = cpu->f[0];
|
|
L_02239A04: ; // 0x2239a04
|
|
/* 02239A04 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[7]);
|
|
/* 02239A08 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 02239A08 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[11]);
|
|
/* 02239A0C */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02239A0C */ _t82 = _t81 & 0x00000001u;
|
|
/* 02239A0C */ if (_t82) goto L_02239A10; else goto L_02239A84;
|
|
L_02239A10: ; // 0x2239a10
|
|
/* 02239A10 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 02239A14 */ _t83 = cpu->r[1] + 0x00000068u;
|
|
/* 02239A14 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[7]);
|
|
/* 02239A18 */ Gambit_fn_02043B24(cpu);
|
|
/* 02239A1C */ /* nop */
|
|
/* 02239A20 */ cpu->f[30] = cpu->f[31];
|
|
/* 02239A24 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 02239A24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02239A28 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02239A2C */ _t85 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02239A2C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02239A30 */ cpu->r[12] = 0x10050000u;
|
|
/* 02239A34 */ /* nop */
|
|
/* 02239A38 */ cpu->f[28] = cpu->f[31];
|
|
/* 02239A3C */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 02239A3C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02239A40 */ /* nop */
|
|
/* 02239A44 */ _t87 = cpu->r[12] + 0x00001F38u;
|
|
/* 02239A44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02239A48 */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 02239A4C */ _t88 = cpu->r[11] + 0x00006338u;
|
|
/* 02239A4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02239A4C */ cpu->r[11] = _t88;
|
|
/* 02239A50 */ /* nop */
|
|
/* 02239A54 */ /* nop */
|
|
/* 02239A58 */ _t89 = cpu->r[1] + 0x00000024u;
|
|
/* 02239A58 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02239A5C */ cpu->f[10] = cpu->f[9] - cpu->f[12];
|
|
/* 02239A60 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239A60 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[0]);
|
|
/* 02239A64 */ cpu->r[28] = 0x101C0000u;
|
|
/* 02239A68 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 02239A6C */ cpu->r[29] = 0x101E0000u;
|
|
/* 02239A70 */ cpu->r[28] = cpu->r[28] + 0x00001EF8u;
|
|
/* 02239A74 */ cpu->r[29] = cpu->r[29] + 0xFFFF958Cu;
|
|
/* 02239A78 */ /* nop */
|
|
/* 02239A7C */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239A7C */ _t92 = _t91 & 0x00000001u;
|
|
/* 02239A7C */ if (_t92) goto L_02239A80; else goto L_02239B64;
|
|
L_02239A80: ; // 0x2239a80
|
|
/* 02239A80 */ goto L_02239B04;
|
|
L_02239A84: ; // 0x2239a84
|
|
/* 02239A84 */ _t93 = cpu->r[1] + 0x000000F0u;
|
|
/* 02239A84 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 02239A88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[8]);
|
|
/* 02239A8C */ _t94 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239A8C */ _t95 = _t94 & 0x00000001u;
|
|
/* 02239A8C */ if (_t95) goto L_02239A90; else goto L_02239A94;
|
|
L_02239A90: ; // 0x2239a90
|
|
/* 02239A90 */ cpu->f[9] = cpu->f[8];
|
|
L_02239A94: ; // 0x2239a94
|
|
/* 02239A94 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 02239A98 */ _t96 = cpu->r[1] + 0x00000068u;
|
|
/* 02239A98 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[9]);
|
|
/* 02239A9C */ Gambit_fn_02043B24(cpu);
|
|
/* 02239AA0 */ /* nop */
|
|
/* 02239AA4 */ cpu->f[30] = cpu->f[31];
|
|
/* 02239AA8 */ _t97 = cpu->r[31] + 0x000000A0u;
|
|
/* 02239AA8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02239AAC */ cpu->r[11] = 0x101F0000u;
|
|
/* 02239AB0 */ _t98 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02239AB0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02239AB4 */ cpu->r[12] = 0x10050000u;
|
|
/* 02239AB8 */ /* nop */
|
|
/* 02239ABC */ cpu->f[28] = cpu->f[31];
|
|
/* 02239AC0 */ _t99 = cpu->r[1] + 0x00000014u;
|
|
/* 02239AC0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02239AC4 */ /* nop */
|
|
/* 02239AC8 */ _t100 = cpu->r[12] + 0x00001F38u;
|
|
/* 02239AC8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02239ACC */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 02239AD0 */ _t101 = cpu->r[11] + 0x00006338u;
|
|
/* 02239AD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02239AD0 */ cpu->r[11] = _t101;
|
|
/* 02239AD4 */ /* nop */
|
|
/* 02239AD8 */ /* nop */
|
|
/* 02239ADC */ _t102 = cpu->r[1] + 0x00000024u;
|
|
/* 02239ADC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02239AE0 */ cpu->f[10] = cpu->f[9] - cpu->f[12];
|
|
/* 02239AE4 */ _t103 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239AE4 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[0]);
|
|
/* 02239AE8 */ cpu->r[28] = 0x101C0000u;
|
|
/* 02239AEC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 02239AF0 */ cpu->r[29] = 0x101E0000u;
|
|
/* 02239AF4 */ cpu->r[28] = cpu->r[28] + 0x00001EF8u;
|
|
/* 02239AF8 */ cpu->r[29] = cpu->r[29] + 0xFFFF958Cu;
|
|
/* 02239AFC */ /* nop */
|
|
/* 02239B00 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239B00 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02239B00 */ if (_t105) goto L_02239B04; else goto L_02239B64;
|
|
L_02239B04: ; // 0x2239b04
|
|
/* 02239B04 */ _t106 = cpu->r[1] + 0x00000028u;
|
|
/* 02239B04 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02239B08 */ _t107 = cpu->r[11] + 0x00000004u;
|
|
/* 02239B08 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 02239B0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[8]);
|
|
/* 02239B10 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239B10 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02239B10 */ if (_t109) goto L_02239B14; else goto L_02239B64;
|
|
L_02239B14: ; // 0x2239b14
|
|
/* 02239B14 */ _t110 = cpu->r[11] + 0x00000008u;
|
|
/* 02239B14 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02239B18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 02239B1C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239B1C */ _t112 = _t111 & 0x00000001u;
|
|
/* 02239B1C */ if (_t112) goto L_02239B20; else goto L_02239B64;
|
|
L_02239B20: ; // 0x2239b20
|
|
/* 02239B20 */ _t113 = cpu->r[29] + 0x00000000u;
|
|
/* 02239B20 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02239B24 */ cpu->r[0] = cpu->r[1] + 0x00000054u;
|
|
/* 02239B28 */ cpu->r[5] = 0x00000000u;
|
|
/* 02239B2C */ _t114 = cpu->r[1] + 0x00000058u;
|
|
/* 02239B2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02239B30 */ cpu->f[1] = cpu->f[27];
|
|
/* 02239B34 */ cpu->r[6] = cpu->r[5];
|
|
/* 02239B38 */ cpu->r[7] = cpu->r[5];
|
|
/* 02239B3C */ _t115 = cpu->r[28] + 0x00000000u;
|
|
/* 02239B3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02239B40 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239B44 */ cpu->r[10] = cpu->r[7];
|
|
/* 02239B48 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02239B4C */ _t116 = cpu->r[1] + 0x00000008u;
|
|
/* 02239B4C */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02239B50 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02239B54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02239B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02239B58 */ _t117 = cpu->r[1] + 0x00000054u;
|
|
/* 02239B58 */ rbrew_write32(cpu->mem, _t117, cpu->r[3]);
|
|
/* 02239B5C */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239B5C */ _t119 = _t118 & 0x00000001u;
|
|
/* 02239B5C */ if (_t119) goto L_02239E78; else goto L_02239B60;
|
|
L_02239B60: ; // 0x2239b60
|
|
/* 02239B60 */ goto L_02239EAC;
|
|
L_02239B64: ; // 0x2239b64
|
|
/* 02239B64 */ _t120 = cpu->r[1] + 0x00000064u;
|
|
/* 02239B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02239B68 */ _t121 = cpu->r[1] + 0x00000014u;
|
|
/* 02239B68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02239B6C */ _t122 = cpu->r[1] + 0x00000110u;
|
|
/* 02239B6C */ rbrew_write32(cpu->mem, _t122, cpu->r[0]);
|
|
/* 02239B70 */ _t123 = cpu->r[1] + 0x00000010u;
|
|
/* 02239B70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02239B74 */ _t124 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02239B74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02239B78 */ _t125 = cpu->r[1] + 0x0000010Cu;
|
|
/* 02239B78 */ rbrew_write32(cpu->mem, _t125, cpu->r[10]);
|
|
/* 02239B7C */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239B7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02239B80 */ _t127 = cpu->r[1] + 0x00000068u;
|
|
/* 02239B80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02239B84 */ _t128 = cpu->r[1] + 0x00000104u;
|
|
/* 02239B84 */ rbrew_write32(cpu->mem, _t128, cpu->r[8]);
|
|
/* 02239B88 */ _t129 = cpu->r[1] + 0x00000114u;
|
|
/* 02239B88 */ rbrew_write32(cpu->mem, _t129, cpu->r[5]);
|
|
/* 02239B8C */ cpu->r[4] = cpu->r[1] + 0x00000104u;
|
|
/* 02239B90 */ _t130 = cpu->r[1] + 0x00000108u;
|
|
/* 02239B90 */ rbrew_write32(cpu->mem, _t130, cpu->r[9]);
|
|
/* 02239B94 */ cpu->r[5] = cpu->r[1] + 0x00000070u;
|
|
/* 02239B98 */ cpu->r[3] = cpu->r[30];
|
|
/* 02239B9C */ _t131 = cpu->r[1] + 0x00000118u;
|
|
/* 02239B9C */ rbrew_write32(cpu->mem, _t131, cpu->r[0]);
|
|
/* 02239BA0 */ Gambit_fn_02819764(cpu);
|
|
/* 02239BA4 */ _t132 = cpu->r[1] + 0x00000070u;
|
|
/* 02239BA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02239BA8 */ _t133 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239BA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02239BAC */ cpu->f[8] = cpu->f[0] * cpu->f[13];
|
|
/* 02239BB0 */ _t134 = cpu->r[1] + 0x000000B8u;
|
|
/* 02239BB0 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[8]);
|
|
/* 02239BB4 */ /* nop */
|
|
/* 02239BB8 */ _t135 = cpu->r[1] + 0x000000B8u;
|
|
/* 02239BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02239BBC */ /* nop */
|
|
/* 02239BC0 */ _t136 = cpu->r[1] + 0x000000B0u;
|
|
/* 02239BC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02239BC4 */ _t137 = cpu->r[1] + 0x00000050u;
|
|
/* 02239BC4 */ rbrew_write32(cpu->mem, _t137, cpu->r[0]);
|
|
/* 02239BC8 */ _t138 = cpu->r[1] + 0x00000050u;
|
|
/* 02239BC8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 02239BCC */ _t139 = cpu->r[1] + 0x00000048u;
|
|
/* 02239BCC */ rbrew_write32(cpu->mem, _t139, cpu->r[8]);
|
|
/* 02239BD0 */ _t140 = cpu->r[1] + 0x000000B4u;
|
|
/* 02239BD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02239BD4 */ _t141 = cpu->r[1] + 0x00000014u;
|
|
/* 02239BD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 02239BD8 */ _t142 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02239BD8 */ rbrew_write32(cpu->mem, _t142, cpu->r[9]);
|
|
/* 02239BDC */ /* nop */
|
|
/* 02239BE0 */ cpu->f[8] = cpu->f[13] + cpu->f[8];
|
|
/* 02239BE4 */ /* nop */
|
|
/* 02239BE8 */ _t143 = cpu->r[1] + 0x00000028u;
|
|
/* 02239BE8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02239BEC */ /* nop */
|
|
/* 02239BF0 */ _t144 = cpu->r[1] + 0x00000024u;
|
|
/* 02239BF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 02239BF4 */ _t145 = cpu->r[1] + 0x00000020u;
|
|
/* 02239BF4 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[8]);
|
|
/* 02239BF8 */ cpu->f[12] = cpu->f[9] * cpu->f[9];
|
|
/* 02239BFC */ /* nop */
|
|
/* 02239C00 */ _t146 = cpu->r[1] + 0x00000074u;
|
|
/* 02239C00 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 02239C04 */ cpu->r[11] = 0x10050000u;
|
|
/* 02239C08 */ _t147 = cpu->r[1] + 0x00000078u;
|
|
/* 02239C08 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 02239C0C */ cpu->f[13] = fma(cpu->f[11], cpu->f[11], cpu->f[12]);
|
|
/* 02239C10 */ _t148 = cpu->r[11] + 0x00001F34u;
|
|
/* 02239C10 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 02239C14 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239C18 */ _t149 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239C18 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[10]);
|
|
/* 02239C1C */ cpu->f[12] = fma(cpu->f[0], cpu->f[0], cpu->f[13]);
|
|
/* 02239C20 */ _t150 = cpu->r[10] + 0x00001F30u;
|
|
/* 02239C20 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 02239C24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02239C28 */ _t151 = cpu->r[1] + 0x00000018u;
|
|
/* 02239C28 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[9]);
|
|
/* 02239C2C */ _t152 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02239C2C */ rbrew_write_f32(cpu->mem, _t152, cpu->f[8]);
|
|
/* 02239C30 */ _t153 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239C30 */ _t154 = _t153 & 0x00000001u;
|
|
/* 02239C30 */ if (_t154) goto L_02239C34; else goto L_02239C64;
|
|
L_02239C34: ; // 0x2239c34
|
|
/* 02239C34 */ _ft155 = sqrt(cpu->f[12]);
|
|
/* 02239C34 */ _ft156 = (double)(int32_t)0x00000001u;
|
|
/* 02239C34 */ cpu->f[13] = _ft156 / _ft155;
|
|
/* 02239C38 */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 02239C3C */ cpu->f[8] = cpu->f[13] * cpu->f[10];
|
|
/* 02239C40 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[12], -(cpu->f[11]));
|
|
/* 02239C44 */ cpu->f[13] = cpu->f[7] * cpu->f[8];
|
|
/* 02239C48 */ _t157 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239C48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 02239C4C */ /* nop */
|
|
/* 02239C50 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 02239C54 */ /* nop */
|
|
/* 02239C58 */ /* nop */
|
|
/* 02239C5C */ /* nop */
|
|
/* 02239C60 */ _t158 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239C60 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[0]);
|
|
L_02239C64: ; // 0x2239c64
|
|
/* 02239C64 */ cpu->f[9] = cpu->f[0] * cpu->f[27];
|
|
/* 02239C68 */ _t159 = cpu->r[1] + 0x00000020u;
|
|
/* 02239C68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 02239C6C */ /* nop */
|
|
/* 02239C70 */ _t160 = cpu->r[1] + 0x000000C4u;
|
|
/* 02239C70 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[9]);
|
|
/* 02239C74 */ _t161 = cpu->r[1] + 0x000000C4u;
|
|
/* 02239C74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02239C78 */ /* nop */
|
|
/* 02239C7C */ _t162 = cpu->r[1] + 0x000000BCu;
|
|
/* 02239C7C */ cpu->r[5] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02239C80 */ _t163 = cpu->r[1] + 0x00000050u;
|
|
/* 02239C80 */ rbrew_write32(cpu->mem, _t163, cpu->r[7]);
|
|
/* 02239C84 */ _t164 = cpu->r[1] + 0x00000050u;
|
|
/* 02239C84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 02239C88 */ _t165 = cpu->r[1] + 0x000000C0u;
|
|
/* 02239C88 */ cpu->r[6] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02239C8C */ _t166 = cpu->r[1] + 0x00000048u;
|
|
/* 02239C8C */ rbrew_write32(cpu->mem, _t166, cpu->r[5]);
|
|
/* 02239C90 */ _t167 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02239C90 */ rbrew_write32(cpu->mem, _t167, cpu->r[6]);
|
|
/* 02239C94 */ /* nop */
|
|
/* 02239C98 */ cpu->f[12] = cpu->f[12] - cpu->f[0];
|
|
/* 02239C9C */ /* nop */
|
|
/* 02239CA0 */ /* nop */
|
|
/* 02239CA4 */ _t168 = cpu->r[1] + 0x00000014u;
|
|
/* 02239CA4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 02239CA8 */ /* nop */
|
|
/* 02239CAC */ /* nop */
|
|
/* 02239CB0 */ _t169 = cpu->r[1] + 0x000000CCu;
|
|
/* 02239CB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02239CB4 */ _t170 = cpu->r[1] + 0x000000C8u;
|
|
/* 02239CB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02239CB8 */ cpu->f[8] = cpu->f[12] - cpu->f[9];
|
|
/* 02239CBC */ _t171 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02239CBC */ rbrew_write32(cpu->mem, _t171, cpu->r[7]);
|
|
/* 02239CC0 */ _t172 = cpu->r[1] + 0x00000048u;
|
|
/* 02239CC0 */ rbrew_write32(cpu->mem, _t172, cpu->r[6]);
|
|
/* 02239CC4 */ /* nop */
|
|
/* 02239CC8 */ _t173 = cpu->r[1] + 0x000000D0u;
|
|
/* 02239CC8 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[8]);
|
|
/* 02239CCC */ _t174 = cpu->r[1] + 0x000000D0u;
|
|
/* 02239CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02239CD0 */ /* nop */
|
|
/* 02239CD4 */ _t175 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02239CD4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 02239CD8 */ /* nop */
|
|
/* 02239CDC */ _t176 = cpu->r[1] + 0x00000050u;
|
|
/* 02239CDC */ rbrew_write32(cpu->mem, _t176, cpu->r[0]);
|
|
/* 02239CE0 */ cpu->f[8] = cpu->f[0];
|
|
/* 02239CE4 */ _t177 = cpu->r[1] + 0x00000050u;
|
|
/* 02239CE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02239CE8 */ /* nop */
|
|
/* 02239CEC */ cpu->f[9] = fma(cpu->f[9], cpu->f[0], cpu->f[8]);
|
|
/* 02239CF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 02239CF4 */ _t178 = cpu->r[1] + 0x00000020u;
|
|
/* 02239CF4 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[12]);
|
|
/* 02239CF8 */ _t179 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239CF8 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02239CF8 */ if (_t180) goto L_02239CFC; else goto L_02239D30;
|
|
L_02239CFC: ; // 0x2239cfc
|
|
/* 02239CFC */ /* nop */
|
|
/* 02239D00 */ _t181 = cpu->r[1] + 0x00000034u;
|
|
/* 02239D00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 02239D04 */ _t182 = cpu->r[1] + 0x00000020u;
|
|
/* 02239D04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02239D08 */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 02239D0C */ _t183 = cpu->r[1] + 0x00000014u;
|
|
/* 02239D0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 02239D10 */ _t184 = cpu->r[1] + 0x00000030u;
|
|
/* 02239D10 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 02239D14 */ cpu->f[9] = cpu->f[12] - cpu->f[0];
|
|
/* 02239D18 */ cpu->f[8] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 02239D1C */ cpu->f[30] = fma(cpu->f[9], cpu->f[9], cpu->f[8]);
|
|
/* 02239D20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 02239D24 */ _t185 = cpu->r[1] + 0x00000038u;
|
|
/* 02239D24 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[9]);
|
|
/* 02239D28 */ _t186 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239D28 */ _t187 = _t186 & 0x00000001u;
|
|
/* 02239D28 */ if (_t187) goto L_02239D2C; else goto L_02239DA8;
|
|
L_02239D2C: ; // 0x2239d2c
|
|
/* 02239D2C */ goto L_02239D78;
|
|
L_02239D30: ; // 0x2239d30
|
|
/* 02239D30 */ _t188 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239D30 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 02239D34 */ _t189 = cpu->r[1] + 0x00000010u;
|
|
/* 02239D34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 02239D38 */ _t190 = cpu->r[1] + 0x00000018u;
|
|
/* 02239D38 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[12]);
|
|
/* 02239D3C */ _t191 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02239D3C */ rbrew_write_f32(cpu->mem, _t191, cpu->f[13]);
|
|
/* 02239D40 */ /* nop */
|
|
/* 02239D44 */ _t192 = cpu->r[1] + 0x00000014u;
|
|
/* 02239D44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 02239D48 */ /* nop */
|
|
/* 02239D4C */ /* nop */
|
|
/* 02239D50 */ _t193 = cpu->r[1] + 0x00000034u;
|
|
/* 02239D50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 02239D54 */ cpu->f[9] = cpu->f[12] - cpu->f[12];
|
|
/* 02239D58 */ _t194 = cpu->r[1] + 0x00000030u;
|
|
/* 02239D58 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 02239D5C */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 02239D60 */ _t195 = cpu->r[1] + 0x00000038u;
|
|
/* 02239D60 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[9]);
|
|
/* 02239D64 */ cpu->f[8] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 02239D68 */ cpu->f[30] = fma(cpu->f[9], cpu->f[9], cpu->f[8]);
|
|
/* 02239D6C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 02239D70 */ _t196 = cpu->r[1] + 0x00000020u;
|
|
/* 02239D70 */ rbrew_write_f32(cpu->mem, _t196, cpu->f[12]);
|
|
/* 02239D74 */ _t197 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239D74 */ _t198 = _t197 & 0x00000001u;
|
|
/* 02239D74 */ if (_t198) goto L_02239D78; else goto L_02239DA8;
|
|
L_02239D78: ; // 0x2239d78
|
|
/* 02239D78 */ _ft199 = sqrt(cpu->f[30]);
|
|
/* 02239D78 */ _ft200 = (double)(int32_t)0x00000001u;
|
|
/* 02239D78 */ cpu->f[9] = _ft200 / _ft199;
|
|
/* 02239D7C */ cpu->f[8] = cpu->f[9] * cpu->f[9];
|
|
/* 02239D80 */ cpu->f[13] = cpu->f[9] * cpu->f[10];
|
|
/* 02239D84 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[30], -(cpu->f[11]));
|
|
/* 02239D88 */ cpu->f[9] = cpu->f[8] * cpu->f[13];
|
|
/* 02239D8C */ /* nop */
|
|
/* 02239D90 */ _t201 = cpu->r[1] + 0x00000038u;
|
|
/* 02239D90 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 02239D94 */ /* nop */
|
|
/* 02239D98 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 02239D9C */ /* nop */
|
|
/* 02239DA0 */ cpu->f[30] = cpu->f[30] * cpu->f[9];
|
|
/* 02239DA4 */ _t202 = cpu->r[1] + 0x00000038u;
|
|
/* 02239DA4 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[8]);
|
|
L_02239DA8: ; // 0x2239da8
|
|
/* 02239DA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 02239DAC */ _t203 = cpu->r[28] + 0x00000000u;
|
|
/* 02239DAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t203);
|
|
/* 02239DB0 */ _t204 = cpu->r[29] + 0x00000000u;
|
|
/* 02239DB0 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 02239DB4 */ _t205 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239DB4 */ _t206 = _t205 & 0x00000001u;
|
|
/* 02239DB4 */ if (_t206) goto L_02239DB8; else goto L_02239DF8;
|
|
L_02239DB8: ; // 0x2239db8
|
|
/* 02239DB8 */ _t207 = cpu->r[1] + 0x00000058u;
|
|
/* 02239DB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t207);
|
|
/* 02239DBC */ cpu->f[2] = cpu->f[3];
|
|
/* 02239DC0 */ cpu->r[5] = 0x00000000u;
|
|
/* 02239DC4 */ cpu->r[8] = cpu->r[1] + 0x00000054u;
|
|
/* 02239DC8 */ cpu->f[1] = cpu->f[27];
|
|
/* 02239DCC */ cpu->r[6] = cpu->r[5];
|
|
/* 02239DD0 */ _t208 = cpu->r[1] + 0x00000008u;
|
|
/* 02239DD0 */ rbrew_write32(cpu->mem, _t208, cpu->r[8]);
|
|
/* 02239DD4 */ cpu->r[7] = cpu->r[5];
|
|
/* 02239DD8 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02239DDC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239DE0 */ cpu->r[10] = cpu->r[7];
|
|
/* 02239DE4 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02239DE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02239DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02239DEC */ _t209 = cpu->r[1] + 0x00000054u;
|
|
/* 02239DEC */ rbrew_write32(cpu->mem, _t209, cpu->r[3]);
|
|
/* 02239DF0 */ _t210 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239DF0 */ _t211 = _t210 & 0x00000001u;
|
|
/* 02239DF0 */ if (_t211) goto L_02239E78; else goto L_02239DF4;
|
|
L_02239DF4: ; // 0x2239df4
|
|
/* 02239DF4 */ goto L_02239EAC;
|
|
L_02239DF8: ; // 0x2239df8
|
|
/* 02239DF8 */ cpu->f[1] = cpu->f[30] + cpu->f[28];
|
|
/* 02239DFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 02239E00 */ _t212 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239E00 */ _t213 = _t212 & 0x00000001u;
|
|
/* 02239E00 */ if (_t213) goto L_02239E44; else goto L_02239E04;
|
|
L_02239E04: ; // 0x2239e04
|
|
/* 02239E04 */ cpu->r[5] = 0x00000000u;
|
|
/* 02239E08 */ _t214 = cpu->r[1] + 0x00000058u;
|
|
/* 02239E08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02239E0C */ cpu->r[10] = cpu->r[1] + 0x00000054u;
|
|
/* 02239E10 */ cpu->r[6] = cpu->r[5];
|
|
/* 02239E14 */ cpu->f[1] = cpu->f[27];
|
|
/* 02239E18 */ _t215 = cpu->r[1] + 0x00000008u;
|
|
/* 02239E18 */ rbrew_write32(cpu->mem, _t215, cpu->r[10]);
|
|
/* 02239E1C */ cpu->r[7] = cpu->r[5];
|
|
/* 02239E20 */ cpu->f[2] = cpu->f[3];
|
|
/* 02239E24 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239E28 */ cpu->r[10] = cpu->r[7];
|
|
/* 02239E2C */ cpu->r[8] = 0x000001FFu;
|
|
/* 02239E30 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02239E34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02239E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02239E38 */ _t216 = cpu->r[1] + 0x00000054u;
|
|
/* 02239E38 */ rbrew_write32(cpu->mem, _t216, cpu->r[3]);
|
|
/* 02239E3C */ _t217 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239E3C */ _t218 = _t217 & 0x00000001u;
|
|
/* 02239E3C */ if (_t218) goto L_02239E78; else goto L_02239E40;
|
|
L_02239E40: ; // 0x2239e40
|
|
/* 02239E40 */ goto L_02239EAC;
|
|
L_02239E44: ; // 0x2239e44
|
|
/* 02239E44 */ _t219 = cpu->r[1] + 0x00000058u;
|
|
/* 02239E44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t219);
|
|
/* 02239E48 */ cpu->r[7] = 0x10050000u;
|
|
/* 02239E4C */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02239E50 */ cpu->f[2] = cpu->f[27];
|
|
/* 02239E54 */ _t220 = cpu->r[7] + 0x00001F28u;
|
|
/* 02239E54 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 02239E58 */ cpu->r[9] = cpu->r[1] + 0x00000054u;
|
|
/* 02239E5C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239E60 */ cpu->r[6] = 0x00000000u;
|
|
/* 02239E64 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02239E68 */ Gambit_fn_0204A864(cpu);
|
|
/* 02239E6C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02239E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02239E70 */ _t221 = cpu->r[1] + 0x00000054u;
|
|
/* 02239E70 */ rbrew_write32(cpu->mem, _t221, cpu->r[3]);
|
|
/* 02239E74 */ _t222 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239E74 */ _t223 = _t222 & 0x00000001u;
|
|
/* 02239E74 */ if (_t223) goto L_02239E78; else goto L_02239EAC;
|
|
L_02239E78: ; // 0x2239e78
|
|
/* 02239E78 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02239E7C */ _t224 = cpu->r[3] + 0x00005B90u;
|
|
/* 02239E7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t224);
|
|
/* 02239E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02239E84 */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239E84 */ _t226 = _t225 & 0x00000001u;
|
|
/* 02239E84 */ if (_t226) goto L_02239EFC; else goto L_02239E88;
|
|
L_02239E88: ; // 0x2239e88
|
|
/* 02239E88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 02239E8C */ _t227 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02239E8C */ _t228 = _t227 & 0x00000001u;
|
|
/* 02239E8C */ if (_t228) goto L_02239E90; else goto L_02239EFC;
|
|
L_02239E90: ; // 0x2239e90
|
|
/* 02239E90 */ cpu->f[1] = cpu->f[30];
|
|
/* 02239E94 */ _t229 = cpu->r[31] + 0x000000A0u;
|
|
/* 02239E94 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 02239E98 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02239E9C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02239EA0 */ Gambit_fn_02399D90(cpu);
|
|
/* 02239EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02239EA8 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02239EA8 */ _t231 = _t230 & 0x00000001u;
|
|
/* 02239EA8 */ if (_t231) goto L_02239EFC; else goto L_02239EAC;
|
|
L_02239EAC: ; // 0x2239eac
|
|
/* 02239EAC */ _t232 = cpu->r[1] + 0x00000120u;
|
|
/* 02239EAC */ cpu->r[28] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02239EB0 */ _t233 = cpu->r[1] + 0x00000124u;
|
|
/* 02239EB0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02239EB4 */ _t234 = cpu->r[1] + 0x00000148u;
|
|
/* 02239EB4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 02239EB8 */ _t235 = cpu->r[1] + 0x00000138u;
|
|
/* 02239EB8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 02239EBC */ _t236 = cpu->r[1] + 0x00000140u;
|
|
/* 02239EBC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t236);
|
|
/* 02239EC0 */ _t237 = cpu->r[1] + 0x00000158u;
|
|
/* 02239EC0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t237);
|
|
/* 02239EC4 */ _t238 = cpu->r[1] + 0x00000130u;
|
|
/* 02239EC4 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t238);
|
|
/* 02239EC8 */ _t239 = cpu->r[1] + 0x00000150u;
|
|
/* 02239EC8 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t239);
|
|
/* 02239ECC */ _t240 = cpu->r[1] + 0x00000178u;
|
|
/* 02239ECC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t240);
|
|
/* 02239ED0 */ _t241 = cpu->r[1] + 0x00000168u;
|
|
/* 02239ED0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 02239ED4 */ _t242 = cpu->r[1] + 0x00000170u;
|
|
/* 02239ED4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t242);
|
|
/* 02239ED8 */ _t243 = cpu->r[1] + 0x00000160u;
|
|
/* 02239ED8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t243);
|
|
/* 02239EDC */ _t244 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02239EDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02239EE0 */ _t245 = cpu->r[1] + 0x00000128u;
|
|
/* 02239EE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t245);
|
|
/* 02239EE4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02239EE8 */ _t246 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02239EE8 */ _t247 = _t246 & 0x00000001u;
|
|
/* 02239EE8 */ if (_t247) goto L_02239EEC; // else: addr-0 trap, fall-through
|
|
L_02239EEC: ; // 0x2239eec
|
|
/* 02239EEC */ _t248 = cpu->r[1] + 0x00000184u;
|
|
/* 02239EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t248);
|
|
/* 02239EF0 */ cpu->lr = cpu->r[0];
|
|
/* 02239EF4 */ cpu->r[1] = cpu->r[1] + 0x00000180u;
|
|
/* 02239EF8 */ return;
|
|
L_02239EFC: ; // 0x2239efc
|
|
/* 02239EFC */ _t249 = cpu->r[1] + 0x00000120u;
|
|
/* 02239EFC */ cpu->r[28] = rbrew_read32(cpu->mem, _t249);
|
|
/* 02239F00 */ _t250 = cpu->r[1] + 0x00000124u;
|
|
/* 02239F00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t250);
|
|
/* 02239F04 */ _t251 = cpu->r[1] + 0x00000148u;
|
|
/* 02239F04 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 02239F08 */ _t252 = cpu->r[1] + 0x00000138u;
|
|
/* 02239F08 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t252);
|
|
/* 02239F0C */ _t253 = cpu->r[1] + 0x00000140u;
|
|
/* 02239F0C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t253);
|
|
/* 02239F10 */ _t254 = cpu->r[1] + 0x00000158u;
|
|
/* 02239F10 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 02239F14 */ _t255 = cpu->r[1] + 0x00000130u;
|
|
/* 02239F14 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t255);
|
|
/* 02239F18 */ _t256 = cpu->r[1] + 0x00000150u;
|
|
/* 02239F18 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t256);
|
|
/* 02239F1C */ _t257 = cpu->r[1] + 0x00000178u;
|
|
/* 02239F1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t257);
|
|
/* 02239F20 */ _t258 = cpu->r[1] + 0x00000168u;
|
|
/* 02239F20 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t258);
|
|
/* 02239F24 */ _t259 = cpu->r[1] + 0x00000170u;
|
|
/* 02239F24 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t259);
|
|
/* 02239F28 */ _t260 = cpu->r[1] + 0x00000160u;
|
|
/* 02239F28 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t260);
|
|
/* 02239F2C */ _t261 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02239F2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t261);
|
|
/* 02239F30 */ _t262 = cpu->r[1] + 0x00000128u;
|
|
/* 02239F30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t262);
|
|
/* 02239F34 */ cpu->r[3] = 0x00000000u;
|
|
/* 02239F38 */ _t263 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02239F38 */ _t264 = _t263 & 0x00000001u;
|
|
/* 02239F38 */ if (_t264) goto L_02239F3C; // else: addr-0 trap, fall-through
|
|
L_02239F3C: ; // 0x2239f3c
|
|
/* 02239F3C */ _t265 = cpu->r[1] + 0x00000184u;
|
|
/* 02239F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t265);
|
|
/* 02239F40 */ cpu->lr = cpu->r[0];
|
|
/* 02239F44 */ cpu->r[1] = cpu->r[1] + 0x00000180u;
|
|
/* 02239F48 */ return;
|
|
}
|
|
|
|
// fn_02239F4C @ 0x2239f4c
|
|
void Gambit_fn_02239F4C(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, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
double _ft29, _ft30;
|
|
|
|
L_02239F4C: ; // 0x2239f4c
|
|
/* 02239F4C */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 02239F50 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02239F50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02239F50 */ cpu->r[1] = _t0;
|
|
/* 02239F54 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02239F58 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 02239F5C */ _t1 = cpu->r[11] + 0x00002F30u;
|
|
/* 02239F5C */ rbrew_write32(cpu->mem, _t1, cpu->r[6]);
|
|
/* 02239F5C */ cpu->r[11] = _t1;
|
|
/* 02239F60 */ cpu->r[6] = 0x101E0000u;
|
|
/* 02239F64 */ cpu->r[4] = 0xFFFFFFFDu;
|
|
/* 02239F68 */ _t2 = cpu->r[6] + 0x00002F38u;
|
|
/* 02239F68 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 02239F68 */ cpu->r[6] = _t2;
|
|
/* 02239F6C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02239F70 */ _t3 = cpu->r[11] + 0x00000004u;
|
|
/* 02239F70 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 02239F74 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239F78 */ _t4 = cpu->r[12] + 0x00002F28u;
|
|
/* 02239F78 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 02239F78 */ cpu->r[12] = _t4;
|
|
/* 02239F7C */ cpu->r[11] = 0x10050000u;
|
|
/* 02239F80 */ _t5 = cpu->r[10] + 0x00001F28u;
|
|
/* 02239F80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02239F84 */ cpu->r[8] = 0x10050000u;
|
|
/* 02239F88 */ _t6 = cpu->r[12] + 0x00000004u;
|
|
/* 02239F88 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02239F8C */ cpu->r[12] = 0x10050000u;
|
|
/* 02239F90 */ _t7 = cpu->r[11] + 0x00001F20u;
|
|
/* 02239F90 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239F94 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239F98 */ _t8 = cpu->r[8] + 0x00001FECu;
|
|
/* 02239F98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02239F9C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02239FA0 */ _t9 = cpu->r[10] + 0x00001F34u;
|
|
/* 02239FA0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239FA4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02239FA8 */ cpu->r[11] = 0x10050000u;
|
|
/* 02239FAC */ _t10 = cpu->r[12] + 0x00001FF4u;
|
|
/* 02239FAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02239FB0 */ cpu->r[12] = 0x00000002u;
|
|
/* 02239FB4 */ _t11 = cpu->r[11] + 0x00001FF0u;
|
|
/* 02239FB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02239FB8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02239FBC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02239FBC */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02239FC0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02239FC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02239FC4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02239FC8 */ _t14 = cpu->r[8] + 0x00002F20u;
|
|
/* 02239FC8 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02239FC8 */ cpu->r[8] = _t14;
|
|
/* 02239FCC */ cpu->r[12] = 0x00000004u;
|
|
/* 02239FD0 */ _t15 = cpu->r[6] + 0x00000004u;
|
|
/* 02239FD0 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02239FD4 */ cpu->r[9] = cpu->r[9] + 0x00002F18u;
|
|
/* 02239FD8 */ _t16 = cpu->r[11] + 0x00002F54u;
|
|
/* 02239FD8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02239FDC */ cpu->r[11] = 0x101E0000u;
|
|
/* 02239FE0 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 02239FE0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02239FE4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02239FE8 */ _t18 = cpu->r[11] + 0x00002F58u;
|
|
/* 02239FE8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02239FE8 */ cpu->r[11] = _t18;
|
|
/* 02239FEC */ cpu->r[12] = cpu->r[12] + 0x00002F40u;
|
|
/* 02239FF0 */ _t19 = cpu->r[10] + 0x00002F48u;
|
|
/* 02239FF0 */ rbrew_write32(cpu->mem, _t19, cpu->r[4]);
|
|
/* 02239FF0 */ cpu->r[10] = _t19;
|
|
/* 02239FF4 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 02239FF4 */ rbrew_write32(cpu->mem, _t20, cpu->r[4]);
|
|
/* 02239FF8 */ _t21 = cpu->r[12] + 0x00000004u;
|
|
/* 02239FF8 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 02239FFC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A000 */ _t22 = cpu->r[10] + 0x00000004u;
|
|
/* 0223A000 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 0223A004 */ _t23 = cpu->r[12] + 0x00001FF8u;
|
|
/* 0223A004 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0223A008 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0223A008 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[7]);
|
|
/* 0223A00C */ _t25 = cpu->r[8] + 0x00000004u;
|
|
/* 0223A00C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[12]);
|
|
/* 0223A010 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A014 */ _t26 = cpu->r[11] + 0x00000004u;
|
|
/* 0223A014 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 0223A018 */ _t27 = cpu->r[12] + 0x00001F30u;
|
|
/* 0223A018 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0223A01C */ _t28 = cpu->r[11] + 0x00000008u;
|
|
/* 0223A01C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 0223A020 */ _ft29 = sqrt(cpu->f[0]);
|
|
/* 0223A020 */ _ft30 = (double)(int32_t)0x00000001u;
|
|
/* 0223A020 */ cpu->f[5] = _ft30 / _ft29;
|
|
/* 0223A024 */ cpu->f[6] = cpu->f[5] * cpu->f[5];
|
|
/* 0223A028 */ cpu->f[8] = cpu->f[5] * cpu->f[13];
|
|
/* 0223A02C */ cpu->f[6] = -fma(cpu->f[6], cpu->f[0], -(cpu->f[10]));
|
|
/* 0223A030 */ cpu->f[5] = cpu->f[6] * cpu->f[8];
|
|
/* 0223A034 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A038 */ _t31 = cpu->r[12] + 0x00002004u;
|
|
/* 0223A038 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0223A03C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A040 */ _t32 = cpu->r[12] + 0x00001FFCu;
|
|
/* 0223A040 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0223A044 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A048 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0223A04C */ _t33 = cpu->r[12] + 0x00002000u;
|
|
/* 0223A04C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0223A050 */ cpu->f[8] = cpu->f[5] * cpu->f[0];
|
|
/* 0223A054 */ _t34 = cpu->r[11] + 0x00002F64u;
|
|
/* 0223A054 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[9]);
|
|
/* 0223A054 */ cpu->r[11] = _t34;
|
|
/* 0223A058 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0223A05C */ _t35 = cpu->r[11] + 0x00000004u;
|
|
/* 0223A05C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
/* 0223A060 */ _t36 = cpu->r[12] + 0x00002F50u;
|
|
/* 0223A060 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[8]);
|
|
/* 0223A064 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223A068 */ _t37 = cpu->r[11] + 0x00000008u;
|
|
/* 0223A068 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0223A06C */ return;
|
|
}
|
|
|
|
// fn_02239F50 @ 0x2239f50
|
|
void Gambit_fn_02239F50(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, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
double _ft29, _ft30;
|
|
|
|
L_02239F50: ; // 0x2239f50
|
|
/* 02239F50 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02239F50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02239F50 */ cpu->r[1] = _t0;
|
|
/* 02239F54 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02239F58 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 02239F5C */ _t1 = cpu->r[11] + 0x00002F30u;
|
|
/* 02239F5C */ rbrew_write32(cpu->mem, _t1, cpu->r[6]);
|
|
/* 02239F5C */ cpu->r[11] = _t1;
|
|
/* 02239F60 */ cpu->r[6] = 0x101E0000u;
|
|
/* 02239F64 */ cpu->r[4] = 0xFFFFFFFDu;
|
|
/* 02239F68 */ _t2 = cpu->r[6] + 0x00002F38u;
|
|
/* 02239F68 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 02239F68 */ cpu->r[6] = _t2;
|
|
/* 02239F6C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02239F70 */ _t3 = cpu->r[11] + 0x00000004u;
|
|
/* 02239F70 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 02239F74 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239F78 */ _t4 = cpu->r[12] + 0x00002F28u;
|
|
/* 02239F78 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 02239F78 */ cpu->r[12] = _t4;
|
|
/* 02239F7C */ cpu->r[11] = 0x10050000u;
|
|
/* 02239F80 */ _t5 = cpu->r[10] + 0x00001F28u;
|
|
/* 02239F80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02239F84 */ cpu->r[8] = 0x10050000u;
|
|
/* 02239F88 */ _t6 = cpu->r[12] + 0x00000004u;
|
|
/* 02239F88 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02239F8C */ cpu->r[12] = 0x10050000u;
|
|
/* 02239F90 */ _t7 = cpu->r[11] + 0x00001F20u;
|
|
/* 02239F90 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02239F94 */ cpu->r[10] = 0x10050000u;
|
|
/* 02239F98 */ _t8 = cpu->r[8] + 0x00001FECu;
|
|
/* 02239F98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02239F9C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02239FA0 */ _t9 = cpu->r[10] + 0x00001F34u;
|
|
/* 02239FA0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02239FA4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02239FA8 */ cpu->r[11] = 0x10050000u;
|
|
/* 02239FAC */ _t10 = cpu->r[12] + 0x00001FF4u;
|
|
/* 02239FAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02239FB0 */ cpu->r[12] = 0x00000002u;
|
|
/* 02239FB4 */ _t11 = cpu->r[11] + 0x00001FF0u;
|
|
/* 02239FB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02239FB8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02239FBC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02239FBC */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02239FC0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02239FC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02239FC4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02239FC8 */ _t14 = cpu->r[8] + 0x00002F20u;
|
|
/* 02239FC8 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02239FC8 */ cpu->r[8] = _t14;
|
|
/* 02239FCC */ cpu->r[12] = 0x00000004u;
|
|
/* 02239FD0 */ _t15 = cpu->r[6] + 0x00000004u;
|
|
/* 02239FD0 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02239FD4 */ cpu->r[9] = cpu->r[9] + 0x00002F18u;
|
|
/* 02239FD8 */ _t16 = cpu->r[11] + 0x00002F54u;
|
|
/* 02239FD8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02239FDC */ cpu->r[11] = 0x101E0000u;
|
|
/* 02239FE0 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 02239FE0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02239FE4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02239FE8 */ _t18 = cpu->r[11] + 0x00002F58u;
|
|
/* 02239FE8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02239FE8 */ cpu->r[11] = _t18;
|
|
/* 02239FEC */ cpu->r[12] = cpu->r[12] + 0x00002F40u;
|
|
/* 02239FF0 */ _t19 = cpu->r[10] + 0x00002F48u;
|
|
/* 02239FF0 */ rbrew_write32(cpu->mem, _t19, cpu->r[4]);
|
|
/* 02239FF0 */ cpu->r[10] = _t19;
|
|
/* 02239FF4 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 02239FF4 */ rbrew_write32(cpu->mem, _t20, cpu->r[4]);
|
|
/* 02239FF8 */ _t21 = cpu->r[12] + 0x00000004u;
|
|
/* 02239FF8 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 02239FFC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A000 */ _t22 = cpu->r[10] + 0x00000004u;
|
|
/* 0223A000 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 0223A004 */ _t23 = cpu->r[12] + 0x00001FF8u;
|
|
/* 0223A004 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0223A008 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0223A008 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[7]);
|
|
/* 0223A00C */ _t25 = cpu->r[8] + 0x00000004u;
|
|
/* 0223A00C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[12]);
|
|
/* 0223A010 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A014 */ _t26 = cpu->r[11] + 0x00000004u;
|
|
/* 0223A014 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 0223A018 */ _t27 = cpu->r[12] + 0x00001F30u;
|
|
/* 0223A018 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0223A01C */ _t28 = cpu->r[11] + 0x00000008u;
|
|
/* 0223A01C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 0223A020 */ _ft29 = sqrt(cpu->f[0]);
|
|
/* 0223A020 */ _ft30 = (double)(int32_t)0x00000001u;
|
|
/* 0223A020 */ cpu->f[5] = _ft30 / _ft29;
|
|
/* 0223A024 */ cpu->f[6] = cpu->f[5] * cpu->f[5];
|
|
/* 0223A028 */ cpu->f[8] = cpu->f[5] * cpu->f[13];
|
|
/* 0223A02C */ cpu->f[6] = -fma(cpu->f[6], cpu->f[0], -(cpu->f[10]));
|
|
/* 0223A030 */ cpu->f[5] = cpu->f[6] * cpu->f[8];
|
|
/* 0223A034 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A038 */ _t31 = cpu->r[12] + 0x00002004u;
|
|
/* 0223A038 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0223A03C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A040 */ _t32 = cpu->r[12] + 0x00001FFCu;
|
|
/* 0223A040 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0223A044 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A048 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0223A04C */ _t33 = cpu->r[12] + 0x00002000u;
|
|
/* 0223A04C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0223A050 */ cpu->f[8] = cpu->f[5] * cpu->f[0];
|
|
/* 0223A054 */ _t34 = cpu->r[11] + 0x00002F64u;
|
|
/* 0223A054 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[9]);
|
|
/* 0223A054 */ cpu->r[11] = _t34;
|
|
/* 0223A058 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0223A05C */ _t35 = cpu->r[11] + 0x00000004u;
|
|
/* 0223A05C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
/* 0223A060 */ _t36 = cpu->r[12] + 0x00002F50u;
|
|
/* 0223A060 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[8]);
|
|
/* 0223A064 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223A068 */ _t37 = cpu->r[11] + 0x00000008u;
|
|
/* 0223A068 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0223A06C */ return;
|
|
}
|
|
|
|
// fn_0223A070 @ 0x223a070
|
|
void Gambit_fn_0223A070(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_0223A070: ; // 0x223a070
|
|
/* 0223A070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223A074 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A074 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0223A074 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A074 */ goto L_0223A078;
|
|
L_0223A078: ; // 0x223a078
|
|
/* 0223A078 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223A07C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A07C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223A07C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A07C */ goto L_0223A080;
|
|
L_0223A080: ; // 0x223a080
|
|
/* 0223A080 */ 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_0223A084 @ 0x223a084
|
|
void Gambit_fn_0223A084(CPUState* cpu) {
|
|
L_0223A084: ; // 0x223a084
|
|
/* 0223A084 */ return;
|
|
}
|
|
|
|
// fn_0223A088 @ 0x223a088
|
|
void Gambit_fn_0223A088(CPUState* cpu) {
|
|
L_0223A088: ; // 0x223a088
|
|
/* 0223A088 */ return;
|
|
}
|
|
|
|
// fn_0223A08C @ 0x223a08c
|
|
void Gambit_fn_0223A08C(CPUState* cpu) {
|
|
L_0223A08C: ; // 0x223a08c
|
|
/* 0223A08C */ return;
|
|
}
|
|
|
|
// fn_0223A090 @ 0x223a090
|
|
void Gambit_fn_0223A090(CPUState* cpu) {
|
|
L_0223A090: ; // 0x223a090
|
|
/* 0223A090 */ return;
|
|
}
|
|
|
|
// fn_0223A094 @ 0x223a094
|
|
void Gambit_fn_0223A094(CPUState* cpu) {
|
|
L_0223A094: ; // 0x223a094
|
|
/* 0223A094 */ return;
|
|
}
|
|
|
|
// fn_0223A098 @ 0x223a098
|
|
void Gambit_fn_0223A098(CPUState* cpu) {
|
|
L_0223A098: ; // 0x223a098
|
|
/* 0223A098 */ return;
|
|
}
|
|
|
|
// fn_0223A09C @ 0x223a09c
|
|
void Gambit_fn_0223A09C(CPUState* cpu) {
|
|
L_0223A09C: ; // 0x223a09c
|
|
/* 0223A09C */ return;
|
|
}
|
|
|
|
// fn_0223A0A0 @ 0x223a0a0
|
|
void Gambit_fn_0223A0A0(CPUState* cpu) {
|
|
L_0223A0A0: ; // 0x223a0a0
|
|
/* 0223A0A0 */ return;
|
|
}
|
|
|
|
// fn_0223A0A4 @ 0x223a0a4
|
|
void Gambit_fn_0223A0A4(CPUState* cpu) {
|
|
L_0223A0A4: ; // 0x223a0a4
|
|
/* 0223A0A4 */ return;
|
|
}
|
|
|
|
// fn_0223A0A8 @ 0x223a0a8
|
|
void Gambit_fn_0223A0A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223A0A8: ; // 0x223a0a8
|
|
/* 0223A0A8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223A0A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A0AC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223A0B0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A0B0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A0B0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223A0B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A0B0 */ goto L_0223A0B4;
|
|
L_0223A0B4: ; // 0x223a0b4
|
|
/* 0223A0B4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A0B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223A0B8 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0223A0B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223A0BC */ cpu->ctr = cpu->r[0];
|
|
/* 0223A0C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A0C4 @ 0x223a0c4
|
|
void Gambit_fn_0223A0C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223A0C4: ; // 0x223a0c4
|
|
/* 0223A0C4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223A0C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A0C8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223A0CC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A0CC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A0CC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223A0CC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A0CC */ goto L_0223A0D0;
|
|
L_0223A0D0: ; // 0x223a0d0
|
|
/* 0223A0D0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A0D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223A0D4 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0223A0D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223A0D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A0DC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A0E0 @ 0x223a0e0
|
|
void Gambit_fn_0223A0E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223A0E0: ; // 0x223a0e0
|
|
/* 0223A0E0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223A0E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A0E4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223A0E8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A0E8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A0E8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223A0E8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A0E8 */ goto L_0223A0EC;
|
|
L_0223A0EC: ; // 0x223a0ec
|
|
/* 0223A0EC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A0EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223A0F0 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0223A0F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223A0F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A0F8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A0FC @ 0x223a0fc
|
|
void Gambit_fn_0223A0FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A0FC: ; // 0x223a0fc
|
|
/* 0223A0FC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A0FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A100 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0223A100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A104 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A108 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A10C @ 0x223a10c
|
|
void Gambit_fn_0223A10C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223A10C: ; // 0x223a10c
|
|
/* 0223A10C */ cpu->r[0] = cpu->lr;
|
|
/* 0223A110 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A110 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A110 */ cpu->r[1] = _t0;
|
|
/* 0223A114 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A114 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223A118 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223A11C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A11C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223A120 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A120 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223A124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223A128 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A128 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223A128 */ if (_t5) goto L_0223A12C; else goto L_0223A148;
|
|
L_0223A12C: ; // 0x223a12c
|
|
/* 0223A12C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223A12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223A130 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223A130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223A134 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A138 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223A13C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223A140 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223A144 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A144 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223A148: ; // 0x223a148
|
|
/* 0223A148 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223A14C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A14C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223A150 */ cpu->lr = cpu->r[0];
|
|
/* 0223A154 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A158 */ return;
|
|
}
|
|
|
|
// fn_0223A110 @ 0x223a110
|
|
void Gambit_fn_0223A110(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223A110: ; // 0x223a110
|
|
/* 0223A110 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A110 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A110 */ cpu->r[1] = _t0;
|
|
/* 0223A114 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A114 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223A118 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223A11C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A11C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223A120 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A120 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223A124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223A128 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A128 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223A128 */ if (_t5) goto L_0223A12C; else goto L_0223A148;
|
|
L_0223A12C: ; // 0x223a12c
|
|
/* 0223A12C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223A12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223A130 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223A130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223A134 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A138 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223A13C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223A140 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223A144 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A144 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223A148: ; // 0x223a148
|
|
/* 0223A148 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223A14C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A14C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223A150 */ cpu->lr = cpu->r[0];
|
|
/* 0223A154 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A158 */ return;
|
|
}
|
|
|
|
// fn_0223A15C @ 0x223a15c
|
|
void Gambit_fn_0223A15C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A15C: ; // 0x223a15c
|
|
/* 0223A15C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A15C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A160 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0223A160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A164 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A168 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A16C @ 0x223a16c
|
|
void Gambit_fn_0223A16C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A16C: ; // 0x223a16c
|
|
/* 0223A16C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A16C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A170 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223A170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A174 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A178 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A17C @ 0x223a17c
|
|
void Gambit_fn_0223A17C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A17C: ; // 0x223a17c
|
|
/* 0223A17C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A17C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A180 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223A180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A184 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A188 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A18C @ 0x223a18c
|
|
void Gambit_fn_0223A18C(CPUState* cpu) {
|
|
L_0223A18C: ; // 0x223a18c
|
|
/* 0223A18C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A190 */ return;
|
|
}
|
|
|
|
// fn_0223A194 @ 0x223a194
|
|
void Gambit_fn_0223A194(CPUState* cpu) {
|
|
L_0223A194: ; // 0x223a194
|
|
/* 0223A194 */ return;
|
|
}
|
|
|
|
// fn_0223A198 @ 0x223a198
|
|
void Gambit_fn_0223A198(CPUState* cpu) {
|
|
L_0223A198: ; // 0x223a198
|
|
/* 0223A198 */ return;
|
|
}
|
|
|
|
// fn_0223A19C @ 0x223a19c
|
|
void Gambit_fn_0223A19C(CPUState* cpu) {
|
|
L_0223A19C: ; // 0x223a19c
|
|
/* 0223A19C */ return;
|
|
}
|
|
|
|
// fn_0223A1A0 @ 0x223a1a0
|
|
void Gambit_fn_0223A1A0(CPUState* cpu) {
|
|
L_0223A1A0: ; // 0x223a1a0
|
|
/* 0223A1A0 */ return;
|
|
}
|
|
|
|
// fn_0223A1A4 @ 0x223a1a4
|
|
void Gambit_fn_0223A1A4(CPUState* cpu) {
|
|
L_0223A1A4: ; // 0x223a1a4
|
|
/* 0223A1A4 */ return;
|
|
}
|
|
|
|
// fn_0223A1A8 @ 0x223a1a8
|
|
void Gambit_fn_0223A1A8(CPUState* cpu) {
|
|
L_0223A1A8: ; // 0x223a1a8
|
|
/* 0223A1A8 */ return;
|
|
}
|
|
|
|
// fn_0223A1AC @ 0x223a1ac
|
|
void Gambit_fn_0223A1AC(CPUState* cpu) {
|
|
L_0223A1AC: ; // 0x223a1ac
|
|
/* 0223A1AC */ return;
|
|
}
|
|
|
|
// fn_0223A1B0 @ 0x223a1b0
|
|
void Gambit_fn_0223A1B0(CPUState* cpu) {
|
|
L_0223A1B0: ; // 0x223a1b0
|
|
/* 0223A1B0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A1B4 */ return;
|
|
}
|
|
|
|
// fn_0223A1B8 @ 0x223a1b8
|
|
void Gambit_fn_0223A1B8(CPUState* cpu) {
|
|
L_0223A1B8: ; // 0x223a1b8
|
|
/* 0223A1B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A1BC */ return;
|
|
}
|
|
|
|
// fn_0223A1C0 @ 0x223a1c0
|
|
void Gambit_fn_0223A1C0(CPUState* cpu) {
|
|
L_0223A1C0: ; // 0x223a1c0
|
|
/* 0223A1C0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A1C4 */ return;
|
|
}
|
|
|
|
// fn_0223A1C8 @ 0x223a1c8
|
|
void Gambit_fn_0223A1C8(CPUState* cpu) {
|
|
L_0223A1C8: ; // 0x223a1c8
|
|
/* 0223A1C8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A1CC */ return;
|
|
}
|
|
|
|
// fn_0223A1D0 @ 0x223a1d0
|
|
void Gambit_fn_0223A1D0(CPUState* cpu) {
|
|
L_0223A1D0: ; // 0x223a1d0
|
|
/* 0223A1D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A1D4 */ return;
|
|
}
|
|
|
|
// fn_0223A1D8 @ 0x223a1d8
|
|
void Gambit_fn_0223A1D8(CPUState* cpu) {
|
|
L_0223A1D8: ; // 0x223a1d8
|
|
/* 0223A1D8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A1DC */ return;
|
|
}
|
|
|
|
// fn_0223A1E0 @ 0x223a1e0
|
|
void Gambit_fn_0223A1E0(CPUState* cpu) {
|
|
L_0223A1E0: ; // 0x223a1e0
|
|
/* 0223A1E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A1E4 */ return;
|
|
}
|
|
|
|
// fn_0223A1E8 @ 0x223a1e8
|
|
void Gambit_fn_0223A1E8(CPUState* cpu) {
|
|
L_0223A1E8: ; // 0x223a1e8
|
|
/* 0223A1E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A1EC */ return;
|
|
}
|
|
|
|
// fn_0223A1F0 @ 0x223a1f0
|
|
void Gambit_fn_0223A1F0(CPUState* cpu) {
|
|
L_0223A1F0: ; // 0x223a1f0
|
|
/* 0223A1F0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A1F4 */ return;
|
|
}
|
|
|
|
// fn_0223A1F8 @ 0x223a1f8
|
|
void Gambit_fn_0223A1F8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A1F8: ; // 0x223a1f8
|
|
/* 0223A1F8 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 0223A1F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A1FC */ return;
|
|
}
|
|
|
|
// fn_0223A200 @ 0x223a200
|
|
void Gambit_fn_0223A200(CPUState* cpu) {
|
|
L_0223A200: ; // 0x223a200
|
|
/* 0223A200 */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 0223A204 */ return;
|
|
}
|
|
|
|
// fn_0223A208 @ 0x223a208
|
|
void Gambit_fn_0223A208(CPUState* cpu) {
|
|
L_0223A208: ; // 0x223a208
|
|
/* 0223A208 */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 0223A20C */ return;
|
|
}
|
|
|
|
// fn_0223A210 @ 0x223a210
|
|
void Gambit_fn_0223A210(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A210: ; // 0x223a210
|
|
/* 0223A210 */ _t0 = cpu->r[3] + 0x000000E8u;
|
|
/* 0223A210 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A214 */ return;
|
|
}
|
|
|
|
// fn_0223A218 @ 0x223a218
|
|
void Gambit_fn_0223A218(CPUState* cpu) {
|
|
L_0223A218: ; // 0x223a218
|
|
/* 0223A218 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A21C */ return;
|
|
}
|
|
|
|
// fn_0223A220 @ 0x223a220
|
|
void Gambit_fn_0223A220(CPUState* cpu) {
|
|
L_0223A220: ; // 0x223a220
|
|
/* 0223A220 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A224 */ return;
|
|
}
|
|
|
|
// fn_0223A228 @ 0x223a228
|
|
void Gambit_fn_0223A228(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A228: ; // 0x223a228
|
|
/* 0223A228 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A228 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A22C */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 0223A22C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A230 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A234 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A238 @ 0x223a238
|
|
void Gambit_fn_0223A238(CPUState* cpu) {
|
|
L_0223A238: ; // 0x223a238
|
|
/* 0223A238 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A23C */ return;
|
|
}
|
|
|
|
// fn_0223A240 @ 0x223a240
|
|
void Gambit_fn_0223A240(CPUState* cpu) {
|
|
L_0223A240: ; // 0x223a240
|
|
/* 0223A240 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A244 */ return;
|
|
}
|
|
|
|
// fn_0223A248 @ 0x223a248
|
|
void Gambit_fn_0223A248(CPUState* cpu) {
|
|
L_0223A248: ; // 0x223a248
|
|
/* 0223A248 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A24C */ return;
|
|
}
|
|
|
|
// fn_0223A250 @ 0x223a250
|
|
void Gambit_fn_0223A250(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223A250: ; // 0x223a250
|
|
/* 0223A250 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A254 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A258 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 0223A258 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 0223A258 */ cpu->r[12] = _t2 | _t1;
|
|
/* 0223A25C */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A25C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0223A260 */ return;
|
|
}
|
|
|
|
// fn_0223A264 @ 0x223a264
|
|
void Gambit_fn_0223A264(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A264: ; // 0x223a264
|
|
/* 0223A264 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A264 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A268 */ _t1 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0223A268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A26C */ cpu->ctr = cpu->r[0];
|
|
/* 0223A270 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A274 @ 0x223a274
|
|
void Gambit_fn_0223A274(CPUState* cpu) {
|
|
L_0223A274: ; // 0x223a274
|
|
/* 0223A274 */ return;
|
|
}
|
|
|
|
// fn_0223A278 @ 0x223a278
|
|
void Gambit_fn_0223A278(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A278: ; // 0x223a278
|
|
/* 0223A278 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A27C */ _t0 = cpu->r[12] + 0x00001F20u;
|
|
/* 0223A27C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A280 */ return;
|
|
}
|
|
|
|
// fn_0223A284 @ 0x223a284
|
|
void Gambit_fn_0223A284(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A284: ; // 0x223a284
|
|
/* 0223A284 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 0223A284 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A288 */ return;
|
|
}
|
|
|
|
// fn_0223A28C @ 0x223a28c
|
|
void Gambit_fn_0223A28C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A28C: ; // 0x223a28c
|
|
/* 0223A28C */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 0223A28C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A290 */ return;
|
|
}
|
|
|
|
// fn_0223A294 @ 0x223a294
|
|
void Gambit_fn_0223A294(CPUState* cpu) {
|
|
L_0223A294: ; // 0x223a294
|
|
/* 0223A294 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A298 */ return;
|
|
}
|
|
|
|
// fn_0223A29C @ 0x223a29c
|
|
void Gambit_fn_0223A29C(CPUState* cpu) {
|
|
L_0223A29C: ; // 0x223a29c
|
|
/* 0223A29C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A2A0 */ return;
|
|
}
|
|
|
|
// fn_0223A2A4 @ 0x223a2a4
|
|
void Gambit_fn_0223A2A4(CPUState* cpu) {
|
|
L_0223A2A4: ; // 0x223a2a4
|
|
/* 0223A2A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A2A8 */ return;
|
|
}
|
|
|
|
// fn_0223A2AC @ 0x223a2ac
|
|
void Gambit_fn_0223A2AC(CPUState* cpu) {
|
|
L_0223A2AC: ; // 0x223a2ac
|
|
/* 0223A2AC */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A2B0 */ return;
|
|
}
|
|
|
|
// fn_0223A2B4 @ 0x223a2b4
|
|
void Gambit_fn_0223A2B4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A2B4: ; // 0x223a2b4
|
|
/* 0223A2B4 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 0223A2B4 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223A2B8 */ return;
|
|
}
|
|
|
|
// fn_0223A2BC @ 0x223a2bc
|
|
void Gambit_fn_0223A2BC(CPUState* cpu) {
|
|
L_0223A2BC: ; // 0x223a2bc
|
|
/* 0223A2BC */ return;
|
|
}
|
|
|
|
// fn_0223A2C0 @ 0x223a2c0
|
|
void Gambit_fn_0223A2C0(CPUState* cpu) {
|
|
L_0223A2C0: ; // 0x223a2c0
|
|
/* 0223A2C0 */ return;
|
|
}
|
|
|
|
// fn_0223A2C4 @ 0x223a2c4
|
|
void Gambit_fn_0223A2C4(CPUState* cpu) {
|
|
L_0223A2C4: ; // 0x223a2c4
|
|
/* 0223A2C4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A2C8 */ return;
|
|
}
|
|
|
|
// fn_0223A2CC @ 0x223a2cc
|
|
void Gambit_fn_0223A2CC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A2CC: ; // 0x223a2cc
|
|
/* 0223A2CC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A2D0 */ _t0 = cpu->r[12] + 0x00001F20u;
|
|
/* 0223A2D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A2D4 */ return;
|
|
}
|
|
|
|
// fn_0223A2D8 @ 0x223a2d8
|
|
void Gambit_fn_0223A2D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223A2D8: ; // 0x223a2d8
|
|
/* 0223A2D8 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A2D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A2DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223A2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223A2E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A2E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A2E0 */ if (_t2) goto L_0223A2F0; else goto L_0223A2E4;
|
|
L_0223A2E4: ; // 0x223a2e4
|
|
/* 0223A2E4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A2E8 */ _t3 = cpu->r[12] + 0x00001F20u;
|
|
/* 0223A2E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223A2EC */ return;
|
|
L_0223A2F0: ; // 0x223a2f0
|
|
/* 0223A2F0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A2F4 */ _t4 = cpu->r[12] + 0x00001F28u;
|
|
/* 0223A2F4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223A2F8 */ return;
|
|
}
|
|
|
|
// fn_0223A2FC @ 0x223a2fc
|
|
void Gambit_fn_0223A2FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
L_0223A2FC: ; // 0x223a2fc
|
|
/* 0223A2FC */ goto L_0222E4C4;
|
|
}
|
|
|
|
// fn_0223A300 @ 0x223a300
|
|
void Gambit_fn_0223A300(CPUState* cpu) {
|
|
L_0223A300: ; // 0x223a300
|
|
/* 0223A300 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A304 */ return;
|
|
}
|
|
|
|
// fn_0223A308 @ 0x223a308
|
|
void Gambit_fn_0223A308(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A308: ; // 0x223a308
|
|
/* 0223A308 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A30C */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 0223A310 */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A310 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223A314 */ return;
|
|
}
|
|
|
|
// fn_0223A318 @ 0x223a318
|
|
void Gambit_fn_0223A318(CPUState* cpu) {
|
|
L_0223A318: ; // 0x223a318
|
|
/* 0223A318 */ cpu->r[3] = 0x10050000u;
|
|
/* 0223A31C */ cpu->r[3] = cpu->r[3] + 0x00001F10u;
|
|
/* 0223A320 */ return;
|
|
}
|
|
|
|
// fn_0223A324 @ 0x223a324
|
|
void Gambit_fn_0223A324(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_0223A324: ; // 0x223a324
|
|
/* 0223A324 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A328 */ _t0 = cpu->r[10] + 0xFFFFFDB8u;
|
|
/* 0223A328 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A32C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223A330 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A334 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF8Cu;
|
|
/* 0223A338 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A338 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A338 */ if (_t2) goto L_0223A33C; else goto L_0223A354;
|
|
L_0223A33C: ; // 0x223a33c
|
|
/* 0223A33C */ cpu->r[0] = 0x10050000u;
|
|
/* 0223A340 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223A344 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223A348 */ cpu->r[0] = cpu->r[0] + 0x00001F00u;
|
|
/* 0223A34C */ _t3 = cpu->r[11] + 0xFFFFFDB8u;
|
|
/* 0223A34C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0223A350 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0223A350 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0223A354: ; // 0x223a354
|
|
/* 0223A354 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0223A358 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A358 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223A358 */ if (_t6) goto L_0223A35C; else goto L_0223A364;
|
|
L_0223A35C: ; // 0x223a35c
|
|
/* 0223A35C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A360 */ return;
|
|
L_0223A364: ; // 0x223a364
|
|
/* 0223A364 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A368 */ _t7 = cpu->r[9] + 0xFFFFDA00u;
|
|
/* 0223A368 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223A36C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223A370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223A374 */ cpu->r[11] = cpu->r[11] + 0xFFFFFBFCu;
|
|
/* 0223A378 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A378 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223A378 */ if (_t9) goto L_0223A37C; else goto L_0223A394;
|
|
L_0223A37C: ; // 0x223a37c
|
|
/* 0223A37C */ cpu->r[9] = 0x10050000u;
|
|
/* 0223A380 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A384 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A388 */ cpu->r[9] = cpu->r[9] + 0x00001ED0u;
|
|
/* 0223A38C */ _t10 = cpu->r[10] + 0xFFFFDA00u;
|
|
/* 0223A38C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0223A390 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0223A390 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0223A394: ; // 0x223a394
|
|
/* 0223A394 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0223A398 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A398 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223A398 */ if (_t13) goto L_0223A39C; else goto L_0223A3A4;
|
|
L_0223A39C: ; // 0x223a39c
|
|
/* 0223A39C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A3A0 */ goto L_0223A45C;
|
|
L_0223A3A4: ; // 0x223a3a4
|
|
/* 0223A3A4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223A3A8 */ _t14 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 0223A3A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223A3AC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223A3B4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFB4Cu;
|
|
/* 0223A3B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A3B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223A3B8 */ if (_t16) goto L_0223A3BC; else goto L_0223A3D4;
|
|
L_0223A3BC: ; // 0x223a3bc
|
|
/* 0223A3BC */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A3C0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0223A3C4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223A3C8 */ cpu->r[11] = cpu->r[11] + 0x00001EC0u;
|
|
/* 0223A3CC */ _t17 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 0223A3CC */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0223A3D0 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0223A3D0 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0223A3D4: ; // 0x223a3d4
|
|
/* 0223A3D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0223A3D8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A3D8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223A3D8 */ if (_t20) goto L_0223A3DC; else goto L_0223A3E4;
|
|
L_0223A3DC: ; // 0x223a3dc
|
|
/* 0223A3DC */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A3E0 */ goto L_0223A458;
|
|
L_0223A3E4: ; // 0x223a3e4
|
|
/* 0223A3E4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A3E8 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0223A3E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223A3E8 */ cpu->r[9] = _t21;
|
|
/* 0223A3EC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A3F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223A3F4 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0223A3F8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A3F8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223A3F8 */ if (_t23) goto L_0223A3FC; else goto L_0223A410;
|
|
L_0223A3FC: ; // 0x223a3fc
|
|
/* 0223A3FC */ cpu->r[0] = 0x10050000u;
|
|
/* 0223A400 */ cpu->r[11] = 0x00000001u;
|
|
/* 0223A404 */ cpu->r[0] = cpu->r[0] + 0x00001EB0u;
|
|
/* 0223A408 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0223A408 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0223A40C */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0223A40C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0223A410: ; // 0x223a410
|
|
/* 0223A410 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0223A414 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A414 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223A414 */ if (_t27) goto L_0223A418; else goto L_0223A420;
|
|
L_0223A418: ; // 0x223a418
|
|
/* 0223A418 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A41C */ goto L_0223A458;
|
|
L_0223A420: ; // 0x223a420
|
|
/* 0223A420 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A424 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0223A424 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0223A424 */ cpu->r[10] = _t28;
|
|
/* 0223A428 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223A42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223A430 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0223A434 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A434 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0223A434 */ if (_t30) goto L_0223A438; else goto L_0223A44C;
|
|
L_0223A438: ; // 0x223a438
|
|
/* 0223A438 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223A43C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A440 */ cpu->r[9] = cpu->r[9] + 0x00001E88u;
|
|
/* 0223A444 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0223A444 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0223A448 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0223A448 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0223A44C: ; // 0x223a44c
|
|
/* 0223A44C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0223A450 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0223A454 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0223A458: ; // 0x223a458
|
|
/* 0223A458 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0223A45C: ; // 0x223a45c
|
|
/* 0223A45C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223A460 */ return;
|
|
}
|
|
|
|
// fn_0223A464 @ 0x223a464
|
|
void Gambit_fn_0223A464(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A464: ; // 0x223a464
|
|
/* 0223A464 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A468 */ _t0 = cpu->r[12] + 0x00002008u;
|
|
/* 0223A468 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A46C */ return;
|
|
}
|
|
|
|
// fn_0223A470 @ 0x223a470
|
|
void Gambit_fn_0223A470(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A470: ; // 0x223a470
|
|
/* 0223A470 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A474 */ _t0 = cpu->r[12] + 0x0000200Cu;
|
|
/* 0223A474 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A478 */ return;
|
|
}
|
|
|
|
// fn_0223A47C @ 0x223a47c
|
|
void Gambit_fn_0223A47C(CPUState* cpu) {
|
|
L_0223A47C: ; // 0x223a47c
|
|
/* 0223A47C */ cpu->r[3] = cpu->r[3] + 0x0000013Cu;
|
|
/* 0223A480 */ return;
|
|
}
|
|
|
|
// fn_0223A484 @ 0x223a484
|
|
void Gambit_fn_0223A484(CPUState* cpu) {
|
|
L_0223A484: ; // 0x223a484
|
|
/* 0223A484 */ cpu->r[3] = cpu->r[3] + 0x0000016Cu;
|
|
/* 0223A488 */ return;
|
|
}
|
|
|
|
// fn_0223A48C @ 0x223a48c
|
|
void Gambit_fn_0223A48C(CPUState* cpu) {
|
|
L_0223A48C: ; // 0x223a48c
|
|
/* 0223A48C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A490 */ return;
|
|
}
|
|
|
|
// fn_0223A494 @ 0x223a494
|
|
void Gambit_fn_0223A494(CPUState* cpu) {
|
|
L_0223A494: ; // 0x223a494
|
|
/* 0223A494 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A498 */ return;
|
|
}
|
|
|
|
// fn_0223A49C @ 0x223a49c
|
|
void Gambit_fn_0223A49C(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_0223A49C: ; // 0x223a49c
|
|
/* 0223A49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223A4A0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A4A0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0223A4A0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A4A0 */ goto L_0223A4A4;
|
|
L_0223A4A4: ; // 0x223a4a4
|
|
/* 0223A4A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A4A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223A4A8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A4A8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223A4A8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A4A8 */ goto L_0223A4AC;
|
|
L_0223A4AC: ; // 0x223a4ac
|
|
/* 0223A4AC */ 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_0223A4B0 @ 0x223a4b0
|
|
void Gambit_fn_0223A4B0(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_0223A4B0: ; // 0x223a4b0
|
|
/* 0223A4B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223A4B4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A4B4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0223A4B4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A4B4 */ goto L_0223A4B8;
|
|
L_0223A4B8: ; // 0x223a4b8
|
|
/* 0223A4B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A4B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223A4BC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A4BC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223A4BC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A4BC */ goto L_0223A4C0;
|
|
L_0223A4C0: ; // 0x223a4c0
|
|
/* 0223A4C0 */ 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_0223A4C8 @ 0x223a4c8
|
|
void Gambit_fn_0223A4C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0223A4C8: ; // 0x223a4c8
|
|
/* 0223A4C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A4C8 */ cpu->r[1] = _t0;
|
|
/* 0223A4CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223A4D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223A4D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223A4D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A4D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223A4D8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A4D8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0223A4D8 */ if (_t4) goto L_0223A4DC; else goto L_0223A4EC;
|
|
L_0223A4DC: ; // 0x223a4dc
|
|
/* 0223A4DC */ cpu->r[3] = 0x00000184u;
|
|
/* 0223A4E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223A4E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223A4E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223A4E8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A4E8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223A4E8 */ if (_t6) goto L_0223A500; else goto L_0223A4EC;
|
|
L_0223A4EC: ; // 0x223a4ec
|
|
/* 0223A4EC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223A4F0 */ Gambit_fn_021D8BD0(cpu);
|
|
/* 0223A4F4 */ cpu->r[0] = 0x10050000u;
|
|
/* 0223A4F8 */ cpu->r[0] = cpu->r[0] + 0x00002524u;
|
|
/* 0223A4FC */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0223A4FC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_0223A500: ; // 0x223a500
|
|
/* 0223A500 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A500 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223A504 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223A508 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A508 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223A50C */ cpu->lr = cpu->r[0];
|
|
/* 0223A510 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A514 */ return;
|
|
}
|
|
|
|
// fn_0223A518 @ 0x223a518
|
|
void Gambit_fn_0223A518(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;
|
|
|
|
L_0223A518: ; // 0x223a518
|
|
/* 0223A518 */ cpu->r[0] = cpu->lr;
|
|
/* 0223A51C */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A520 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0223A520 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A520 */ cpu->r[1] = _t0;
|
|
/* 0223A524 */ _t1 = cpu->r[11] + 0x00002508u;
|
|
/* 0223A524 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0223A528 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A52C */ cpu->f[10] = cpu->f[1];
|
|
/* 0223A530 */ _t2 = cpu->r[11] + 0x00002504u;
|
|
/* 0223A530 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0223A534 */ cpu->r[11] = 0x00000002u;
|
|
/* 0223A538 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223A538 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0223A53C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0223A53C */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 0223A540 */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 0223A544 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0223A544 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223A548 */ /* nop */
|
|
/* 0223A54C */ _t6 = cpu->r[1] + 0x00000038u;
|
|
/* 0223A54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223A550 */ /* nop */
|
|
/* 0223A554 */ _t7 = cpu->r[8] + 0x00000008u;
|
|
/* 0223A554 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0223A558 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 0223A55C */ /* nop */
|
|
/* 0223A560 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A560 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223A564 */ cpu->r[12] = cpu->r[10];
|
|
/* 0223A568 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223A568 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[9]);
|
|
/* 0223A56C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223A56C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223A570 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A570 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0223A574 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 0223A574 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0223A578 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223A57C */ _t13 = cpu->r[1] + 0x00000020u;
|
|
/* 0223A57C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 0223A580 */ cpu->f[2] = cpu->f[1] * cpu->f[13];
|
|
/* 0223A584 */ _t14 = cpu->r[10] + 0x0000250Cu;
|
|
/* 0223A584 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0223A588 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A58C */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 0223A58C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223A590 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223A594 */ _t16 = cpu->r[11] + 0x00002518u;
|
|
/* 0223A594 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0223A598 */ cpu->f[3] = cpu->f[10] * cpu->f[12];
|
|
/* 0223A59C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0223A59C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0223A5A0 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223A5A4 */ _t18 = cpu->r[10] + 0x00002510u;
|
|
/* 0223A5A4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0223A5A8 */ cpu->r[10] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A5AC */ _t19 = cpu->r[8] + 0x00002514u;
|
|
/* 0223A5AC */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0223A5B0 */ cpu->r[8] = cpu->r[1] + 0x00000020u;
|
|
/* 0223A5B4 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0223A5B4 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 0223A5B8 */ Gambit_fn_0222F210(cpu);
|
|
/* 0223A5BC */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0223A5BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223A5C0 */ cpu->lr = cpu->r[0];
|
|
/* 0223A5C4 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223A5C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223A5C8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0223A5CC */ return;
|
|
}
|
|
|
|
// fn_0223A520 @ 0x223a520
|
|
void Gambit_fn_0223A520(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;
|
|
|
|
L_0223A520: ; // 0x223a520
|
|
/* 0223A520 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0223A520 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A520 */ cpu->r[1] = _t0;
|
|
/* 0223A524 */ _t1 = cpu->r[11] + 0x00002508u;
|
|
/* 0223A524 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0223A528 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A52C */ cpu->f[10] = cpu->f[1];
|
|
/* 0223A530 */ _t2 = cpu->r[11] + 0x00002504u;
|
|
/* 0223A530 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0223A534 */ cpu->r[11] = 0x00000002u;
|
|
/* 0223A538 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223A538 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0223A53C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0223A53C */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 0223A540 */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 0223A544 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0223A544 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223A548 */ /* nop */
|
|
/* 0223A54C */ _t6 = cpu->r[1] + 0x00000038u;
|
|
/* 0223A54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223A550 */ /* nop */
|
|
/* 0223A554 */ _t7 = cpu->r[8] + 0x00000008u;
|
|
/* 0223A554 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0223A558 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 0223A55C */ /* nop */
|
|
/* 0223A560 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A560 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223A564 */ cpu->r[12] = cpu->r[10];
|
|
/* 0223A568 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223A568 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[9]);
|
|
/* 0223A56C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223A56C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223A570 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A570 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0223A574 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 0223A574 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0223A578 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223A57C */ _t13 = cpu->r[1] + 0x00000020u;
|
|
/* 0223A57C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 0223A580 */ cpu->f[2] = cpu->f[1] * cpu->f[13];
|
|
/* 0223A584 */ _t14 = cpu->r[10] + 0x0000250Cu;
|
|
/* 0223A584 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0223A588 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A58C */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 0223A58C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223A590 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223A594 */ _t16 = cpu->r[11] + 0x00002518u;
|
|
/* 0223A594 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0223A598 */ cpu->f[3] = cpu->f[10] * cpu->f[12];
|
|
/* 0223A59C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0223A59C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0223A5A0 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223A5A4 */ _t18 = cpu->r[10] + 0x00002510u;
|
|
/* 0223A5A4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0223A5A8 */ cpu->r[10] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A5AC */ _t19 = cpu->r[8] + 0x00002514u;
|
|
/* 0223A5AC */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0223A5B0 */ cpu->r[8] = cpu->r[1] + 0x00000020u;
|
|
/* 0223A5B4 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0223A5B4 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 0223A5B8 */ Gambit_fn_0222F210(cpu);
|
|
/* 0223A5BC */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0223A5BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223A5C0 */ cpu->lr = cpu->r[0];
|
|
/* 0223A5C4 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223A5C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223A5C8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0223A5CC */ return;
|
|
}
|
|
|
|
// fn_0223A5D0 @ 0x223a5d0
|
|
void Gambit_fn_0223A5D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223A5D0: ; // 0x223a5d0
|
|
/* 0223A5D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223A5D4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0223A5D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0223A5D8 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A5D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0223A5D8 */ cpu->r[1] = _t1;
|
|
/* 0223A5DC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223A5DC */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 0223A5E0 */ cpu->r[10] = cpu->r[9];
|
|
/* 0223A5E4 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223A5E8 */ Gambit_fn_0223A518(cpu);
|
|
/* 0223A5EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A5EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223A5F0 */ cpu->lr = cpu->r[0];
|
|
/* 0223A5F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A5F8 */ return;
|
|
}
|
|
|
|
// fn_0223A5D8 @ 0x223a5d8
|
|
void Gambit_fn_0223A5D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0223A5D8: ; // 0x223a5d8
|
|
/* 0223A5D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A5D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A5D8 */ cpu->r[1] = _t0;
|
|
/* 0223A5DC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223A5DC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223A5E0 */ cpu->r[10] = cpu->r[9];
|
|
/* 0223A5E4 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223A5E8 */ Gambit_fn_0223A518(cpu);
|
|
/* 0223A5EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A5EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223A5F0 */ cpu->lr = cpu->r[0];
|
|
/* 0223A5F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A5F8 */ return;
|
|
}
|
|
|
|
// fn_0223A5FC @ 0x223a5fc
|
|
void Gambit_fn_0223A5FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223A5FC: ; // 0x223a5fc
|
|
/* 0223A5FC */ cpu->r[0] = cpu->lr;
|
|
/* 0223A600 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0223A600 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0223A604 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A604 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0223A604 */ cpu->r[1] = _t1;
|
|
/* 0223A608 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223A608 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 0223A60C */ cpu->r[10] = cpu->r[9];
|
|
/* 0223A610 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223A614 */ Gambit_fn_0223A518(cpu);
|
|
/* 0223A618 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223A61C */ cpu->lr = cpu->r[0];
|
|
/* 0223A620 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A624 */ return;
|
|
}
|
|
|
|
// fn_0223A604 @ 0x223a604
|
|
void Gambit_fn_0223A604(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0223A604: ; // 0x223a604
|
|
/* 0223A604 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A604 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A604 */ cpu->r[1] = _t0;
|
|
/* 0223A608 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223A608 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223A60C */ cpu->r[10] = cpu->r[9];
|
|
/* 0223A610 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223A614 */ Gambit_fn_0223A518(cpu);
|
|
/* 0223A618 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223A61C */ cpu->lr = cpu->r[0];
|
|
/* 0223A620 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A624 */ return;
|
|
}
|
|
|
|
// fn_0223A628 @ 0x223a628
|
|
void Gambit_fn_0223A628(CPUState* cpu) {
|
|
L_0223A628: ; // 0x223a628
|
|
/* 0223A628 */ return;
|
|
}
|
|
|
|
// fn_0223A62C @ 0x223a62c
|
|
void Gambit_fn_0223A62C(CPUState* cpu) {
|
|
L_0223A62C: ; // 0x223a62c
|
|
/* 0223A62C */ return;
|
|
}
|
|
|
|
// fn_0223A630 @ 0x223a630
|
|
void Gambit_fn_0223A630(CPUState* cpu) {
|
|
L_0223A630: ; // 0x223a630
|
|
/* 0223A630 */ return;
|
|
}
|
|
|
|
// fn_0223A634 @ 0x223a634
|
|
void Gambit_fn_0223A634(CPUState* cpu) {
|
|
L_0223A634: ; // 0x223a634
|
|
/* 0223A634 */ return;
|
|
}
|
|
|
|
// fn_0223A638 @ 0x223a638
|
|
void Gambit_fn_0223A638(CPUState* cpu) {
|
|
L_0223A638: ; // 0x223a638
|
|
/* 0223A638 */ return;
|
|
}
|
|
|
|
// fn_0223A63C @ 0x223a63c
|
|
void Gambit_fn_0223A63C(CPUState* cpu) {
|
|
L_0223A63C: ; // 0x223a63c
|
|
/* 0223A63C */ return;
|
|
}
|
|
|
|
// fn_0223A640 @ 0x223a640
|
|
void Gambit_fn_0223A640(CPUState* cpu) {
|
|
L_0223A640: ; // 0x223a640
|
|
/* 0223A640 */ return;
|
|
}
|
|
|
|
// fn_0223A644 @ 0x223a644
|
|
void Gambit_fn_0223A644(CPUState* cpu) {
|
|
L_0223A644: ; // 0x223a644
|
|
/* 0223A644 */ return;
|
|
}
|
|
|
|
// fn_0223A648 @ 0x223a648
|
|
void Gambit_fn_0223A648(CPUState* cpu) {
|
|
L_0223A648: ; // 0x223a648
|
|
/* 0223A648 */ return;
|
|
}
|
|
|
|
// fn_0223A64C @ 0x223a64c
|
|
void Gambit_fn_0223A64C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223A64C: ; // 0x223a64c
|
|
/* 0223A64C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223A64C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A650 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223A654 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A654 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A654 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223A654 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A654 */ goto L_0223A658;
|
|
L_0223A658: ; // 0x223a658
|
|
/* 0223A658 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A658 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223A65C */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0223A65C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223A660 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A664 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A668 @ 0x223a668
|
|
void Gambit_fn_0223A668(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223A668: ; // 0x223a668
|
|
/* 0223A668 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223A668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A66C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A66C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223A670 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A670 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A670 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223A670 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A670 */ goto L_0223A674;
|
|
L_0223A674: ; // 0x223a674
|
|
/* 0223A674 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A674 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223A678 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0223A678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223A67C */ cpu->ctr = cpu->r[0];
|
|
/* 0223A680 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A684 @ 0x223a684
|
|
void Gambit_fn_0223A684(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223A684: ; // 0x223a684
|
|
/* 0223A684 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223A684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A688 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223A688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223A68C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A68C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A68C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223A68C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223A68C */ goto L_0223A690;
|
|
L_0223A690: ; // 0x223a690
|
|
/* 0223A690 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A690 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223A694 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0223A694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223A698 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A69C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A6A0 @ 0x223a6a0
|
|
void Gambit_fn_0223A6A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A6A0: ; // 0x223a6a0
|
|
/* 0223A6A0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A6A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A6A4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0223A6A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A6A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A6AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A6B0 @ 0x223a6b0
|
|
void Gambit_fn_0223A6B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223A6B0: ; // 0x223a6b0
|
|
/* 0223A6B0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223A6B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A6B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A6B4 */ cpu->r[1] = _t0;
|
|
/* 0223A6B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A6B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223A6BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223A6C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A6C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223A6C4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A6C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223A6C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223A6CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A6CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223A6CC */ if (_t5) goto L_0223A6D0; else goto L_0223A6EC;
|
|
L_0223A6D0: ; // 0x223a6d0
|
|
/* 0223A6D0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223A6D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223A6D4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223A6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223A6D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A6DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223A6E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223A6E4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223A6E8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A6E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223A6EC: ; // 0x223a6ec
|
|
/* 0223A6EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A6EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223A6F0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A6F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223A6F4 */ cpu->lr = cpu->r[0];
|
|
/* 0223A6F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A6FC */ return;
|
|
}
|
|
|
|
// fn_0223A6B4 @ 0x223a6b4
|
|
void Gambit_fn_0223A6B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223A6B4: ; // 0x223a6b4
|
|
/* 0223A6B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223A6B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223A6B4 */ cpu->r[1] = _t0;
|
|
/* 0223A6B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A6B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223A6BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223A6C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A6C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223A6C4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A6C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223A6C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223A6CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A6CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223A6CC */ if (_t5) goto L_0223A6D0; else goto L_0223A6EC;
|
|
L_0223A6D0: ; // 0x223a6d0
|
|
/* 0223A6D0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223A6D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223A6D4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223A6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223A6D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A6DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223A6E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223A6E4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223A6E8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223A6E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223A6EC: ; // 0x223a6ec
|
|
/* 0223A6EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223A6EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223A6F0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223A6F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223A6F4 */ cpu->lr = cpu->r[0];
|
|
/* 0223A6F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223A6FC */ return;
|
|
}
|
|
|
|
// fn_0223A700 @ 0x223a700
|
|
void Gambit_fn_0223A700(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A700: ; // 0x223a700
|
|
/* 0223A700 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A704 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223A704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A708 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A70C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A710 @ 0x223a710
|
|
void Gambit_fn_0223A710(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A710: ; // 0x223a710
|
|
/* 0223A710 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A714 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223A714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A718 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A71C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A720 @ 0x223a720
|
|
void Gambit_fn_0223A720(CPUState* cpu) {
|
|
L_0223A720: ; // 0x223a720
|
|
/* 0223A720 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A724 */ return;
|
|
}
|
|
|
|
// fn_0223A728 @ 0x223a728
|
|
void Gambit_fn_0223A728(CPUState* cpu) {
|
|
L_0223A728: ; // 0x223a728
|
|
/* 0223A728 */ return;
|
|
}
|
|
|
|
// fn_0223A72C @ 0x223a72c
|
|
void Gambit_fn_0223A72C(CPUState* cpu) {
|
|
L_0223A72C: ; // 0x223a72c
|
|
/* 0223A72C */ return;
|
|
}
|
|
|
|
// fn_0223A730 @ 0x223a730
|
|
void Gambit_fn_0223A730(CPUState* cpu) {
|
|
L_0223A730: ; // 0x223a730
|
|
/* 0223A730 */ return;
|
|
}
|
|
|
|
// fn_0223A734 @ 0x223a734
|
|
void Gambit_fn_0223A734(CPUState* cpu) {
|
|
L_0223A734: ; // 0x223a734
|
|
/* 0223A734 */ return;
|
|
}
|
|
|
|
// fn_0223A738 @ 0x223a738
|
|
void Gambit_fn_0223A738(CPUState* cpu) {
|
|
L_0223A738: ; // 0x223a738
|
|
/* 0223A738 */ return;
|
|
}
|
|
|
|
// fn_0223A73C @ 0x223a73c
|
|
void Gambit_fn_0223A73C(CPUState* cpu) {
|
|
L_0223A73C: ; // 0x223a73c
|
|
/* 0223A73C */ return;
|
|
}
|
|
|
|
// fn_0223A740 @ 0x223a740
|
|
void Gambit_fn_0223A740(CPUState* cpu) {
|
|
L_0223A740: ; // 0x223a740
|
|
/* 0223A740 */ return;
|
|
}
|
|
|
|
// fn_0223A744 @ 0x223a744
|
|
void Gambit_fn_0223A744(CPUState* cpu) {
|
|
L_0223A744: ; // 0x223a744
|
|
/* 0223A744 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A748 */ return;
|
|
}
|
|
|
|
// fn_0223A74C @ 0x223a74c
|
|
void Gambit_fn_0223A74C(CPUState* cpu) {
|
|
L_0223A74C: ; // 0x223a74c
|
|
/* 0223A74C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A750 */ return;
|
|
}
|
|
|
|
// fn_0223A754 @ 0x223a754
|
|
void Gambit_fn_0223A754(CPUState* cpu) {
|
|
L_0223A754: ; // 0x223a754
|
|
/* 0223A754 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A758 */ return;
|
|
}
|
|
|
|
// fn_0223A75C @ 0x223a75c
|
|
void Gambit_fn_0223A75C(CPUState* cpu) {
|
|
L_0223A75C: ; // 0x223a75c
|
|
/* 0223A75C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A760 */ return;
|
|
}
|
|
|
|
// fn_0223A764 @ 0x223a764
|
|
void Gambit_fn_0223A764(CPUState* cpu) {
|
|
L_0223A764: ; // 0x223a764
|
|
/* 0223A764 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A768 */ return;
|
|
}
|
|
|
|
// fn_0223A76C @ 0x223a76c
|
|
void Gambit_fn_0223A76C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A76C: ; // 0x223a76c
|
|
/* 0223A76C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A76C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A770 */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0223A770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A774 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A778 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A77C @ 0x223a77c
|
|
void Gambit_fn_0223A77C(CPUState* cpu) {
|
|
L_0223A77C: ; // 0x223a77c
|
|
/* 0223A77C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A780 */ return;
|
|
}
|
|
|
|
// fn_0223A784 @ 0x223a784
|
|
void Gambit_fn_0223A784(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A784: ; // 0x223a784
|
|
/* 0223A784 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A788 */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 0223A788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A78C */ cpu->ctr = cpu->r[0];
|
|
/* 0223A790 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A794 @ 0x223a794
|
|
void Gambit_fn_0223A794(CPUState* cpu) {
|
|
L_0223A794: ; // 0x223a794
|
|
/* 0223A794 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A798 */ return;
|
|
}
|
|
|
|
// fn_0223A79C @ 0x223a79c
|
|
void Gambit_fn_0223A79C(CPUState* cpu) {
|
|
L_0223A79C: ; // 0x223a79c
|
|
/* 0223A79C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A7A0 */ return;
|
|
}
|
|
|
|
// fn_0223A7A4 @ 0x223a7a4
|
|
void Gambit_fn_0223A7A4(CPUState* cpu) {
|
|
L_0223A7A4: ; // 0x223a7a4
|
|
/* 0223A7A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A7A8 */ return;
|
|
}
|
|
|
|
// fn_0223A7AC @ 0x223a7ac
|
|
void Gambit_fn_0223A7AC(CPUState* cpu) {
|
|
L_0223A7AC: ; // 0x223a7ac
|
|
/* 0223A7AC */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A7B0 */ return;
|
|
}
|
|
|
|
// fn_0223A7B4 @ 0x223a7b4
|
|
void Gambit_fn_0223A7B4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A7B4: ; // 0x223a7b4
|
|
/* 0223A7B4 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 0223A7B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A7B8 */ return;
|
|
}
|
|
|
|
// fn_0223A7BC @ 0x223a7bc
|
|
void Gambit_fn_0223A7BC(CPUState* cpu) {
|
|
L_0223A7BC: ; // 0x223a7bc
|
|
/* 0223A7BC */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 0223A7C0 */ return;
|
|
}
|
|
|
|
// fn_0223A7C4 @ 0x223a7c4
|
|
void Gambit_fn_0223A7C4(CPUState* cpu) {
|
|
L_0223A7C4: ; // 0x223a7c4
|
|
/* 0223A7C4 */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 0223A7C8 */ return;
|
|
}
|
|
|
|
// fn_0223A7CC @ 0x223a7cc
|
|
void Gambit_fn_0223A7CC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A7CC: ; // 0x223a7cc
|
|
/* 0223A7CC */ _t0 = cpu->r[3] + 0x000000E8u;
|
|
/* 0223A7CC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A7D0 */ return;
|
|
}
|
|
|
|
// fn_0223A7D4 @ 0x223a7d4
|
|
void Gambit_fn_0223A7D4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A7D4: ; // 0x223a7d4
|
|
/* 0223A7D4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A7D8 */ _t0 = cpu->r[12] + 0x0000251Cu;
|
|
/* 0223A7D8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A7DC */ return;
|
|
}
|
|
|
|
// fn_0223A7E0 @ 0x223a7e0
|
|
void Gambit_fn_0223A7E0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A7E0: ; // 0x223a7e0
|
|
/* 0223A7E0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A7E4 */ _t0 = cpu->r[12] + 0x0000251Cu;
|
|
/* 0223A7E4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A7E8 */ return;
|
|
}
|
|
|
|
// fn_0223A7EC @ 0x223a7ec
|
|
void Gambit_fn_0223A7EC(CPUState* cpu) {
|
|
L_0223A7EC: ; // 0x223a7ec
|
|
/* 0223A7EC */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A7F0 */ return;
|
|
}
|
|
|
|
// fn_0223A7F4 @ 0x223a7f4
|
|
void Gambit_fn_0223A7F4(CPUState* cpu) {
|
|
L_0223A7F4: ; // 0x223a7f4
|
|
/* 0223A7F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A7F8 */ return;
|
|
}
|
|
|
|
// fn_0223A7FC @ 0x223a7fc
|
|
void Gambit_fn_0223A7FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A7FC: ; // 0x223a7fc
|
|
/* 0223A7FC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A7FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A800 */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 0223A800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A804 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A808 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A80C @ 0x223a80c
|
|
void Gambit_fn_0223A80C(CPUState* cpu) {
|
|
L_0223A80C: ; // 0x223a80c
|
|
/* 0223A80C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A810 */ return;
|
|
}
|
|
|
|
// fn_0223A814 @ 0x223a814
|
|
void Gambit_fn_0223A814(CPUState* cpu) {
|
|
L_0223A814: ; // 0x223a814
|
|
/* 0223A814 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A818 */ return;
|
|
}
|
|
|
|
// fn_0223A81C @ 0x223a81c
|
|
void Gambit_fn_0223A81C(CPUState* cpu) {
|
|
L_0223A81C: ; // 0x223a81c
|
|
/* 0223A81C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A820 */ return;
|
|
}
|
|
|
|
// fn_0223A824 @ 0x223a824
|
|
void Gambit_fn_0223A824(CPUState* cpu) {
|
|
L_0223A824: ; // 0x223a824
|
|
/* 0223A824 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A828 */ return;
|
|
}
|
|
|
|
// fn_0223A82C @ 0x223a82c
|
|
void Gambit_fn_0223A82C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223A82C: ; // 0x223a82c
|
|
/* 0223A82C */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A82C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A830 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A834 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 0223A834 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 0223A834 */ cpu->r[12] = _t2 | _t1;
|
|
/* 0223A838 */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A838 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0223A83C */ return;
|
|
}
|
|
|
|
// fn_0223A840 @ 0x223a840
|
|
void Gambit_fn_0223A840(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A840: ; // 0x223a840
|
|
/* 0223A840 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223A840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A844 */ _t1 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0223A844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223A848 */ cpu->ctr = cpu->r[0];
|
|
/* 0223A84C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223A850 @ 0x223a850
|
|
void Gambit_fn_0223A850(CPUState* cpu) {
|
|
L_0223A850: ; // 0x223a850
|
|
/* 0223A850 */ return;
|
|
}
|
|
|
|
// fn_0223A854 @ 0x223a854
|
|
void Gambit_fn_0223A854(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A854: ; // 0x223a854
|
|
/* 0223A854 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A858 */ _t0 = cpu->r[12] + 0x00002510u;
|
|
/* 0223A858 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A85C */ return;
|
|
}
|
|
|
|
// fn_0223A860 @ 0x223a860
|
|
void Gambit_fn_0223A860(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A860: ; // 0x223a860
|
|
/* 0223A860 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 0223A860 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A864 */ return;
|
|
}
|
|
|
|
// fn_0223A868 @ 0x223a868
|
|
void Gambit_fn_0223A868(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A868: ; // 0x223a868
|
|
/* 0223A868 */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 0223A868 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A86C */ return;
|
|
}
|
|
|
|
// fn_0223A870 @ 0x223a870
|
|
void Gambit_fn_0223A870(CPUState* cpu) {
|
|
L_0223A870: ; // 0x223a870
|
|
/* 0223A870 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A874 */ return;
|
|
}
|
|
|
|
// fn_0223A878 @ 0x223a878
|
|
void Gambit_fn_0223A878(CPUState* cpu) {
|
|
L_0223A878: ; // 0x223a878
|
|
/* 0223A878 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A87C */ return;
|
|
}
|
|
|
|
// fn_0223A880 @ 0x223a880
|
|
void Gambit_fn_0223A880(CPUState* cpu) {
|
|
L_0223A880: ; // 0x223a880
|
|
/* 0223A880 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A884 */ return;
|
|
}
|
|
|
|
// fn_0223A888 @ 0x223a888
|
|
void Gambit_fn_0223A888(CPUState* cpu) {
|
|
L_0223A888: ; // 0x223a888
|
|
/* 0223A888 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A88C */ return;
|
|
}
|
|
|
|
// fn_0223A890 @ 0x223a890
|
|
void Gambit_fn_0223A890(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A890: ; // 0x223a890
|
|
/* 0223A890 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 0223A890 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223A894 */ return;
|
|
}
|
|
|
|
// fn_0223A898 @ 0x223a898
|
|
void Gambit_fn_0223A898(CPUState* cpu) {
|
|
L_0223A898: ; // 0x223a898
|
|
/* 0223A898 */ return;
|
|
}
|
|
|
|
// fn_0223A89C @ 0x223a89c
|
|
void Gambit_fn_0223A89C(CPUState* cpu) {
|
|
L_0223A89C: ; // 0x223a89c
|
|
/* 0223A89C */ return;
|
|
}
|
|
|
|
// fn_0223A8A0 @ 0x223a8a0
|
|
void Gambit_fn_0223A8A0(CPUState* cpu) {
|
|
L_0223A8A0: ; // 0x223a8a0
|
|
/* 0223A8A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A8A4 */ return;
|
|
}
|
|
|
|
// fn_0223A8A8 @ 0x223a8a8
|
|
void Gambit_fn_0223A8A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223A8A8: ; // 0x223a8a8
|
|
/* 0223A8A8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A8AC */ _t0 = cpu->r[12] + 0x00002510u;
|
|
/* 0223A8AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223A8B0 */ return;
|
|
}
|
|
|
|
// fn_0223A8B4 @ 0x223a8b4
|
|
void Gambit_fn_0223A8B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223A8B4: ; // 0x223a8b4
|
|
/* 0223A8B4 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A8B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A8B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223A8B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223A8BC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A8BC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A8BC */ if (_t2) goto L_0223A8CC; else goto L_0223A8C0;
|
|
L_0223A8C0: ; // 0x223a8c0
|
|
/* 0223A8C0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A8C4 */ _t3 = cpu->r[12] + 0x00002510u;
|
|
/* 0223A8C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223A8C8 */ return;
|
|
L_0223A8CC: ; // 0x223a8cc
|
|
/* 0223A8CC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A8D0 */ _t4 = cpu->r[12] + 0x00002520u;
|
|
/* 0223A8D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223A8D4 */ return;
|
|
}
|
|
|
|
// fn_0223A8D8 @ 0x223a8d8
|
|
void Gambit_fn_0223A8D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
L_0223A8D8: ; // 0x223a8d8
|
|
/* 0223A8D8 */ goto L_0222E4C4;
|
|
}
|
|
|
|
// fn_0223A8DC @ 0x223a8dc
|
|
void Gambit_fn_0223A8DC(CPUState* cpu) {
|
|
L_0223A8DC: ; // 0x223a8dc
|
|
/* 0223A8DC */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A8E0 */ return;
|
|
}
|
|
|
|
// fn_0223A8E4 @ 0x223a8e4
|
|
void Gambit_fn_0223A8E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223A8E4: ; // 0x223a8e4
|
|
/* 0223A8E4 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A8E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A8E8 */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 0223A8EC */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 0223A8EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223A8F0 */ return;
|
|
}
|
|
|
|
// fn_0223A8F4 @ 0x223a8f4
|
|
void Gambit_fn_0223A8F4(CPUState* cpu) {
|
|
L_0223A8F4: ; // 0x223a8f4
|
|
/* 0223A8F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A8F8 */ return;
|
|
}
|
|
|
|
// fn_0223A8FC @ 0x223a8fc
|
|
void Gambit_fn_0223A8FC(CPUState* cpu) {
|
|
L_0223A8FC: ; // 0x223a8fc
|
|
/* 0223A8FC */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A900 */ return;
|
|
}
|
|
|
|
// fn_0223A904 @ 0x223a904
|
|
void Gambit_fn_0223A904(CPUState* cpu) {
|
|
L_0223A904: ; // 0x223a904
|
|
/* 0223A904 */ cpu->r[3] = cpu->r[3] + 0x00000130u;
|
|
/* 0223A908 */ return;
|
|
}
|
|
|
|
// fn_0223A90C @ 0x223a90c
|
|
void Gambit_fn_0223A90C(CPUState* cpu) {
|
|
L_0223A90C: ; // 0x223a90c
|
|
/* 0223A90C */ cpu->r[3] = cpu->r[3] + 0x00000160u;
|
|
/* 0223A910 */ return;
|
|
}
|
|
|
|
// fn_0223A914 @ 0x223a914
|
|
void Gambit_fn_0223A914(CPUState* cpu) {
|
|
L_0223A914: ; // 0x223a914
|
|
/* 0223A914 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223A918 */ return;
|
|
}
|
|
|
|
// fn_0223A91C @ 0x223a91c
|
|
void Gambit_fn_0223A91C(CPUState* cpu) {
|
|
L_0223A91C: ; // 0x223a91c
|
|
/* 0223A91C */ return;
|
|
}
|
|
|
|
// fn_0223A920 @ 0x223a920
|
|
void Gambit_fn_0223A920(CPUState* cpu) {
|
|
L_0223A920: ; // 0x223a920
|
|
/* 0223A920 */ return;
|
|
}
|
|
|
|
// fn_0223A924 @ 0x223a924
|
|
void Gambit_fn_0223A924(CPUState* cpu) {
|
|
L_0223A924: ; // 0x223a924
|
|
/* 0223A924 */ return;
|
|
}
|
|
|
|
// fn_0223A928 @ 0x223a928
|
|
void Gambit_fn_0223A928(CPUState* cpu) {
|
|
L_0223A928: ; // 0x223a928
|
|
/* 0223A928 */ cpu->r[3] = 0x10050000u;
|
|
/* 0223A92C */ cpu->r[3] = cpu->r[3] + 0x000024F0u;
|
|
/* 0223A930 */ return;
|
|
}
|
|
|
|
// fn_0223A934 @ 0x223a934
|
|
void Gambit_fn_0223A934(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;
|
|
|
|
L_0223A934: ; // 0x223a934
|
|
/* 0223A934 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A938 */ _t0 = cpu->r[9] + 0xFFFFFDBCu;
|
|
/* 0223A938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223A93C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223A944 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF90u;
|
|
/* 0223A948 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A948 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223A948 */ if (_t2) goto L_0223A94C; else goto L_0223A964;
|
|
L_0223A94C: ; // 0x223a94c
|
|
/* 0223A94C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223A950 */ cpu->r[11] = 0x00000001u;
|
|
/* 0223A954 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A958 */ cpu->r[12] = cpu->r[12] + 0x000024E0u;
|
|
/* 0223A95C */ _t3 = cpu->r[9] + 0xFFFFFDBCu;
|
|
/* 0223A95C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0223A960 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0223A960 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
L_0223A964: ; // 0x223a964
|
|
/* 0223A964 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0223A968 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A968 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223A968 */ if (_t6) goto L_0223A96C; else goto L_0223A974;
|
|
L_0223A96C: ; // 0x223a96c
|
|
/* 0223A96C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223A970 */ return;
|
|
L_0223A974: ; // 0x223a974
|
|
/* 0223A974 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223A978 */ _t7 = cpu->r[11] + 0xFFFFE61Cu;
|
|
/* 0223A978 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223A97C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223A980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223A984 */ cpu->r[12] = cpu->r[12] + 0xFFFFFC08u;
|
|
/* 0223A988 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A988 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223A988 */ if (_t9) goto L_0223A98C; else goto L_0223A9A4;
|
|
L_0223A98C: ; // 0x223a98c
|
|
/* 0223A98C */ cpu->r[9] = 0x10050000u;
|
|
/* 0223A990 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A994 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A998 */ cpu->r[9] = cpu->r[9] + 0x000024D0u;
|
|
/* 0223A99C */ _t10 = cpu->r[10] + 0xFFFFE61Cu;
|
|
/* 0223A99C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0223A9A0 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 0223A9A0 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0223A9A4: ; // 0x223a9a4
|
|
/* 0223A9A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0223A9A8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A9A8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223A9A8 */ if (_t13) goto L_0223A9AC; else goto L_0223A9B4;
|
|
L_0223A9AC: ; // 0x223a9ac
|
|
/* 0223A9AC */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A9B0 */ goto L_0223AB30;
|
|
L_0223A9B4: ; // 0x223a9b4
|
|
/* 0223A9B4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223A9B8 */ _t14 = cpu->r[10] + 0xFFFFE618u;
|
|
/* 0223A9B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223A9BC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223A9C4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFC04u;
|
|
/* 0223A9C8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A9C8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223A9C8 */ if (_t16) goto L_0223A9CC; else goto L_0223A9E4;
|
|
L_0223A9CC: ; // 0x223a9cc
|
|
/* 0223A9CC */ cpu->r[11] = 0x10050000u;
|
|
/* 0223A9D0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0223A9D4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223A9D8 */ cpu->r[11] = cpu->r[11] + 0x000024C0u;
|
|
/* 0223A9DC */ _t17 = cpu->r[12] + 0xFFFFE618u;
|
|
/* 0223A9DC */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0223A9E0 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0223A9E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0223A9E4: ; // 0x223a9e4
|
|
/* 0223A9E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0223A9E8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223A9E8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223A9E8 */ if (_t20) goto L_0223A9EC; else goto L_0223A9F4;
|
|
L_0223A9EC: ; // 0x223a9ec
|
|
/* 0223A9EC */ cpu->r[0] = 0x00000001u;
|
|
/* 0223A9F0 */ goto L_0223AB30;
|
|
L_0223A9F4: ; // 0x223a9f4
|
|
/* 0223A9F4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223A9F8 */ _t21 = cpu->r[9] + 0xFFFFDA0Cu;
|
|
/* 0223A9F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223A9FC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223AA00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223AA04 */ cpu->r[12] = cpu->r[12] + 0xFFFFFC00u;
|
|
/* 0223AA08 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AA08 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223AA08 */ if (_t23) goto L_0223AA0C; else goto L_0223AA24;
|
|
L_0223AA0C: ; // 0x223aa0c
|
|
/* 0223AA0C */ cpu->r[9] = 0x10050000u;
|
|
/* 0223AA10 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AA14 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223AA18 */ cpu->r[9] = cpu->r[9] + 0x000024B0u;
|
|
/* 0223AA1C */ _t24 = cpu->r[11] + 0xFFFFDA0Cu;
|
|
/* 0223AA1C */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0223AA20 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 0223AA20 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
L_0223AA24: ; // 0x223aa24
|
|
/* 0223AA24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0223AA28 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AA28 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223AA28 */ if (_t27) goto L_0223AA2C; else goto L_0223AA34;
|
|
L_0223AA2C: ; // 0x223aa2c
|
|
/* 0223AA2C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AA30 */ goto L_0223AB2C;
|
|
L_0223AA34: ; // 0x223aa34
|
|
/* 0223AA34 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223AA38 */ _t28 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 0223AA38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0223AA3C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223AA40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223AA44 */ cpu->r[9] = cpu->r[9] + 0xFFFFFBFCu;
|
|
/* 0223AA48 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AA48 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0223AA48 */ if (_t30) goto L_0223AA4C; else goto L_0223AA64;
|
|
L_0223AA4C: ; // 0x223aa4c
|
|
/* 0223AA4C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223AA50 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AA54 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223AA58 */ cpu->r[12] = cpu->r[12] + 0x000024A0u;
|
|
/* 0223AA5C */ _t31 = cpu->r[10] + 0xFFFFDA00u;
|
|
/* 0223AA5C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0223AA60 */ _t32 = cpu->r[9] + 0x00000000u;
|
|
/* 0223AA60 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
L_0223AA64: ; // 0x223aa64
|
|
/* 0223AA64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0223AA68 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AA68 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0223AA68 */ if (_t34) goto L_0223AA6C; else goto L_0223AA74;
|
|
L_0223AA6C: ; // 0x223aa6c
|
|
/* 0223AA6C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AA70 */ goto L_0223AB2C;
|
|
L_0223AA74: ; // 0x223aa74
|
|
/* 0223AA74 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223AA78 */ _t35 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 0223AA78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0223AA7C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223AA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223AA84 */ cpu->r[11] = cpu->r[11] + 0xFFFFFB4Cu;
|
|
/* 0223AA88 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AA88 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0223AA88 */ if (_t37) goto L_0223AA8C; else goto L_0223AAA4;
|
|
L_0223AA8C: ; // 0x223aa8c
|
|
/* 0223AA8C */ cpu->r[0] = 0x10050000u;
|
|
/* 0223AA90 */ cpu->r[10] = 0x00000001u;
|
|
/* 0223AA94 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223AA98 */ cpu->r[0] = cpu->r[0] + 0x00002490u;
|
|
/* 0223AA9C */ _t38 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 0223AA9C */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 0223AAA0 */ _t39 = cpu->r[11] + 0x00000000u;
|
|
/* 0223AAA0 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
L_0223AAA4: ; // 0x223aaa4
|
|
/* 0223AAA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0223AAA8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AAA8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0223AAA8 */ if (_t41) goto L_0223AAAC; else goto L_0223AAB4;
|
|
L_0223AAAC: ; // 0x223aaac
|
|
/* 0223AAAC */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AAB0 */ goto L_0223AB28;
|
|
L_0223AAB4: ; // 0x223aab4
|
|
/* 0223AAB4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223AAB8 */ _t42 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 0223AAB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0223AAB8 */ cpu->r[10] = _t42;
|
|
/* 0223AABC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223AAC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223AAC4 */ cpu->r[12] = cpu->r[12] + 0xFFFFD4ECu;
|
|
/* 0223AAC8 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AAC8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0223AAC8 */ if (_t44) goto L_0223AACC; else goto L_0223AAE0;
|
|
L_0223AACC: ; // 0x223aacc
|
|
/* 0223AACC */ cpu->r[0] = 0x10050000u;
|
|
/* 0223AAD0 */ cpu->r[11] = 0x00000001u;
|
|
/* 0223AAD4 */ cpu->r[0] = cpu->r[0] + 0x00002480u;
|
|
/* 0223AAD8 */ _t45 = cpu->r[10] + 0x00000000u;
|
|
/* 0223AAD8 */ rbrew_write32(cpu->mem, _t45, cpu->r[11]);
|
|
/* 0223AADC */ _t46 = cpu->r[12] + 0x00000000u;
|
|
/* 0223AADC */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
L_0223AAE0: ; // 0x223aae0
|
|
/* 0223AAE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0223AAE4 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AAE4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0223AAE4 */ if (_t48) goto L_0223AAE8; else goto L_0223AAF0;
|
|
L_0223AAE8: ; // 0x223aae8
|
|
/* 0223AAE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AAEC */ goto L_0223AB28;
|
|
L_0223AAF0: ; // 0x223aaf0
|
|
/* 0223AAF0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223AAF4 */ _t49 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 0223AAF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0223AAF4 */ cpu->r[9] = _t49;
|
|
/* 0223AAF8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223AAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223AB00 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4E4u;
|
|
/* 0223AB04 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AB04 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0223AB04 */ if (_t51) goto L_0223AB08; else goto L_0223AB1C;
|
|
L_0223AB08: ; // 0x223ab08
|
|
/* 0223AB08 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223AB0C */ cpu->r[11] = 0x00000001u;
|
|
/* 0223AB10 */ cpu->r[12] = cpu->r[12] + 0x00002470u;
|
|
/* 0223AB14 */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0223AB14 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 0223AB18 */ _t53 = cpu->r[10] + 0x00000000u;
|
|
/* 0223AB18 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
L_0223AB1C: ; // 0x223ab1c
|
|
/* 0223AB1C */ cpu->r[0] = cpu->r[4] ^ cpu->r[10];
|
|
/* 0223AB20 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0223AB24 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0223AB28: ; // 0x223ab28
|
|
/* 0223AB28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0223AB2C: ; // 0x223ab2c
|
|
/* 0223AB2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0223AB30: ; // 0x223ab30
|
|
/* 0223AB30 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223AB34 */ return;
|
|
}
|
|
|
|
// fn_0223AB3C @ 0x223ab3c
|
|
void Gambit_fn_0223AB3C(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;
|
|
|
|
L_0223AB3C: ; // 0x223ab3c
|
|
/* 0223AB3C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0223AB3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AB3C */ cpu->r[1] = _t0;
|
|
/* 0223AB40 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AB40 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223AB44 */ /* nop */
|
|
/* 0223AB48 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AB48 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223AB4C */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 0223AB4C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0223AB50 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223AB54 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0223AB54 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223AB58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AB58 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223AB58 */ if (_t6) goto L_0223AB5C; else goto L_0223AB6C;
|
|
L_0223AB5C: ; // 0x223ab5c
|
|
/* 0223AB5C */ cpu->r[3] = 0x000000D8u;
|
|
/* 0223AB60 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223AB64 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AB64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223AB68 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AB68 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223AB68 */ if (_t8) goto L_0223AC2C; else goto L_0223AB6C;
|
|
L_0223AB6C: ; // 0x223ab6c
|
|
/* 0223AB6C */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AB70 */ Gambit_fn_021BAF70(cpu);
|
|
/* 0223AB74 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223AB78 */ cpu->r[11] = cpu->r[11] + 0x00002A30u;
|
|
/* 0223AB7C */ cpu->r[12] = cpu->r[31] + 0x00000084u;
|
|
/* 0223AB7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223AB80 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0223AB80 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0223AB84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AB84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223AB84 */ if (_t11) goto L_0223AB88; else goto L_0223AB90;
|
|
L_0223AB88: ; // 0x223ab88
|
|
/* 0223AB88 */ cpu->r[3] = 0x00000030u;
|
|
/* 0223AB8C */ Gambit_fn_02801A78(cpu);
|
|
L_0223AB90: ; // 0x223ab90
|
|
/* 0223AB90 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223AB94 */ cpu->r[3] = cpu->r[31] + 0x000000B4u;
|
|
/* 0223AB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223AB98 */ _t12 = cpu->r[12] + 0x00002A14u;
|
|
/* 0223AB98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0223AB9C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AB9C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0223AB9C */ if (_t14) goto L_0223ABA0; else goto L_0223ABB0;
|
|
L_0223ABA0: ; // 0x223aba0
|
|
/* 0223ABA0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223ABA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223ABA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ABAC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ABAC */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223ABAC */ if (_t16) goto L_0223ABD4; else goto L_0223ABB0;
|
|
L_0223ABB0: ; // 0x223abb0
|
|
/* 0223ABB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ABB4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ABB4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0223ABB4 */ if (_t18) goto L_0223ABB8; else goto L_0223ABC8;
|
|
L_0223ABB8: ; // 0x223abb8
|
|
/* 0223ABB8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223ABBC */ Gambit_fn_02801A78(cpu);
|
|
/* 0223ABC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ABC4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ABC4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223ABC4 */ if (_t20) goto L_0223ABD4; else goto L_0223ABC8;
|
|
L_0223ABC8: ; // 0x223abc8
|
|
/* 0223ABC8 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 0223ABC8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 0223ABCC */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 0223ABCC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 0223ABD0 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 0223ABD0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[31]);
|
|
L_0223ABD4: ; // 0x223abd4
|
|
/* 0223ABD4 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0223ABD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ABD8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ABD8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0223ABD8 */ if (_t25) goto L_0223ABDC; else goto L_0223ABEC;
|
|
L_0223ABDC: ; // 0x223abdc
|
|
/* 0223ABDC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223ABE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223ABE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ABE8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ABE8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223ABE8 */ if (_t27) goto L_0223AC10; else goto L_0223ABEC;
|
|
L_0223ABEC: ; // 0x223abec
|
|
/* 0223ABEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ABF0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ABF0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223ABF0 */ if (_t29) goto L_0223ABF4; else goto L_0223AC04;
|
|
L_0223ABF4: ; // 0x223abf4
|
|
/* 0223ABF4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223ABF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223ABFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223AC00 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AC00 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0223AC00 */ if (_t31) goto L_0223AC10; else goto L_0223AC04;
|
|
L_0223AC04: ; // 0x223ac04
|
|
/* 0223AC04 */ _t32 = cpu->r[3] + 0x00000004u;
|
|
/* 0223AC04 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 0223AC08 */ _t33 = cpu->r[3] + 0x00000000u;
|
|
/* 0223AC08 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0223AC0C */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 0223AC0C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
L_0223AC10: ; // 0x223ac10
|
|
/* 0223AC10 */ _t35 = cpu->r[31] + 0x000000CCu;
|
|
/* 0223AC10 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 0223AC14 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0223AC18 */ _t36 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AC18 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
/* 0223AC1C */ _t37 = cpu->r[12] + 0x00004FA8u;
|
|
/* 0223AC1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0223AC20 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223AC24 */ /* nop */
|
|
/* 0223AC28 */ _t38 = cpu->r[31] + 0x000000D4u;
|
|
/* 0223AC28 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
L_0223AC2C: ; // 0x223ac2c
|
|
/* 0223AC2C */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 0223AC2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0223AC30 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AC34 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AC34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0223AC38 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AC38 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0223AC3C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223AC3C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0223AC3C */ if (_t43) goto L_0223AC40; // else: addr-0 trap, fall-through
|
|
L_0223AC40: ; // 0x223ac40
|
|
/* 0223AC40 */ _t44 = cpu->r[1] + 0x00000024u;
|
|
/* 0223AC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0223AC44 */ cpu->lr = cpu->r[0];
|
|
/* 0223AC48 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0223AC4C */ return;
|
|
}
|
|
|
|
// fn_0223AC50 @ 0x223ac50
|
|
void Gambit_fn_0223AC50(CPUState* cpu) {
|
|
L_0223AC50: ; // 0x223ac50
|
|
/* 0223AC50 */ return;
|
|
}
|
|
|
|
// fn_0223AC54 @ 0x223ac54
|
|
void Gambit_fn_0223AC54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0223AC54: ; // 0x223ac54
|
|
/* 0223AC54 */ cpu->r[0] = cpu->lr;
|
|
/* 0223AC58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223AC58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AC58 */ cpu->r[1] = _t0;
|
|
/* 0223AC5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AC5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223AC60 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223AC64 */ _t2 = cpu->r[12] + 0x00002A18u;
|
|
/* 0223AC64 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0223AC68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AC6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AC6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223AC70 */ _t4 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AC70 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223AC74 */ cpu->f[10] = cpu->f[10] + cpu->f[0];
|
|
/* 0223AC78 */ _t5 = cpu->r[31] + 0x000000CCu;
|
|
/* 0223AC78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223AC7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0223AC80 */ _t6 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AC80 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[10]);
|
|
/* 0223AC84 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223AC84 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223AC84 */ if (_t8) goto L_0223ACA4; else goto L_0223AC88;
|
|
L_0223AC88: ; // 0x223ac88
|
|
/* 0223AC88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AC8C */ Gambit_fn_02790488(cpu);
|
|
/* 0223AC90 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AC90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223AC94 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AC94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223AC98 */ cpu->lr = cpu->r[0];
|
|
/* 0223AC9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223ACA0 */ return;
|
|
L_0223ACA4: ; // 0x223aca4
|
|
/* 0223ACA4 */ _t11 = cpu->r[31] + 0x000000C0u;
|
|
/* 0223ACA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0223ACA8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223ACAC */ _t12 = cpu->r[31] + 0x000000C8u;
|
|
/* 0223ACAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0223ACB0 */ cpu->f[2] = cpu->f[13] + cpu->f[10];
|
|
/* 0223ACB4 */ _t13 = cpu->r[12] + 0x00002A14u;
|
|
/* 0223ACB4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223ACB8 */ cpu->f[3] = cpu->f[11] - cpu->f[10];
|
|
/* 0223ACBC */ _t14 = cpu->r[31] + 0x00000080u;
|
|
/* 0223ACBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223ACC0 */ cpu->f[4] = cpu->f[11] + cpu->f[10];
|
|
/* 0223ACC4 */ cpu->f[1] = cpu->f[13] - cpu->f[10];
|
|
/* 0223ACC8 */ Gambit_fn_02031EFC(cpu);
|
|
/* 0223ACCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223ACD0 */ Gambit_fn_021BEFA0(cpu);
|
|
/* 0223ACD4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223ACD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223ACD8 */ cpu->lr = cpu->r[0];
|
|
/* 0223ACDC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223ACDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0223ACE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223ACE4 */ return;
|
|
}
|
|
|
|
// fn_0223AC58 @ 0x223ac58
|
|
void Gambit_fn_0223AC58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0223AC58: ; // 0x223ac58
|
|
/* 0223AC58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223AC58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AC58 */ cpu->r[1] = _t0;
|
|
/* 0223AC5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AC5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223AC60 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223AC64 */ _t2 = cpu->r[12] + 0x00002A18u;
|
|
/* 0223AC64 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0223AC68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AC6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AC6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223AC70 */ _t4 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AC70 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223AC74 */ cpu->f[10] = cpu->f[10] + cpu->f[0];
|
|
/* 0223AC78 */ _t5 = cpu->r[31] + 0x000000CCu;
|
|
/* 0223AC78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223AC7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0223AC80 */ _t6 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AC80 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[10]);
|
|
/* 0223AC84 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223AC84 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223AC84 */ if (_t8) goto L_0223ACA4; else goto L_0223AC88;
|
|
L_0223AC88: ; // 0x223ac88
|
|
/* 0223AC88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AC8C */ Gambit_fn_02790488(cpu);
|
|
/* 0223AC90 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AC90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223AC94 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AC94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223AC98 */ cpu->lr = cpu->r[0];
|
|
/* 0223AC9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223ACA0 */ return;
|
|
L_0223ACA4: ; // 0x223aca4
|
|
/* 0223ACA4 */ _t11 = cpu->r[31] + 0x000000C0u;
|
|
/* 0223ACA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0223ACA8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223ACAC */ _t12 = cpu->r[31] + 0x000000C8u;
|
|
/* 0223ACAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0223ACB0 */ cpu->f[2] = cpu->f[13] + cpu->f[10];
|
|
/* 0223ACB4 */ _t13 = cpu->r[12] + 0x00002A14u;
|
|
/* 0223ACB4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223ACB8 */ cpu->f[3] = cpu->f[11] - cpu->f[10];
|
|
/* 0223ACBC */ _t14 = cpu->r[31] + 0x00000080u;
|
|
/* 0223ACBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223ACC0 */ cpu->f[4] = cpu->f[11] + cpu->f[10];
|
|
/* 0223ACC4 */ cpu->f[1] = cpu->f[13] - cpu->f[10];
|
|
/* 0223ACC8 */ Gambit_fn_02031EFC(cpu);
|
|
/* 0223ACCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223ACD0 */ Gambit_fn_021BEFA0(cpu);
|
|
/* 0223ACD4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223ACD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223ACD8 */ cpu->lr = cpu->r[0];
|
|
/* 0223ACDC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223ACDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0223ACE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223ACE4 */ return;
|
|
}
|
|
|
|
// fn_0223ACE8 @ 0x223ace8
|
|
void Gambit_fn_0223ACE8(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;
|
|
|
|
L_0223ACE8: ; // 0x223ace8
|
|
/* 0223ACE8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0223ACE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223ACE8 */ cpu->r[1] = _t0;
|
|
/* 0223ACEC */ /* nop */
|
|
/* 0223ACF0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223ACF4 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223ACF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223ACF8 */ cpu->r[27] = cpu->r[3];
|
|
/* 0223ACFC */ _t2 = cpu->r[27] + 0x00000080u;
|
|
/* 0223ACFC */ cpu->r[26] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223AD00 */ _t3 = cpu->r[27] + 0x000000D4u;
|
|
/* 0223AD00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223AD04 */ cpu->r[3] = cpu->r[26];
|
|
/* 0223AD08 */ Gambit_fn_02032EA4(cpu);
|
|
/* 0223AD0C */ cpu->r[25] = 0x101C0000u;
|
|
/* 0223AD10 */ _t4 = cpu->r[26] + 0x00000118u;
|
|
/* 0223AD10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223AD14 */ _t5 = cpu->r[25] + 0x00004FA8u;
|
|
/* 0223AD14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223AD14 */ cpu->r[25] = _t5;
|
|
/* 0223AD18 */ /* nop */
|
|
/* 0223AD1C */ cpu->r[5] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223AD1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0223AD20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AD20 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0223AD20 */ if (_t7) goto L_0223AE3C; else goto L_0223AD24;
|
|
L_0223AD24: ; // 0x223ad24
|
|
/* 0223AD24 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0223AD28 */ cpu->r[7] = 0x10050000u;
|
|
/* 0223AD2C */ _t8 = cpu->r[8] + 0x00003840u;
|
|
/* 0223AD2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223AD2C */ cpu->r[8] = _t8;
|
|
/* 0223AD30 */ cpu->r[0] = 0x10110000u;
|
|
/* 0223AD34 */ _t9 = cpu->r[8] + 0x00000004u;
|
|
/* 0223AD34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223AD38 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF4Cu;
|
|
/* 0223AD3C */ _t10 = cpu->r[7] + 0x00002A14u;
|
|
/* 0223AD3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0223AD40 */ cpu->r[5] = cpu->r[27] + 0x000000C0u;
|
|
/* 0223AD44 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AD44 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0223AD48 */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 0223AD48 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 0223AD4C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0223AD4C */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0223AD50 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223AD54 */ _t14 = cpu->r[8] + 0x00000008u;
|
|
/* 0223AD54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223AD58 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AD58 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0223AD5C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0223AD60 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223AD60 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 0223AD64 */ Gambit_fn_021BC87C(cpu);
|
|
/* 0223AD68 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0223AD6C */ cpu->r[29] = 0x101D0000u;
|
|
/* 0223AD70 */ cpu->r[30] = 0x00000000u;
|
|
/* 0223AD74 */ cpu->r[24] = 0x00000001u;
|
|
L_0223AD78: ; // 0x223ad78
|
|
/* 0223AD78 */ _t17 = cpu->r[25] + 0x00000000u;
|
|
/* 0223AD78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223AD7C */ cpu->r[4] = cpu->r[26];
|
|
/* 0223AD80 */ _t18 = cpu->r[26] + 0x00000108u;
|
|
/* 0223AD80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223AD84 */ Gambit_fn_02031DAC(cpu);
|
|
/* 0223AD88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AD88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223AD8C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AD8C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223AD8C */ if (_t20) goto L_0223AE3C; else goto L_0223AD90;
|
|
L_0223AD90: ; // 0x223ad90
|
|
/* 0223AD90 */ _t21 = cpu->r[29] + 0xFFFFE5E4u;
|
|
/* 0223AD90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223AD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223AD98 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AD98 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223AD98 */ if (_t23) goto L_0223AD9C; else goto L_0223ADAC;
|
|
L_0223AD9C: ; // 0x223ad9c
|
|
/* 0223AD9C */ cpu->r[0] = 0x10050000u;
|
|
/* 0223ADA0 */ _t24 = cpu->r[29] + 0xFFFFE5E4u;
|
|
/* 0223ADA0 */ rbrew_write32(cpu->mem, _t24, cpu->r[24]);
|
|
/* 0223ADA4 */ cpu->r[0] = cpu->r[0] + 0x000029ECu;
|
|
/* 0223ADA8 */ _t25 = cpu->r[28] + 0xFFFFFB60u;
|
|
/* 0223ADA8 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0223ADAC: ; // 0x223adac
|
|
/* 0223ADAC */ _t26 = cpu->r[31] + 0x00000004u;
|
|
/* 0223ADAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223ADB0 */ _t27 = cpu->r[12] + 0x00000014u;
|
|
/* 0223ADB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0223ADB4 */ cpu->ctr = cpu->r[0];
|
|
/* 0223ADB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223ADBC */ cpu->r[4] = cpu->r[28] + 0xFFFFFB60u;
|
|
/* 0223ADC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223ADC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ADC8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ADC8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223ADC8 */ if (_t29) goto L_0223AD78; else goto L_0223ADCC;
|
|
L_0223ADCC: ; // 0x223adcc
|
|
/* 0223ADCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223ADD0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ADD0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0223ADD0 */ if (_t31) goto L_0223AD78; else goto L_0223ADD4;
|
|
L_0223ADD4: ; // 0x223add4
|
|
/* 0223ADD4 */ _t32 = cpu->r[31] + 0x00000004u;
|
|
/* 0223ADD4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0223ADD8 */ _t33 = cpu->r[6] + 0x0000021Cu;
|
|
/* 0223ADD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0223ADDC */ cpu->r[4] = 0x00000000u;
|
|
/* 0223ADE0 */ cpu->ctr = cpu->r[7];
|
|
/* 0223ADE4 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223ADE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223ADEC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0223ADF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223ADF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223ADF8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223ADF8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0223ADF8 */ if (_t35) goto L_0223AD78; else goto L_0223ADFC;
|
|
L_0223ADFC: ; // 0x223adfc
|
|
/* 0223ADFC */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 0223ADFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0223AE00 */ _t37 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0223AE00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0223AE04 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 0223AE04 */ rbrew_write32(cpu->mem, _t38, cpu->r[30]);
|
|
/* 0223AE08 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223AE0C */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AE0C */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 0223AE10 */ _t40 = cpu->r[11] + 0x0000024Cu;
|
|
/* 0223AE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0223AE14 */ cpu->r[9] = cpu->r[4];
|
|
/* 0223AE18 */ cpu->ctr = cpu->r[0];
|
|
/* 0223AE1C */ cpu->r[7] = 0x0000000Eu;
|
|
/* 0223AE20 */ cpu->r[10] = cpu->r[9];
|
|
/* 0223AE24 */ cpu->r[8] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AE28 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AE2C */ cpu->r[6] = cpu->r[27] + 0x000000C0u;
|
|
/* 0223AE30 */ cpu->r[5] = cpu->r[4];
|
|
/* 0223AE34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223AE38 */ goto L_0223AD78;
|
|
L_0223AE3C: ; // 0x223ae3c
|
|
/* 0223AE3C */ /* nop */
|
|
/* 0223AE40 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223AE40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223AE44 */ cpu->lr = cpu->r[0];
|
|
/* 0223AE48 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0223AE4C */ return;
|
|
}
|
|
|
|
// fn_0223AE50 @ 0x223ae50
|
|
void Gambit_fn_0223AE50(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;
|
|
|
|
L_0223AE50: ; // 0x223ae50
|
|
/* 0223AE50 */ cpu->r[0] = cpu->lr;
|
|
/* 0223AE54 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0223AE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AE54 */ cpu->r[1] = _t0;
|
|
/* 0223AE58 */ _t1 = cpu->r[1] + 0x00000074u;
|
|
/* 0223AE58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223AE5C */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AE60 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223AE64 */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 0223AE64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0223AE68 */ _t3 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223AE68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223AE6C */ _t4 = cpu->r[3] + 0x00006000u;
|
|
/* 0223AE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223AE70 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0223AE70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223AE74 */ _t6 = cpu->r[12] + 0x00000134u;
|
|
/* 0223AE74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223AE78 */ cpu->ctr = cpu->r[5];
|
|
/* 0223AE7C */ _t7 = cpu->r[31] + 0x00000054u;
|
|
/* 0223AE7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223AE80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223AE84 */ _t8 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223AE84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223AE88 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0223AE8C */ _t9 = cpu->r[31] + 0x000000C0u;
|
|
/* 0223AE8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223AE90 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223AE90 */ rbrew_write32(cpu->mem, _t10, cpu->r[6]);
|
|
/* 0223AE94 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223AE94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223AE98 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 0223AE98 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0223AE9C */ _t13 = cpu->r[8] + 0x00006328u;
|
|
/* 0223AE9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223AE9C */ cpu->r[8] = _t13;
|
|
/* 0223AEA0 */ _t14 = cpu->r[8] + 0x00000004u;
|
|
/* 0223AEA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223AEA4 */ cpu->r[8] = 0x00000003u;
|
|
/* 0223AEA8 */ _t15 = cpu->r[31] + 0x000000C4u;
|
|
/* 0223AEA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223AEAC */ cpu->r[12] = 0x000000FEu;
|
|
/* 0223AEB0 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 0223AEB0 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0223AEB4 */ _t17 = cpu->r[31] + 0x000000C8u;
|
|
/* 0223AEB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223AEB8 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 0223AEBC */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0223AEBC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0223AEC0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0223AEC4 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223AEC4 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0223AEC8 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223AECC */ _t20 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AECC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0223AED0 */ cpu->r[10] = 0x00000002u;
|
|
/* 0223AED4 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0223AED4 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0223AED8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223AEDC */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AEDC */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 0223AEE0 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 0223AEE4 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0223AEE8 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 0223AEE8 */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 0223AEEC */ cpu->r[5] = cpu->r[3];
|
|
/* 0223AEF0 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 0223AEF4 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 0223AEF4 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0223AEF8 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0223AEFC */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0223AF00 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AF00 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 0223AF04 */ cpu->r[10] = cpu->r[1] + 0x00000018u;
|
|
/* 0223AF08 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AF08 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0223AF0C */ Gambit_fn_023F6240(cpu);
|
|
/* 0223AF10 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0223AF14 */ _t27 = cpu->r[30] + 0x00005BA0u;
|
|
/* 0223AF14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0223AF14 */ cpu->r[30] = _t27;
|
|
/* 0223AF18 */ _t28 = cpu->r[31] + 0x00000058u;
|
|
/* 0223AF18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0223AF1C */ _t29 = cpu->r[9] + 0x00000078u;
|
|
/* 0223AF1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0223AF20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0223AF24 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223AF28 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223AF28 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0223AF28 */ if (_t31) goto L_0223AF2C; else goto L_0223AF38;
|
|
L_0223AF2C: ; // 0x223af2c
|
|
/* 0223AF2C */ _t32 = cpu->r[9] + 0x00000080u;
|
|
/* 0223AF2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0223AF30 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223AF34 */ _t33 = cpu->r[12] + cpu->r[0];
|
|
/* 0223AF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
L_0223AF38: ; // 0x223af38
|
|
/* 0223AF38 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223AF3C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0223AF40 */ Gambit_fn_025E0B80(cpu);
|
|
/* 0223AF44 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 0223AF44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0223AF48 */ _t35 = cpu->r[6] + 0x00000044u;
|
|
/* 0223AF48 */ cpu->r[7] = rbrew_read8(cpu->mem, _t35);
|
|
/* 0223AF4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0223AF50 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AF50 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0223AF50 */ if (_t37) goto L_0223AF64; else goto L_0223AF54;
|
|
L_0223AF54: ; // 0x223af54
|
|
/* 0223AF54 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223AF58 */ _t38 = cpu->r[3] + 0x000060F4u;
|
|
/* 0223AF58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0223AF5C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0223AF60 */ Gambit_fn_023EED38(cpu);
|
|
L_0223AF64: ; // 0x223af64
|
|
/* 0223AF64 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223AF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0223AF68 */ _t40 = cpu->r[1] + 0x00000070u;
|
|
/* 0223AF68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0223AF6C */ cpu->lr = cpu->r[0];
|
|
/* 0223AF70 */ _t41 = cpu->r[1] + 0x00000074u;
|
|
/* 0223AF70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223AF74 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0223AF78 */ return;
|
|
}
|
|
|
|
// fn_0223AE54 @ 0x223ae54
|
|
void Gambit_fn_0223AE54(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;
|
|
|
|
L_0223AE54: ; // 0x223ae54
|
|
/* 0223AE54 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0223AE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AE54 */ cpu->r[1] = _t0;
|
|
/* 0223AE58 */ _t1 = cpu->r[1] + 0x00000074u;
|
|
/* 0223AE58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223AE5C */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AE60 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223AE64 */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 0223AE64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0223AE68 */ _t3 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223AE68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223AE6C */ _t4 = cpu->r[3] + 0x00006000u;
|
|
/* 0223AE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223AE70 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0223AE70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223AE74 */ _t6 = cpu->r[12] + 0x00000134u;
|
|
/* 0223AE74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223AE78 */ cpu->ctr = cpu->r[5];
|
|
/* 0223AE7C */ _t7 = cpu->r[31] + 0x00000054u;
|
|
/* 0223AE7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223AE80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223AE84 */ _t8 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223AE84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223AE88 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0223AE8C */ _t9 = cpu->r[31] + 0x000000C0u;
|
|
/* 0223AE8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223AE90 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223AE90 */ rbrew_write32(cpu->mem, _t10, cpu->r[6]);
|
|
/* 0223AE94 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223AE94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223AE98 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 0223AE98 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0223AE9C */ _t13 = cpu->r[8] + 0x00006328u;
|
|
/* 0223AE9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223AE9C */ cpu->r[8] = _t13;
|
|
/* 0223AEA0 */ _t14 = cpu->r[8] + 0x00000004u;
|
|
/* 0223AEA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223AEA4 */ cpu->r[8] = 0x00000003u;
|
|
/* 0223AEA8 */ _t15 = cpu->r[31] + 0x000000C4u;
|
|
/* 0223AEA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223AEAC */ cpu->r[12] = 0x000000FEu;
|
|
/* 0223AEB0 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 0223AEB0 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0223AEB4 */ _t17 = cpu->r[31] + 0x000000C8u;
|
|
/* 0223AEB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223AEB8 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 0223AEBC */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0223AEBC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0223AEC0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0223AEC4 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223AEC4 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0223AEC8 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223AECC */ _t20 = cpu->r[31] + 0x000000D0u;
|
|
/* 0223AECC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0223AED0 */ cpu->r[10] = 0x00000002u;
|
|
/* 0223AED4 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0223AED4 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0223AED8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223AEDC */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AEDC */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 0223AEE0 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 0223AEE4 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0223AEE8 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 0223AEE8 */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 0223AEEC */ cpu->r[5] = cpu->r[3];
|
|
/* 0223AEF0 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 0223AEF4 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 0223AEF4 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0223AEF8 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0223AEFC */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0223AF00 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AF00 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 0223AF04 */ cpu->r[10] = cpu->r[1] + 0x00000018u;
|
|
/* 0223AF08 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AF08 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0223AF0C */ Gambit_fn_023F6240(cpu);
|
|
/* 0223AF10 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0223AF14 */ _t27 = cpu->r[30] + 0x00005BA0u;
|
|
/* 0223AF14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0223AF14 */ cpu->r[30] = _t27;
|
|
/* 0223AF18 */ _t28 = cpu->r[31] + 0x00000058u;
|
|
/* 0223AF18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0223AF1C */ _t29 = cpu->r[9] + 0x00000078u;
|
|
/* 0223AF1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0223AF20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0223AF24 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223AF28 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223AF28 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0223AF28 */ if (_t31) goto L_0223AF2C; else goto L_0223AF38;
|
|
L_0223AF2C: ; // 0x223af2c
|
|
/* 0223AF2C */ _t32 = cpu->r[9] + 0x00000080u;
|
|
/* 0223AF2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0223AF30 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223AF34 */ _t33 = cpu->r[12] + cpu->r[0];
|
|
/* 0223AF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
L_0223AF38: ; // 0x223af38
|
|
/* 0223AF38 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223AF3C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0223AF40 */ Gambit_fn_025E0B80(cpu);
|
|
/* 0223AF44 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 0223AF44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0223AF48 */ _t35 = cpu->r[6] + 0x00000044u;
|
|
/* 0223AF48 */ cpu->r[7] = rbrew_read8(cpu->mem, _t35);
|
|
/* 0223AF4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0223AF50 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AF50 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0223AF50 */ if (_t37) goto L_0223AF64; else goto L_0223AF54;
|
|
L_0223AF54: ; // 0x223af54
|
|
/* 0223AF54 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223AF58 */ _t38 = cpu->r[3] + 0x000060F4u;
|
|
/* 0223AF58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0223AF5C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0223AF60 */ Gambit_fn_023EED38(cpu);
|
|
L_0223AF64: ; // 0x223af64
|
|
/* 0223AF64 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223AF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0223AF68 */ _t40 = cpu->r[1] + 0x00000070u;
|
|
/* 0223AF68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0223AF6C */ cpu->lr = cpu->r[0];
|
|
/* 0223AF70 */ _t41 = cpu->r[1] + 0x00000074u;
|
|
/* 0223AF70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223AF74 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0223AF78 */ return;
|
|
}
|
|
|
|
// fn_0223AF7C @ 0x223af7c
|
|
void Gambit_fn_0223AF7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0223AF7C: ; // 0x223af7c
|
|
/* 0223AF7C */ cpu->r[0] = cpu->lr;
|
|
/* 0223AF80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223AF80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AF80 */ cpu->r[1] = _t0;
|
|
/* 0223AF84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AF84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223AF88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AF8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AF8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223AF90 */ Gambit_fn_021BF004(cpu);
|
|
/* 0223AF94 */ _t3 = cpu->r[31] + 0x00000051u;
|
|
/* 0223AF94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0223AF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223AF9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AF9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223AF9C */ if (_t5) goto L_0223AFA8; else goto L_0223AFA0;
|
|
L_0223AFA0: ; // 0x223afa0
|
|
/* 0223AFA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AFA4 */ Gambit_fn_0223AE50(cpu);
|
|
L_0223AFA8: ; // 0x223afa8
|
|
/* 0223AFA8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AFA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223AFAC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AFAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223AFB0 */ cpu->lr = cpu->r[0];
|
|
/* 0223AFB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223AFB8 */ return;
|
|
}
|
|
|
|
// fn_0223AF80 @ 0x223af80
|
|
void Gambit_fn_0223AF80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0223AF80: ; // 0x223af80
|
|
/* 0223AF80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223AF80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AF80 */ cpu->r[1] = _t0;
|
|
/* 0223AF84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AF84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223AF88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223AF8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AF8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223AF90 */ Gambit_fn_021BF004(cpu);
|
|
/* 0223AF94 */ _t3 = cpu->r[31] + 0x00000051u;
|
|
/* 0223AF94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0223AF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223AF9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223AF9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223AF9C */ if (_t5) goto L_0223AFA8; else goto L_0223AFA0;
|
|
L_0223AFA0: ; // 0x223afa0
|
|
/* 0223AFA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223AFA4 */ Gambit_fn_0223AE50(cpu);
|
|
L_0223AFA8: ; // 0x223afa8
|
|
/* 0223AFA8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AFA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223AFAC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AFAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223AFB0 */ cpu->lr = cpu->r[0];
|
|
/* 0223AFB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223AFB8 */ return;
|
|
}
|
|
|
|
// fn_0223AFBC @ 0x223afbc
|
|
void Gambit_fn_0223AFBC(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;
|
|
|
|
L_02031BD0: ; // 0x2031bd0
|
|
/* 02031BD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02031BD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02031BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02031BD4 */ cpu->r[1] = _t0;
|
|
/* 02031BD8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02031BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02031BDC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02031BE0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02031BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02031BE4 */ _t4 = cpu->r[4] + 0x00000000u;
|
|
/* 02031BE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02031BE8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02031BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02031BF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02031BF4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02031BF4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02031BF4 */ if (_t6) goto L_02031C58; else goto L_02031BF8;
|
|
L_02031BF8: ; // 0x2031bf8
|
|
/* 02031BF8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02031BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02031BFC */ _t8 = cpu->r[3] + 0x0000011Cu;
|
|
/* 02031BFC */ cpu->r[11] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02031C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02031C04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02031C04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02031C04 */ if (_t10) goto L_02031C58; else goto L_02031C08;
|
|
L_02031C08: ; // 0x2031c08
|
|
/* 02031C08 */ Gambit_fn_020346F4(cpu);
|
|
/* 02031C0C */ _t11 = cpu->r[30] + 0x00000024u;
|
|
/* 02031C0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02031C10 */ cpu->r[8] = 0x4D480000u;
|
|
/* 02031C14 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02031C14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02031C18 */ cpu->r[8] = cpu->r[8] + 0x000073EDu;
|
|
/* 02031C1C */ cpu->r[12] = cpu->r[0] - cpu->r[6];
|
|
/* 02031C20 */ cpu->r[8] = (uint32_t)(((int64_t)(int32_t)cpu->r[8] * (int64_t)(int32_t)cpu->r[12]) >> 32);
|
|
/* 02031C24 */ /* nop */
|
|
/* 02031C28 */ /* nop */
|
|
/* 02031C2C */ cpu->r[8] = cpu->r[8] - cpu->r[7];
|
|
/* 02031C30 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02031C34 */ _t13 = cpu->r[30] + 0x0000102Cu;
|
|
/* 02031C34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02031C38 */ cpu->r[10] = cpu->r[30] + cpu->r[9];
|
|
/* 02031C3C */ _t14 = cpu->r[10] + 0x00000028u;
|
|
/* 02031C3C */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02031C40 */ _t15 = cpu->r[30] + 0x00001028u;
|
|
/* 02031C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02031C44 */ _t16 = cpu->r[30] + 0x0000102Cu;
|
|
/* 02031C44 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 02031C48 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02031C4C */ cpu->r[0] = 0x00000000u;
|
|
/* 02031C50 */ _t17 = cpu->r[30] + 0x00001028u;
|
|
/* 02031C50 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02031C54 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 02031C54 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_02031C58: ; // 0x2031c58
|
|
/* 02031C58 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02031C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02031C5C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02031C5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02031C60 */ cpu->lr = cpu->r[0];
|
|
/* 02031C64 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031C64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02031C68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02031C6C */ return;
|
|
L_0223AFBC: ; // 0x223afbc
|
|
/* 0223AFBC */ cpu->r[4] = cpu->r[3] + 0x00000080u;
|
|
/* 0223AFC0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223AFC4 */ _t22 = cpu->r[3] + 0x00001D14u;
|
|
/* 0223AFC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223AFC8 */ goto L_02031BD0;
|
|
}
|
|
|
|
// fn_0223AFCC @ 0x223afcc
|
|
void Gambit_fn_0223AFCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0223AFCC: ; // 0x223afcc
|
|
/* 0223AFCC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0223AFCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223AFCC */ cpu->r[1] = _t0;
|
|
/* 0223AFD0 */ _t1 = cpu->r[3] + 0x000000C8u;
|
|
/* 0223AFD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223AFD4 */ _t2 = cpu->r[3] + 0x000000C0u;
|
|
/* 0223AFD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223AFD8 */ _t3 = cpu->r[3] + 0x000000C4u;
|
|
/* 0223AFD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223AFDC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AFDC */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 0223AFE0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223AFE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223AFE4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AFE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223AFE8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 0223AFE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0223AFEC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AFEC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223AFF0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223AFF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223AFF4 */ _t10 = cpu->r[3] + 0x000000D0u;
|
|
/* 0223AFF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0223AFF8 */ _t11 = cpu->r[4] + 0x00000004u;
|
|
/* 0223AFF8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 0223AFFC */ _t12 = cpu->r[4] + 0x00000008u;
|
|
/* 0223AFFC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 0223B000 */ _t13 = cpu->r[4] + 0x00000010u;
|
|
/* 0223B000 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 0223B004 */ _t14 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0223B004 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 0223B008 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0223B00C */ return;
|
|
}
|
|
|
|
// fn_0223B010 @ 0x223b010
|
|
void Gambit_fn_0223B010(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223B010: ; // 0x223b010
|
|
/* 0223B010 */ _t0 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0223B010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B014 */ _t1 = cpu->r[5] + 0x00000000u;
|
|
/* 0223B014 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B018 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0223B01C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B01C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223B01C */ if (_t3) goto L_0223B020; else goto L_0223B02C;
|
|
L_0223B020: ; // 0x223b020
|
|
/* 0223B020 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B024 */ _t4 = cpu->r[11] + 0x00002A14u;
|
|
/* 0223B024 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223B028 */ return;
|
|
L_0223B02C: ; // 0x223b02c
|
|
/* 0223B02C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B030 */ _t5 = cpu->r[12] + 0x00002A1Cu;
|
|
/* 0223B030 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223B034 */ return;
|
|
}
|
|
|
|
// fn_0223B038 @ 0x223b038
|
|
void Gambit_fn_0223B038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223B038: ; // 0x223b038
|
|
/* 0223B038 */ _t0 = cpu->r[4] + 0x00000002u;
|
|
/* 0223B038 */ cpu->r[11] = rbrew_read16(cpu->mem, _t0);
|
|
/* 0223B03C */ _t1 = cpu->r[3] + 0x00000064u;
|
|
/* 0223B03C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 0223B040 */ cpu->r[11] = cpu->r[11] | 0x0000FE00u;
|
|
/* 0223B044 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 0223B044 */ rbrew_write16(cpu->mem, _t2, (uint16_t)cpu->r[10]);
|
|
/* 0223B048 */ cpu->r[12] = cpu->r[11] & 0x0000FEFFu;
|
|
/* 0223B048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223B04C */ cpu->r[0] = 0x00000000u;
|
|
/* 0223B050 */ _t3 = cpu->r[4] + 0x00000002u;
|
|
/* 0223B050 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[12]);
|
|
/* 0223B054 */ _t4 = cpu->r[4] + 0x00000003u;
|
|
/* 0223B054 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0223B058 */ return;
|
|
}
|
|
|
|
// fn_0223B05C @ 0x223b05c
|
|
void Gambit_fn_0223B05C(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_0223B05C: ; // 0x223b05c
|
|
/* 0223B05C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0223B05C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223B05C */ cpu->r[1] = _t0;
|
|
/* 0223B060 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0223B060 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0223B064 */ /* nop */
|
|
/* 0223B068 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0223B068 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223B06C */ /* nop */
|
|
/* 0223B070 */ /* nop */
|
|
/* 0223B074 */ cpu->r[0] = cpu->lr;
|
|
/* 0223B078 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 0223B078 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0223B07C */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0223B07C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 0223B080 */ /* nop */
|
|
/* 0223B084 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 0223B084 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0223B088 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 0223B088 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0223B08C */ /* nop */
|
|
/* 0223B090 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 0223B090 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0223B094 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 0223B098 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 0223B098 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 0223B09C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0223B0A0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0223B0A4 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0223B0A4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0223B0A8 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 0223B0AC */ _t10 = cpu->r[7] + 0x00002F70u;
|
|
/* 0223B0AC */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0223B0AC */ cpu->r[7] = _t10;
|
|
/* 0223B0B0 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0223B0B4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0223B0B8 */ _t11 = cpu->r[5] + 0x00002F78u;
|
|
/* 0223B0B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 0223B0B8 */ cpu->r[5] = _t11;
|
|
/* 0223B0BC */ cpu->r[10] = cpu->r[10] + 0x00002F88u;
|
|
/* 0223B0C0 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 0223B0C0 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0223B0C4 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0223B0C8 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 0223B0C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0223B0CC */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 0223B0D0 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 0223B0D0 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 0223B0D4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0223B0D8 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 0223B0D8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223B0DC */ cpu->r[31] = 0x101E0000u;
|
|
/* 0223B0E0 */ _t16 = cpu->r[12] + 0x00002F80u;
|
|
/* 0223B0E0 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 0223B0E0 */ cpu->r[12] = _t16;
|
|
/* 0223B0E4 */ cpu->r[11] = 0x00000002u;
|
|
/* 0223B0E8 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 0223B0E8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223B0EC */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0223B0EC */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223B0F0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0223B0F0 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0223B0F4 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0223B0F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223B0F8 */ _t21 = cpu->r[31] + 0x00002F9Cu;
|
|
/* 0223B0F8 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0223B0F8 */ cpu->r[31] = _t21;
|
|
/* 0223B0FC */ cpu->r[0] = 0x00000004u;
|
|
/* 0223B100 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 0223B100 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 0223B104 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0223B108 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0223B108 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0223B10C */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 0223B10C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0223B10C */ cpu->r[12] = _t24;
|
|
/* 0223B110 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 0223B110 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 0223B114 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 0223B114 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0223B118 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 0223B118 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0223B11C */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223B11C */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 0223B120 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 0223B120 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0223B124 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 0223B124 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 0223B128 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0223B12C */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 0223B12C */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 0223B130 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0223B134 */ _t32 = cpu->r[7] + 0x00002F98u;
|
|
/* 0223B134 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0223B138 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 0223B138 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0223B138 */ cpu->r[6] = _t33;
|
|
/* 0223B13C */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 0223B13C */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 0223B140 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 0223B140 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 0223B144 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0223B148 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0223B148 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0223B14C */ _t37 = cpu->r[5] + 0x00002F90u;
|
|
/* 0223B14C */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 0223B14C */ cpu->r[5] = _t37;
|
|
/* 0223B150 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 0223B150 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 0223B154 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 0223B154 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 0223B158 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 0223B158 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0223B15C */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0223B15C */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223B160 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 0223B160 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0223B164 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 0223B164 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0223B168 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0223B168 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 0223B16C */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 0223B16C */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 0223B170 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 0223B170 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 0223B174 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223B174 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 0223B178 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 0223B178 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 0223B17C */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 0223B17C */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0223B180 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0223B180 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 0223B184 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0223B188 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 0223B188 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0223B18C */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 0223B18C */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0223B18C */ cpu->r[11] = _t52;
|
|
/* 0223B190 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 0223B190 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0223B194 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0223B194 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223B198 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 0223B198 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0223B19C */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 0223B19C */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 0223B1A0 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 0223B1A0 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0223B1A4 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 0223B1A4 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 0223B1A8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0223B1AC */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0223B1AC */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 0223B1B0 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0223B1B4 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 0223B1B4 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 0223B1B8 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 0223B1BC */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 0223B1BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0223B1BC */ cpu->r[12] = _t61;
|
|
/* 0223B1C0 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 0223B1C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0223B1C4 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0223B1C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0223B1C8 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 0223B1C8 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 0223B1CC */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 0223B1CC */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0223B1D0 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 0223B1D0 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 0223B1D4 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 0223B1D4 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 0223B1D8 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 0223B1D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0223B1DC */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0223B1DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0223B1E0 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 0223B1E0 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 0223B1E4 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0223B1E4 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 0223B1E8 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0223B1E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0223B1EC */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0223B1EC */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 0223B1F0 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0223B1F0 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0223B1F4 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 0223B1F4 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 0223B1F8 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 0223B1F8 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 0223B1FC */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 0223B1FC */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 0223B200 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 0223B200 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 0223B204 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 0223B204 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0223B208 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0223B20C */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0223B20C */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 0223B210 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 0223B210 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0223B210 */ cpu->r[10] = _t81;
|
|
/* 0223B214 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 0223B214 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0223B218 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 0223B218 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0223B21C */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 0223B21C */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 0223B220 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 0223B220 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0223B224 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 0223B224 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0223B228 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B22C */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 0223B22C */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0223B230 */ _t88 = cpu->r[12] + 0x00002A2Cu;
|
|
/* 0223B230 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0223B234 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0223B234 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 0223B238 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 0223B238 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 0223B23C */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 0223B23C */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 0223B240 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0223B240 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 0223B244 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 0223B244 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0223B248 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 0223B248 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 0223B24C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B250 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 0223B250 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 0223B254 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0223B258 */ _t96 = cpu->r[12] + 0x00002A24u;
|
|
/* 0223B258 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0223B25C */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 0223B25C */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 0223B260 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B264 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 0223B264 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 0223B268 */ _t99 = cpu->r[12] + 0x00002A20u;
|
|
/* 0223B268 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0223B26C */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B270 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0223B270 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0223B274 */ _t101 = cpu->r[11] + 0x00002A28u;
|
|
/* 0223B274 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0223B278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 0223B27C */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 0223B27C */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 0223B280 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B280 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0223B280 */ if (_t104) goto L_0223B284; else goto L_0223B294;
|
|
L_0223B284: ; // 0x223b284
|
|
/* 0223B284 */ cpu->r[3] = 0x00000010u;
|
|
/* 0223B288 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223B28C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223B290 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B290 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0223B290 */ if (_t106) goto L_0223B2A4; else goto L_0223B294;
|
|
L_0223B294: ; // 0x223b294
|
|
/* 0223B294 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B294 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 0223B298 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 0223B298 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 0223B29C */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 0223B29C */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 0223B2A0 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223B2A0 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_0223B2A4: ; // 0x223b2a4
|
|
/* 0223B2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 0223B2A8 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 0223B2AC */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B2AC */ _t112 = _t111 & 0x00000001u;
|
|
/* 0223B2AC */ if (_t112) goto L_0223B2B0; else goto L_0223B2C0;
|
|
L_0223B2B0: ; // 0x223b2b0
|
|
/* 0223B2B0 */ cpu->r[3] = 0x00000010u;
|
|
/* 0223B2B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223B2B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223B2BC */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B2BC */ _t114 = _t113 & 0x00000001u;
|
|
/* 0223B2BC */ if (_t114) goto L_0223B2D0; else goto L_0223B2C0;
|
|
L_0223B2C0: ; // 0x223b2c0
|
|
/* 0223B2C0 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B2C0 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0223B2C4 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0223B2C4 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 0223B2C8 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 0223B2C8 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 0223B2CC */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223B2CC */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_0223B2D0: ; // 0x223b2d0
|
|
/* 0223B2D0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0223B2D4 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 0223B2D8 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 0223B2D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0223B2DC */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 0223B2DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0223B2E0 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 0223B2E0 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0223B2E4 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 0223B2E4 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 0223B2E8 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0223B2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0223B2EC */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 0223B2EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0223B2F0 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 0223B2F0 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0223B2F4 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 0223B2F4 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 0223B2F8 */ /* nop */
|
|
/* 0223B2FC */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 0223B2FC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0223B300 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 0223B300 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0223B304 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 0223B304 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 0223B308 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 0223B308 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 0223B30C */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 0223B30C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0223B310 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 0223B310 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0223B314 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0223B314 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 0223B318 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 0223B318 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 0223B31C */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B31C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0223B31C */ if (_t136) goto L_0223B320; // else: addr-0 trap, fall-through
|
|
L_0223B320: ; // 0x223b320
|
|
/* 0223B320 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0223B320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0223B324 */ cpu->lr = cpu->r[0];
|
|
/* 0223B328 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0223B32C */ return;
|
|
}
|
|
|
|
// fn_0223B330 @ 0x223b330
|
|
void Gambit_fn_0223B330(CPUState* cpu) {
|
|
L_0223B330: ; // 0x223b330
|
|
/* 0223B330 */ return;
|
|
}
|
|
|
|
// fn_0223B334 @ 0x223b334
|
|
void Gambit_fn_0223B334(CPUState* cpu) {
|
|
L_0223B334: ; // 0x223b334
|
|
/* 0223B334 */ return;
|
|
}
|
|
|
|
// fn_0223B338 @ 0x223b338
|
|
void Gambit_fn_0223B338(CPUState* cpu) {
|
|
L_0223B338: ; // 0x223b338
|
|
/* 0223B338 */ return;
|
|
}
|
|
|
|
// fn_0223B33C @ 0x223b33c
|
|
void Gambit_fn_0223B33C(CPUState* cpu) {
|
|
L_0223B33C: ; // 0x223b33c
|
|
/* 0223B33C */ return;
|
|
}
|
|
|
|
// fn_0223B340 @ 0x223b340
|
|
void Gambit_fn_0223B340(CPUState* cpu) {
|
|
L_0223B340: ; // 0x223b340
|
|
/* 0223B340 */ return;
|
|
}
|
|
|
|
// fn_0223B344 @ 0x223b344
|
|
void Gambit_fn_0223B344(CPUState* cpu) {
|
|
L_0223B344: ; // 0x223b344
|
|
/* 0223B344 */ return;
|
|
}
|
|
|
|
// fn_0223B348 @ 0x223b348
|
|
void Gambit_fn_0223B348(CPUState* cpu) {
|
|
L_0223B348: ; // 0x223b348
|
|
/* 0223B348 */ return;
|
|
}
|
|
|
|
// fn_0223B34C @ 0x223b34c
|
|
void Gambit_fn_0223B34C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223B34C: ; // 0x223b34c
|
|
/* 0223B34C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223B34C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B350 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223B350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223B354 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B354 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223B354 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223B354 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223B354 */ goto L_0223B358;
|
|
L_0223B358: ; // 0x223b358
|
|
/* 0223B358 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B358 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223B35C */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0223B35C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223B360 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B364 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B368 @ 0x223b368
|
|
void Gambit_fn_0223B368(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223B368: ; // 0x223b368
|
|
/* 0223B368 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223B368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B36C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223B36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223B370 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B370 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223B370 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223B370 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223B370 */ goto L_0223B374;
|
|
L_0223B374: ; // 0x223b374
|
|
/* 0223B374 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223B378 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0223B378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223B37C */ cpu->ctr = cpu->r[0];
|
|
/* 0223B380 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B384 @ 0x223b384
|
|
void Gambit_fn_0223B384(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223B384: ; // 0x223b384
|
|
/* 0223B384 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223B384 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B388 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223B388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223B38C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B38C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223B38C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223B38C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223B38C */ goto L_0223B390;
|
|
L_0223B390: ; // 0x223b390
|
|
/* 0223B390 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B390 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223B394 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0223B394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223B398 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B39C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B3A0 @ 0x223b3a0
|
|
void Gambit_fn_0223B3A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223B3A0: ; // 0x223b3a0
|
|
/* 0223B3A0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B3A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B3A4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0223B3A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B3A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B3AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B3B0 @ 0x223b3b0
|
|
void Gambit_fn_0223B3B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223B3B0: ; // 0x223b3b0
|
|
/* 0223B3B0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223B3B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223B3B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223B3B4 */ cpu->r[1] = _t0;
|
|
/* 0223B3B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223B3B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223B3BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223B3C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223B3C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223B3C4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223B3C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223B3C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223B3CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B3CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223B3CC */ if (_t5) goto L_0223B3D0; else goto L_0223B3EC;
|
|
L_0223B3D0: ; // 0x223b3d0
|
|
/* 0223B3D0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223B3D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223B3D4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223B3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223B3D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B3DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223B3E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223B3E4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223B3E8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223B3E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223B3EC: ; // 0x223b3ec
|
|
/* 0223B3EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223B3EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223B3F0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223B3F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223B3F4 */ cpu->lr = cpu->r[0];
|
|
/* 0223B3F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223B3FC */ return;
|
|
}
|
|
|
|
// fn_0223B3B4 @ 0x223b3b4
|
|
void Gambit_fn_0223B3B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223B3B4: ; // 0x223b3b4
|
|
/* 0223B3B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223B3B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223B3B4 */ cpu->r[1] = _t0;
|
|
/* 0223B3B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223B3B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223B3BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223B3C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223B3C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223B3C4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223B3C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223B3C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223B3CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B3CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223B3CC */ if (_t5) goto L_0223B3D0; else goto L_0223B3EC;
|
|
L_0223B3D0: ; // 0x223b3d0
|
|
/* 0223B3D0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223B3D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223B3D4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223B3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223B3D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B3DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0223B3E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223B3E4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223B3E8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223B3E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223B3EC: ; // 0x223b3ec
|
|
/* 0223B3EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223B3EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223B3F0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223B3F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223B3F4 */ cpu->lr = cpu->r[0];
|
|
/* 0223B3F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223B3FC */ return;
|
|
}
|
|
|
|
// fn_0223B400 @ 0x223b400
|
|
void Gambit_fn_0223B400(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223B400: ; // 0x223b400
|
|
/* 0223B400 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B400 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B404 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0223B404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B408 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B40C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B410 @ 0x223b410
|
|
void Gambit_fn_0223B410(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223B410: ; // 0x223b410
|
|
/* 0223B410 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B410 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B414 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223B414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B418 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B41C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B420 @ 0x223b420
|
|
void Gambit_fn_0223B420(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223B420: ; // 0x223b420
|
|
/* 0223B420 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B420 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B424 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223B424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B428 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B42C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B430 @ 0x223b430
|
|
void Gambit_fn_0223B430(CPUState* cpu) {
|
|
L_0223B430: ; // 0x223b430
|
|
/* 0223B430 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223B434 */ return;
|
|
}
|
|
|
|
// fn_0223B438 @ 0x223b438
|
|
void Gambit_fn_0223B438(CPUState* cpu) {
|
|
L_0223B438: ; // 0x223b438
|
|
/* 0223B438 */ return;
|
|
}
|
|
|
|
// fn_0223B43C @ 0x223b43c
|
|
void Gambit_fn_0223B43C(CPUState* cpu) {
|
|
L_0223B43C: ; // 0x223b43c
|
|
/* 0223B43C */ return;
|
|
}
|
|
|
|
// fn_0223B440 @ 0x223b440
|
|
void Gambit_fn_0223B440(CPUState* cpu) {
|
|
L_0223B440: ; // 0x223b440
|
|
/* 0223B440 */ return;
|
|
}
|
|
|
|
// fn_0223B444 @ 0x223b444
|
|
void Gambit_fn_0223B444(CPUState* cpu) {
|
|
L_0223B444: ; // 0x223b444
|
|
/* 0223B444 */ return;
|
|
}
|
|
|
|
// fn_0223B448 @ 0x223b448
|
|
void Gambit_fn_0223B448(CPUState* cpu) {
|
|
L_0223B448: ; // 0x223b448
|
|
/* 0223B448 */ return;
|
|
}
|
|
|
|
// fn_0223B44C @ 0x223b44c
|
|
void Gambit_fn_0223B44C(CPUState* cpu) {
|
|
L_0223B44C: ; // 0x223b44c
|
|
/* 0223B44C */ return;
|
|
}
|
|
|
|
// fn_0223B450 @ 0x223b450
|
|
void Gambit_fn_0223B450(CPUState* cpu) {
|
|
L_0223B450: ; // 0x223b450
|
|
/* 0223B450 */ return;
|
|
}
|
|
|
|
// fn_0223B454 @ 0x223b454
|
|
void Gambit_fn_0223B454(CPUState* cpu) {
|
|
L_0223B454: ; // 0x223b454
|
|
/* 0223B454 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223B458 */ return;
|
|
}
|
|
|
|
// fn_0223B45C @ 0x223b45c
|
|
void Gambit_fn_0223B45C(CPUState* cpu) {
|
|
L_0223B45C: ; // 0x223b45c
|
|
/* 0223B45C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B460 */ return;
|
|
}
|
|
|
|
// fn_0223B464 @ 0x223b464
|
|
void Gambit_fn_0223B464(CPUState* cpu) {
|
|
L_0223B464: ; // 0x223b464
|
|
/* 0223B464 */ return;
|
|
}
|
|
|
|
// fn_0223B468 @ 0x223b468
|
|
void Gambit_fn_0223B468(CPUState* cpu) {
|
|
L_0223B468: ; // 0x223b468
|
|
/* 0223B468 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223B46C */ return;
|
|
}
|
|
|
|
// fn_0223B470 @ 0x223b470
|
|
void Gambit_fn_0223B470(CPUState* cpu) {
|
|
L_0223B470: ; // 0x223b470
|
|
/* 0223B470 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B474 */ return;
|
|
}
|
|
|
|
// fn_0223B478 @ 0x223b478
|
|
void Gambit_fn_0223B478(CPUState* cpu) {
|
|
L_0223B478: ; // 0x223b478
|
|
/* 0223B478 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B47C */ return;
|
|
}
|
|
|
|
// fn_0223B480 @ 0x223b480
|
|
void Gambit_fn_0223B480(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223B480: ; // 0x223b480
|
|
/* 0223B480 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B480 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B484 */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0223B484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B488 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B48C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B490 @ 0x223b490
|
|
void Gambit_fn_0223B490(CPUState* cpu) {
|
|
L_0223B490: ; // 0x223b490
|
|
/* 0223B490 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B494 */ return;
|
|
}
|
|
|
|
// fn_0223B498 @ 0x223b498
|
|
void Gambit_fn_0223B498(CPUState* cpu) {
|
|
L_0223B498: ; // 0x223b498
|
|
/* 0223B498 */ return;
|
|
}
|
|
|
|
// fn_0223B49C @ 0x223b49c
|
|
void Gambit_fn_0223B49C(CPUState* cpu) {
|
|
L_0223B49C: ; // 0x223b49c
|
|
/* 0223B49C */ return;
|
|
}
|
|
|
|
// fn_0223B4A0 @ 0x223b4a0
|
|
void Gambit_fn_0223B4A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223B4A0: ; // 0x223b4a0
|
|
/* 0223B4A0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223B4A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B4A4 */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 0223B4A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223B4A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223B4AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223B4B0 @ 0x223b4b0
|
|
void Gambit_fn_0223B4B0(CPUState* cpu) {
|
|
L_0223B4B0: ; // 0x223b4b0
|
|
/* 0223B4B0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B4B4 */ return;
|
|
}
|
|
|
|
// fn_0223B4B8 @ 0x223b4b8
|
|
void Gambit_fn_0223B4B8(CPUState* cpu) {
|
|
L_0223B4B8: ; // 0x223b4b8
|
|
/* 0223B4B8 */ cpu->r[3] = 0x00000002u;
|
|
/* 0223B4BC */ return;
|
|
}
|
|
|
|
// fn_0223B4C0 @ 0x223b4c0
|
|
void Gambit_fn_0223B4C0(CPUState* cpu) {
|
|
L_0223B4C0: ; // 0x223b4c0
|
|
/* 0223B4C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B4C4 */ return;
|
|
}
|
|
|
|
// fn_0223B4C8 @ 0x223b4c8
|
|
void Gambit_fn_0223B4C8(CPUState* cpu) {
|
|
L_0223B4C8: ; // 0x223b4c8
|
|
/* 0223B4C8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223B4CC */ return;
|
|
}
|
|
|
|
// fn_0223B4D0 @ 0x223b4d0
|
|
void Gambit_fn_0223B4D0(CPUState* cpu) {
|
|
L_0223B4D0: ; // 0x223b4d0
|
|
/* 0223B4D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B4D4 */ return;
|
|
}
|
|
|
|
// fn_0223B4D8 @ 0x223b4d8
|
|
void Gambit_fn_0223B4D8(CPUState* cpu) {
|
|
L_0223B4D8: ; // 0x223b4d8
|
|
/* 0223B4D8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223B4DC */ return;
|
|
}
|
|
|
|
// fn_0223B4E0 @ 0x223b4e0
|
|
void Gambit_fn_0223B4E0(CPUState* cpu) {
|
|
L_0223B4E0: ; // 0x223b4e0
|
|
/* 0223B4E0 */ return;
|
|
}
|
|
|
|
// fn_0223B4E4 @ 0x223b4e4
|
|
void Gambit_fn_0223B4E4(CPUState* cpu) {
|
|
L_0223B4E4: ; // 0x223b4e4
|
|
/* 0223B4E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B4E8 */ return;
|
|
}
|
|
|
|
// fn_0223B4EC @ 0x223b4ec
|
|
void Gambit_fn_0223B4EC(CPUState* cpu) {
|
|
L_0223B4EC: ; // 0x223b4ec
|
|
/* 0223B4EC */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B4F0 */ return;
|
|
}
|
|
|
|
// fn_0223B4F4 @ 0x223b4f4
|
|
void Gambit_fn_0223B4F4(CPUState* cpu) {
|
|
L_0223B4F4: ; // 0x223b4f4
|
|
/* 0223B4F4 */ return;
|
|
}
|
|
|
|
// fn_0223B4F8 @ 0x223b4f8
|
|
void Gambit_fn_0223B4F8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223B4F8: ; // 0x223b4f8
|
|
/* 0223B4F8 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 0223B4F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B4FC */ return;
|
|
}
|
|
|
|
// fn_0223B500 @ 0x223b500
|
|
void Gambit_fn_0223B500(CPUState* cpu) {
|
|
L_0223B500: ; // 0x223b500
|
|
/* 0223B500 */ cpu->r[3] = 0x10050000u;
|
|
/* 0223B504 */ cpu->r[3] = cpu->r[3] + 0x000029FCu;
|
|
/* 0223B508 */ return;
|
|
}
|
|
|
|
// fn_0223B50C @ 0x223b50c
|
|
void Gambit_fn_0223B50C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0223B50C: ; // 0x223b50c
|
|
/* 0223B50C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223B510 */ _t0 = cpu->r[12] + 0xFFFFFE10u;
|
|
/* 0223B510 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223B514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223B518 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223B51C */ cpu->r[12] = cpu->r[12] + 0xFFFFFF94u;
|
|
/* 0223B520 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B520 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223B520 */ if (_t2) goto L_0223B524; else goto L_0223B53C;
|
|
L_0223B524: ; // 0x223b524
|
|
/* 0223B524 */ cpu->r[0] = 0x10050000u;
|
|
/* 0223B528 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223B52C */ cpu->r[8] = 0x101D0000u;
|
|
/* 0223B530 */ cpu->r[0] = cpu->r[0] + 0x000029DCu;
|
|
/* 0223B534 */ _t3 = cpu->r[8] + 0xFFFFFE10u;
|
|
/* 0223B534 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0223B538 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0223B538 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0223B53C: ; // 0x223b53c
|
|
/* 0223B53C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0223B540 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B540 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223B540 */ if (_t6) goto L_0223B544; else goto L_0223B54C;
|
|
L_0223B544: ; // 0x223b544
|
|
/* 0223B544 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223B548 */ return;
|
|
L_0223B54C: ; // 0x223b54c
|
|
/* 0223B54C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223B550 */ _t7 = cpu->r[11] + 0xFFFFD4E8u;
|
|
/* 0223B550 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223B550 */ cpu->r[11] = _t7;
|
|
/* 0223B554 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223B558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0223B55C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0223B560 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B560 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223B560 */ if (_t9) goto L_0223B564; else goto L_0223B578;
|
|
L_0223B564: ; // 0x223b564
|
|
/* 0223B564 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B568 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223B56C */ cpu->r[12] = cpu->r[12] + 0x000029CCu;
|
|
/* 0223B570 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 0223B570 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0223B574 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 0223B574 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_0223B578: ; // 0x223b578
|
|
/* 0223B578 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0223B57C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B57C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223B57C */ if (_t13) goto L_0223B580; else goto L_0223B588;
|
|
L_0223B580: ; // 0x223b580
|
|
/* 0223B580 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223B584 */ goto L_0223B5C0;
|
|
L_0223B588: ; // 0x223b588
|
|
/* 0223B588 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0223B58C */ _t14 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 0223B58C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223B58C */ cpu->r[8] = _t14;
|
|
/* 0223B590 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223B594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223B598 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0223B59C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B59C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223B59C */ if (_t16) goto L_0223B5A0; else goto L_0223B5B4;
|
|
L_0223B5A0: ; // 0x223b5a0
|
|
/* 0223B5A0 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223B5A4 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223B5A8 */ cpu->r[10] = cpu->r[10] + 0x000029BCu;
|
|
/* 0223B5AC */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 0223B5AC */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0223B5B0 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 0223B5B0 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_0223B5B4: ; // 0x223b5b4
|
|
/* 0223B5B4 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0223B5B8 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 0223B5BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0223B5C0: ; // 0x223b5c0
|
|
/* 0223B5C0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223B5C4 */ return;
|
|
}
|
|
|
|
// fn_0223B5C8 @ 0x223b5c8
|
|
void Gambit_fn_0223B5C8(CPUState* cpu) {
|
|
L_0223B5C8: ; // 0x223b5c8
|
|
/* 0223B5C8 */ cpu->r[3] = cpu->r[3] + 0x00000084u;
|
|
/* 0223B5CC */ return;
|
|
}
|
|
|
|
// fn_0223B5D0 @ 0x223b5d0
|
|
void Gambit_fn_0223B5D0(CPUState* cpu) {
|
|
L_0223B5D0: ; // 0x223b5d0
|
|
/* 0223B5D0 */ cpu->r[3] = cpu->r[3] + 0x000000B4u;
|
|
/* 0223B5D4 */ return;
|
|
}
|
|
|
|
// fn_0223B5D8 @ 0x223b5d8
|
|
void Gambit_fn_0223B5D8(CPUState* cpu) {
|
|
L_0223B5D8: ; // 0x223b5d8
|
|
/* 0223B5D8 */ cpu->r[3] = cpu->r[3] + 0x000000C0u;
|
|
/* 0223B5DC */ return;
|
|
}
|
|
|
|
// fn_0223B5E0 @ 0x223b5e0
|
|
void Gambit_fn_0223B5E0(CPUState* cpu) {
|
|
L_0223B5E0: ; // 0x223b5e0
|
|
/* 0223B5E0 */ cpu->r[3] = 0x101F0000u;
|
|
/* 0223B5E4 */ cpu->r[3] = cpu->r[3] + 0x00006338u;
|
|
/* 0223B5E8 */ return;
|
|
}
|
|
|
|
// fn_0223B5EC @ 0x223b5ec
|
|
void Gambit_fn_0223B5EC(CPUState* cpu) {
|
|
L_0223B5EC: ; // 0x223b5ec
|
|
/* 0223B5EC */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B5F0 */ return;
|
|
}
|
|
|
|
// fn_0223B5F4 @ 0x223b5f4
|
|
void Gambit_fn_0223B5F4(CPUState* cpu) {
|
|
L_0223B5F4: ; // 0x223b5f4
|
|
/* 0223B5F4 */ return;
|
|
}
|
|
|
|
// fn_0223B5F8 @ 0x223b5f8
|
|
void Gambit_fn_0223B5F8(CPUState* cpu) {
|
|
L_0223B5F8: ; // 0x223b5f8
|
|
/* 0223B5F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B5FC */ return;
|
|
}
|
|
|
|
// fn_0223B600 @ 0x223b600
|
|
void Gambit_fn_0223B600(CPUState* cpu) {
|
|
L_0223B600: ; // 0x223b600
|
|
/* 0223B600 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223B604 */ return;
|
|
}
|
|
|
|
// fn_0223B60C @ 0x223b60c
|
|
void Gambit_fn_0223B60C(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;
|
|
|
|
L_0223B60C: ; // 0x223b60c
|
|
/* 0223B60C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0223B60C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223B60C */ cpu->r[1] = _t0;
|
|
/* 0223B610 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0223B610 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223B614 */ /* nop */
|
|
/* 0223B618 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223B618 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0223B61C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 0223B61C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0223B620 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0223B620 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0223B624 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0223B624 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0223B628 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223B628 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0223B62C */ cpu->r[31] = cpu->r[3];
|
|
/* 0223B62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223B630 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0223B630 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0223B634 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B634 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223B634 */ if (_t9) goto L_0223B638; else goto L_0223B648;
|
|
L_0223B638: ; // 0x223b638
|
|
/* 0223B638 */ cpu->r[3] = 0x00000314u;
|
|
/* 0223B63C */ Gambit_fn_02801A78(cpu);
|
|
/* 0223B640 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223B640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223B644 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B644 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223B644 */ if (_t11) goto L_0223B838; else goto L_0223B648;
|
|
L_0223B648: ; // 0x223b648
|
|
/* 0223B648 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223B64C */ Gambit_fn_02228894(cpu);
|
|
/* 0223B650 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B654 */ _t12 = cpu->r[11] + 0x00002DF4u;
|
|
/* 0223B654 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0223B658 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223B65C */ _t13 = cpu->r[9] + 0x00002E04u;
|
|
/* 0223B65C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223B660 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223B664 */ _t14 = cpu->r[31] + 0x00000138u;
|
|
/* 0223B664 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 0223B668 */ cpu->r[9] = cpu->r[9] + 0x00002EECu;
|
|
/* 0223B66C */ _t15 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0223B66C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[31]);
|
|
/* 0223B670 */ cpu->r[30] = 0x00000000u;
|
|
/* 0223B674 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 0223B674 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0223B678 */ _t17 = cpu->r[31] + 0x00000128u;
|
|
/* 0223B678 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 0223B67C */ _t18 = cpu->r[31] + 0x00000134u;
|
|
/* 0223B67C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 0223B680 */ cpu->r[28] = cpu->r[31] + 0x0000013Cu;
|
|
/* 0223B680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223B684 */ _t19 = cpu->r[31] + 0x00000130u;
|
|
/* 0223B684 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[31]);
|
|
/* 0223B688 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B688 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0223B688 */ if (_t21) goto L_0223B68C; else goto L_0223B69C;
|
|
L_0223B68C: ; // 0x223b68c
|
|
/* 0223B68C */ cpu->r[3] = 0x00000078u;
|
|
/* 0223B690 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223B694 */ cpu->r[28] = cpu->r[3];
|
|
/* 0223B694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223B698 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B698 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223B698 */ if (_t23) goto L_0223B6E4; else goto L_0223B69C;
|
|
L_0223B69C: ; // 0x223b69c
|
|
/* 0223B69C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223B6A0 */ cpu->r[29] = 0x02240000u;
|
|
/* 0223B6A4 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223B6A8 */ cpu->r[3] = cpu->r[28] + 0x00000008u;
|
|
/* 0223B6AC */ _t24 = cpu->r[28] + 0x00000000u;
|
|
/* 0223B6AC */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[0]);
|
|
/* 0223B6B0 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0223B6B4 */ cpu->r[6] = cpu->r[29] + 0xFFFFEFA4u;
|
|
/* 0223B6B8 */ _t25 = cpu->r[28] + 0x00000004u;
|
|
/* 0223B6B8 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 0223B6BC */ Gambit_fn_02C82E00(cpu);
|
|
/* 0223B6C0 */ cpu->r[3] = cpu->r[28] + 0x00000038u;
|
|
/* 0223B6C4 */ cpu->r[6] = cpu->r[29] + 0xFFFFEFA4u;
|
|
/* 0223B6C8 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223B6CC */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0223B6D0 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0223B6D4 */ cpu->r[11] = cpu->r[28] + 0x0000006Cu;
|
|
/* 0223B6D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223B6D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B6D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223B6D8 */ if (_t27) goto L_0223B6DC; else goto L_0223B6E4;
|
|
L_0223B6DC: ; // 0x223b6dc
|
|
/* 0223B6DC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223B6E0 */ Gambit_fn_02801A78(cpu);
|
|
L_0223B6E4: ; // 0x223b6e4
|
|
/* 0223B6E4 */ cpu->r[28] = cpu->r[31] + 0x000001B4u;
|
|
/* 0223B6E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223B6E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B6E8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223B6E8 */ if (_t29) goto L_0223B6EC; else goto L_0223B6FC;
|
|
L_0223B6EC: ; // 0x223b6ec
|
|
/* 0223B6EC */ cpu->r[3] = 0x00000078u;
|
|
/* 0223B6F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223B6F4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0223B6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223B6F8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B6F8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0223B6F8 */ if (_t31) goto L_0223B744; else goto L_0223B6FC;
|
|
L_0223B6FC: ; // 0x223b6fc
|
|
/* 0223B6FC */ cpu->r[12] = 0x00000001u;
|
|
/* 0223B700 */ cpu->r[29] = 0x02240000u;
|
|
/* 0223B704 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223B708 */ cpu->r[3] = cpu->r[28] + 0x00000008u;
|
|
/* 0223B70C */ _t32 = cpu->r[28] + 0x00000000u;
|
|
/* 0223B70C */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[12]);
|
|
/* 0223B710 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0223B714 */ cpu->r[6] = cpu->r[29] + 0xFFFFEFA4u;
|
|
/* 0223B718 */ _t33 = cpu->r[28] + 0x00000004u;
|
|
/* 0223B718 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 0223B71C */ Gambit_fn_02C82E00(cpu);
|
|
/* 0223B720 */ cpu->r[3] = cpu->r[28] + 0x00000038u;
|
|
/* 0223B724 */ cpu->r[6] = cpu->r[29] + 0xFFFFEFA4u;
|
|
/* 0223B728 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223B72C */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0223B730 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0223B734 */ cpu->r[0] = cpu->r[28] + 0x0000006Cu;
|
|
/* 0223B734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223B738 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B738 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0223B738 */ if (_t35) goto L_0223B73C; else goto L_0223B744;
|
|
L_0223B73C: ; // 0x223b73c
|
|
/* 0223B73C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223B740 */ Gambit_fn_02801A78(cpu);
|
|
L_0223B744: ; // 0x223b744
|
|
/* 0223B744 */ cpu->r[28] = cpu->r[31] + 0x0000022Cu;
|
|
/* 0223B744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223B748 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B748 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0223B748 */ if (_t37) goto L_0223B74C; else goto L_0223B75C;
|
|
L_0223B74C: ; // 0x223b74c
|
|
/* 0223B74C */ cpu->r[3] = 0x00000078u;
|
|
/* 0223B750 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223B754 */ cpu->r[28] = cpu->r[3];
|
|
/* 0223B754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0223B758 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B758 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0223B758 */ if (_t39) goto L_0223B7A4; else goto L_0223B75C;
|
|
L_0223B75C: ; // 0x223b75c
|
|
/* 0223B75C */ cpu->r[9] = 0x00000001u;
|
|
/* 0223B760 */ cpu->r[29] = 0x02240000u;
|
|
/* 0223B764 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223B768 */ cpu->r[3] = cpu->r[28] + 0x00000008u;
|
|
/* 0223B76C */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0223B76C */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[9]);
|
|
/* 0223B770 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0223B774 */ cpu->r[6] = cpu->r[29] + 0xFFFFEFA4u;
|
|
/* 0223B778 */ _t41 = cpu->r[28] + 0x00000004u;
|
|
/* 0223B778 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 0223B77C */ Gambit_fn_02C82E00(cpu);
|
|
/* 0223B780 */ cpu->r[3] = cpu->r[28] + 0x00000038u;
|
|
/* 0223B784 */ cpu->r[6] = cpu->r[29] + 0xFFFFEFA4u;
|
|
/* 0223B788 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223B78C */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0223B790 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0223B794 */ cpu->r[10] = cpu->r[28] + 0x0000006Cu;
|
|
/* 0223B794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223B798 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B798 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0223B798 */ if (_t43) goto L_0223B79C; else goto L_0223B7A4;
|
|
L_0223B79C: ; // 0x223b79c
|
|
/* 0223B79C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223B7A0 */ Gambit_fn_02801A78(cpu);
|
|
L_0223B7A4: ; // 0x223b7a4
|
|
/* 0223B7A4 */ _t44 = cpu->r[31] + 0x000002B8u;
|
|
/* 0223B7A4 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[31]);
|
|
/* 0223B7A8 */ cpu->r[11] = 0x00000001u;
|
|
/* 0223B7AC */ _t45 = cpu->r[31] + 0x000002B4u;
|
|
/* 0223B7AC */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 0223B7B0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B7B4 */ _t46 = cpu->r[31] + 0x000002A4u;
|
|
/* 0223B7B4 */ rbrew_write32(cpu->mem, _t46, cpu->r[11]);
|
|
/* 0223B7B8 */ _t47 = cpu->r[12] + 0x00002E0Cu;
|
|
/* 0223B7B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0223B7BC */ _t48 = cpu->r[31] + 0x000002B0u;
|
|
/* 0223B7BC */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 0223B7C0 */ _t49 = cpu->r[31] + 0x000002ACu;
|
|
/* 0223B7C0 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 0223B7C4 */ cpu->r[0] = cpu->r[31] + 0x000002BCu;
|
|
/* 0223B7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223B7C8 */ _t50 = cpu->r[31] + 0x000002A8u;
|
|
/* 0223B7C8 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 0223B7CC */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B7CC */ _t52 = _t51 & 0x00000001u;
|
|
/* 0223B7CC */ if (_t52) goto L_0223B7D0; else goto L_0223B7D8;
|
|
L_0223B7D0: ; // 0x223b7d0
|
|
/* 0223B7D0 */ cpu->r[3] = 0x00000008u;
|
|
/* 0223B7D4 */ Gambit_fn_02801A78(cpu);
|
|
L_0223B7D8: ; // 0x223b7d8
|
|
/* 0223B7D8 */ _t53 = cpu->r[31] + 0x000002D4u;
|
|
/* 0223B7D8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[31]);
|
|
/* 0223B7DC */ cpu->r[9] = 0x10050000u;
|
|
/* 0223B7E0 */ _t54 = cpu->r[31] + 0x000002C6u;
|
|
/* 0223B7E0 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[30]);
|
|
/* 0223B7E4 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0223B7E8 */ _t55 = cpu->r[9] + 0x00002E10u;
|
|
/* 0223B7E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0223B7EC */ _t56 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223B7EC */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[10]);
|
|
/* 0223B7F0 */ cpu->r[11] = 0x000000FFu;
|
|
/* 0223B7F4 */ _t57 = cpu->r[31] + 0x000002C9u;
|
|
/* 0223B7F4 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[10]);
|
|
/* 0223B7F8 */ _t58 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223B7F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0223B7FC */ _t59 = cpu->r[31] + 0x000002C4u;
|
|
/* 0223B7FC */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[11]);
|
|
/* 0223B800 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 0223B804 */ _t60 = cpu->r[31] + 0x000002D0u;
|
|
/* 0223B804 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 0223B808 */ cpu->r[12] = cpu->r[31] + 0x000002D8u;
|
|
/* 0223B808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223B80C */ _t61 = cpu->r[31] + 0x000002C5u;
|
|
/* 0223B80C */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[11]);
|
|
/* 0223B810 */ _t62 = cpu->r[31] + 0x000002C7u;
|
|
/* 0223B810 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[10]);
|
|
/* 0223B814 */ _t63 = cpu->r[31] + 0x000002CCu;
|
|
/* 0223B814 */ rbrew_write16(cpu->mem, _t63, (uint16_t)cpu->r[10]);
|
|
/* 0223B818 */ _t64 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223B818 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 0223B81C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B81C */ _t66 = _t65 & 0x00000001u;
|
|
/* 0223B81C */ if (_t66) goto L_0223B820; else goto L_0223B828;
|
|
L_0223B820: ; // 0x223b820
|
|
/* 0223B820 */ cpu->r[3] = 0x00000030u;
|
|
/* 0223B824 */ Gambit_fn_02801A78(cpu);
|
|
L_0223B828: ; // 0x223b828
|
|
/* 0223B828 */ cpu->r[0] = cpu->r[31] + 0x00000308u;
|
|
/* 0223B828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223B82C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B82C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0223B82C */ if (_t68) goto L_0223B830; else goto L_0223B838;
|
|
L_0223B830: ; // 0x223b830
|
|
/* 0223B830 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223B834 */ Gambit_fn_02801A78(cpu);
|
|
L_0223B838: ; // 0x223b838
|
|
/* 0223B838 */ _t69 = cpu->r[1] + 0x00000008u;
|
|
/* 0223B838 */ cpu->r[28] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0223B83C */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223B83C */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0223B840 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 0223B840 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0223B844 */ _t72 = cpu->r[1] + 0x00000010u;
|
|
/* 0223B844 */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0223B848 */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 0223B848 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 0223B84C */ cpu->r[3] = cpu->r[31];
|
|
/* 0223B850 */ _t74 = cpu->r[1] + 0x00000014u;
|
|
/* 0223B850 */ cpu->r[31] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0223B854 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B854 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0223B854 */ if (_t76) goto L_0223B858; // else: addr-0 trap, fall-through
|
|
L_0223B858: ; // 0x223b858
|
|
/* 0223B858 */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223B858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0223B85C */ cpu->lr = cpu->r[0];
|
|
/* 0223B860 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0223B864 */ return;
|
|
}
|
|
|
|
// fn_0223B868 @ 0x223b868
|
|
void Gambit_fn_0223B868(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_0223B868: ; // 0x223b868
|
|
/* 0223B868 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B86C */ _t0 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223B86C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223B870 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000003Fu);
|
|
/* 0223B874 */ cpu->f[1] = cpu->f[0];
|
|
/* 0223B878 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B878 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223B878 */ if (_t2) goto L_0223B87C; else goto L_0223B948;
|
|
L_0223B87C: ; // 0x223b87c
|
|
/* 0223B87C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000001Eu);
|
|
/* 0223B880 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B880 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0223B880 */ if (_t4) goto L_0223B884; else goto L_0223B8A8;
|
|
L_0223B884: ; // 0x223b884
|
|
/* 0223B884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000011u);
|
|
/* 0223B888 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223B888 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223B888 */ if (_t6) goto L_0223B88C; else goto L_0223B9CC;
|
|
L_0223B88C: ; // 0x223b88c
|
|
/* 0223B88C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000014u);
|
|
/* 0223B890 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B890 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223B890 */ if (_t8) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223B890 */ goto L_0223B894;
|
|
L_0223B894: ; // 0x223b894
|
|
/* 0223B894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000001Bu);
|
|
/* 0223B898 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223B898 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0223B898 */ if (_t10) goto L_0223B89C; else goto L_0223B9CC;
|
|
L_0223B89C: ; // 0x223b89c
|
|
/* 0223B89C */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B8A0 */ _t11 = cpu->r[11] + 0x00002E18u;
|
|
/* 0223B8A0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0223B8A4 */ return;
|
|
L_0223B8A8: ; // 0x223b8a8
|
|
/* 0223B8A8 */ cpu->r[0] = 0x02240000u;
|
|
/* 0223B8AC */ cpu->r[12] = cpu->r[3] + 0xFFFFFFE2u;
|
|
/* 0223B8B0 */ cpu->r[0] = cpu->r[0] + 0xFFFFB8C4u;
|
|
/* 0223B8B4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223B8B8 */ cpu->r[0] = cpu->r[12] + cpu->r[0];
|
|
/* 0223B8BC */ cpu->ctr = cpu->r[0];
|
|
/* 0223B8C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0223B948: ; // 0x223b948
|
|
/* 0223B948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000004Cu);
|
|
/* 0223B94C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B94C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223B94C */ if (_t13) goto L_0223B950; else goto L_0223B974;
|
|
L_0223B950: ; // 0x223b950
|
|
/* 0223B950 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000043u);
|
|
/* 0223B954 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223B954 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0223B954 */ if (_t15) goto L_0223B958; else goto L_0223B994;
|
|
L_0223B958: ; // 0x223b958
|
|
/* 0223B958 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000046u);
|
|
/* 0223B95C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B95C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0223B95C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223B95C */ goto L_0223B960;
|
|
L_0223B960: ; // 0x223b960
|
|
/* 0223B960 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000047u);
|
|
/* 0223B964 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223B964 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0223B964 */ if (_t19) goto L_0223B968; else goto L_0223B9CC;
|
|
L_0223B968: ; // 0x223b968
|
|
/* 0223B968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000049u);
|
|
/* 0223B96C */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223B96C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0223B96C */ if (_t21) goto L_0223B970; else goto L_0223B9B8;
|
|
L_0223B970: ; // 0x223b970
|
|
/* 0223B970 */ return;
|
|
L_0223B974: ; // 0x223b974
|
|
/* 0223B974 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000004Fu);
|
|
/* 0223B978 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223B978 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223B978 */ if (_t23) goto L_0223B9CC; else goto L_0223B97C;
|
|
L_0223B97C: ; // 0x223b97c
|
|
/* 0223B97C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B97C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0223B97C */ if (_t25) goto L_0223B9AC; else goto L_0223B980;
|
|
L_0223B980: ; // 0x223b980
|
|
/* 0223B980 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000054u);
|
|
/* 0223B984 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B984 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223B984 */ if (_t27) goto L_0223B9C4; else goto L_0223B988;
|
|
L_0223B988: ; // 0x223b988
|
|
/* 0223B988 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000079u);
|
|
/* 0223B98C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B98C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223B98C */ if (_t29) goto L_0223B9CC; else goto L_0223B990;
|
|
L_0223B990: ; // 0x223b990
|
|
/* 0223B990 */ return;
|
|
L_0223B994: ; // 0x223b994
|
|
/* 0223B994 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B998 */ _t30 = cpu->r[11] + 0x00002E08u;
|
|
/* 0223B998 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223B99C */ return;
|
|
L_0223B9AC: ; // 0x223b9ac
|
|
/* 0223B9AC */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B9B0 */ _t31 = cpu->r[11] + 0x00002E18u;
|
|
/* 0223B9B0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0223B9B4 */ return;
|
|
L_0223B9B8: ; // 0x223b9b8
|
|
/* 0223B9B8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B9BC */ _t32 = cpu->r[12] + 0x00002E1Cu;
|
|
/* 0223B9BC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0223B9C0 */ return;
|
|
L_0223B9C4: ; // 0x223b9c4
|
|
/* 0223B9C4 */ cpu->f[1] = cpu->f[0];
|
|
/* 0223B9C8 */ return;
|
|
L_0223B9CC: ; // 0x223b9cc
|
|
/* 0223B9CC */ cpu->r[11] = 0x10050000u;
|
|
/* 0223B9D0 */ _t33 = cpu->r[11] + 0x00002DF8u;
|
|
/* 0223B9D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0223B9D4 */ return;
|
|
}
|
|
|
|
// fn_0223B9D8 @ 0x223b9d8
|
|
void Gambit_fn_0223B9D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223B9D8: ; // 0x223b9d8
|
|
/* 0223B9D8 */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223B9D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223B9DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223B9E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223B9E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223B9E0 */ if (_t2) goto L_0223B9F0; else goto L_0223B9E4;
|
|
L_0223B9E4: ; // 0x223b9e4
|
|
/* 0223B9E4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B9E8 */ _t3 = cpu->r[12] + 0x00002E20u;
|
|
/* 0223B9E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223B9EC */ return;
|
|
L_0223B9F0: ; // 0x223b9f0
|
|
/* 0223B9F0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223B9F4 */ _t4 = cpu->r[12] + 0x00002E0Cu;
|
|
/* 0223B9F4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223B9F8 */ return;
|
|
}
|
|
|
|
// fn_0223B9FC @ 0x223b9fc
|
|
void Gambit_fn_0223B9FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223B9FC: ; // 0x223b9fc
|
|
/* 0223B9FC */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223B9FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223BA00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BA04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BA04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223BA04 */ if (_t2) goto L_0223BA14; else goto L_0223BA08;
|
|
L_0223BA08: ; // 0x223ba08
|
|
/* 0223BA08 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BA0C */ _t3 = cpu->r[12] + 0x00002E24u;
|
|
/* 0223BA0C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BA10 */ return;
|
|
L_0223BA14: ; // 0x223ba14
|
|
/* 0223BA14 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BA18 */ _t4 = cpu->r[12] + 0x00002E28u;
|
|
/* 0223BA18 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BA1C */ return;
|
|
}
|
|
|
|
// fn_0223BA20 @ 0x223ba20
|
|
void Gambit_fn_0223BA20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223BA20: ; // 0x223ba20
|
|
/* 0223BA20 */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223BA20 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223BA24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BA28 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BA28 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223BA28 */ if (_t2) goto L_0223BA38; else goto L_0223BA2C;
|
|
L_0223BA2C: ; // 0x223ba2c
|
|
/* 0223BA2C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BA30 */ _t3 = cpu->r[12] + 0x00002E2Cu;
|
|
/* 0223BA30 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BA34 */ return;
|
|
L_0223BA38: ; // 0x223ba38
|
|
/* 0223BA38 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BA3C */ _t4 = cpu->r[12] + 0x00002E30u;
|
|
/* 0223BA3C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BA40 */ return;
|
|
}
|
|
|
|
// fn_0223BA44 @ 0x223ba44
|
|
void Gambit_fn_0223BA44(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;
|
|
|
|
L_0223BA44: ; // 0x223ba44
|
|
/* 0223BA44 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0223BA44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223BA44 */ cpu->r[1] = _t0;
|
|
/* 0223BA48 */ /* nop */
|
|
/* 0223BA4C */ cpu->r[0] = cpu->lr;
|
|
/* 0223BA50 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 0223BA50 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223BA54 */ /* nop */
|
|
/* 0223BA58 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 0223BA58 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0223BA5C */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0223BA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223BA60 */ /* nop */
|
|
/* 0223BA64 */ _t4 = cpu->r[1] + 0x00000050u;
|
|
/* 0223BA64 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0223BA68 */ _t5 = cpu->r[1] + 0x00000060u;
|
|
/* 0223BA68 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0223BA6C */ cpu->r[29] = cpu->r[3];
|
|
/* 0223BA70 */ cpu->r[8] = 0x00000001u;
|
|
/* 0223BA74 */ _t6 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0223BA74 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[8]);
|
|
/* 0223BA78 */ cpu->r[30] = cpu->r[4];
|
|
/* 0223BA7C */ cpu->r[9] = 0x00000000u;
|
|
/* 0223BA80 */ _t7 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0223BA80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223BA84 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BA84 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 0223BA88 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 0223BA88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223BA8C */ _t9 = cpu->r[30] + 0x00000164u;
|
|
/* 0223BA8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223BA90 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BA90 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223BA90 */ if (_t11) goto L_0223BAB8; else goto L_0223BA94;
|
|
L_0223BA94: ; // 0x223ba94
|
|
/* 0223BA94 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Au);
|
|
/* 0223BA98 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0223BA9C */ cpu->r[0] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0223BAA0 */ cpu->r[9] = cpu->r[7] + 0x101E0000u;
|
|
/* 0223BAA4 */ cpu->r[0] = cpu->r[11] - cpu->r[0];
|
|
/* 0223BAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BAA8 */ _t12 = cpu->r[9] + 0xFFFF9484u;
|
|
/* 0223BAA8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223BAAC */ cpu->r[0] = 0x00000000u;
|
|
/* 0223BAB0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BAB0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0223BAB0 */ if (_t14) goto L_0223BADC; else goto L_0223BAB4;
|
|
L_0223BAB4: ; // 0x223bab4
|
|
/* 0223BAB4 */ goto L_0223BAD8;
|
|
L_0223BAB8: ; // 0x223bab8
|
|
/* 0223BAB8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Eu);
|
|
/* 0223BABC */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0223BAC0 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0223BAC4 */ cpu->r[9] = cpu->r[7] + 0x101E0000u;
|
|
/* 0223BAC8 */ cpu->r[0] = cpu->r[12] - cpu->r[0];
|
|
/* 0223BAC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BACC */ _t15 = cpu->r[9] + 0xFFFF9484u;
|
|
/* 0223BACC */ cpu->r[24] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223BAD0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0223BAD4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BAD4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0223BAD4 */ if (_t17) goto L_0223BADC; else goto L_0223BAD8;
|
|
L_0223BAD8: ; // 0x223bad8
|
|
/* 0223BAD8 */ cpu->r[0] = cpu->r[24];
|
|
L_0223BADC: ; // 0x223badc
|
|
/* 0223BADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 0223BAE0 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BAE0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0223BAE0 */ if (_t19) goto L_0223BAE4; else goto L_0223BAE8;
|
|
L_0223BAE4: ; // 0x223bae4
|
|
/* 0223BAE4 */ cpu->r[0] = 0x00000004u;
|
|
L_0223BAE8: ; // 0x223bae8
|
|
/* 0223BAE8 */ cpu->r[25] = 0x00000000u;
|
|
/* 0223BAEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 0223BAF0 */ _t20 = cpu->r[29] + 0x00000140u;
|
|
/* 0223BAF0 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 0223BAF4 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BAF4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0223BAF4 */ if (_t22) goto L_0223BAF8; else goto L_0223BB40;
|
|
L_0223BAF8: ; // 0x223baf8
|
|
/* 0223BAF8 */ cpu->r[27] = cpu->r[29] + 0x00000174u;
|
|
/* 0223BAFC */ cpu->r[31] = cpu->r[29] + 0x00000144u;
|
|
/* 0223BB00 */ cpu->r[28] = cpu->r[29] + 0x000001A4u;
|
|
/* 0223BB04 */ cpu->r[26] = 0x00000000u;
|
|
L_0223BB08: ; // 0x223bb08
|
|
/* 0223BB08 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223BB0C */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 0223BB10 */ cpu->r[7] = cpu->r[31] + cpu->r[26];
|
|
/* 0223BB14 */ cpu->r[10] = cpu->r[9];
|
|
/* 0223BB18 */ cpu->r[6] = cpu->r[27] + cpu->r[26];
|
|
/* 0223BB1C */ cpu->r[5] = cpu->r[28] + cpu->r[25];
|
|
/* 0223BB20 */ cpu->r[4] = cpu->r[25];
|
|
/* 0223BB24 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223BB28 */ Gambit_fn_02040F70(cpu);
|
|
/* 0223BB2C */ _t23 = cpu->r[29] + 0x00000140u;
|
|
/* 0223BB2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0223BB30 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0223BB34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[11]);
|
|
/* 0223BB38 */ cpu->r[26] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0223BB3C */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BB3C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0223BB3C */ if (_t25) goto L_0223BB08; else goto L_0223BB40;
|
|
L_0223BB40: ; // 0x223bb40
|
|
/* 0223BB40 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223BB44 */ _t26 = cpu->r[11] + 0x00002E34u;
|
|
/* 0223BB44 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223BB48 */ Gambit_fn_02C886F8(cpu);
|
|
/* 0223BB4C */ _t27 = cpu->r[29] + 0x00000140u;
|
|
/* 0223BB4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0223BB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BB54 */ cpu->f[31] = cpu->f[1];
|
|
/* 0223BB58 */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BB58 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223BB58 */ if (_t29) goto L_0223BB5C; else goto L_0223BB7C;
|
|
L_0223BB5C: ; // 0x223bb5c
|
|
/* 0223BB5C */ _t30 = cpu->r[29] + 0x000001A4u;
|
|
/* 0223BB5C */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0223BB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x000000FEu);
|
|
/* 0223BB64 */ _t31 = cpu->r[29] + 0x000002C4u;
|
|
/* 0223BB64 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 0223BB68 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BB68 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0223BB68 */ if (_t33) goto L_0223BB6C; else goto L_0223BBC8;
|
|
L_0223BB6C: ; // 0x223bb6c
|
|
/* 0223BB6C */ _t34 = cpu->r[29] + 0x00000148u;
|
|
/* 0223BB6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0223BB70 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0223BB74 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BB74 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0223BB74 */ if (_t36) goto L_0223BB78; else goto L_0223BBC8;
|
|
L_0223BB78: ; // 0x223bb78
|
|
/* 0223BB78 */ goto L_0223BBC0;
|
|
L_0223BB7C: ; // 0x223bb7c
|
|
/* 0223BB7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0223BB80 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BB80 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0223BB80 */ if (_t38) goto L_0223BB84; else goto L_0223BBC0;
|
|
L_0223BB84: ; // 0x223bb84
|
|
/* 0223BB84 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223BB88 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223BB8C */ cpu->r[7] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BB90 */ cpu->r[9] = cpu->r[4];
|
|
/* 0223BB94 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 0223BB98 */ cpu->r[10] = cpu->r[4];
|
|
/* 0223BB9C */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 0223BBA0 */ cpu->r[5] = cpu->r[29] + 0x000002C4u;
|
|
/* 0223BBA4 */ Gambit_fn_02040F70(cpu);
|
|
/* 0223BBA8 */ _t39 = cpu->r[29] + 0x000002C4u;
|
|
/* 0223BBA8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0223BBAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x000000FEu);
|
|
/* 0223BBB0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BBB0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0223BBB0 */ if (_t41) goto L_0223BBB4; else goto L_0223BBC8;
|
|
L_0223BBB4: ; // 0x223bbb4
|
|
/* 0223BBB4 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BBB4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0223BBB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0223BBBC */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BBBC */ _t44 = _t43 & 0x00000001u;
|
|
/* 0223BBBC */ if (_t44) goto L_0223BBC0; else goto L_0223BBC8;
|
|
L_0223BBC0: ; // 0x223bbc0
|
|
/* 0223BBC0 */ cpu->r[8] = 0x000000FFu;
|
|
/* 0223BBC4 */ _t45 = cpu->r[29] + 0x000002C4u;
|
|
/* 0223BBC4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[8]);
|
|
L_0223BBC8: ; // 0x223bbc8
|
|
/* 0223BBC8 */ _t46 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0223BBC8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0223BBCC */ cpu->r[8] = 0x10050000u;
|
|
/* 0223BBD0 */ _t47 = cpu->r[30] + 0x00000000u;
|
|
/* 0223BBD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0223BBD4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BBD8 */ _t48 = cpu->r[8] + 0x00002DF4u;
|
|
/* 0223BBD8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0223BBDC */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 0223BBDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223BBE0 */ _t49 = cpu->r[12] + 0x00002DFCu;
|
|
/* 0223BBE0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0223BBE4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BBE4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0223BBE4 */ if (_t51) goto L_0223BC48; else goto L_0223BBE8;
|
|
L_0223BBE8: ; // 0x223bbe8
|
|
/* 0223BBE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0223BBE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BBEC */ cpu->r[31] = cpu->r[30] + 0x000000A8u;
|
|
/* 0223BBF0 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BBF0 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0223BBF0 */ if (_t53) goto L_0223BC2C; else goto L_0223BBF4;
|
|
L_0223BBF4: ; // 0x223bbf4
|
|
/* 0223BBF4 */ cpu->r[3] = cpu->r[30] + 0x00000138u;
|
|
/* 0223BBF8 */ Gambit_fn_02C69350(cpu);
|
|
/* 0223BBFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0223BC00 */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 0223BC00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223BC04 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BC04 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0223BC04 */ if (_t56) goto L_0223BC08; else goto L_0223BC24;
|
|
L_0223BC08: ; // 0x223bc08
|
|
/* 0223BC08 */ cpu->f[12] = cpu->f[30] / cpu->f[1];
|
|
/* 0223BC0C */ _t57 = cpu->r[30] + 0x00000140u;
|
|
/* 0223BC0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0223BC10 */ /* nop */
|
|
/* 0223BC14 */ /* nop */
|
|
/* 0223BC18 */ cpu->f[12] = cpu->f[13] * cpu->f[12];
|
|
/* 0223BC1C */ /* nop */
|
|
/* 0223BC20 */ _t58 = cpu->r[30] + 0x000000B0u;
|
|
/* 0223BC20 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[12]);
|
|
L_0223BC24: ; // 0x223bc24
|
|
/* 0223BC24 */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 0223BC28 */ _t59 = cpu->r[30] + 0x00000000u;
|
|
/* 0223BC28 */ rbrew_write32(cpu->mem, _t59, cpu->r[7]);
|
|
L_0223BC2C: ; // 0x223bc2c
|
|
/* 0223BC2C */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 0223BC2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0223BC30 */ _t61 = cpu->r[29] + 0x000001A8u;
|
|
/* 0223BC30 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[13]);
|
|
/* 0223BC34 */ _t62 = cpu->r[31] + 0x00000004u;
|
|
/* 0223BC34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0223BC38 */ _t63 = cpu->r[29] + 0x000001ACu;
|
|
/* 0223BC38 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 0223BC3C */ _t64 = cpu->r[31] + 0x00000008u;
|
|
/* 0223BC3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0223BC40 */ _t65 = cpu->r[29] + 0x000001B0u;
|
|
/* 0223BC40 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 0223BC44 */ goto L_0223BCA4;
|
|
L_0223BC48: ; // 0x223bc48
|
|
/* 0223BC48 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223BC48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223BC4C */ cpu->r[31] = cpu->r[30] + 0x00000048u;
|
|
/* 0223BC50 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BC50 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0223BC50 */ if (_t67) goto L_0223BC8C; else goto L_0223BC54;
|
|
L_0223BC54: ; // 0x223bc54
|
|
/* 0223BC54 */ cpu->r[3] = cpu->r[30] + 0x0000012Cu;
|
|
/* 0223BC58 */ Gambit_fn_02C69350(cpu);
|
|
/* 0223BC5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0223BC60 */ _t68 = cpu->r[30] + 0x00000000u;
|
|
/* 0223BC60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0223BC64 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BC64 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0223BC64 */ if (_t70) goto L_0223BC68; else goto L_0223BC84;
|
|
L_0223BC68: ; // 0x223bc68
|
|
/* 0223BC68 */ cpu->f[13] = cpu->f[30] / cpu->f[1];
|
|
/* 0223BC6C */ _t71 = cpu->r[30] + 0x00000134u;
|
|
/* 0223BC6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0223BC70 */ /* nop */
|
|
/* 0223BC74 */ /* nop */
|
|
/* 0223BC78 */ cpu->f[13] = cpu->f[0] * cpu->f[13];
|
|
/* 0223BC7C */ /* nop */
|
|
/* 0223BC80 */ _t72 = cpu->r[30] + 0x00000050u;
|
|
/* 0223BC80 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
L_0223BC84: ; // 0x223bc84
|
|
/* 0223BC84 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0223BC88 */ _t73 = cpu->r[30] + 0x00000000u;
|
|
/* 0223BC88 */ rbrew_write32(cpu->mem, _t73, cpu->r[12]);
|
|
L_0223BC8C: ; // 0x223bc8c
|
|
/* 0223BC8C */ _t74 = cpu->r[31] + 0x00000000u;
|
|
/* 0223BC8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0223BC90 */ _t75 = cpu->r[29] + 0x000001A8u;
|
|
/* 0223BC90 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[13]);
|
|
/* 0223BC94 */ _t76 = cpu->r[31] + 0x00000004u;
|
|
/* 0223BC94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0223BC98 */ _t77 = cpu->r[29] + 0x000001ACu;
|
|
/* 0223BC98 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 0223BC9C */ _t78 = cpu->r[31] + 0x00000008u;
|
|
/* 0223BC9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0223BCA0 */ _t79 = cpu->r[29] + 0x000001B0u;
|
|
/* 0223BCA0 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[12]);
|
|
L_0223BCA4: ; // 0x223bca4
|
|
/* 0223BCA4 */ /* nop */
|
|
/* 0223BCA8 */ _t80 = cpu->r[1] + 0x00000050u;
|
|
/* 0223BCA8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0223BCAC */ _t81 = cpu->r[1] + 0x00000060u;
|
|
/* 0223BCAC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0223BCB0 */ _t82 = cpu->r[1] + 0x00000048u;
|
|
/* 0223BCB0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 0223BCB4 */ _t83 = cpu->r[1] + 0x00000058u;
|
|
/* 0223BCB4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t83);
|
|
/* 0223BCB8 */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BCB8 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0223BCB8 */ if (_t85) goto L_0223BCBC; // else: addr-0 trap, fall-through
|
|
L_0223BCBC: ; // 0x223bcbc
|
|
/* 0223BCBC */ _t86 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0223BCBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0223BCC0 */ cpu->lr = cpu->r[0];
|
|
/* 0223BCC4 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0223BCC8 */ return;
|
|
}
|
|
|
|
// fn_0223BCCC @ 0x223bccc
|
|
void Gambit_fn_0223BCCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0223BCCC: ; // 0x223bccc
|
|
/* 0223BCCC */ cpu->r[11] = 0x10050000u;
|
|
/* 0223BCD0 */ _t0 = cpu->r[4] + 0x00000004u;
|
|
/* 0223BCD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223BCD4 */ _t1 = cpu->r[11] + 0x00002DF4u;
|
|
/* 0223BCD4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0223BCD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0223BCDC */ _t2 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BCDC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223BCDC */ if (_t3) goto L_0223BCE0; else goto L_0223BD04;
|
|
L_0223BCE0: ; // 0x223bce0
|
|
/* 0223BCE0 */ _t4 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223BCE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0223BCE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BCE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BCE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223BCE8 */ if (_t6) goto L_0223BCF8; else goto L_0223BCEC;
|
|
L_0223BCEC: ; // 0x223bcec
|
|
/* 0223BCEC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BCF0 */ _t7 = cpu->r[12] + 0x00002E38u;
|
|
/* 0223BCF0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0223BCF4 */ return;
|
|
L_0223BCF8: ; // 0x223bcf8
|
|
/* 0223BCF8 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223BCFC */ _t8 = cpu->r[11] + 0x00002E3Cu;
|
|
/* 0223BCFC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0223BD00 */ return;
|
|
L_0223BD04: ; // 0x223bd04
|
|
/* 0223BD04 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD08 */ _t9 = cpu->r[12] + 0x00002E40u;
|
|
/* 0223BD08 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223BD0C */ return;
|
|
}
|
|
|
|
// fn_0223BD10 @ 0x223bd10
|
|
void Gambit_fn_0223BD10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223BD10: ; // 0x223bd10
|
|
/* 0223BD10 */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223BD10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223BD14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BD18 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BD18 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223BD18 */ if (_t2) goto L_0223BD28; else goto L_0223BD1C;
|
|
L_0223BD1C: ; // 0x223bd1c
|
|
/* 0223BD1C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD20 */ _t3 = cpu->r[12] + 0x00002E44u;
|
|
/* 0223BD20 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BD24 */ return;
|
|
L_0223BD28: ; // 0x223bd28
|
|
/* 0223BD28 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD2C */ _t4 = cpu->r[12] + 0x00002E04u;
|
|
/* 0223BD2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BD30 */ return;
|
|
}
|
|
|
|
// fn_0223BD34 @ 0x223bd34
|
|
void Gambit_fn_0223BD34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223BD34: ; // 0x223bd34
|
|
/* 0223BD34 */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223BD34 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223BD38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BD3C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BD3C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223BD3C */ if (_t2) goto L_0223BD4C; else goto L_0223BD40;
|
|
L_0223BD40: ; // 0x223bd40
|
|
/* 0223BD40 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD44 */ _t3 = cpu->r[12] + 0x00002E0Cu;
|
|
/* 0223BD44 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BD48 */ return;
|
|
L_0223BD4C: ; // 0x223bd4c
|
|
/* 0223BD4C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD50 */ _t4 = cpu->r[12] + 0x00002E10u;
|
|
/* 0223BD50 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BD54 */ return;
|
|
}
|
|
|
|
// fn_0223BD58 @ 0x223bd58
|
|
void Gambit_fn_0223BD58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223BD58: ; // 0x223bd58
|
|
/* 0223BD58 */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223BD58 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223BD5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223BD60 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BD60 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223BD60 */ if (_t2) goto L_0223BD70; else goto L_0223BD64;
|
|
L_0223BD64: ; // 0x223bd64
|
|
/* 0223BD64 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD68 */ _t3 = cpu->r[12] + 0x00002E48u;
|
|
/* 0223BD68 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BD6C */ return;
|
|
L_0223BD70: ; // 0x223bd70
|
|
/* 0223BD70 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BD74 */ _t4 = cpu->r[12] + 0x00002E08u;
|
|
/* 0223BD74 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BD78 */ return;
|
|
}
|
|
|
|
// fn_0223BD7C @ 0x223bd7c
|
|
void Gambit_fn_0223BD7C(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, _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;
|
|
double _ft23, _ft24;
|
|
|
|
L_0223BD7C: ; // 0x223bd7c
|
|
/* 0223BD7C */ cpu->r[0] = cpu->lr;
|
|
/* 0223BD80 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0223BD80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223BD80 */ cpu->r[1] = _t0;
|
|
/* 0223BD84 */ _t1 = cpu->r[1] + 0x00000074u;
|
|
/* 0223BD84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223BD88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223BD8C */ _t2 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223BD8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223BD90 */ _t3 = cpu->r[31] + 0x000000FCu;
|
|
/* 0223BD90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BD94 */ _t4 = cpu->r[31] + 0x00000100u;
|
|
/* 0223BD94 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BD98 */ _t5 = cpu->r[31] + 0x00000104u;
|
|
/* 0223BD98 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223BD9C */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0223BDA0 */ Gambit_fn_02C69840(cpu);
|
|
/* 0223BDA4 */ _t6 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223BDA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223BDA8 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0223BDAC */ _t7 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0223BDAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223BDB0 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 0223BDB4 */ _t8 = cpu->r[31] + 0x00000298u;
|
|
/* 0223BDB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223BDB8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BDB8 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 0223BDBC */ _t10 = cpu->r[31] + 0x000002A0u;
|
|
/* 0223BDBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223BDC0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BDC0 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 0223BDC4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223BDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223BDC8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BDC8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0223BDCC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BDCC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0223BDCC */ if (_t14) goto L_0223BE68; else goto L_0223BDD0;
|
|
L_0223BDD0: ; // 0x223bdd0
|
|
/* 0223BDD0 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BDD0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0223BDD4 */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 0223BDD8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BDD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0223BDDC */ cpu->r[7] = 0x10050000u;
|
|
/* 0223BDE0 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0223BDE4 */ _t17 = cpu->r[7] + 0x00002DF4u;
|
|
/* 0223BDE4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0223BDE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0223BDEC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BDEC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 0223BDF0 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BDF0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223BDF0 */ if (_t20) goto L_0223BDF4; else goto L_0223BE34;
|
|
L_0223BDF4: ; // 0x223bdf4
|
|
/* 0223BDF4 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223BDF8 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223BDFC */ _t21 = cpu->r[11] + 0x00002E08u;
|
|
/* 0223BDFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0223BE00 */ _t22 = cpu->r[10] + 0x00002E04u;
|
|
/* 0223BE00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0223BE04 */ _ft23 = sqrt(cpu->f[10]);
|
|
/* 0223BE04 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 0223BE04 */ cpu->f[8] = _ft24 / _ft23;
|
|
/* 0223BE08 */ cpu->f[13] = cpu->f[8] * cpu->f[8];
|
|
/* 0223BE0C */ cpu->f[9] = cpu->f[8] * cpu->f[0];
|
|
/* 0223BE10 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[12]));
|
|
/* 0223BE14 */ cpu->f[8] = cpu->f[13] * cpu->f[9];
|
|
/* 0223BE18 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BE18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223BE1C */ /* nop */
|
|
/* 0223BE20 */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 0223BE24 */ /* nop */
|
|
/* 0223BE28 */ /* nop */
|
|
/* 0223BE2C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BE2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223BE30 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BE30 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
L_0223BE34: ; // 0x223be34
|
|
/* 0223BE34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[11]);
|
|
/* 0223BE38 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE38 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223BE38 */ if (_t29) goto L_0223BE3C; else goto L_0223BE68;
|
|
L_0223BE3C: ; // 0x223be3c
|
|
/* 0223BE3C */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BE3C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223BE40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0223BE44 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE44 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0223BE44 */ if (_t32) goto L_0223BE48; else goto L_0223BE68;
|
|
L_0223BE48: ; // 0x223be48
|
|
/* 0223BE48 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 0223BE4C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE4C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0223BE4C */ if (_t34) goto L_0223BE50; else goto L_0223BE68;
|
|
L_0223BE50: ; // 0x223be50
|
|
/* 0223BE50 */ _t35 = cpu->r[4] + 0x00000000u;
|
|
/* 0223BE50 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0223BE54 */ _t36 = cpu->r[4] + 0x00000004u;
|
|
/* 0223BE54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0223BE58 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BE58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[8]);
|
|
/* 0223BE5C */ _t38 = cpu->r[4] + 0x00000008u;
|
|
/* 0223BE5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0223BE60 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BE60 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[10]);
|
|
/* 0223BE64 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BE64 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
L_0223BE68: ; // 0x223be68
|
|
/* 0223BE68 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0223BE6C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BE70 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 0223BE74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223BE78 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE78 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0223BE78 */ if (_t42) goto L_0223BE7C; else goto L_0223BE90;
|
|
L_0223BE7C: ; // 0x223be7c
|
|
/* 0223BE7C */ cpu->r[4] = 0x00000000u;
|
|
/* 0223BE80 */ cpu->r[5] = 0x80000000u;
|
|
/* 0223BE84 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BE88 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223BE8C */ Gambit_fn_021E1408(cpu);
|
|
L_0223BE90: ; // 0x223be90
|
|
/* 0223BE90 */ cpu->r[5] = cpu->r[31] + 0x000002D8u;
|
|
/* 0223BE94 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BE98 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0223BE9C */ Gambit_fn_02C69544(cpu);
|
|
/* 0223BEA0 */ _t43 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223BEA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0223BEA4 */ /* nop */
|
|
/* 0223BEA8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BEA8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0223BEA8 */ if (_t45) goto L_0223BEAC; else goto L_0223BEC0;
|
|
L_0223BEAC: ; // 0x223beac
|
|
/* 0223BEAC */ _t46 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0223BEAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0223BEB0 */ _t47 = cpu->r[31] + 0x00000310u;
|
|
/* 0223BEB0 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 0223BEB4 */ _t48 = cpu->r[31] + 0x0000030Cu;
|
|
/* 0223BEB4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 0223BEB8 */ _t49 = cpu->r[31] + 0x00000308u;
|
|
/* 0223BEB8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 0223BEBC */ goto L_0223BED4;
|
|
L_0223BEC0: ; // 0x223bec0
|
|
/* 0223BEC0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BEC4 */ _t50 = cpu->r[12] + 0x00002DFCu;
|
|
/* 0223BEC4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0223BEC8 */ _t51 = cpu->r[31] + 0x00000310u;
|
|
/* 0223BEC8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 0223BECC */ _t52 = cpu->r[31] + 0x00000308u;
|
|
/* 0223BECC */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 0223BED0 */ _t53 = cpu->r[31] + 0x0000030Cu;
|
|
/* 0223BED0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
L_0223BED4: ; // 0x223bed4
|
|
/* 0223BED4 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223BED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223BED8 */ _t55 = cpu->r[1] + 0x00000074u;
|
|
/* 0223BED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0223BEDC */ cpu->lr = cpu->r[0];
|
|
/* 0223BEE0 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0223BEE4 */ return;
|
|
}
|
|
|
|
// fn_0223BD80 @ 0x223bd80
|
|
void Gambit_fn_0223BD80(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, _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;
|
|
double _ft23, _ft24;
|
|
|
|
L_0223BD80: ; // 0x223bd80
|
|
/* 0223BD80 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0223BD80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223BD80 */ cpu->r[1] = _t0;
|
|
/* 0223BD84 */ _t1 = cpu->r[1] + 0x00000074u;
|
|
/* 0223BD84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223BD88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223BD8C */ _t2 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223BD8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223BD90 */ _t3 = cpu->r[31] + 0x000000FCu;
|
|
/* 0223BD90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223BD94 */ _t4 = cpu->r[31] + 0x00000100u;
|
|
/* 0223BD94 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223BD98 */ _t5 = cpu->r[31] + 0x00000104u;
|
|
/* 0223BD98 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223BD9C */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0223BDA0 */ Gambit_fn_02C69840(cpu);
|
|
/* 0223BDA4 */ _t6 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223BDA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223BDA8 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0223BDAC */ _t7 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0223BDAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223BDB0 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 0223BDB4 */ _t8 = cpu->r[31] + 0x00000298u;
|
|
/* 0223BDB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223BDB8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BDB8 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 0223BDBC */ _t10 = cpu->r[31] + 0x000002A0u;
|
|
/* 0223BDBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223BDC0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BDC0 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 0223BDC4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223BDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223BDC8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BDC8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0223BDCC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BDCC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0223BDCC */ if (_t14) goto L_0223BE68; else goto L_0223BDD0;
|
|
L_0223BDD0: ; // 0x223bdd0
|
|
/* 0223BDD0 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BDD0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0223BDD4 */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 0223BDD8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BDD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0223BDDC */ cpu->r[7] = 0x10050000u;
|
|
/* 0223BDE0 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0223BDE4 */ _t17 = cpu->r[7] + 0x00002DF4u;
|
|
/* 0223BDE4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0223BDE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0223BDEC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BDEC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 0223BDF0 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223BDF0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223BDF0 */ if (_t20) goto L_0223BDF4; else goto L_0223BE34;
|
|
L_0223BDF4: ; // 0x223bdf4
|
|
/* 0223BDF4 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223BDF8 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223BDFC */ _t21 = cpu->r[11] + 0x00002E08u;
|
|
/* 0223BDFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0223BE00 */ _t22 = cpu->r[10] + 0x00002E04u;
|
|
/* 0223BE00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0223BE04 */ _ft23 = sqrt(cpu->f[10]);
|
|
/* 0223BE04 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 0223BE04 */ cpu->f[8] = _ft24 / _ft23;
|
|
/* 0223BE08 */ cpu->f[13] = cpu->f[8] * cpu->f[8];
|
|
/* 0223BE0C */ cpu->f[9] = cpu->f[8] * cpu->f[0];
|
|
/* 0223BE10 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[12]));
|
|
/* 0223BE14 */ cpu->f[8] = cpu->f[13] * cpu->f[9];
|
|
/* 0223BE18 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BE18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223BE1C */ /* nop */
|
|
/* 0223BE20 */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 0223BE24 */ /* nop */
|
|
/* 0223BE28 */ /* nop */
|
|
/* 0223BE2C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BE2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223BE30 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BE30 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
L_0223BE34: ; // 0x223be34
|
|
/* 0223BE34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[11]);
|
|
/* 0223BE38 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE38 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223BE38 */ if (_t29) goto L_0223BE3C; else goto L_0223BE68;
|
|
L_0223BE3C: ; // 0x223be3c
|
|
/* 0223BE3C */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BE3C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223BE40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 0223BE44 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE44 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0223BE44 */ if (_t32) goto L_0223BE48; else goto L_0223BE68;
|
|
L_0223BE48: ; // 0x223be48
|
|
/* 0223BE48 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 0223BE4C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE4C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0223BE4C */ if (_t34) goto L_0223BE50; else goto L_0223BE68;
|
|
L_0223BE50: ; // 0x223be50
|
|
/* 0223BE50 */ _t35 = cpu->r[4] + 0x00000000u;
|
|
/* 0223BE50 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0223BE54 */ _t36 = cpu->r[4] + 0x00000004u;
|
|
/* 0223BE54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0223BE58 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BE58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[8]);
|
|
/* 0223BE5C */ _t38 = cpu->r[4] + 0x00000008u;
|
|
/* 0223BE5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0223BE60 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BE60 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[10]);
|
|
/* 0223BE64 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BE64 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
L_0223BE68: ; // 0x223be68
|
|
/* 0223BE68 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0223BE6C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BE70 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 0223BE74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223BE78 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223BE78 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0223BE78 */ if (_t42) goto L_0223BE7C; else goto L_0223BE90;
|
|
L_0223BE7C: ; // 0x223be7c
|
|
/* 0223BE7C */ cpu->r[4] = 0x00000000u;
|
|
/* 0223BE80 */ cpu->r[5] = 0x80000000u;
|
|
/* 0223BE84 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BE88 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223BE8C */ Gambit_fn_021E1408(cpu);
|
|
L_0223BE90: ; // 0x223be90
|
|
/* 0223BE90 */ cpu->r[5] = cpu->r[31] + 0x000002D8u;
|
|
/* 0223BE94 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BE98 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0223BE9C */ Gambit_fn_02C69544(cpu);
|
|
/* 0223BEA0 */ _t43 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223BEA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0223BEA4 */ /* nop */
|
|
/* 0223BEA8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BEA8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0223BEA8 */ if (_t45) goto L_0223BEAC; else goto L_0223BEC0;
|
|
L_0223BEAC: ; // 0x223beac
|
|
/* 0223BEAC */ _t46 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0223BEAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0223BEB0 */ _t47 = cpu->r[31] + 0x00000310u;
|
|
/* 0223BEB0 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 0223BEB4 */ _t48 = cpu->r[31] + 0x0000030Cu;
|
|
/* 0223BEB4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 0223BEB8 */ _t49 = cpu->r[31] + 0x00000308u;
|
|
/* 0223BEB8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 0223BEBC */ goto L_0223BED4;
|
|
L_0223BEC0: ; // 0x223bec0
|
|
/* 0223BEC0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BEC4 */ _t50 = cpu->r[12] + 0x00002DFCu;
|
|
/* 0223BEC4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0223BEC8 */ _t51 = cpu->r[31] + 0x00000310u;
|
|
/* 0223BEC8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 0223BECC */ _t52 = cpu->r[31] + 0x00000308u;
|
|
/* 0223BECC */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 0223BED0 */ _t53 = cpu->r[31] + 0x0000030Cu;
|
|
/* 0223BED0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
L_0223BED4: ; // 0x223bed4
|
|
/* 0223BED4 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223BED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223BED8 */ _t55 = cpu->r[1] + 0x00000074u;
|
|
/* 0223BED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0223BEDC */ cpu->lr = cpu->r[0];
|
|
/* 0223BEE0 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0223BEE4 */ return;
|
|
}
|
|
|
|
// fn_0223BEE8 @ 0x223bee8
|
|
void Gambit_fn_0223BEE8(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_0223BEE8: ; // 0x223bee8
|
|
/* 0223BEE8 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 0223BEE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223BEE8 */ cpu->r[1] = _t0;
|
|
/* 0223BEEC */ /* nop */
|
|
/* 0223BEF0 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0223BEF0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0223BEF4 */ /* nop */
|
|
/* 0223BEF8 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 0223BEF8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223BEFC */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 0223BEFC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0223BF00 */ /* nop */
|
|
/* 0223BF04 */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 0223BF04 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0223BF08 */ cpu->r[0] = cpu->lr;
|
|
/* 0223BF0C */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 0223BF0C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223BF10 */ cpu->r[23] = cpu->r[3];
|
|
/* 0223BF14 */ _t6 = cpu->r[23] + 0x00000230u;
|
|
/* 0223BF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223BF18 */ cpu->r[24] = 0x00000000u;
|
|
/* 0223BF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[0]);
|
|
/* 0223BF20 */ cpu->f[30] = cpu->f[1];
|
|
/* 0223BF24 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BF24 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223BF24 */ if (_t8) goto L_0223BF28; else goto L_0223BFB8;
|
|
L_0223BF28: ; // 0x223bf28
|
|
/* 0223BF28 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223BF2C */ cpu->r[31] = cpu->r[23] + 0x00000294u;
|
|
/* 0223BF30 */ cpu->r[25] = 0x00000000u;
|
|
/* 0223BF34 */ _t9 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223BF34 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0223BF38 */ cpu->r[26] = 0xFFFFFFFFu;
|
|
/* 0223BF3C */ cpu->r[28] = 0x00000003u;
|
|
/* 0223BF40 */ cpu->r[30] = cpu->r[23] + 0x00000264u;
|
|
/* 0223BF44 */ cpu->r[27] = cpu->r[25];
|
|
/* 0223BF48 */ cpu->r[29] = cpu->r[23] + 0x00000234u;
|
|
L_0223BF4C: ; // 0x223bf4c
|
|
/* 0223BF4C */ _t10 = cpu->r[23] + 0x0000002Cu;
|
|
/* 0223BF4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223BF50 */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 0223BF54 */ _t11 = cpu->r[23] + 0x000002BCu;
|
|
/* 0223BF54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0223BF58 */ _t12 = cpu->r[23] + 0x00000054u;
|
|
/* 0223BF58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223BF5C */ _t13 = cpu->r[23] + 0x000002C0u;
|
|
/* 0223BF5C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223BF60 */ _t14 = cpu->r[23] + 0x00000058u;
|
|
/* 0223BF60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223BF64 */ _t15 = cpu->r[31] + cpu->r[24];
|
|
/* 0223BF64 */ cpu->r[7] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0223BF68 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223BF68 */ rbrew_write32(cpu->mem, _t16, cpu->r[26]);
|
|
/* 0223BF6C */ cpu->r[3] = cpu->r[23];
|
|
/* 0223BF70 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223BF70 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 0223BF74 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0223BF74 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
/* 0223BF78 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 0223BF78 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[31]);
|
|
/* 0223BF7C */ cpu->r[8] = cpu->r[30] + cpu->r[25];
|
|
/* 0223BF80 */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 0223BF80 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 0223BF84 */ cpu->f[1] = cpu->f[30];
|
|
/* 0223BF88 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0223BF88 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0223BF8C */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0223BF90 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0223BF94 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 0223BF94 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 0223BF98 */ cpu->r[9] = cpu->r[29] + cpu->r[25];
|
|
/* 0223BF9C */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0223BF9C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0223BFA0 */ Gambit_fn_02228C64(cpu);
|
|
/* 0223BFA4 */ _t24 = cpu->r[23] + 0x00000230u;
|
|
/* 0223BFA4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0223BFA8 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 0223BFAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[10]);
|
|
/* 0223BFB0 */ cpu->r[25] = cpu->r[25] + 0x0000000Cu;
|
|
/* 0223BFB4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BFB4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0223BFB4 */ if (_t26) goto L_0223BF4C; else goto L_0223BFB8;
|
|
L_0223BFB8: ; // 0x223bfb8
|
|
/* 0223BFB8 */ /* nop */
|
|
/* 0223BFBC */ _t27 = cpu->r[1] + 0x00000058u;
|
|
/* 0223BFBC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0223BFC0 */ _t28 = cpu->r[1] + 0x00000068u;
|
|
/* 0223BFC0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0223BFC4 */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 0223BFC4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 0223BFC8 */ _t30 = cpu->r[1] + 0x00000060u;
|
|
/* 0223BFC8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 0223BFCC */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223BFCC */ _t32 = _t31 & 0x00000001u;
|
|
/* 0223BFCC */ if (_t32) goto L_0223BFD0; // else: addr-0 trap, fall-through
|
|
L_0223BFD0: ; // 0x223bfd0
|
|
/* 0223BFD0 */ _t33 = cpu->r[1] + 0x00000074u;
|
|
/* 0223BFD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0223BFD4 */ cpu->lr = cpu->r[0];
|
|
/* 0223BFD8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0223BFDC */ return;
|
|
}
|
|
|
|
// fn_0223BFE0 @ 0x223bfe0
|
|
void Gambit_fn_0223BFE0(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;
|
|
|
|
L_0223BFE0: ; // 0x223bfe0
|
|
/* 0223BFE0 */ _t0 = cpu->r[1] + 0xFFFFFE70u;
|
|
/* 0223BFE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223BFE0 */ cpu->r[1] = _t0;
|
|
/* 0223BFE4 */ _t1 = cpu->r[1] + 0x000000E0u;
|
|
/* 0223BFE4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[21]);
|
|
/* 0223BFE8 */ _t2 = cpu->r[1] + 0x000000F0u;
|
|
/* 0223BFE8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[22]);
|
|
/* 0223BFEC */ _t3 = cpu->r[1] + 0x00000100u;
|
|
/* 0223BFEC */ rbrew_write_f64(cpu->mem, _t3, cpu->f[23]);
|
|
/* 0223BFF0 */ /* nop */
|
|
/* 0223BFF4 */ _t4 = cpu->r[1] + 0x00000110u;
|
|
/* 0223BFF4 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[24]);
|
|
/* 0223BFF8 */ /* nop */
|
|
/* 0223BFFC */ _t5 = cpu->r[1] + 0x00000120u;
|
|
/* 0223BFFC */ rbrew_write_f64(cpu->mem, _t5, cpu->f[25]);
|
|
/* 0223C000 */ /* nop */
|
|
/* 0223C004 */ _t6 = cpu->r[1] + 0x00000130u;
|
|
/* 0223C004 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[26]);
|
|
/* 0223C008 */ /* nop */
|
|
/* 0223C00C */ _t7 = cpu->r[1] + 0x00000140u;
|
|
/* 0223C00C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[27]);
|
|
/* 0223C010 */ /* nop */
|
|
/* 0223C014 */ _t8 = cpu->r[1] + 0x00000150u;
|
|
/* 0223C014 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[28]);
|
|
/* 0223C018 */ /* nop */
|
|
/* 0223C01C */ _t9 = cpu->r[1] + 0x00000160u;
|
|
/* 0223C01C */ rbrew_write_f64(cpu->mem, _t9, cpu->f[29]);
|
|
/* 0223C020 */ /* nop */
|
|
/* 0223C024 */ _t10 = cpu->r[1] + 0x00000170u;
|
|
/* 0223C024 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[30]);
|
|
/* 0223C028 */ /* nop */
|
|
/* 0223C02C */ _t11 = cpu->r[1] + 0x000000E8u;
|
|
/* 0223C02C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[21]);
|
|
/* 0223C030 */ _t12 = cpu->r[1] + 0x000000F8u;
|
|
/* 0223C030 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[22]);
|
|
/* 0223C034 */ _t13 = cpu->r[1] + 0x00000108u;
|
|
/* 0223C034 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[23]);
|
|
/* 0223C038 */ /* nop */
|
|
/* 0223C03C */ _t14 = cpu->r[1] + 0x00000118u;
|
|
/* 0223C03C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[24]);
|
|
/* 0223C040 */ _t15 = cpu->r[1] + 0x00000128u;
|
|
/* 0223C040 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[25]);
|
|
/* 0223C044 */ _t16 = cpu->r[1] + 0x00000138u;
|
|
/* 0223C044 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[26]);
|
|
/* 0223C048 */ /* nop */
|
|
/* 0223C04C */ _t17 = cpu->r[1] + 0x00000148u;
|
|
/* 0223C04C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[27]);
|
|
/* 0223C050 */ _t18 = cpu->r[1] + 0x00000158u;
|
|
/* 0223C050 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[28]);
|
|
/* 0223C054 */ _t19 = cpu->r[1] + 0x00000168u;
|
|
/* 0223C054 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[29]);
|
|
/* 0223C058 */ cpu->r[0] = cpu->lr;
|
|
/* 0223C05C */ _t20 = cpu->r[1] + 0x00000178u;
|
|
/* 0223C05C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[30]);
|
|
/* 0223C060 */ _t21 = cpu->r[1] + 0x00000180u;
|
|
/* 0223C060 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[31]);
|
|
/* 0223C064 */ /* nop */
|
|
/* 0223C068 */ _t22 = cpu->r[1] + 0x00000188u;
|
|
/* 0223C068 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 0223C06C */ _t23 = cpu->r[1] + 0x00000194u;
|
|
/* 0223C06C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0223C070 */ /* nop */
|
|
/* 0223C074 */ cpu->r[27] = cpu->r[3];
|
|
/* 0223C078 */ cpu->r[22] = cpu->r[4];
|
|
/* 0223C07C */ cpu->r[28] = cpu->r[5];
|
|
/* 0223C080 */ cpu->r[21] = cpu->r[6];
|
|
/* 0223C084 */ cpu->r[29] = cpu->r[7];
|
|
/* 0223C088 */ cpu->r[23] = cpu->r[8];
|
|
/* 0223C08C */ cpu->r[31] = cpu->r[9];
|
|
/* 0223C090 */ _t24 = cpu->r[1] + 0x0000019Bu;
|
|
/* 0223C090 */ cpu->r[24] = rbrew_read8(cpu->mem, _t24);
|
|
/* 0223C094 */ cpu->f[28] = cpu->f[1];
|
|
/* 0223C098 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223C09C */ _t25 = cpu->r[1] + 0x0000019Cu;
|
|
/* 0223C09C */ cpu->r[25] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0223C0A0 */ cpu->r[7] = 0x10050000u;
|
|
/* 0223C0A4 */ _t26 = cpu->r[8] + 0x00002DF4u;
|
|
/* 0223C0A4 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223C0A8 */ cpu->r[5] = 0x10050000u;
|
|
/* 0223C0AC */ _t27 = cpu->r[7] + 0x00002DF8u;
|
|
/* 0223C0AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0223C0B0 */ cpu->r[4] = cpu->r[25];
|
|
/* 0223C0B4 */ _t28 = cpu->r[5] + 0x00002E4Cu;
|
|
/* 0223C0B4 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0223C0B8 */ cpu->r[5] = 0x00000001u;
|
|
/* 0223C0BC */ cpu->r[26] = 0x10050000u;
|
|
/* 0223C0C0 */ _t29 = cpu->r[27] + 0x00000138u;
|
|
/* 0223C0C0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[26]);
|
|
/* 0223C0C4 */ cpu->r[3] = cpu->r[1] + 0x000000A0u;
|
|
/* 0223C0C8 */ _t30 = cpu->r[26] + 0x00002DFCu;
|
|
/* 0223C0C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0223C0CC */ cpu->f[29] = cpu->f[26];
|
|
/* 0223C0D0 */ _t31 = cpu->r[27] + 0x000002B0u;
|
|
/* 0223C0D0 */ rbrew_write32(cpu->mem, _t31, cpu->r[5]);
|
|
/* 0223C0D4 */ cpu->f[23] = cpu->f[24];
|
|
/* 0223C0D8 */ cpu->r[30] = cpu->r[10];
|
|
/* 0223C0DC */ _t32 = cpu->r[27] + 0x000002ACu;
|
|
/* 0223C0DC */ rbrew_write32(cpu->mem, _t32, cpu->r[5]);
|
|
/* 0223C0E0 */ Gambit_fn_028300A4(cpu);
|
|
/* 0223C0E4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223C0E8 */ Gambit_fn_0223B9D8(cpu);
|
|
/* 0223C0EC */ cpu->f[25] = cpu->f[1];
|
|
/* 0223C0F0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223C0F4 */ Gambit_fn_0223B9FC(cpu);
|
|
/* 0223C0F8 */ cpu->r[3] = cpu->r[1] + 0x000000A0u;
|
|
/* 0223C0FC */ cpu->f[27] = cpu->f[1] - cpu->f[25];
|
|
/* 0223C100 */ Gambit_fn_02830138(cpu);
|
|
/* 0223C104 */ cpu->r[10] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0223C108 */ _t33 = cpu->r[26] + 0x00002DFCu;
|
|
/* 0223C108 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0223C10C */ cpu->r[0] = cpu->r[10] | 0x3F800000u;
|
|
/* 0223C110 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223C110 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0223C114 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0223C114 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0223C118 */ cpu->f[8] = cpu->f[10] - cpu->f[12];
|
|
/* 0223C11C */ cpu->f[11] = fma(cpu->f[8], cpu->f[27], cpu->f[25]);
|
|
/* 0223C120 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223C124 */ _t36 = cpu->r[27] + 0x000002A8u;
|
|
/* 0223C124 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 0223C128 */ Gambit_fn_0223BA20(cpu);
|
|
/* 0223C12C */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[1];
|
|
/* 0223C130 */ cpu->r[26] = 0x00000000u;
|
|
/* 0223C134 */ cpu->r[0] = cpu->r[1] + 0x00000068u;
|
|
/* 0223C138 */ _t37 = cpu->r[27] + 0x000002CBu;
|
|
/* 0223C138 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[26]);
|
|
/* 0223C13C */ /* nop */
|
|
/* 0223C140 */ _t38 = cpu->r[1] + 0x00000068u;
|
|
/* 0223C140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0223C144 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223C148 */ _t39 = cpu->r[27] + 0x000002B0u;
|
|
/* 0223C148 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 0223C14C */ Gambit_fn_0223B868(cpu);
|
|
/* 0223C150 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223C154 */ cpu->r[7] = 0x10050000u;
|
|
/* 0223C158 */ cpu->r[10] = cpu->r[31];
|
|
/* 0223C15C */ _t40 = cpu->r[8] + 0x00002E50u;
|
|
/* 0223C15C */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0223C160 */ cpu->r[5] = 0x10050000u;
|
|
/* 0223C164 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000001Eu);
|
|
/* 0223C168 */ _t41 = cpu->r[7] + 0x00002E48u;
|
|
/* 0223C168 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0223C16C */ cpu->f[27] = cpu->f[1];
|
|
/* 0223C170 */ _t42 = cpu->r[5] + 0x00002E44u;
|
|
/* 0223C170 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0223C174 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223C174 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0223C174 */ if (_t44) goto L_0223C178; else goto L_0223C26C;
|
|
L_0223C178: ; // 0x223c178
|
|
/* 0223C178 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000011u);
|
|
/* 0223C17C */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223C17C */ _t46 = _t45 & 0x00000001u;
|
|
/* 0223C17C */ if (_t46) goto L_0223C180; else goto L_0223C364;
|
|
L_0223C180: ; // 0x223c180
|
|
/* 0223C180 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000014u);
|
|
/* 0223C184 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223C184 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0223C184 */ if (_t48) goto L_0223D28C; else goto L_0223C188;
|
|
L_0223C188: ; // 0x223c188
|
|
/* 0223C188 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000001Bu);
|
|
/* 0223C18C */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223C18C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0223C18C */ if (_t50) goto L_0223C190; else goto L_0223C364;
|
|
L_0223C190: ; // 0x223c190
|
|
/* 0223C190 */ _t51 = cpu->r[1] + 0x00000044u;
|
|
/* 0223C190 */ rbrew_write32(cpu->mem, _t51, cpu->r[21]);
|
|
/* 0223C194 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223C198 */ _t52 = cpu->r[1] + 0x00000040u;
|
|
/* 0223C198 */ rbrew_write32(cpu->mem, _t52, cpu->r[28]);
|
|
/* 0223C19C */ cpu->r[7] = 0x10050000u;
|
|
/* 0223C1A0 */ cpu->r[4] = 0x10050000u;
|
|
/* 0223C1A4 */ _t53 = cpu->r[12] + 0x00002E6Cu;
|
|
/* 0223C1A4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0223C1A8 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0223C1AC */ _t54 = cpu->r[4] + 0x00002E80u;
|
|
/* 0223C1AC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0223C1B0 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223C1B4 */ _t55 = cpu->r[1] + 0x00000050u;
|
|
/* 0223C1B4 */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[12]);
|
|
/* 0223C1B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223C1BC */ _t56 = cpu->r[11] + 0x00002E90u;
|
|
/* 0223C1BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0223C1C0 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223C1C4 */ _t57 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223C1C4 */ rbrew_write32(cpu->mem, _t57, cpu->r[26]);
|
|
/* 0223C1C8 */ _t58 = cpu->r[7] + 0x00002E8Cu;
|
|
/* 0223C1C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0223C1CC */ _t59 = cpu->r[1] + 0x00000038u;
|
|
/* 0223C1CC */ rbrew_write32(cpu->mem, _t59, cpu->r[12]);
|
|
/* 0223C1D0 */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223C1D0 */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[0]);
|
|
/* 0223C1D4 */ cpu->r[4] = cpu->r[28];
|
|
/* 0223C1D8 */ _t61 = cpu->r[27] + 0x00000138u;
|
|
/* 0223C1D8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[9]);
|
|
/* 0223C1DC */ cpu->f[23] = cpu->f[21];
|
|
/* 0223C1E0 */ _t62 = cpu->r[27] + 0x000002B4u;
|
|
/* 0223C1E0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[8]);
|
|
/* 0223C1E4 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223C1E8 */ _t63 = cpu->r[1] + 0x00000048u;
|
|
/* 0223C1E8 */ rbrew_write32(cpu->mem, _t63, cpu->r[26]);
|
|
/* 0223C1EC */ cpu->f[24] = cpu->f[22];
|
|
/* 0223C1F0 */ _t64 = cpu->r[10] + 0x00002E18u;
|
|
/* 0223C1F0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0223C1F4 */ Gambit_fn_027E3E54(cpu);
|
|
/* 0223C1F8 */ _t65 = cpu->r[1] + 0x00000054u;
|
|
/* 0223C1F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0223C1FC */ _t66 = cpu->r[27] + 0x0000012Cu;
|
|
/* 0223C1FC */ rbrew_write_f32(cpu->mem, _t66, cpu->f[30]);
|
|
/* 0223C200 */ _t67 = cpu->r[27] + 0x00000130u;
|
|
/* 0223C200 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[26]);
|
|
/* 0223C204 */ cpu->r[9] = 0x000000FFu;
|
|
/* 0223C208 */ _t68 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223C208 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[24]);
|
|
/* 0223C20C */ _t69 = cpu->r[27] + 0x000002C4u;
|
|
/* 0223C20C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[9]);
|
|
/* 0223C210 */ _t70 = cpu->r[27] + 0x000002C5u;
|
|
/* 0223C210 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[9]);
|
|
/* 0223C214 */ _t71 = cpu->r[1] + 0x00000038u;
|
|
/* 0223C214 */ rbrew_write32(cpu->mem, _t71, cpu->r[8]);
|
|
/* 0223C218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223C21C */ _t72 = cpu->r[1] + 0x00000048u;
|
|
/* 0223C21C */ rbrew_write32(cpu->mem, _t72, cpu->r[25]);
|
|
/* 0223C220 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223C220 */ rbrew_write32(cpu->mem, _t73, cpu->r[22]);
|
|
/* 0223C224 */ _t74 = cpu->r[1] + 0x00000050u;
|
|
/* 0223C224 */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[26]);
|
|
/* 0223C228 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223C228 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0223C228 */ if (_t76) goto L_0223C22C; else goto L_0223D2F0;
|
|
L_0223C22C: ; // 0x223c22c
|
|
/* 0223C22C */ _t77 = cpu->r[23] + 0x00000000u;
|
|
/* 0223C22C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0223C230 */ _t78 = cpu->r[27] + 0x0000013Cu;
|
|
/* 0223C230 */ cpu->r[5] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0223C234 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223C238 */ _t79 = cpu->r[27] + 0x000001A8u;
|
|
/* 0223C238 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[9]);
|
|
/* 0223C23C */ _t80 = cpu->r[23] + 0x00000004u;
|
|
/* 0223C23C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0223C240 */ cpu->ctr = cpu->r[0];
|
|
/* 0223C244 */ _t81 = cpu->r[27] + 0x000001ACu;
|
|
/* 0223C244 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 0223C248 */ _t82 = cpu->r[23] + 0x00000008u;
|
|
/* 0223C248 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0223C24C */ _t83 = cpu->r[27] + 0x0000022Cu;
|
|
/* 0223C24C */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[5]);
|
|
/* 0223C250 */ _t84 = cpu->r[27] + 0x00000140u;
|
|
/* 0223C250 */ cpu->r[6] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0223C254 */ cpu->r[8] = 0x00000000u;
|
|
/* 0223C258 */ _t85 = cpu->r[27] + 0x000001B0u;
|
|
/* 0223C258 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[11]);
|
|
/* 0223C25C */ cpu->r[12] = cpu->r[27] + 0x00000234u;
|
|
/* 0223C260 */ cpu->r[9] = cpu->r[27] + 0x00000144u;
|
|
/* 0223C264 */ _t86 = cpu->r[27] + 0x00000230u;
|
|
/* 0223C264 */ rbrew_write32(cpu->mem, _t86, cpu->r[6]);
|
|
/* 0223C268 */ goto L_0223D320;
|
|
L_0223C26C: ; // 0x223c26c
|
|
/* 0223C26C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000004Cu);
|
|
/* 0223C270 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223C270 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0223C270 */ if (_t88) goto L_0223C274; else goto L_0223C348;
|
|
L_0223C274: ; // 0x223c274
|
|
/* 0223C274 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFE2u;
|
|
/* 0223C278 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000002Bu);
|
|
/* 0223C27C */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223C27C */ _t90 = _t89 & 0x00000001u;
|
|
/* 0223C27C */ if (_t90) goto L_0223D28C; else goto L_0223C280;
|
|
L_0223C280: ; // 0x223c280
|
|
/* 0223C280 */ cpu->r[0] = 0x02240000u;
|
|
/* 0223C284 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223C288 */ cpu->r[0] = cpu->r[0] + 0xFFFFC298u;
|
|
/* 0223C28C */ cpu->r[0] = cpu->r[10] + cpu->r[0];
|
|
/* 0223C290 */ cpu->ctr = cpu->r[0];
|
|
/* 0223C294 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0223C348: ; // 0x223c348
|
|
/* 0223C348 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000004Fu);
|
|
/* 0223C34C */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223C34C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0223C34C */ if (_t92) goto L_0223D010; else goto L_0223C350;
|
|
L_0223C350: ; // 0x223c350
|
|
/* 0223C350 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223C350 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0223C350 */ if (_t94) goto L_0223D0A8; else goto L_0223C354;
|
|
L_0223C354: ; // 0x223c354
|
|
/* 0223C354 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000054u);
|
|
/* 0223C358 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223C358 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0223C358 */ if (_t96) goto L_0223D26C; else goto L_0223C35C;
|
|
L_0223C35C: ; // 0x223c35c
|
|
/* 0223C35C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000079u);
|
|
/* 0223C360 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223C360 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0223C360 */ if (_t98) goto L_0223C364; else goto L_0223D28C;
|
|
L_0223C364: ; // 0x223c364
|
|
/* 0223C364 */ _t99 = cpu->r[1] + 0x00000048u;
|
|
/* 0223C364 */ rbrew_write32(cpu->mem, _t99, cpu->r[26]);
|
|
/* 0223C368 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223C36C */ _t100 = cpu->r[27] + 0x00000138u;
|
|
/* 0223C36C */ rbrew_write_f32(cpu->mem, _t100, cpu->f[25]);
|
|
/* 0223C370 */ cpu->r[4] = 0x10050000u;
|
|
/* 0223C374 */ _t101 = cpu->r[1] + 0x00000044u;
|
|
/* 0223C374 */ rbrew_write32(cpu->mem, _t101, cpu->r[21]);
|
|
/* 0223C378 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223C37C */ _t102 = cpu->r[12] + 0x00002E5Cu;
|
|
/* 0223C37C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0223C380 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0223C384 */ _t103 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223C384 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[0]);
|
|
/* 0223C388 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223C38C */ _t104 = cpu->r[4] + 0x00002DF8u;
|
|
/* 0223C38C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0223C390 */ cpu->f[23] = cpu->f[21];
|
|
/* 0223C394 */ _t105 = cpu->r[11] + 0x00002E54u;
|
|
/* 0223C394 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0223C398 */ cpu->f[24] = cpu->f[22];
|
|
/* 0223C39C */ _t106 = cpu->r[27] + 0x000002B4u;
|
|
/* 0223C39C */ rbrew_write_f32(cpu->mem, _t106, cpu->f[7]);
|
|
/* 0223C3A0 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223C3A4 */ _t107 = cpu->r[1] + 0x00000050u;
|
|
/* 0223C3A4 */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[12]);
|
|
/* 0223C3A8 */ _t108 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223C3A8 */ rbrew_write32(cpu->mem, _t108, cpu->r[26]);
|
|
/* 0223C3AC */ cpu->r[5] = 0x10050000u;
|
|
/* 0223C3B0 */ _t109 = cpu->r[1] + 0x00000040u;
|
|
/* 0223C3B0 */ rbrew_write32(cpu->mem, _t109, cpu->r[28]);
|
|
/* 0223C3B4 */ cpu->r[4] = cpu->r[28];
|
|
/* 0223C3B8 */ _t110 = cpu->r[5] + 0x00002E58u;
|
|
/* 0223C3B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0223C3BC */ _t111 = cpu->r[1] + 0x00000038u;
|
|
/* 0223C3BC */ rbrew_write32(cpu->mem, _t111, cpu->r[12]);
|
|
/* 0223C3C0 */ Gambit_fn_027E3E54(cpu);
|
|
/* 0223C3C4 */ cpu->r[9] = 0x000000FFu;
|
|
/* 0223C3C8 */ _t112 = cpu->r[1] + 0x00000054u;
|
|
/* 0223C3C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0223C3CC */ _t113 = cpu->r[27] + 0x000002C4u;
|
|
/* 0223C3CC */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[9]);
|
|
/* 0223C3D0 */ _t114 = cpu->r[1] + 0x00000038u;
|
|
/* 0223C3D0 */ rbrew_write32(cpu->mem, _t114, cpu->r[8]);
|
|
/* 0223C3D4 */ _t115 = cpu->r[1] + 0x00000050u;
|
|
/* 0223C3D4 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[26]);
|
|
/* 0223C3D8 */ _t116 = cpu->r[1] + 0x00000048u;
|
|
/* 0223C3D8 */ rbrew_write32(cpu->mem, _t116, cpu->r[25]);
|
|
/* 0223C3DC */ _t117 = cpu->r[27] + 0x0000012Cu;
|
|
/* 0223C3DC */ rbrew_write_f32(cpu->mem, _t117, cpu->f[30]);
|
|
/* 0223C3E0 */ _t118 = cpu->r[27] + 0x00000130u;
|
|
/* 0223C3E0 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[26]);
|
|
/* 0223C3E4 */ _t119 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223C3E4 */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[24]);
|
|
/* 0223C3E8 */ _t120 = cpu->r[27] + 0x000002C5u;
|
|
/* 0223C3E8 */ rbrew_write8(cpu->mem, _t120, (uint8_t)cpu->r[9]);
|
|
/* 0223C3EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223C3F0 */ _t121 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223C3F0 */ rbrew_write32(cpu->mem, _t121, cpu->r[22]);
|
|
/* 0223C3F4 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223C3F4 */ _t123 = _t122 & 0x00000001u;
|
|
/* 0223C3F4 */ if (_t123) goto L_0223C22C; else goto L_0223C3F8;
|
|
L_0223C3F8: ; // 0x223c3f8
|
|
/* 0223C3F8 */ goto L_0223D2F0;
|
|
L_0223D010: ; // 0x223d010
|
|
/* 0223D010 */ cpu->r[4] = 0x10050000u;
|
|
/* 0223D014 */ _t124 = cpu->r[1] + 0x00000044u;
|
|
/* 0223D014 */ rbrew_write32(cpu->mem, _t124, cpu->r[21]);
|
|
/* 0223D018 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D01C */ _t125 = cpu->r[4] + 0x00002E90u;
|
|
/* 0223D01C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 0223D020 */ _t126 = cpu->r[12] + 0x00002DF8u;
|
|
/* 0223D020 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 0223D024 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0223D028 */ _t127 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223D028 */ rbrew_write32(cpu->mem, _t127, cpu->r[26]);
|
|
/* 0223D02C */ cpu->f[24] = cpu->f[22];
|
|
/* 0223D030 */ _t128 = cpu->r[27] + 0x00000138u;
|
|
/* 0223D030 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[7]);
|
|
/* 0223D034 */ cpu->r[4] = cpu->r[28];
|
|
/* 0223D038 */ _t129 = cpu->r[1] + 0x00000050u;
|
|
/* 0223D038 */ rbrew_write16(cpu->mem, _t129, (uint16_t)cpu->r[12]);
|
|
/* 0223D03C */ cpu->r[10] = 0x10050000u;
|
|
/* 0223D040 */ _t130 = cpu->r[27] + 0x000002B4u;
|
|
/* 0223D040 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[22]);
|
|
/* 0223D044 */ _t131 = cpu->r[1] + 0x00000038u;
|
|
/* 0223D044 */ rbrew_write32(cpu->mem, _t131, cpu->r[12]);
|
|
/* 0223D048 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223D04C */ _t132 = cpu->r[1] + 0x00000048u;
|
|
/* 0223D04C */ rbrew_write32(cpu->mem, _t132, cpu->r[26]);
|
|
/* 0223D050 */ _t133 = cpu->r[11] + 0x00002EACu;
|
|
/* 0223D050 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 0223D054 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223D058 */ _t134 = cpu->r[1] + 0x00000040u;
|
|
/* 0223D058 */ rbrew_write32(cpu->mem, _t134, cpu->r[28]);
|
|
/* 0223D05C */ cpu->f[23] = cpu->f[21];
|
|
/* 0223D060 */ _t135 = cpu->r[10] + 0x00002E68u;
|
|
/* 0223D060 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0223D064 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223D068 */ _t136 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223D068 */ rbrew_write8(cpu->mem, _t136, (uint8_t)cpu->r[0]);
|
|
/* 0223D06C */ Gambit_fn_027E3E54(cpu);
|
|
/* 0223D070 */ cpu->r[9] = 0x000000FFu;
|
|
/* 0223D074 */ _t137 = cpu->r[1] + 0x00000050u;
|
|
/* 0223D074 */ rbrew_write16(cpu->mem, _t137, (uint16_t)cpu->r[26]);
|
|
/* 0223D078 */ _t138 = cpu->r[27] + 0x000002C4u;
|
|
/* 0223D078 */ rbrew_write8(cpu->mem, _t138, (uint8_t)cpu->r[9]);
|
|
/* 0223D07C */ _t139 = cpu->r[1] + 0x00000048u;
|
|
/* 0223D07C */ rbrew_write32(cpu->mem, _t139, cpu->r[25]);
|
|
/* 0223D080 */ _t140 = cpu->r[27] + 0x0000012Cu;
|
|
/* 0223D080 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[30]);
|
|
/* 0223D084 */ _t141 = cpu->r[27] + 0x00000130u;
|
|
/* 0223D084 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[26]);
|
|
/* 0223D088 */ _t142 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223D088 */ rbrew_write32(cpu->mem, _t142, cpu->r[22]);
|
|
/* 0223D08C */ _t143 = cpu->r[27] + 0x000002C5u;
|
|
/* 0223D08C */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[9]);
|
|
/* 0223D090 */ _t144 = cpu->r[1] + 0x00000054u;
|
|
/* 0223D090 */ cpu->r[8] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0223D094 */ _t145 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223D094 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[24]);
|
|
/* 0223D098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223D09C */ _t146 = cpu->r[1] + 0x00000038u;
|
|
/* 0223D09C */ rbrew_write32(cpu->mem, _t146, cpu->r[8]);
|
|
/* 0223D0A0 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D0A0 */ _t148 = _t147 & 0x00000001u;
|
|
/* 0223D0A0 */ if (_t148) goto L_0223C22C; else goto L_0223D0A4;
|
|
L_0223D0A4: ; // 0x223d0a4
|
|
/* 0223D0A4 */ goto L_0223D2F0;
|
|
L_0223D0A8: ; // 0x223d0a8
|
|
/* 0223D0A8 */ _t149 = cpu->r[1] + 0x00000044u;
|
|
/* 0223D0A8 */ rbrew_write32(cpu->mem, _t149, cpu->r[21]);
|
|
/* 0223D0AC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0223D0B0 */ _t150 = cpu->r[27] + 0x000002B4u;
|
|
/* 0223D0B0 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[22]);
|
|
/* 0223D0B4 */ cpu->r[6] = 0x10050000u;
|
|
/* 0223D0B8 */ _t151 = cpu->r[1] + 0x00000040u;
|
|
/* 0223D0B8 */ rbrew_write32(cpu->mem, _t151, cpu->r[28]);
|
|
/* 0223D0BC */ cpu->r[8] = 0x10050000u;
|
|
/* 0223D0C0 */ _t152 = cpu->r[6] + 0x00002EB0u;
|
|
/* 0223D0C0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 0223D0C4 */ cpu->r[7] = 0x10050000u;
|
|
/* 0223D0C8 */ _t153 = cpu->r[1] + 0x00000038u;
|
|
/* 0223D0C8 */ rbrew_write32(cpu->mem, _t153, cpu->r[12]);
|
|
/* 0223D0CC */ cpu->r[0] = 0x00000001u;
|
|
/* 0223D0D0 */ _t154 = cpu->r[8] + 0x00002E90u;
|
|
/* 0223D0D0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0223D0D4 */ cpu->f[23] = cpu->f[21];
|
|
/* 0223D0D8 */ _t155 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223D0D8 */ rbrew_write8(cpu->mem, _t155, (uint8_t)cpu->r[0]);
|
|
/* 0223D0DC */ cpu->r[4] = cpu->r[28];
|
|
/* 0223D0E0 */ _t156 = cpu->r[7] + 0x00002E18u;
|
|
/* 0223D0E0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 0223D0E4 */ cpu->f[24] = cpu->f[22];
|
|
/* 0223D0E8 */ _t157 = cpu->r[1] + 0x00000050u;
|
|
/* 0223D0E8 */ rbrew_write16(cpu->mem, _t157, (uint16_t)cpu->r[12]);
|
|
/* 0223D0EC */ _t158 = cpu->r[27] + 0x00000138u;
|
|
/* 0223D0EC */ rbrew_write_f32(cpu->mem, _t158, cpu->f[7]);
|
|
/* 0223D0F0 */ cpu->r[5] = 0x10050000u;
|
|
/* 0223D0F4 */ _t159 = cpu->r[1] + 0x00000048u;
|
|
/* 0223D0F4 */ rbrew_write32(cpu->mem, _t159, cpu->r[26]);
|
|
/* 0223D0F8 */ _t160 = cpu->r[5] + 0x00002E68u;
|
|
/* 0223D0F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0223D0FC */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223D100 */ _t161 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223D100 */ rbrew_write32(cpu->mem, _t161, cpu->r[26]);
|
|
/* 0223D104 */ Gambit_fn_027E3E54(cpu);
|
|
/* 0223D108 */ _t162 = cpu->r[27] + 0x0000012Cu;
|
|
/* 0223D108 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[30]);
|
|
/* 0223D10C */ cpu->r[9] = 0x000000FFu;
|
|
/* 0223D110 */ _t163 = cpu->r[1] + 0x00000054u;
|
|
/* 0223D110 */ cpu->r[8] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0223D114 */ _t164 = cpu->r[27] + 0x000002C4u;
|
|
/* 0223D114 */ rbrew_write8(cpu->mem, _t164, (uint8_t)cpu->r[9]);
|
|
/* 0223D118 */ _t165 = cpu->r[27] + 0x000002C5u;
|
|
/* 0223D118 */ rbrew_write8(cpu->mem, _t165, (uint8_t)cpu->r[9]);
|
|
/* 0223D11C */ _t166 = cpu->r[1] + 0x00000050u;
|
|
/* 0223D11C */ rbrew_write16(cpu->mem, _t166, (uint16_t)cpu->r[26]);
|
|
/* 0223D120 */ _t167 = cpu->r[1] + 0x00000048u;
|
|
/* 0223D120 */ rbrew_write32(cpu->mem, _t167, cpu->r[25]);
|
|
/* 0223D124 */ _t168 = cpu->r[1] + 0x00000038u;
|
|
/* 0223D124 */ rbrew_write32(cpu->mem, _t168, cpu->r[8]);
|
|
/* 0223D128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223D12C */ _t169 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223D12C */ rbrew_write8(cpu->mem, _t169, (uint8_t)cpu->r[24]);
|
|
/* 0223D130 */ _t170 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223D130 */ rbrew_write32(cpu->mem, _t170, cpu->r[22]);
|
|
/* 0223D134 */ _t171 = cpu->r[27] + 0x00000130u;
|
|
/* 0223D134 */ rbrew_write_f32(cpu->mem, _t171, cpu->f[26]);
|
|
/* 0223D138 */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D138 */ _t173 = _t172 & 0x00000001u;
|
|
/* 0223D138 */ if (_t173) goto L_0223C22C; else goto L_0223D13C;
|
|
L_0223D13C: ; // 0x223d13c
|
|
/* 0223D13C */ goto L_0223D2F0;
|
|
L_0223D26C: ; // 0x223d26c
|
|
/* 0223D26C */ cpu->r[10] = 0x10050000u;
|
|
/* 0223D270 */ cpu->f[30] = cpu->f[26];
|
|
/* 0223D274 */ _t174 = cpu->r[10] + 0x00002E60u;
|
|
/* 0223D274 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 0223D278 */ cpu->f[24] = cpu->f[26];
|
|
/* 0223D27C */ _t175 = cpu->r[27] + 0x000002B4u;
|
|
/* 0223D27C */ rbrew_write_f32(cpu->mem, _t175, cpu->f[26]);
|
|
/* 0223D280 */ cpu->f[29] = cpu->f[26];
|
|
/* 0223D284 */ cpu->f[23] = cpu->f[26];
|
|
/* 0223D288 */ _t176 = cpu->r[27] + 0x00000138u;
|
|
/* 0223D288 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[26]);
|
|
L_0223D28C: ; // 0x223d28c
|
|
/* 0223D28C */ _t177 = cpu->r[1] + 0x00000044u;
|
|
/* 0223D28C */ rbrew_write32(cpu->mem, _t177, cpu->r[21]);
|
|
/* 0223D290 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0223D294 */ _t178 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223D294 */ rbrew_write32(cpu->mem, _t178, cpu->r[26]);
|
|
/* 0223D298 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223D29C */ _t179 = cpu->r[1] + 0x00000048u;
|
|
/* 0223D29C */ rbrew_write32(cpu->mem, _t179, cpu->r[26]);
|
|
/* 0223D2A0 */ cpu->r[4] = cpu->r[28];
|
|
/* 0223D2A4 */ _t180 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223D2A4 */ rbrew_write8(cpu->mem, _t180, (uint8_t)cpu->r[0]);
|
|
/* 0223D2A8 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223D2AC */ _t181 = cpu->r[1] + 0x00000038u;
|
|
/* 0223D2AC */ rbrew_write32(cpu->mem, _t181, cpu->r[12]);
|
|
/* 0223D2B0 */ _t182 = cpu->r[1] + 0x00000050u;
|
|
/* 0223D2B0 */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[12]);
|
|
/* 0223D2B4 */ _t183 = cpu->r[1] + 0x00000040u;
|
|
/* 0223D2B4 */ rbrew_write32(cpu->mem, _t183, cpu->r[28]);
|
|
/* 0223D2B8 */ Gambit_fn_027E3E54(cpu);
|
|
/* 0223D2BC */ cpu->r[9] = 0x000000FFu;
|
|
/* 0223D2C0 */ _t184 = cpu->r[1] + 0x00000050u;
|
|
/* 0223D2C0 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[26]);
|
|
/* 0223D2C4 */ _t185 = cpu->r[27] + 0x000002C4u;
|
|
/* 0223D2C4 */ rbrew_write8(cpu->mem, _t185, (uint8_t)cpu->r[9]);
|
|
/* 0223D2C8 */ _t186 = cpu->r[27] + 0x0000012Cu;
|
|
/* 0223D2C8 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[30]);
|
|
/* 0223D2CC */ _t187 = cpu->r[27] + 0x000002C5u;
|
|
/* 0223D2CC */ rbrew_write8(cpu->mem, _t187, (uint8_t)cpu->r[9]);
|
|
/* 0223D2D0 */ _t188 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0223D2D0 */ rbrew_write32(cpu->mem, _t188, cpu->r[22]);
|
|
/* 0223D2D4 */ _t189 = cpu->r[1] + 0x00000048u;
|
|
/* 0223D2D4 */ rbrew_write32(cpu->mem, _t189, cpu->r[25]);
|
|
/* 0223D2D8 */ _t190 = cpu->r[27] + 0x00000130u;
|
|
/* 0223D2D8 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[26]);
|
|
/* 0223D2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223D2E0 */ _t191 = cpu->r[1] + 0x00000054u;
|
|
/* 0223D2E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0223D2E4 */ _t192 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223D2E4 */ rbrew_write8(cpu->mem, _t192, (uint8_t)cpu->r[24]);
|
|
/* 0223D2E8 */ _t193 = cpu->r[1] + 0x00000038u;
|
|
/* 0223D2E8 */ rbrew_write32(cpu->mem, _t193, cpu->r[8]);
|
|
/* 0223D2EC */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D2EC */ _t195 = _t194 & 0x00000001u;
|
|
/* 0223D2EC */ if (_t195) goto L_0223C22C; else goto L_0223D2F0;
|
|
L_0223D2F0: ; // 0x223d2f0
|
|
/* 0223D2F0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223D2F4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D2F8 */ Gambit_fn_0223BA44(cpu);
|
|
/* 0223D2FC */ _t196 = cpu->r[27] + 0x0000013Cu;
|
|
/* 0223D2FC */ cpu->r[5] = rbrew_read8(cpu->mem, _t196);
|
|
/* 0223D300 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223D304 */ _t197 = cpu->r[27] + 0x00000140u;
|
|
/* 0223D304 */ cpu->r[6] = rbrew_read32(cpu->mem, _t197);
|
|
/* 0223D308 */ cpu->ctr = cpu->r[0];
|
|
/* 0223D30C */ cpu->r[8] = 0x00000000u;
|
|
/* 0223D310 */ _t198 = cpu->r[27] + 0x00000230u;
|
|
/* 0223D310 */ rbrew_write32(cpu->mem, _t198, cpu->r[6]);
|
|
/* 0223D314 */ cpu->r[12] = cpu->r[27] + 0x00000234u;
|
|
/* 0223D318 */ cpu->r[9] = cpu->r[27] + 0x00000144u;
|
|
/* 0223D31C */ _t199 = cpu->r[27] + 0x0000022Cu;
|
|
/* 0223D31C */ rbrew_write8(cpu->mem, _t199, (uint8_t)cpu->r[5]);
|
|
L_0223D320: ; // 0x223d320
|
|
/* 0223D320 */ _t200 = cpu->r[9] + cpu->r[8];
|
|
/* 0223D320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t200);
|
|
/* 0223D324 */ cpu->r[7] = cpu->r[9] + cpu->r[8];
|
|
/* 0223D328 */ _t201 = cpu->r[12] + cpu->r[8];
|
|
/* 0223D328 */ rbrew_write32(cpu->mem, _t201, cpu->r[12]);
|
|
/* 0223D32C */ _t202 = cpu->r[7] + 0x00000004u;
|
|
/* 0223D32C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0223D330 */ cpu->r[5] = cpu->r[12] + cpu->r[8];
|
|
/* 0223D334 */ _t203 = cpu->r[5] + 0x00000004u;
|
|
/* 0223D334 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[13]);
|
|
/* 0223D338 */ _t204 = cpu->r[7] + 0x00000008u;
|
|
/* 0223D338 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 0223D33C */ cpu->r[8] = cpu->r[8] + 0x0000000Cu;
|
|
/* 0223D340 */ _t205 = cpu->r[5] + 0x00000008u;
|
|
/* 0223D340 */ rbrew_write_f32(cpu->mem, _t205, cpu->f[0]);
|
|
/* 0223D344 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223D344 */ _t206 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223D344 */ _t207 = _t206 >> (0x00000002u & 31u);
|
|
/* 0223D344 */ _t208 = _t207 & 0x00000001u;
|
|
/* 0223D344 */ if (_t208) goto L_0223D320; else goto L_0223D348;
|
|
L_0223D348: ; // 0x223d348
|
|
/* 0223D348 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223D34C */ cpu->r[6] = cpu->r[27] + 0x00000264u;
|
|
/* 0223D350 */ cpu->r[5] = cpu->r[27] + 0x00000174u;
|
|
/* 0223D354 */ cpu->ctr = cpu->r[0];
|
|
/* 0223D358 */ cpu->r[7] = 0x00000000u;
|
|
L_0223D35C: ; // 0x223d35c
|
|
/* 0223D35C */ _t209 = cpu->r[5] + cpu->r[7];
|
|
/* 0223D35C */ cpu->r[6] = rbrew_read32(cpu->mem, _t209);
|
|
/* 0223D360 */ cpu->r[9] = cpu->r[5] + cpu->r[7];
|
|
/* 0223D364 */ _t210 = cpu->r[6] + cpu->r[7];
|
|
/* 0223D364 */ rbrew_write32(cpu->mem, _t210, cpu->r[6]);
|
|
/* 0223D368 */ _t211 = cpu->r[9] + 0x00000004u;
|
|
/* 0223D368 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 0223D36C */ cpu->r[8] = cpu->r[6] + cpu->r[7];
|
|
/* 0223D370 */ _t212 = cpu->r[8] + 0x00000004u;
|
|
/* 0223D370 */ rbrew_write_f32(cpu->mem, _t212, cpu->f[7]);
|
|
/* 0223D374 */ _t213 = cpu->r[9] + 0x00000008u;
|
|
/* 0223D374 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 0223D378 */ cpu->r[7] = cpu->r[7] + 0x0000000Cu;
|
|
/* 0223D37C */ _t214 = cpu->r[8] + 0x00000008u;
|
|
/* 0223D37C */ rbrew_write_f32(cpu->mem, _t214, cpu->f[8]);
|
|
/* 0223D380 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223D380 */ _t215 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223D380 */ _t216 = _t215 >> (0x00000002u & 31u);
|
|
/* 0223D380 */ _t217 = _t216 & 0x00000001u;
|
|
/* 0223D380 */ if (_t217) goto L_0223D35C; else goto L_0223D384;
|
|
L_0223D384: ; // 0x223d384
|
|
/* 0223D384 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223D388 */ cpu->r[4] = cpu->r[27] + 0x000001A4u;
|
|
/* 0223D38C */ cpu->r[3] = cpu->r[27] + 0x00000294u;
|
|
/* 0223D390 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
/* 0223D394 */ _t218 = cpu->r[27] + 0x000001B0u;
|
|
/* 0223D394 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 0223D398 */ cpu->r[22] = 0x10050000u;
|
|
/* 0223D39C */ _t219 = cpu->r[27] + 0x000001A8u;
|
|
/* 0223D39C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 0223D3A0 */ _t220 = cpu->r[22] + 0x00002DFCu;
|
|
/* 0223D3A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 0223D3A4 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223D3A8 */ _t221 = cpu->r[27] + 0x000001ACu;
|
|
/* 0223D3A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 0223D3AC */ _t222 = cpu->r[1] + 0x00000020u;
|
|
/* 0223D3AC */ rbrew_write_f32(cpu->mem, _t222, cpu->f[26]);
|
|
/* 0223D3B0 */ _t223 = cpu->r[27] + 0x00000298u;
|
|
/* 0223D3B0 */ rbrew_write_f32(cpu->mem, _t223, cpu->f[9]);
|
|
/* 0223D3B4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0223D3B8 */ _t224 = cpu->r[1] + 0x00000034u;
|
|
/* 0223D3B8 */ rbrew_write_f32(cpu->mem, _t224, cpu->f[7]);
|
|
/* 0223D3BC */ _t225 = cpu->r[9] + 0x00002EB4u;
|
|
/* 0223D3BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 0223D3C0 */ _t226 = cpu->r[27] + 0x0000029Cu;
|
|
/* 0223D3C0 */ rbrew_write_f32(cpu->mem, _t226, cpu->f[10]);
|
|
/* 0223D3C4 */ _t227 = cpu->r[1] + 0x00000024u;
|
|
/* 0223D3C4 */ rbrew_write_f32(cpu->mem, _t227, cpu->f[9]);
|
|
/* 0223D3C8 */ _t228 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223D3C8 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[26]);
|
|
/* 0223D3CC */ _t229 = cpu->r[1] + 0x00000028u;
|
|
/* 0223D3CC */ rbrew_write_f32(cpu->mem, _t229, cpu->f[26]);
|
|
/* 0223D3D0 */ _t230 = cpu->r[27] + 0x000002A0u;
|
|
/* 0223D3D0 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[11]);
|
|
/* 0223D3D4 */ _t231 = cpu->r[10] + 0x00006338u;
|
|
/* 0223D3D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t231);
|
|
/* 0223D3D4 */ cpu->r[10] = _t231;
|
|
/* 0223D3D8 */ cpu->f[9] = cpu->f[11] * cpu->f[27];
|
|
/* 0223D3DC */ /* nop */
|
|
/* 0223D3E0 */ _t232 = cpu->r[29] + 0x00000008u;
|
|
/* 0223D3E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 0223D3E4 */ /* nop */
|
|
/* 0223D3E8 */ _t233 = cpu->r[1] + 0x00000078u;
|
|
/* 0223D3E8 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[9]);
|
|
/* 0223D3EC */ _t234 = cpu->r[1] + 0x00000078u;
|
|
/* 0223D3EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t234);
|
|
/* 0223D3F0 */ /* nop */
|
|
/* 0223D3F4 */ _t235 = cpu->r[1] + 0x00000070u;
|
|
/* 0223D3F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0223D3F8 */ _t236 = cpu->r[1] + 0x00000074u;
|
|
/* 0223D3F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t236);
|
|
/* 0223D3FC */ _t237 = cpu->r[1] + 0x00000094u;
|
|
/* 0223D3FC */ rbrew_write32(cpu->mem, _t237, cpu->r[12]);
|
|
/* 0223D400 */ _t238 = cpu->r[1] + 0x00000098u;
|
|
/* 0223D400 */ rbrew_write32(cpu->mem, _t238, cpu->r[4]);
|
|
/* 0223D404 */ /* nop */
|
|
/* 0223D408 */ _t239 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0223D408 */ rbrew_write32(cpu->mem, _t239, cpu->r[0]);
|
|
/* 0223D40C */ _t240 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0223D40C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t240);
|
|
/* 0223D410 */ /* nop */
|
|
/* 0223D414 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 0223D418 */ _t241 = cpu->r[10] + 0x00000004u;
|
|
/* 0223D418 */ cpu->r[7] = rbrew_read32(cpu->mem, _t241);
|
|
/* 0223D41C */ _t242 = cpu->r[1] + 0x00000014u;
|
|
/* 0223D41C */ rbrew_write32(cpu->mem, _t242, cpu->r[5]);
|
|
/* 0223D420 */ /* nop */
|
|
/* 0223D424 */ _t243 = cpu->r[1] + 0x00000018u;
|
|
/* 0223D424 */ rbrew_write32(cpu->mem, _t243, cpu->r[7]);
|
|
/* 0223D428 */ /* nop */
|
|
/* 0223D42C */ _t244 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0223D42C */ cpu->r[7] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0223D430 */ _t245 = cpu->r[10] + 0x00000008u;
|
|
/* 0223D430 */ cpu->r[8] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0223D434 */ _t246 = cpu->r[1] + 0x00000084u;
|
|
/* 0223D434 */ rbrew_write_f32(cpu->mem, _t246, cpu->f[11]);
|
|
/* 0223D438 */ _t247 = cpu->r[1] + 0x00000084u;
|
|
/* 0223D438 */ cpu->r[10] = rbrew_read32(cpu->mem, _t247);
|
|
/* 0223D43C */ _t248 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223D43C */ rbrew_write32(cpu->mem, _t248, cpu->r[8]);
|
|
/* 0223D440 */ _t249 = cpu->r[1] + 0x00000080u;
|
|
/* 0223D440 */ cpu->r[8] = rbrew_read32(cpu->mem, _t249);
|
|
/* 0223D444 */ _t250 = cpu->r[1] + 0x00000088u;
|
|
/* 0223D444 */ rbrew_write32(cpu->mem, _t250, cpu->r[7]);
|
|
/* 0223D448 */ _t251 = cpu->r[1] + 0x00000088u;
|
|
/* 0223D448 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 0223D44C */ _t252 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0223D44C */ rbrew_write32(cpu->mem, _t252, cpu->r[8]);
|
|
/* 0223D450 */ _t253 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0223D450 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 0223D454 */ _t254 = cpu->r[1] + 0x00000090u;
|
|
/* 0223D454 */ rbrew_write32(cpu->mem, _t254, cpu->r[10]);
|
|
/* 0223D458 */ _t255 = cpu->r[1] + 0x00000090u;
|
|
/* 0223D458 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 0223D45C */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D460 */ _t256 = cpu->r[1] + 0x00000030u;
|
|
/* 0223D460 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[26]);
|
|
/* 0223D464 */ _t257 = cpu->r[1] + 0x00000010u;
|
|
/* 0223D464 */ rbrew_write_f32(cpu->mem, _t257, cpu->f[10]);
|
|
/* 0223D468 */ _t258 = cpu->r[1] + 0x00000008u;
|
|
/* 0223D468 */ rbrew_write_f32(cpu->mem, _t258, cpu->f[6]);
|
|
/* 0223D46C */ cpu->r[4] = cpu->r[23];
|
|
/* 0223D470 */ _t259 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223D470 */ rbrew_write_f32(cpu->mem, _t259, cpu->f[9]);
|
|
/* 0223D474 */ Gambit_fn_0223BCCC(cpu);
|
|
/* 0223D478 */ _t260 = cpu->r[23] + 0x00000004u;
|
|
/* 0223D478 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t260);
|
|
/* 0223D47C */ _t261 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223D47C */ rbrew_write_f32(cpu->mem, _t261, cpu->f[26]);
|
|
/* 0223D480 */ _t262 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223D480 */ rbrew_write_f32(cpu->mem, _t262, cpu->f[27]);
|
|
/* 0223D484 */ cpu->f[12] = cpu->f[11] * cpu->f[1];
|
|
/* 0223D488 */ _t263 = cpu->r[1] + 0x00000030u;
|
|
/* 0223D488 */ rbrew_write_f32(cpu->mem, _t263, cpu->f[29]);
|
|
/* 0223D48C */ _t264 = cpu->r[1] + 0x00000014u;
|
|
/* 0223D48C */ rbrew_write_f32(cpu->mem, _t264, cpu->f[26]);
|
|
/* 0223D490 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D494 */ _t265 = cpu->r[1] + 0x00000018u;
|
|
/* 0223D494 */ rbrew_write_f32(cpu->mem, _t265, cpu->f[12]);
|
|
/* 0223D498 */ Gambit_fn_0223BD10(cpu);
|
|
/* 0223D49C */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D4A0 */ _t266 = cpu->r[1] + 0x00000020u;
|
|
/* 0223D4A0 */ rbrew_write_f32(cpu->mem, _t266, cpu->f[1]);
|
|
/* 0223D4A4 */ Gambit_fn_0223BD34(cpu);
|
|
/* 0223D4A8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D4AC */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 0223D4B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0223D4B4 */ _t267 = cpu->r[1] + 0x00000028u;
|
|
/* 0223D4B4 */ rbrew_write_f32(cpu->mem, _t267, cpu->f[1]);
|
|
/* 0223D4B8 */ Gambit_fn_0222A738(cpu);
|
|
/* 0223D4BC */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D4C0 */ Gambit_fn_0223BD10(cpu);
|
|
/* 0223D4C4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D4C8 */ _t268 = cpu->r[27] + 0x00000134u;
|
|
/* 0223D4C8 */ rbrew_write_f32(cpu->mem, _t268, cpu->f[1]);
|
|
/* 0223D4CC */ Gambit_fn_0223BD58(cpu);
|
|
/* 0223D4D0 */ cpu->f[7] = (uint32_t)(int32_t)cpu->f[1];
|
|
/* 0223D4D4 */ cpu->r[0] = cpu->r[1] + 0x00000068u;
|
|
/* 0223D4D8 */ _t269 = cpu->r[27] + 0x000002B0u;
|
|
/* 0223D4D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t269);
|
|
/* 0223D4DC */ /* nop */
|
|
/* 0223D4E0 */ _t270 = cpu->r[1] + 0x00000068u;
|
|
/* 0223D4E0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t270);
|
|
/* 0223D4E4 */ cpu->r[3] = cpu->r[1] + 0x000000A0u;
|
|
/* 0223D4E8 */ cpu->r[25] = cpu->r[4] - cpu->r[24];
|
|
/* 0223D4EC */ Gambit_fn_02830138(cpu);
|
|
/* 0223D4F0 */ /* nop */
|
|
/* 0223D4F4 */ _t271 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t271);
|
|
/* 0223D4F8 */ cpu->r[11] = cpu->r[8] + cpu->r[24];
|
|
/* 0223D4FC */ cpu->r[3] = cpu->r[1] + 0x000000A0u;
|
|
/* 0223D500 */ _t272 = cpu->r[27] + 0x000002ACu;
|
|
/* 0223D500 */ rbrew_write32(cpu->mem, _t272, cpu->r[11]);
|
|
/* 0223D504 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 0223D508 */ _t273 = cpu->r[27] + 0x000002A4u;
|
|
/* 0223D508 */ rbrew_write32(cpu->mem, _t273, cpu->r[11]);
|
|
/* 0223D50C */ cpu->f[30] = cpu->f[23] - cpu->f[24];
|
|
/* 0223D510 */ _t274 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D510 */ rbrew_write32(cpu->mem, _t274, cpu->r[0]);
|
|
/* 0223D514 */ Gambit_fn_02830138(cpu);
|
|
/* 0223D518 */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0223D51C */ _t275 = cpu->r[22] + 0x00002DFCu;
|
|
/* 0223D51C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t275);
|
|
/* 0223D520 */ cpu->r[0] = cpu->r[6] | 0x3F800000u;
|
|
/* 0223D524 */ _t276 = cpu->r[1] + 0x00000060u;
|
|
/* 0223D524 */ rbrew_write32(cpu->mem, _t276, cpu->r[0]);
|
|
/* 0223D528 */ _t277 = cpu->r[1] + 0x00000060u;
|
|
/* 0223D528 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t277);
|
|
/* 0223D52C */ cpu->f[6] = cpu->f[7] - cpu->f[13];
|
|
/* 0223D530 */ cpu->f[10] = fma(cpu->f[6], cpu->f[30], cpu->f[24]);
|
|
/* 0223D534 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0223D538 */ _t278 = cpu->r[27] + 0x000002B8u;
|
|
/* 0223D538 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[10]);
|
|
/* 0223D53C */ _t279 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 0223D53C */ cpu->r[3] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0223D540 */ Gambit_fn_02830138(cpu);
|
|
/* 0223D544 */ cpu->r[4] = 0x10050000u;
|
|
/* 0223D548 */ _t280 = cpu->r[4] + 0x00002DFCu;
|
|
/* 0223D548 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t280);
|
|
/* 0223D54C */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0223D550 */ cpu->r[5] = cpu->r[4] | 0x3F800000u;
|
|
/* 0223D554 */ _t281 = cpu->r[1] + 0x00000058u;
|
|
/* 0223D554 */ rbrew_write32(cpu->mem, _t281, cpu->r[5]);
|
|
/* 0223D558 */ _t282 = cpu->r[1] + 0x00000058u;
|
|
/* 0223D558 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t282);
|
|
/* 0223D55C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D560 */ cpu->f[11] = cpu->f[12] - cpu->f[10];
|
|
/* 0223D564 */ _t283 = cpu->r[12] + 0x00002EB8u;
|
|
/* 0223D564 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 0223D568 */ cpu->f[30] = cpu->f[11] * cpu->f[9];
|
|
/* 0223D56C */ cpu->f[1] = cpu->f[30];
|
|
/* 0223D570 */ Gambit_fn_02C886F8(cpu);
|
|
/* 0223D574 */ cpu->f[29] = cpu->f[1];
|
|
/* 0223D578 */ cpu->f[1] = cpu->f[30];
|
|
/* 0223D57C */ Gambit_fn_02C88F2C(cpu);
|
|
/* 0223D580 */ _t284 = cpu->r[27] + 0x000002BCu;
|
|
/* 0223D580 */ rbrew_write_f32(cpu->mem, _t284, cpu->f[29]);
|
|
/* 0223D584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223D588 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0223D58C */ _t285 = cpu->r[27] + 0x000002C0u;
|
|
/* 0223D58C */ rbrew_write_f32(cpu->mem, _t285, cpu->f[1]);
|
|
/* 0223D590 */ _t286 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D590 */ _t287 = _t286 & 0x00000001u;
|
|
/* 0223D590 */ if (_t287) goto L_0223D594; else goto L_0223D598;
|
|
L_0223D594: ; // 0x223d594
|
|
/* 0223D594 */ cpu->r[0] = 0x00000000u;
|
|
L_0223D598: ; // 0x223d598
|
|
/* 0223D598 */ _t288 = cpu->r[27] + 0x000002C7u;
|
|
/* 0223D598 */ rbrew_write8(cpu->mem, _t288, (uint8_t)cpu->r[0]);
|
|
/* 0223D59C */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0223D5A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0223D5A4 */ _t289 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D5A4 */ rbrew_write8(cpu->mem, _t289, (uint8_t)cpu->r[9]);
|
|
/* 0223D5A8 */ _t290 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D5A8 */ _t291 = _t290 & 0x00000001u;
|
|
/* 0223D5A8 */ if (_t291) goto L_0223D5CC; else goto L_0223D5AC;
|
|
L_0223D5AC: ; // 0x223d5ac
|
|
/* 0223D5AC */ _t292 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0223D5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t292);
|
|
/* 0223D5B0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Au);
|
|
/* 0223D5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223D5B4 */ _t293 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D5B4 */ _t294 = _t293 & 0x00000001u;
|
|
/* 0223D5B4 */ if (_t294) goto L_0223D5B8; else goto L_0223D5CC;
|
|
L_0223D5B8: ; // 0x223d5b8
|
|
/* 0223D5B8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Eu);
|
|
/* 0223D5BC */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0223D5C0 */ cpu->r[12] = cpu->r[12] - cpu->r[0];
|
|
/* 0223D5C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223D5C4 */ _t295 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D5C4 */ _t296 = _t295 & 0x00000001u;
|
|
/* 0223D5C4 */ if (_t296) goto L_0223D5C8; else goto L_0223D5CC;
|
|
L_0223D5C8: ; // 0x223d5c8
|
|
/* 0223D5C8 */ _t297 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D5C8 */ rbrew_write8(cpu->mem, _t297, (uint8_t)cpu->r[26]);
|
|
L_0223D5CC: ; // 0x223d5cc
|
|
/* 0223D5CC */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D5D0 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223D5D4 */ _t298 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D5D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t298);
|
|
/* 0223D5D8 */ _t299 = cpu->r[27] + 0x000002CEu;
|
|
/* 0223D5D8 */ rbrew_write16(cpu->mem, _t299, (uint16_t)cpu->r[31]);
|
|
/* 0223D5DC */ /* nop */
|
|
/* 0223D5E0 */ cpu->r[25] = 0x101C0000u;
|
|
/* 0223D5E4 */ _t300 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D5E4 */ _t301 = _t300 & 0x00000001u;
|
|
/* 0223D5E4 */ if (_t301) goto L_0223D5E8; else goto L_0223D660;
|
|
L_0223D5E8: ; // 0x223d5e8
|
|
/* 0223D5E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000001Eu);
|
|
/* 0223D5EC */ _t302 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D5EC */ _t303 = _t302 & 0x00000001u;
|
|
/* 0223D5EC */ if (_t303) goto L_0223D608; else goto L_0223D5F0;
|
|
L_0223D5F0: ; // 0x223d5f0
|
|
/* 0223D5F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000024u);
|
|
/* 0223D5F4 */ _t304 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223D5F4 */ _t305 = _t304 & 0x00000001u;
|
|
/* 0223D5F4 */ if (_t305) goto L_0223D5F8; else goto L_0223D6C8;
|
|
L_0223D5F8: ; // 0x223d5f8
|
|
/* 0223D5F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000003Du);
|
|
/* 0223D5FC */ _t306 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D5FC */ _t307 = _t306 & 0x00000001u;
|
|
/* 0223D5FC */ if (_t307) goto L_0223D6C8; else goto L_0223D600;
|
|
L_0223D600: ; // 0x223d600
|
|
/* 0223D600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000048u);
|
|
/* 0223D604 */ _t308 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D604 */ _t309 = _t308 & 0x00000001u;
|
|
/* 0223D604 */ if (_t309) goto L_0223D6C8; else goto L_0223D608;
|
|
L_0223D608: ; // 0x223d608
|
|
/* 0223D608 */ _t310 = cpu->r[27] + 0x000001A8u;
|
|
/* 0223D608 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t310);
|
|
/* 0223D60C */ _t311 = cpu->r[27] + 0x000001ACu;
|
|
/* 0223D60C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t311);
|
|
/* 0223D610 */ _t312 = cpu->r[27] + 0x000001B0u;
|
|
/* 0223D610 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t312);
|
|
/* 0223D614 */ _t313 = cpu->r[27] + 0x0000006Cu;
|
|
/* 0223D614 */ rbrew_write_f32(cpu->mem, _t313, cpu->f[7]);
|
|
/* 0223D618 */ _t314 = cpu->r[27] + 0x00000070u;
|
|
/* 0223D618 */ rbrew_write_f32(cpu->mem, _t314, cpu->f[8]);
|
|
/* 0223D61C */ _t315 = cpu->r[27] + 0x00000068u;
|
|
/* 0223D61C */ rbrew_write_f32(cpu->mem, _t315, cpu->f[6]);
|
|
/* 0223D620 */ _t316 = cpu->r[29] + 0x00000000u;
|
|
/* 0223D620 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t316);
|
|
/* 0223D624 */ _t317 = cpu->r[27] + 0x00000074u;
|
|
/* 0223D624 */ rbrew_write_f32(cpu->mem, _t317, cpu->f[9]);
|
|
/* 0223D628 */ _t318 = cpu->r[29] + 0x00000004u;
|
|
/* 0223D628 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t318);
|
|
/* 0223D62C */ _t319 = cpu->r[27] + 0x00000078u;
|
|
/* 0223D62C */ rbrew_write_f32(cpu->mem, _t319, cpu->f[10]);
|
|
/* 0223D630 */ _t320 = cpu->r[29] + 0x00000008u;
|
|
/* 0223D630 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t320);
|
|
/* 0223D634 */ _t321 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0223D634 */ rbrew_write_f32(cpu->mem, _t321, cpu->f[11]);
|
|
/* 0223D638 */ _t322 = cpu->r[25] + 0x00006000u;
|
|
/* 0223D638 */ cpu->r[10] = rbrew_read32(cpu->mem, _t322);
|
|
/* 0223D63C */ _t323 = cpu->r[10] + 0x00000274u;
|
|
/* 0223D63C */ cpu->r[3] = rbrew_read32(cpu->mem, _t323);
|
|
/* 0223D640 */ cpu->r[4] = cpu->r[27];
|
|
/* 0223D644 */ Gambit_fn_021EFC0C(cpu);
|
|
/* 0223D648 */ _t324 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D648 */ cpu->r[12] = rbrew_read8(cpu->mem, _t324);
|
|
/* 0223D64C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0223D650 */ /* nop */
|
|
/* 0223D654 */ _t325 = cpu->r[27] + 0x000002C9u;
|
|
/* 0223D654 */ rbrew_write8(cpu->mem, _t325, (uint8_t)cpu->r[10]);
|
|
/* 0223D658 */ _t326 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D658 */ _t327 = _t326 & 0x00000001u;
|
|
/* 0223D658 */ if (_t327) goto L_0223D65C; else goto L_0223D764;
|
|
L_0223D65C: ; // 0x223d65c
|
|
/* 0223D65C */ goto L_0223D6DC;
|
|
L_0223D660: ; // 0x223d660
|
|
/* 0223D660 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000001Eu);
|
|
/* 0223D664 */ _t328 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D664 */ _t329 = _t328 & 0x00000001u;
|
|
/* 0223D664 */ if (_t329) goto L_0223D680; else goto L_0223D668;
|
|
L_0223D668: ; // 0x223d668
|
|
/* 0223D668 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000024u);
|
|
/* 0223D66C */ _t330 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223D66C */ _t331 = _t330 & 0x00000001u;
|
|
/* 0223D66C */ if (_t331) goto L_0223D670; else goto L_0223D6C0;
|
|
L_0223D670: ; // 0x223d670
|
|
/* 0223D670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000003Du);
|
|
/* 0223D674 */ _t332 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D674 */ _t333 = _t332 & 0x00000001u;
|
|
/* 0223D674 */ if (_t333) goto L_0223D6C0; else goto L_0223D678;
|
|
L_0223D678: ; // 0x223d678
|
|
/* 0223D678 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000048u);
|
|
/* 0223D67C */ _t334 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D67C */ _t335 = _t334 & 0x00000001u;
|
|
/* 0223D67C */ if (_t335) goto L_0223D6C0; else goto L_0223D680;
|
|
L_0223D680: ; // 0x223d680
|
|
/* 0223D680 */ _t336 = cpu->r[27] + 0x000001A8u;
|
|
/* 0223D680 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t336);
|
|
/* 0223D684 */ _t337 = cpu->r[27] + 0x000001ACu;
|
|
/* 0223D684 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t337);
|
|
/* 0223D688 */ _t338 = cpu->r[27] + 0x000001B0u;
|
|
/* 0223D688 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t338);
|
|
/* 0223D68C */ _t339 = cpu->r[27] + 0x0000006Cu;
|
|
/* 0223D68C */ rbrew_write_f32(cpu->mem, _t339, cpu->f[13]);
|
|
/* 0223D690 */ _t340 = cpu->r[27] + 0x00000070u;
|
|
/* 0223D690 */ rbrew_write_f32(cpu->mem, _t340, cpu->f[0]);
|
|
/* 0223D694 */ _t341 = cpu->r[27] + 0x00000068u;
|
|
/* 0223D694 */ rbrew_write_f32(cpu->mem, _t341, cpu->f[12]);
|
|
/* 0223D698 */ _t342 = cpu->r[29] + 0x00000000u;
|
|
/* 0223D698 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t342);
|
|
/* 0223D69C */ _t343 = cpu->r[27] + 0x00000074u;
|
|
/* 0223D69C */ rbrew_write_f32(cpu->mem, _t343, cpu->f[6]);
|
|
/* 0223D6A0 */ _t344 = cpu->r[29] + 0x00000004u;
|
|
/* 0223D6A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t344);
|
|
/* 0223D6A4 */ _t345 = cpu->r[27] + 0x00000078u;
|
|
/* 0223D6A4 */ rbrew_write_f32(cpu->mem, _t345, cpu->f[7]);
|
|
/* 0223D6A8 */ _t346 = cpu->r[29] + 0x00000008u;
|
|
/* 0223D6A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t346);
|
|
/* 0223D6AC */ _t347 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0223D6AC */ rbrew_write_f32(cpu->mem, _t347, cpu->f[8]);
|
|
/* 0223D6B0 */ _t348 = cpu->r[25] + 0x00006000u;
|
|
/* 0223D6B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t348);
|
|
/* 0223D6B4 */ _t349 = cpu->r[7] + 0x00000274u;
|
|
/* 0223D6B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t349);
|
|
/* 0223D6B8 */ cpu->r[4] = cpu->r[27];
|
|
/* 0223D6BC */ Gambit_fn_021EFC30(cpu);
|
|
L_0223D6C0: ; // 0x223d6c0
|
|
/* 0223D6C0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223D6C4 */ _t350 = cpu->r[27] + 0x000000C0u;
|
|
/* 0223D6C4 */ rbrew_write8(cpu->mem, _t350, (uint8_t)cpu->r[9]);
|
|
L_0223D6C8: ; // 0x223d6c8
|
|
/* 0223D6C8 */ _t351 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D6C8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t351);
|
|
/* 0223D6CC */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0223D6D0 */ /* nop */
|
|
/* 0223D6D4 */ _t352 = cpu->r[27] + 0x000002C9u;
|
|
/* 0223D6D4 */ rbrew_write8(cpu->mem, _t352, (uint8_t)cpu->r[10]);
|
|
/* 0223D6D8 */ _t353 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D6D8 */ _t354 = _t353 & 0x00000001u;
|
|
/* 0223D6D8 */ if (_t354) goto L_0223D6DC; else goto L_0223D764;
|
|
L_0223D6DC: ; // 0x223d6dc
|
|
/* 0223D6DC */ _t355 = cpu->r[27] + 0x000002C7u;
|
|
/* 0223D6DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t355);
|
|
/* 0223D6E0 */ /* nop */
|
|
/* 0223D6E4 */ _t356 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D6E4 */ _t357 = _t356 & 0x00000001u;
|
|
/* 0223D6E4 */ if (_t357) goto L_0223D6E8; else goto L_0223D764;
|
|
L_0223D6E8: ; // 0x223d6e8
|
|
/* 0223D6E8 */ _t358 = cpu->r[25] + 0x00006000u;
|
|
/* 0223D6E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t358);
|
|
/* 0223D6EC */ _t359 = cpu->r[5] + 0x00000274u;
|
|
/* 0223D6EC */ cpu->r[25] = rbrew_read32(cpu->mem, _t359);
|
|
/* 0223D6F0 */ cpu->r[5] = cpu->r[31];
|
|
/* 0223D6F4 */ cpu->r[6] = cpu->r[29];
|
|
/* 0223D6F8 */ cpu->r[4] = cpu->r[28];
|
|
/* 0223D6FC */ cpu->r[3] = cpu->r[25];
|
|
/* 0223D700 */ Gambit_fn_021EFCC0(cpu);
|
|
/* 0223D704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223D708 */ _t360 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D708 */ _t361 = _t360 & 0x00000001u;
|
|
/* 0223D708 */ if (_t361) goto L_0223D70C; else goto L_0223D74C;
|
|
L_0223D70C: ; // 0x223d70c
|
|
/* 0223D70C */ _t362 = cpu->r[27] + 0x000002C9u;
|
|
/* 0223D70C */ rbrew_write8(cpu->mem, _t362, (uint8_t)cpu->r[26]);
|
|
/* 0223D710 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0223D714 */ _t363 = cpu->r[27] + 0x000002C6u;
|
|
/* 0223D714 */ rbrew_write8(cpu->mem, _t363, (uint8_t)cpu->r[26]);
|
|
/* 0223D718 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D71C */ _t364 = cpu->r[27] + 0x000002CCu;
|
|
/* 0223D71C */ rbrew_write16(cpu->mem, _t364, (uint16_t)cpu->r[9]);
|
|
/* 0223D720 */ Gambit_fn_0223BD34(cpu);
|
|
/* 0223D724 */ _t365 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t365);
|
|
/* 0223D728 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223D72C */ _t366 = cpu->r[27] + 0x000002C7u;
|
|
/* 0223D72C */ cpu->r[4] = rbrew_read8(cpu->mem, _t366);
|
|
/* 0223D730 */ _t367 = rbrew_rlwinm(cpu->r[0], 0x0000000Eu, 0x00000010u, 0x00000011u);
|
|
/* 0223D730 */ _t368 = cpu->r[11] & 0xFFFF3FFFu;
|
|
/* 0223D730 */ cpu->r[11] = _t368 | _t367;
|
|
/* 0223D734 */ _t369 = cpu->r[27] + 0x000002D0u;
|
|
/* 0223D734 */ rbrew_write_f32(cpu->mem, _t369, cpu->f[1]);
|
|
/* 0223D738 */ /* nop */
|
|
/* 0223D73C */ _t370 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D73C */ rbrew_write32(cpu->mem, _t370, cpu->r[11]);
|
|
/* 0223D740 */ _t371 = cpu->r[27] + 0x000002D4u;
|
|
/* 0223D740 */ rbrew_write_f32(cpu->mem, _t371, cpu->f[28]);
|
|
/* 0223D744 */ _t372 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D744 */ _t373 = _t372 & 0x00000001u;
|
|
/* 0223D744 */ if (_t373) goto L_0223D748; else goto L_0223D7D0;
|
|
L_0223D748: ; // 0x223d748
|
|
/* 0223D748 */ goto L_0223D79C;
|
|
L_0223D74C: ; // 0x223d74c
|
|
/* 0223D74C */ cpu->r[7] = cpu->r[29];
|
|
/* 0223D750 */ cpu->r[6] = cpu->r[31];
|
|
/* 0223D754 */ cpu->r[5] = cpu->r[28];
|
|
/* 0223D758 */ cpu->r[4] = cpu->r[27];
|
|
/* 0223D75C */ cpu->r[3] = cpu->r[25];
|
|
/* 0223D760 */ Gambit_fn_021EFDD8(cpu);
|
|
L_0223D764: ; // 0x223d764
|
|
/* 0223D764 */ _t374 = cpu->r[27] + 0x000002C6u;
|
|
/* 0223D764 */ rbrew_write8(cpu->mem, _t374, (uint8_t)cpu->r[26]);
|
|
/* 0223D768 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0223D76C */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D770 */ _t375 = cpu->r[27] + 0x000002CCu;
|
|
/* 0223D770 */ rbrew_write16(cpu->mem, _t375, (uint16_t)cpu->r[9]);
|
|
/* 0223D774 */ Gambit_fn_0223BD34(cpu);
|
|
/* 0223D778 */ _t376 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t376);
|
|
/* 0223D77C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223D780 */ _t377 = cpu->r[27] + 0x000002C7u;
|
|
/* 0223D780 */ cpu->r[4] = rbrew_read8(cpu->mem, _t377);
|
|
/* 0223D784 */ _t378 = rbrew_rlwinm(cpu->r[0], 0x0000000Eu, 0x00000010u, 0x00000011u);
|
|
/* 0223D784 */ _t379 = cpu->r[11] & 0xFFFF3FFFu;
|
|
/* 0223D784 */ cpu->r[11] = _t379 | _t378;
|
|
/* 0223D788 */ _t380 = cpu->r[27] + 0x000002D0u;
|
|
/* 0223D788 */ rbrew_write_f32(cpu->mem, _t380, cpu->f[1]);
|
|
/* 0223D78C */ /* nop */
|
|
/* 0223D790 */ _t381 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D790 */ rbrew_write32(cpu->mem, _t381, cpu->r[11]);
|
|
/* 0223D794 */ _t382 = cpu->r[27] + 0x000002D4u;
|
|
/* 0223D794 */ rbrew_write_f32(cpu->mem, _t382, cpu->f[28]);
|
|
/* 0223D798 */ _t383 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D798 */ _t384 = _t383 & 0x00000001u;
|
|
/* 0223D798 */ if (_t384) goto L_0223D79C; else goto L_0223D7D0;
|
|
L_0223D79C: ; // 0x223d79c
|
|
/* 0223D79C */ _t385 = cpu->r[27] + 0x000002C8u;
|
|
/* 0223D79C */ cpu->r[5] = rbrew_read8(cpu->mem, _t385);
|
|
/* 0223D7A0 */ /* nop */
|
|
/* 0223D7A4 */ _t386 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D7A4 */ _t387 = _t386 & 0x00000001u;
|
|
/* 0223D7A4 */ if (_t387) goto L_0223D7A8; else goto L_0223D7D0;
|
|
L_0223D7A8: ; // 0x223d7a8
|
|
/* 0223D7A8 */ _t388 = cpu->r[27] + 0x000002C9u;
|
|
/* 0223D7A8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t388);
|
|
/* 0223D7AC */ /* nop */
|
|
/* 0223D7B0 */ _t389 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D7B0 */ _t390 = _t389 & 0x00000001u;
|
|
/* 0223D7B0 */ if (_t390) goto L_0223D7B4; else goto L_0223D7D0;
|
|
L_0223D7B4: ; // 0x223d7b4
|
|
/* 0223D7B4 */ _t391 = cpu->r[27] + 0x00000051u;
|
|
/* 0223D7B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t391);
|
|
/* 0223D7B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223D7BC */ _t392 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D7BC */ _t393 = _t392 & 0x00000001u;
|
|
/* 0223D7BC */ if (_t393) goto L_0223D7D0; else goto L_0223D7C0;
|
|
L_0223D7C0: ; // 0x223d7c0
|
|
/* 0223D7C0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0223D7C4 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223D7C8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223D7CC */ Gambit_fn_0223BEE8(cpu);
|
|
L_0223D7D0: ; // 0x223d7d0
|
|
/* 0223D7D0 */ /* nop */
|
|
/* 0223D7D4 */ _t394 = cpu->r[1] + 0x00000138u;
|
|
/* 0223D7D4 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t394);
|
|
/* 0223D7D8 */ _t395 = cpu->r[1] + 0x00000118u;
|
|
/* 0223D7D8 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t395);
|
|
/* 0223D7DC */ _t396 = cpu->r[1] + 0x00000130u;
|
|
/* 0223D7DC */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t396);
|
|
/* 0223D7E0 */ _t397 = cpu->r[1] + 0x00000108u;
|
|
/* 0223D7E0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t397);
|
|
/* 0223D7E4 */ _t398 = cpu->r[1] + 0x00000110u;
|
|
/* 0223D7E4 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t398);
|
|
/* 0223D7E8 */ _t399 = cpu->r[1] + 0x00000100u;
|
|
/* 0223D7E8 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t399);
|
|
/* 0223D7EC */ _t400 = cpu->r[1] + 0x00000158u;
|
|
/* 0223D7EC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t400);
|
|
/* 0223D7F0 */ _t401 = cpu->r[1] + 0x00000128u;
|
|
/* 0223D7F0 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t401);
|
|
/* 0223D7F4 */ _t402 = cpu->r[1] + 0x00000150u;
|
|
/* 0223D7F4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t402);
|
|
/* 0223D7F8 */ _t403 = cpu->r[1] + 0x00000120u;
|
|
/* 0223D7F8 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t403);
|
|
/* 0223D7FC */ _t404 = cpu->r[1] + 0x00000178u;
|
|
/* 0223D7FC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t404);
|
|
/* 0223D800 */ _t405 = cpu->r[1] + 0x00000148u;
|
|
/* 0223D800 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t405);
|
|
/* 0223D804 */ _t406 = cpu->r[1] + 0x00000170u;
|
|
/* 0223D804 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t406);
|
|
/* 0223D808 */ _t407 = cpu->r[1] + 0x00000140u;
|
|
/* 0223D808 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t407);
|
|
/* 0223D80C */ _t408 = cpu->r[1] + 0x000000F8u;
|
|
/* 0223D80C */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t408);
|
|
/* 0223D810 */ _t409 = cpu->r[1] + 0x00000168u;
|
|
/* 0223D810 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t409);
|
|
/* 0223D814 */ _t410 = cpu->r[1] + 0x000000F0u;
|
|
/* 0223D814 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t410);
|
|
/* 0223D818 */ _t411 = cpu->r[1] + 0x00000160u;
|
|
/* 0223D818 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t411);
|
|
/* 0223D81C */ _t412 = cpu->r[1] + 0x000000E8u;
|
|
/* 0223D81C */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t412);
|
|
/* 0223D820 */ _t413 = cpu->r[1] + 0x00000188u;
|
|
/* 0223D820 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t413);
|
|
/* 0223D824 */ _t414 = cpu->r[1] + 0x000000E0u;
|
|
/* 0223D824 */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t414);
|
|
/* 0223D828 */ _t415 = cpu->r[1] + 0x00000180u;
|
|
/* 0223D828 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t415);
|
|
/* 0223D82C */ _t416 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D82C */ _t417 = _t416 & 0x00000001u;
|
|
/* 0223D82C */ if (_t417) goto L_0223D830; // else: addr-0 trap, fall-through
|
|
L_0223D830: ; // 0x223d830
|
|
/* 0223D830 */ _t418 = cpu->r[1] + 0x00000194u;
|
|
/* 0223D830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t418);
|
|
/* 0223D834 */ cpu->lr = cpu->r[0];
|
|
/* 0223D838 */ cpu->r[1] = cpu->r[1] + 0x00000190u;
|
|
/* 0223D83C */ return;
|
|
}
|
|
|
|
// fn_0223D840 @ 0x223d840
|
|
void Gambit_fn_0223D840(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0223D840: ; // 0x223d840
|
|
/* 0223D840 */ cpu->r[0] = cpu->lr;
|
|
/* 0223D844 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0223D844 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0223D848 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223D848 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0223D848 */ cpu->r[1] = _t1;
|
|
/* 0223D84C */ _t2 = cpu->r[1] + 0x0000001Bu;
|
|
/* 0223D84C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0223D850 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223D850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223D854 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0223D854 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223D858 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223D858 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0223D85C */ Gambit_fn_0223BFE0(cpu);
|
|
/* 0223D860 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0223D860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223D864 */ cpu->lr = cpu->r[0];
|
|
/* 0223D868 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223D86C */ return;
|
|
}
|
|
|
|
// fn_0223D848 @ 0x223d848
|
|
void Gambit_fn_0223D848(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223D848: ; // 0x223d848
|
|
/* 0223D848 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223D848 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223D848 */ cpu->r[1] = _t0;
|
|
/* 0223D84C */ _t1 = cpu->r[1] + 0x0000001Bu;
|
|
/* 0223D84C */ cpu->r[0] = rbrew_read8(cpu->mem, _t1);
|
|
/* 0223D850 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223D850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223D854 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0223D854 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223D858 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223D858 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0223D85C */ Gambit_fn_0223BFE0(cpu);
|
|
/* 0223D860 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0223D860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223D864 */ cpu->lr = cpu->r[0];
|
|
/* 0223D868 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223D86C */ return;
|
|
}
|
|
|
|
// fn_0223D870 @ 0x223d870
|
|
void Gambit_fn_0223D870(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223D870: ; // 0x223d870
|
|
/* 0223D870 */ _t0 = cpu->r[4] + 0x00000002u;
|
|
/* 0223D870 */ cpu->r[11] = rbrew_read16(cpu->mem, _t0);
|
|
/* 0223D874 */ cpu->r[12] = 0x00000003u;
|
|
/* 0223D878 */ cpu->r[0] = 0x00000000u;
|
|
/* 0223D87C */ _t1 = rbrew_rlwinm(cpu->r[12], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 0223D87C */ _t2 = cpu->r[11] & 0xFFFF01FFu;
|
|
/* 0223D87C */ cpu->r[11] = _t2 | _t1;
|
|
/* 0223D880 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 0223D880 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 0223D884 */ _t4 = cpu->r[4] + 0x00000002u;
|
|
/* 0223D884 */ rbrew_write16(cpu->mem, _t4, (uint16_t)cpu->r[11]);
|
|
/* 0223D888 */ return;
|
|
}
|
|
|
|
// fn_0223D88C @ 0x223d88c
|
|
void Gambit_fn_0223D88C(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_02056750: ; // 0x2056750
|
|
/* 02056750 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02056750 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02056750 */ cpu->r[1] = _t0;
|
|
/* 02056754 */ /* nop */
|
|
/* 02056758 */ cpu->r[0] = cpu->lr;
|
|
/* 0205675C */ cpu->r[28] = cpu->r[3];
|
|
/* 02056760 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02056760 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02056764 */ Gambit_fn_020552F4(cpu);
|
|
/* 02056768 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0205676C */ _t2 = cpu->r[11] + 0xFFFFA678u;
|
|
/* 0205676C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0205676C */ cpu->r[11] = _t2;
|
|
/* 02056770 */ cpu->r[26] = cpu->r[3];
|
|
/* 02056774 */ cpu->r[27] = 0x00000000u;
|
|
/* 02056778 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0205677C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02056780 */ cpu->r[31] = cpu->r[31] + 0xFFFFA398u;
|
|
/* 02056784 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02056784 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02056784 */ if (_t4) goto L_02056788; else goto L_020567D0;
|
|
L_02056788: ; // 0x2056788
|
|
/* 02056788 */ cpu->r[0] = 0x00000001u;
|
|
/* 0205678C */ cpu->r[3] = cpu->r[31];
|
|
/* 02056790 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02056794 */ cpu->r[4] = 0x10000000u;
|
|
/* 02056798 */ cpu->r[7] = 0x00000000u;
|
|
/* 0205679C */ cpu->r[5] = 0x00000004u;
|
|
/* 020567A0 */ cpu->r[4] = cpu->r[4] + 0x000061D8u;
|
|
/* 020567A4 */ _t5 = cpu->r[11] + 0x00000000u;
|
|
/* 020567A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 020567A8 */ Gambit_fn_028A6750(cpu);
|
|
/* 020567AC */ cpu->r[6] = 0x02050000u;
|
|
/* 020567B0 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 020567B4 */ cpu->r[4] = 0x00000004u;
|
|
/* 020567B8 */ cpu->r[6] = cpu->r[6] + 0x0000710Cu;
|
|
/* 020567BC */ cpu->r[5] = 0x00000008u;
|
|
/* 020567C0 */ Gambit_fn_02C82E00(cpu);
|
|
/* 020567C4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020567C8 */ cpu->r[3] = cpu->r[3] + 0x000024A4u;
|
|
/* 020567CC */ Gambit_fn_02C83090(cpu);
|
|
L_020567D0: ; // 0x20567d0
|
|
/* 020567D0 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 020567D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020567D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020567D8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020567D8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 020567D8 */ if (_t8) goto L_020567DC; else goto L_020568D0;
|
|
L_020567DC: ; // 0x20567dc
|
|
/* 020567DC */ cpu->r[24] = 0x101D0000u;
|
|
/* 020567E0 */ cpu->r[29] = 0x00000000u;
|
|
/* 020567E4 */ cpu->r[19] = 0x101D0000u;
|
|
/* 020567E8 */ cpu->r[20] = 0x101D0000u;
|
|
/* 020567EC */ cpu->r[21] = 0x00000001u;
|
|
/* 020567F0 */ cpu->r[25] = cpu->r[29];
|
|
/* 020567F4 */ cpu->r[23] = 0x101D0000u;
|
|
/* 020567F8 */ cpu->r[24] = cpu->r[24] + 0xFFFFE51Cu;
|
|
/* 020567FC */ cpu->r[22] = 0x101D0000u;
|
|
L_02056800: ; // 0x2056800
|
|
/* 02056800 */ _t9 = cpu->r[22] + 0xFFFFE534u;
|
|
/* 02056800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02056804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02056808 */ cpu->r[30] = cpu->r[29];
|
|
/* 0205680C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205680C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0205680C */ if (_t11) goto L_02056810; else goto L_02056828;
|
|
L_02056810: ; // 0x2056810
|
|
/* 02056810 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02056814 */ cpu->r[3] = cpu->r[23] + 0x000032BCu;
|
|
/* 02056818 */ cpu->r[5] = 0x00000025u;
|
|
/* 0205681C */ cpu->r[4] = cpu->r[4] + 0x00002354u;
|
|
/* 02056820 */ _t12 = cpu->r[22] + 0xFFFFE534u;
|
|
/* 02056820 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 02056824 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02056828: ; // 0x2056828
|
|
/* 02056828 */ _t13 = cpu->r[20] + 0xFFFFE530u;
|
|
/* 02056828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0205682C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02056830 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02056830 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02056830 */ if (_t15) goto L_02056834; else goto L_0205683C;
|
|
L_02056834: ; // 0x2056834
|
|
/* 02056834 */ _t16 = cpu->r[19] + 0xFFFFE52Cu;
|
|
/* 02056834 */ rbrew_write32(cpu->mem, _t16, cpu->r[25]);
|
|
/* 02056838 */ _t17 = cpu->r[20] + 0xFFFFE530u;
|
|
/* 02056838 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_0205683C: ; // 0x205683c
|
|
/* 0205683C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000004u);
|
|
/* 02056840 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02056840 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02056840 */ if (_t19) goto L_02056868; else goto L_02056844;
|
|
L_02056844: ; // 0x2056844
|
|
/* 02056844 */ cpu->r[4] = cpu->r[29];
|
|
/* 02056848 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205684C */ cpu->r[5] = 0x00000000u;
|
|
/* 02056850 */ Gambit_fn_028A6634(cpu);
|
|
/* 02056854 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02056858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000004u);
|
|
/* 0205685C */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205685C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0205685C */ if (_t21) goto L_020568D0; else goto L_02056860;
|
|
L_02056860: ; // 0x2056860
|
|
/* 02056860 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02056860 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02056860 */ if (_t23) goto L_02056800; else goto L_02056864;
|
|
L_02056864: ; // 0x2056864
|
|
/* 02056864 */ goto L_020568D0;
|
|
L_02056868: ; // 0x2056868
|
|
/* 02056868 */ _t24 = cpu->r[19] + 0xFFFFE52Cu;
|
|
/* 02056868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0205686C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02056870 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02056870 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02056870 */ if (_t26) goto L_02056874; else goto L_020568AC;
|
|
L_02056874: ; // 0x2056874
|
|
/* 02056874 */ Gambit_fn_0282A450(cpu);
|
|
/* 02056878 */ cpu->r[18] = cpu->r[3];
|
|
/* 0205687C */ Gambit_fn_02836FFC(cpu);
|
|
/* 02056880 */ _t27 = cpu->r[19] + 0xFFFFE52Cu;
|
|
/* 02056880 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02056884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02056888 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02056888 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02056888 */ if (_t29) goto L_0205688C; else goto L_020568A0;
|
|
L_0205688C: ; // 0x205688c
|
|
/* 0205688C */ cpu->r[5] = 0x00000004u;
|
|
/* 02056890 */ cpu->r[4] = cpu->r[23] + 0x000032BCu;
|
|
/* 02056894 */ cpu->r[3] = cpu->r[24];
|
|
/* 02056898 */ Gambit_fn_0282A374(cpu);
|
|
/* 0205689C */ _t30 = cpu->r[19] + 0xFFFFE52Cu;
|
|
/* 0205689C */ rbrew_write32(cpu->mem, _t30, cpu->r[24]);
|
|
L_020568A0: ; // 0x20568a0
|
|
/* 020568A0 */ cpu->r[3] = cpu->r[18];
|
|
/* 020568A4 */ Gambit_fn_02837030(cpu);
|
|
/* 020568A8 */ _t31 = cpu->r[19] + 0xFFFFE52Cu;
|
|
/* 020568A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_020568AC: ; // 0x20568ac
|
|
/* 020568AC */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 020568B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020568B4 */ _t32 = cpu->r[8] + cpu->r[0];
|
|
/* 020568B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 020568B8 */ cpu->r[4] = cpu->r[29];
|
|
/* 020568BC */ Gambit_fn_028A6634(cpu);
|
|
/* 020568C0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020568C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000004u);
|
|
/* 020568C8 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020568C8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 020568C8 */ if (_t34) goto L_020568D0; else goto L_020568CC;
|
|
L_020568CC: ; // 0x20568cc
|
|
/* 020568CC */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020568CC */ _t36 = _t35 & 0x00000001u;
|
|
/* 020568CC */ if (_t36) goto L_02056800; else goto L_020568D0;
|
|
L_020568D0: ; // 0x20568d0
|
|
/* 020568D0 */ cpu->r[3] = cpu->r[28];
|
|
/* 020568D4 */ cpu->r[4] = cpu->r[31];
|
|
/* 020568D8 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020568DC */ cpu->r[9] = 0x101E0000u;
|
|
/* 020568E0 */ cpu->r[30] = 0x101E0000u;
|
|
/* 020568E4 */ _t37 = cpu->r[9] + 0xFFFFA67Cu;
|
|
/* 020568E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 020568E4 */ cpu->r[9] = _t37;
|
|
/* 020568E8 */ cpu->r[30] = cpu->r[30] + 0xFFFFA418u;
|
|
/* 020568EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020568F0 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 020568F4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020568F4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 020568F4 */ if (_t39) goto L_0205690C; else goto L_020568F8;
|
|
L_020568F8: ; // 0x20568f8
|
|
/* 020568F8 */ cpu->r[3] = cpu->r[28];
|
|
/* 020568FC */ cpu->r[4] = cpu->r[30];
|
|
/* 02056900 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02056904 */ cpu->r[3] = cpu->r[26] + 0x00000001u;
|
|
/* 02056908 */ goto L_02056A20;
|
|
L_0205690C: ; // 0x205690c
|
|
/* 0205690C */ cpu->r[5] = 0x00000001u;
|
|
/* 02056910 */ cpu->r[8] = 0x00000040u;
|
|
/* 02056914 */ _t40 = cpu->r[9] + 0x00000000u;
|
|
/* 02056914 */ rbrew_write32(cpu->mem, _t40, cpu->r[5]);
|
|
/* 02056918 */ cpu->r[31] = 0x10110000u;
|
|
/* 0205691C */ _t41 = cpu->r[30] + 0x00000008u;
|
|
/* 0205691C */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 02056920 */ cpu->r[25] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02056924 */ _t42 = cpu->r[31] + 0x00007399u;
|
|
/* 02056924 */ cpu->r[31] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02056928 */ cpu->r[9] = 0x10000000u;
|
|
/* 0205692C */ cpu->r[7] = 0x10000000u;
|
|
/* 02056930 */ _t43 = cpu->r[30] + 0x00000000u;
|
|
/* 02056930 */ rbrew_write32(cpu->mem, _t43, cpu->r[25]);
|
|
/* 02056934 */ cpu->r[9] = cpu->r[9] + 0x000060BCu;
|
|
/* 02056938 */ _t44 = cpu->r[30] + 0x0000004Bu;
|
|
/* 02056938 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[31]);
|
|
/* 0205693C */ cpu->r[7] = cpu->r[7] + 0x0000608Cu;
|
|
/* 02056940 */ cpu->r[6] = 0x10000000u;
|
|
/* 02056944 */ _t45 = cpu->r[30] + 0x00000004u;
|
|
/* 02056944 */ rbrew_write32(cpu->mem, _t45, cpu->r[9]);
|
|
/* 02056948 */ cpu->r[6] = cpu->r[6] + 0x000061E4u;
|
|
/* 0205694C */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0205694C */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 02056950 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02056954 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02056954 */ rbrew_write32(cpu->mem, _t47, cpu->r[6]);
|
|
/* 02056958 */ Gambit_fn_0205709C(cpu);
|
|
/* 0205695C */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 0205695C */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02056960 */ _t49 = cpu->r[12] + 0x00000000u;
|
|
/* 02056960 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 02056964 */ cpu->r[6] = 0x00080000u;
|
|
/* 02056968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0205696C */ cpu->r[29] = 0x00000000u;
|
|
/* 02056970 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02056970 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02056970 */ if (_t51) goto L_02056998; else goto L_02056974;
|
|
L_02056974: ; // 0x2056974
|
|
/* 02056974 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02056978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[6]);
|
|
/* 0205697C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02056980 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02056980 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02056980 */ if (_t53) goto L_02056994; else goto L_02056984;
|
|
L_02056984: ; // 0x2056984
|
|
/* 02056984 */ _t54 = cpu->r[12] + 0x00000000u;
|
|
/* 02056984 */ cpu->r[0] = rbrew_read8(cpu->mem, _t54);
|
|
/* 02056988 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0205698C */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205698C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0205698C */ if (_t56) goto L_02056990; else goto L_02056974;
|
|
L_02056990: ; // 0x2056990
|
|
/* 02056990 */ goto L_02056998;
|
|
L_02056994: ; // 0x2056994
|
|
/* 02056994 */ cpu->r[29] = 0x00000000u;
|
|
L_02056998: ; // 0x2056998
|
|
/* 02056998 */ _t57 = cpu->r[30] + 0x00000008u;
|
|
/* 02056998 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0205699C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]);
|
|
/* 020569A0 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020569A0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020569A0 */ if (_t59) goto L_020569A8; else goto L_020569A4;
|
|
L_020569A4: ; // 0x20569a4
|
|
/* 020569A4 */ cpu->r[29] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_020569A8: ; // 0x20569a8
|
|
/* 020569A8 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020569A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 020569AC */ _t61 = cpu->r[5] + 0x00000014u;
|
|
/* 020569AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020569B0 */ cpu->ctr = cpu->r[7];
|
|
/* 020569B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020569B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020569BC */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 020569BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t62);
|
|
/* 020569C0 */ cpu->r[3] = cpu->r[25];
|
|
/* 020569C4 */ cpu->r[5] = cpu->r[29];
|
|
/* 020569C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 020569CC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 020569D0 */ cpu->r[9] = 0x00000002u;
|
|
/* 020569D4 */ _t63 = cpu->r[25] + cpu->r[29];
|
|
/* 020569D4 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[31]);
|
|
/* 020569D8 */ cpu->r[10] = 0x10000000u;
|
|
/* 020569DC */ cpu->r[8] = 0x10000000u;
|
|
/* 020569E0 */ _t64 = cpu->r[30] + 0x0000004Cu;
|
|
/* 020569E0 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 020569E4 */ cpu->r[8] = cpu->r[8] + 0x000060D4u;
|
|
/* 020569E8 */ _t65 = cpu->r[10] + 0x000060F0u;
|
|
/* 020569E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 020569EC */ _t66 = cpu->r[30] + 0x00000004u;
|
|
/* 020569EC */ rbrew_write32(cpu->mem, _t66, cpu->r[8]);
|
|
/* 020569F0 */ cpu->r[7] = 0x10000000u;
|
|
/* 020569F4 */ _t67 = cpu->r[30] + 0x00000058u;
|
|
/* 020569F4 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[0]);
|
|
/* 020569F8 */ _t68 = cpu->r[7] + 0x000060ECu;
|
|
/* 020569F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 020569FC */ cpu->r[3] = 0x101C0000u;
|
|
/* 02056A00 */ _t69 = cpu->r[30] + 0x00000050u;
|
|
/* 02056A00 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[27]);
|
|
/* 02056A04 */ cpu->r[3] = cpu->r[3] + 0x000024B0u;
|
|
/* 02056A08 */ _t70 = cpu->r[30] + 0x00000054u;
|
|
/* 02056A08 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 02056A0C */ Gambit_fn_02C83090(cpu);
|
|
/* 02056A10 */ cpu->r[4] = cpu->r[30];
|
|
/* 02056A14 */ cpu->r[3] = cpu->r[28];
|
|
/* 02056A18 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02056A1C */ cpu->r[3] = cpu->r[26] + 0x00000001u;
|
|
L_02056A20: ; // 0x2056a20
|
|
/* 02056A20 */ /* nop */
|
|
/* 02056A24 */ _t71 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02056A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02056A28 */ cpu->lr = cpu->r[0];
|
|
/* 02056A2C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02056A30 */ return;
|
|
L_0223D88C: ; // 0x223d88c
|
|
/* 0223D88C */ _t72 = cpu->r[3] + 0x00000030u;
|
|
/* 0223D88C */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0223D890 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223D894 */ goto L_02056750;
|
|
}
|
|
|
|
// fn_0223D898 @ 0x223d898
|
|
void Gambit_fn_0223D898(CPUState* cpu) {
|
|
L_0223D898: ; // 0x223d898
|
|
/* 0223D898 */ return;
|
|
}
|
|
|
|
// fn_0223D89C @ 0x223d89c
|
|
void Gambit_fn_0223D89C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223D89C: ; // 0x223d89c
|
|
/* 0223D89C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D8A0 */ _t0 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223D8A0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223D8A4 */ return;
|
|
}
|
|
|
|
// fn_0223D8A8 @ 0x223d8a8
|
|
void Gambit_fn_0223D8A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223D8A8: ; // 0x223d8a8
|
|
/* 0223D8A8 */ _t0 = cpu->r[3] + 0x000002CBu;
|
|
/* 0223D8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223D8AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223D8B0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D8B0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223D8B0 */ if (_t2) goto L_0223D8C0; else goto L_0223D8B4;
|
|
L_0223D8B4: ; // 0x223d8b4
|
|
/* 0223D8B4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D8B8 */ _t3 = cpu->r[12] + 0x00002E24u;
|
|
/* 0223D8B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223D8BC */ return;
|
|
L_0223D8C0: ; // 0x223d8c0
|
|
/* 0223D8C0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D8C4 */ _t4 = cpu->r[12] + 0x00002DFCu;
|
|
/* 0223D8C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223D8C8 */ return;
|
|
}
|
|
|
|
// fn_0223D8CC @ 0x223d8cc
|
|
void Gambit_fn_0223D8CC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223D8CC: ; // 0x223d8cc
|
|
/* 0223D8CC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D8D0 */ _t0 = cpu->r[12] + 0x00002E48u;
|
|
/* 0223D8D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223D8D4 */ return;
|
|
}
|
|
|
|
// fn_0223D8D8 @ 0x223d8d8
|
|
void Gambit_fn_0223D8D8(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, _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;
|
|
double _ft60, _ft61;
|
|
|
|
L_0223D8D8: ; // 0x223d8d8
|
|
/* 0223D8D8 */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 0223D8D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223D8D8 */ cpu->r[1] = _t0;
|
|
/* 0223D8DC */ /* nop */
|
|
/* 0223D8E0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223D8E4 */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 0223D8E4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223D8E8 */ _t2 = cpu->r[1] + 0x000000C4u;
|
|
/* 0223D8E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223D8EC */ /* nop */
|
|
/* 0223D8F0 */ _t3 = cpu->r[1] + 0x000000B8u;
|
|
/* 0223D8F0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0223D8F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0223D8F8 */ _t4 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223D8F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223D8FC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000010u, 0x00000011u);
|
|
/* 0223D8FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223D900 */ cpu->r[29] = 0x00000000u;
|
|
/* 0223D904 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D904 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223D904 */ if (_t6) goto L_0223D9EC; else goto L_0223D908;
|
|
L_0223D908: ; // 0x223d908
|
|
/* 0223D908 */ _t7 = cpu->r[1] + 0x00000028u;
|
|
/* 0223D908 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0223D90C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223D910 */ _t8 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223D910 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0223D914 */ cpu->r[12] = cpu->r[12] + 0x00002DD4u;
|
|
/* 0223D918 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223D918 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0223D91C */ /* nop */
|
|
/* 0223D920 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0223D920 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0223D924 */ _t11 = cpu->r[30] + 0x000002CEu;
|
|
/* 0223D924 */ cpu->r[0] = rbrew_read16(cpu->mem, _t11);
|
|
/* 0223D928 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D928 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223D928 */ if (_t13) goto L_0223D92C; else goto L_0223D95C;
|
|
L_0223D92C: ; // 0x223d92c
|
|
/* 0223D92C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000001Eu);
|
|
/* 0223D930 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D930 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0223D930 */ if (_t15) goto L_0223D9E0; else goto L_0223D934;
|
|
L_0223D934: ; // 0x223d934
|
|
/* 0223D934 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000024u);
|
|
/* 0223D938 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223D938 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0223D938 */ if (_t17) goto L_0223D93C; else goto L_0223D9A8;
|
|
L_0223D93C: ; // 0x223d93c
|
|
/* 0223D93C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000003Du);
|
|
/* 0223D940 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D940 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0223D940 */ if (_t19) goto L_0223D9A8; else goto L_0223D944;
|
|
L_0223D944: ; // 0x223d944
|
|
/* 0223D944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000048u);
|
|
/* 0223D948 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D948 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0223D948 */ if (_t21) goto L_0223D97C; else goto L_0223D94C;
|
|
L_0223D94C: ; // 0x223d94c
|
|
/* 0223D94C */ _t22 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223D94C */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223D950 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000012u, 0x0000000Fu);
|
|
/* 0223D954 */ _t23 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223D954 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0223D958 */ goto L_0223D9EC;
|
|
L_0223D95C: ; // 0x223d95c
|
|
/* 0223D95C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000001Eu);
|
|
/* 0223D960 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D960 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0223D960 */ if (_t25) goto L_0223D9E0; else goto L_0223D964;
|
|
L_0223D964: ; // 0x223d964
|
|
/* 0223D964 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000024u);
|
|
/* 0223D968 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223D968 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223D968 */ if (_t27) goto L_0223D96C; else goto L_0223D9A8;
|
|
L_0223D96C: ; // 0x223d96c
|
|
/* 0223D96C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000003Du);
|
|
/* 0223D970 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D970 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0223D970 */ if (_t29) goto L_0223D9A8; else goto L_0223D974;
|
|
L_0223D974: ; // 0x223d974
|
|
/* 0223D974 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000048u);
|
|
/* 0223D978 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223D978 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0223D978 */ if (_t31) goto L_0223D97C; else goto L_0223D9E0;
|
|
L_0223D97C: ; // 0x223d97c
|
|
/* 0223D97C */ _t32 = cpu->r[30] + 0x00000030u;
|
|
/* 0223D97C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0223D980 */ cpu->r[5] = 0x00000001u;
|
|
/* 0223D984 */ cpu->r[4] = 0x00000008u;
|
|
/* 0223D988 */ Gambit_fn_027B8224(cpu);
|
|
/* 0223D98C */ cpu->r[5] = 0x10050000u;
|
|
/* 0223D990 */ _t33 = cpu->r[30] + 0x00000030u;
|
|
/* 0223D990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0223D994 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 0223D998 */ cpu->r[5] = cpu->r[5] + 0x00002ECCu;
|
|
/* 0223D99C */ cpu->r[6] = 0x00000000u;
|
|
/* 0223D9A0 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0223D9A4 */ goto L_0223D9E0;
|
|
L_0223D9A8: ; // 0x223d9a8
|
|
/* 0223D9A8 */ _t34 = cpu->r[30] + 0x00000030u;
|
|
/* 0223D9A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0223D9AC */ cpu->r[5] = 0x00000002u;
|
|
/* 0223D9B0 */ cpu->r[4] = 0x00000008u;
|
|
/* 0223D9B4 */ Gambit_fn_027B8224(cpu);
|
|
/* 0223D9B8 */ _t35 = cpu->r[30] + 0x00000030u;
|
|
/* 0223D9B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0223D9BC */ cpu->r[4] = 0x00000009u;
|
|
/* 0223D9C0 */ _t36 = cpu->r[30] + 0x000002D4u;
|
|
/* 0223D9C0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0223D9C4 */ Gambit_fn_027B8214(cpu);
|
|
/* 0223D9C8 */ cpu->r[5] = 0x10050000u;
|
|
/* 0223D9CC */ _t37 = cpu->r[30] + 0x00000030u;
|
|
/* 0223D9CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0223D9D0 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 0223D9D4 */ cpu->r[5] = cpu->r[5] + 0x00002ECCu;
|
|
/* 0223D9D8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0223D9DC */ Gambit_fn_027B72F0(cpu);
|
|
L_0223D9E0: ; // 0x223d9e0
|
|
/* 0223D9E0 */ _t38 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223D9E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0223D9E4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000012u, 0x0000000Fu);
|
|
/* 0223D9E8 */ _t39 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223D9E8 */ rbrew_write32(cpu->mem, _t39, cpu->r[11]);
|
|
L_0223D9EC: ; // 0x223d9ec
|
|
/* 0223D9EC */ _t40 = cpu->r[30] + 0x000002C7u;
|
|
/* 0223D9EC */ cpu->r[9] = rbrew_read8(cpu->mem, _t40);
|
|
/* 0223D9F0 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223D9F4 */ /* nop */
|
|
/* 0223D9F8 */ _t41 = cpu->r[8] + 0x00002DF4u;
|
|
/* 0223D9F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0223D9FC */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223D9FC */ _t43 = _t42 & 0x00000001u;
|
|
/* 0223D9FC */ if (_t43) goto L_0223DB48; else goto L_0223DA00;
|
|
L_0223DA00: ; // 0x223da00
|
|
/* 0223DA00 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DA00 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0223DA00 */ if (_t45) goto L_0223DB14; else goto L_0223DA04;
|
|
L_0223DA04: ; // 0x223da04
|
|
/* 0223DA04 */ _t46 = cpu->r[30] + 0x00000104u;
|
|
/* 0223DA04 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0223DA08 */ cpu->r[3] = cpu->r[1] + 0x00000064u;
|
|
/* 0223DA0C */ _t47 = cpu->r[30] + 0x000000FCu;
|
|
/* 0223DA0C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0223DA10 */ _t48 = cpu->r[30] + 0x00000100u;
|
|
/* 0223DA10 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0223DA14 */ Gambit_fn_02C69840(cpu);
|
|
/* 0223DA18 */ _t49 = cpu->r[30] + 0x000001A8u;
|
|
/* 0223DA18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0223DA1C */ _t50 = cpu->r[30] + 0x000001B0u;
|
|
/* 0223DA1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0223DA20 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 0223DA20 */ rbrew_write32(cpu->mem, _t51, cpu->r[10]);
|
|
/* 0223DA24 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 0223DA24 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0223DA28 */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 0223DA28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0223DA2C */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0223DA2C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0223DA30 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 0223DA34 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[13]);
|
|
/* 0223DA38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 0223DA3C */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223DA3C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[31]);
|
|
/* 0223DA40 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DA40 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0223DA40 */ if (_t57) goto L_0223DA44; else goto L_0223DA84;
|
|
L_0223DA44: ; // 0x223da44
|
|
/* 0223DA44 */ cpu->r[6] = 0x10050000u;
|
|
/* 0223DA48 */ cpu->r[5] = 0x10050000u;
|
|
/* 0223DA4C */ _t58 = cpu->r[6] + 0x00002E08u;
|
|
/* 0223DA4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0223DA50 */ _t59 = cpu->r[5] + 0x00002E04u;
|
|
/* 0223DA50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0223DA54 */ _ft60 = sqrt(cpu->f[9]);
|
|
/* 0223DA54 */ _ft61 = (double)(int32_t)0x00000001u;
|
|
/* 0223DA54 */ cpu->f[7] = _ft61 / _ft60;
|
|
/* 0223DA58 */ cpu->f[10] = cpu->f[7] * cpu->f[7];
|
|
/* 0223DA5C */ cpu->f[12] = cpu->f[7] * cpu->f[11];
|
|
/* 0223DA60 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[13]));
|
|
/* 0223DA64 */ cpu->f[7] = cpu->f[10] * cpu->f[12];
|
|
/* 0223DA68 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 0223DA68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0223DA6C */ /* nop */
|
|
/* 0223DA70 */ cpu->f[12] = cpu->f[12] * cpu->f[7];
|
|
/* 0223DA74 */ /* nop */
|
|
/* 0223DA78 */ /* nop */
|
|
/* 0223DA7C */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 0223DA7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0223DA80 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 0223DA80 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[12]);
|
|
L_0223DA84: ; // 0x223da84
|
|
/* 0223DA84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0223DA88 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0223DA8C */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 0223DA90 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DA90 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0223DA90 */ if (_t66) goto L_0223DA94; else goto L_0223DAC0;
|
|
L_0223DA94: ; // 0x223da94
|
|
/* 0223DA94 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223DA94 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0223DA98 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 0223DA9C */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DA9C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0223DA9C */ if (_t69) goto L_0223DAA0; else goto L_0223DAC0;
|
|
L_0223DAA0: ; // 0x223daa0
|
|
/* 0223DAA0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0223DAA4 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DAA4 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0223DAA4 */ if (_t71) goto L_0223DAA8; else goto L_0223DAC0;
|
|
L_0223DAA8: ; // 0x223daa8
|
|
/* 0223DAA8 */ _t72 = cpu->r[4] + 0x00000000u;
|
|
/* 0223DAA8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0223DAAC */ _t73 = cpu->r[4] + 0x00000004u;
|
|
/* 0223DAAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0223DAB0 */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 0223DAB0 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[10]);
|
|
/* 0223DAB4 */ _t75 = cpu->r[4] + 0x00000008u;
|
|
/* 0223DAB4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0223DAB8 */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223DAB8 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[11]);
|
|
/* 0223DABC */ _t77 = cpu->r[1] + 0x00000010u;
|
|
/* 0223DABC */ rbrew_write_f32(cpu->mem, _t77, cpu->f[12]);
|
|
L_0223DAC0: ; // 0x223dac0
|
|
/* 0223DAC0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0223DAC4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0223DAC8 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 0223DACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223DAD0 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DAD0 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0223DAD0 */ if (_t79) goto L_0223DAD4; else goto L_0223DAE8;
|
|
L_0223DAD4: ; // 0x223dad4
|
|
/* 0223DAD4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223DAD8 */ cpu->r[5] = 0x80000000u;
|
|
/* 0223DADC */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0223DAE0 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223DAE4 */ Gambit_fn_021E1408(cpu);
|
|
L_0223DAE8: ; // 0x223dae8
|
|
/* 0223DAE8 */ cpu->r[3] = cpu->r[1] + 0x00000064u;
|
|
/* 0223DAEC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0223DAF0 */ cpu->r[5] = cpu->r[30] + 0x000002D8u;
|
|
/* 0223DAF4 */ Gambit_fn_02C69544(cpu);
|
|
/* 0223DAF8 */ _t80 = cpu->r[30] + 0x0000012Cu;
|
|
/* 0223DAF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0223DAFC */ _t81 = cpu->r[30] + 0x000002C7u;
|
|
/* 0223DAFC */ cpu->r[9] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0223DB00 */ _t82 = cpu->r[30] + 0x0000030Cu;
|
|
/* 0223DB00 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[11]);
|
|
/* 0223DB04 */ /* nop */
|
|
/* 0223DB08 */ _t83 = cpu->r[30] + 0x00000308u;
|
|
/* 0223DB08 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 0223DB0C */ _t84 = cpu->r[30] + 0x00000310u;
|
|
/* 0223DB0C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[11]);
|
|
/* 0223DB10 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DB10 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0223DB10 */ if (_t86) goto L_0223DB48; else goto L_0223DB14;
|
|
L_0223DB14: ; // 0x223db14
|
|
/* 0223DB14 */ _t87 = cpu->r[30] + 0x00000030u;
|
|
/* 0223DB14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0223DB18 */ cpu->r[4] = 0x00000001u;
|
|
/* 0223DB1C */ Gambit_fn_027B9B00(cpu);
|
|
/* 0223DB20 */ cpu->r[7] = 0x00000002u;
|
|
/* 0223DB24 */ _t88 = cpu->r[30] + 0x00000050u;
|
|
/* 0223DB24 */ rbrew_write8(cpu->mem, _t88, (uint8_t)cpu->r[7]);
|
|
/* 0223DB28 */ /* nop */
|
|
/* 0223DB2C */ _t89 = cpu->r[1] + 0x000000B8u;
|
|
/* 0223DB2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0223DB30 */ _t90 = cpu->r[1] + 0x000000B0u;
|
|
/* 0223DB30 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 0223DB34 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DB34 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0223DB34 */ if (_t92) goto L_0223DB38; // else: addr-0 trap, fall-through
|
|
L_0223DB38: ; // 0x223db38
|
|
/* 0223DB38 */ _t93 = cpu->r[1] + 0x000000C4u;
|
|
/* 0223DB38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0223DB3C */ cpu->lr = cpu->r[0];
|
|
/* 0223DB40 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 0223DB44 */ return;
|
|
L_0223DB48: ; // 0x223db48
|
|
/* 0223DB48 */ _t94 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0223DB48 */ cpu->r[0] = rbrew_read8(cpu->mem, _t94);
|
|
/* 0223DB4C */ cpu->r[11] = cpu->r[0] ^ 0x00000001u;
|
|
/* 0223DB50 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223DB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223DB54 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DB54 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0223DB54 */ if (_t96) goto L_0223DB7C; else goto L_0223DB58;
|
|
L_0223DB58: ; // 0x223db58
|
|
/* 0223DB58 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DB5C */ Gambit_fn_0223D89C(cpu);
|
|
/* 0223DB60 */ _t97 = cpu->r[30] + 0x000002B8u;
|
|
/* 0223DB60 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 0223DB64 */ _t98 = cpu->r[30] + 0x000000DCu;
|
|
/* 0223DB64 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[1]);
|
|
/* 0223DB68 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0223DB6C */ _t99 = cpu->r[30] + 0x000002A4u;
|
|
/* 0223DB6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0223DB70 */ _t100 = cpu->r[30] + 0x000000E0u;
|
|
/* 0223DB70 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[1]);
|
|
/* 0223DB74 */ _t101 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DB74 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0223DB74 */ if (_t102) goto L_0223DBA0; else goto L_0223DB78;
|
|
L_0223DB78: ; // 0x223db78
|
|
/* 0223DB78 */ goto L_0223DB98;
|
|
L_0223DB7C: ; // 0x223db7c
|
|
/* 0223DB7C */ _t103 = cpu->r[30] + 0x00000134u;
|
|
/* 0223DB7C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0223DB80 */ _t104 = cpu->r[30] + 0x000002B8u;
|
|
/* 0223DB80 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0223DB84 */ _t105 = cpu->r[30] + 0x000000DCu;
|
|
/* 0223DB84 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[1]);
|
|
/* 0223DB88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0223DB8C */ _t106 = cpu->r[30] + 0x000002A4u;
|
|
/* 0223DB8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0223DB90 */ _t107 = cpu->r[30] + 0x000000E0u;
|
|
/* 0223DB90 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[1]);
|
|
/* 0223DB94 */ _t108 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DB94 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0223DB94 */ if (_t109) goto L_0223DBA0; else goto L_0223DB98;
|
|
L_0223DB98: ; // 0x223db98
|
|
/* 0223DB98 */ _t110 = cpu->r[30] + 0x000002D0u;
|
|
/* 0223DB98 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0223DB9C */ _t111 = cpu->r[30] + 0x000000E4u;
|
|
/* 0223DB9C */ rbrew_write_f32(cpu->mem, _t111, cpu->f[7]);
|
|
L_0223DBA0: ; // 0x223dba0
|
|
/* 0223DBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223DBA4 */ _t112 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DBA4 */ _t113 = _t112 & 0x00000001u;
|
|
/* 0223DBA4 */ if (_t113) goto L_0223DBA8; else goto L_0223DC40;
|
|
L_0223DBA8: ; // 0x223dba8
|
|
/* 0223DBA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223DBAC */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DBAC */ _t115 = _t114 & 0x00000001u;
|
|
/* 0223DBAC */ if (_t115) goto L_0223DBC0; else goto L_0223DBB0;
|
|
L_0223DBB0: ; // 0x223dbb0
|
|
/* 0223DBB0 */ _t116 = cpu->r[30] + 0x000002A8u;
|
|
/* 0223DBB0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0223DBB4 */ _t117 = cpu->r[30] + 0x000002A4u;
|
|
/* 0223DBB4 */ rbrew_write32(cpu->mem, _t117, cpu->r[29]);
|
|
/* 0223DBB8 */ _t118 = cpu->r[30] + 0x00000134u;
|
|
/* 0223DBB8 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[10]);
|
|
/* 0223DBBC */ goto L_0223DC40;
|
|
L_0223DBC0: ; // 0x223dbc0
|
|
/* 0223DBC0 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 0223DBC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223DBC4 */ _t119 = cpu->r[30] + 0x000002A4u;
|
|
/* 0223DBC4 */ rbrew_write32(cpu->mem, _t119, cpu->r[9]);
|
|
/* 0223DBC8 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DBC8 */ _t121 = _t120 & 0x00000001u;
|
|
/* 0223DBC8 */ if (_t121) goto L_0223DBCC; else goto L_0223DBD8;
|
|
L_0223DBCC: ; // 0x223dbcc
|
|
/* 0223DBCC */ _t122 = cpu->r[30] + 0x000002A8u;
|
|
/* 0223DBCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0223DBD0 */ _t123 = cpu->r[30] + 0x00000134u;
|
|
/* 0223DBD0 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[10]);
|
|
/* 0223DBD4 */ goto L_0223DC40;
|
|
L_0223DBD8: ; // 0x223dbd8
|
|
/* 0223DBD8 */ _t124 = cpu->r[30] + 0x000002ACu;
|
|
/* 0223DBD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0223DBDC */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DBE0 */ cpu->r[5] = cpu->r[5] - cpu->r[9];
|
|
/* 0223DBE4 */ Gambit_fn_0223BD10(cpu);
|
|
/* 0223DBE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DBEC */ cpu->f[10] = cpu->f[1];
|
|
/* 0223DBF0 */ Gambit_fn_0223D8A8(cpu);
|
|
/* 0223DBF4 */ cpu->r[10] = 0x10050000u;
|
|
/* 0223DBF8 */ _t125 = cpu->r[30] + 0x000002B0u;
|
|
/* 0223DBF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0223DBFC */ cpu->r[6] = 0x43300000u;
|
|
/* 0223DC00 */ _t126 = cpu->r[10] + 0x00002EC0u;
|
|
/* 0223DC00 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 0223DC04 */ cpu->r[0] = cpu->r[5] ^ 0x80000000u;
|
|
/* 0223DC08 */ _t127 = cpu->r[1] + 0x00000018u;
|
|
/* 0223DC08 */ rbrew_write32(cpu->mem, _t127, cpu->r[6]);
|
|
/* 0223DC0C */ cpu->r[10] = cpu->r[9] ^ 0x80000000u;
|
|
/* 0223DC10 */ _t128 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223DC10 */ rbrew_write32(cpu->mem, _t128, cpu->r[0]);
|
|
/* 0223DC14 */ _t129 = cpu->r[1] + 0x00000018u;
|
|
/* 0223DC14 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 0223DC18 */ _t130 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223DC18 */ rbrew_write32(cpu->mem, _t130, cpu->r[10]);
|
|
/* 0223DC1C */ _t131 = cpu->r[1] + 0x00000018u;
|
|
/* 0223DC1C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t131);
|
|
/* 0223DC20 */ cpu->f[7] = cpu->f[13] - cpu->f[12];
|
|
/* 0223DC24 */ cpu->f[9] = cpu->f[0] - cpu->f[12];
|
|
/* 0223DC28 */ cpu->f[11] = (double)(float)cpu->f[7];
|
|
/* 0223DC2C */ cpu->f[8] = (double)(float)cpu->f[9];
|
|
/* 0223DC30 */ cpu->f[9] = cpu->f[1] - cpu->f[10];
|
|
/* 0223DC34 */ cpu->f[11] = cpu->f[11] / cpu->f[8];
|
|
/* 0223DC38 */ cpu->f[10] = fma(cpu->f[9], cpu->f[11], cpu->f[10]);
|
|
/* 0223DC3C */ _t132 = cpu->r[30] + 0x00000134u;
|
|
/* 0223DC3C */ rbrew_write_f32(cpu->mem, _t132, cpu->f[10]);
|
|
L_0223DC40: ; // 0x223dc40
|
|
/* 0223DC40 */ _t133 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DC40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0223DC44 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0223DC48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 0223DC4C */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DC4C */ _t135 = _t134 & 0x00000001u;
|
|
/* 0223DC4C */ if (_t135) goto L_0223DDF0; else goto L_0223DC50;
|
|
L_0223DC50: ; // 0x223dc50
|
|
/* 0223DC50 */ _t136 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DC50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0223DC54 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223DC58 */ _t137 = rbrew_rlwinm(cpu->r[11], 0x0000000Cu, 0x00000012u, 0x00000013u);
|
|
/* 0223DC58 */ _t138 = cpu->r[7] & 0xFFFFCFFFu;
|
|
/* 0223DC58 */ cpu->r[7] = _t138 | _t137;
|
|
/* 0223DC5C */ cpu->r[28] = 0x101D0000u;
|
|
/* 0223DC60 */ _t139 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DC60 */ rbrew_write32(cpu->mem, _t139, cpu->r[7]);
|
|
/* 0223DC64 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223DC68 */ _t140 = cpu->r[10] + 0xFFFFE5F8u;
|
|
/* 0223DC68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0223DC6C */ cpu->r[9] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0223DC70 */ cpu->r[28] = cpu->r[28] + 0x00004F95u;
|
|
/* 0223DC74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223DC78 */ cpu->r[31] = cpu->r[8] - cpu->r[9];
|
|
/* 0223DC7C */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DC7C */ _t142 = _t141 & 0x00000001u;
|
|
/* 0223DC7C */ if (_t142) goto L_0223DC80; else goto L_0223DCA0;
|
|
L_0223DC80: ; // 0x223dc80
|
|
/* 0223DC80 */ cpu->r[10] = 0x00000001u;
|
|
/* 0223DC84 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0223DC88 */ cpu->r[3] = cpu->r[28];
|
|
/* 0223DC8C */ cpu->r[8] = 0x101D0000u;
|
|
/* 0223DC90 */ cpu->r[4] = cpu->r[4] + 0x00005554u;
|
|
/* 0223DC94 */ cpu->r[5] = 0x00000016u;
|
|
/* 0223DC98 */ _t143 = cpu->r[8] + 0xFFFFE5F8u;
|
|
/* 0223DC98 */ rbrew_write32(cpu->mem, _t143, cpu->r[10]);
|
|
/* 0223DC9C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0223DCA0: ; // 0x223dca0
|
|
/* 0223DCA0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0223DCA4 */ _t144 = cpu->r[8] + 0xFFFFE5F4u;
|
|
/* 0223DCA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0223DCA4 */ cpu->r[8] = _t144;
|
|
/* 0223DCA8 */ cpu->r[27] = 0x101D0000u;
|
|
/* 0223DCAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223DCB0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223DCB4 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DCB4 */ _t146 = _t145 & 0x00000001u;
|
|
/* 0223DCB4 */ if (_t146) goto L_0223DCB8; else goto L_0223DCC4;
|
|
L_0223DCB8: ; // 0x223dcb8
|
|
/* 0223DCB8 */ _t147 = cpu->r[27] + 0x00000000u;
|
|
/* 0223DCB8 */ rbrew_write32(cpu->mem, _t147, cpu->r[29]);
|
|
/* 0223DCBC */ cpu->r[0] = 0x00000001u;
|
|
/* 0223DCC0 */ _t148 = cpu->r[8] + 0x00000000u;
|
|
/* 0223DCC0 */ rbrew_write32(cpu->mem, _t148, cpu->r[0]);
|
|
L_0223DCC4: ; // 0x223dcc4
|
|
/* 0223DCC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0223DCC8 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DCC8 */ _t150 = _t149 & 0x00000001u;
|
|
/* 0223DCC8 */ if (_t150) goto L_0223DD00; else goto L_0223DCCC;
|
|
L_0223DCCC: ; // 0x223dccc
|
|
/* 0223DCCC */ cpu->r[11] = 0x10050000u;
|
|
/* 0223DCD0 */ _t151 = cpu->r[30] + 0x00000030u;
|
|
/* 0223DCD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0223DCD4 */ cpu->r[11] = cpu->r[11] + 0x00002D6Cu;
|
|
/* 0223DCD8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0223DCDC */ _t152 = cpu->r[1] + 0x00000024u;
|
|
/* 0223DCDC */ rbrew_write32(cpu->mem, _t152, cpu->r[11]);
|
|
/* 0223DCE0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0223DCE4 */ _t153 = cpu->r[1] + 0x00000020u;
|
|
/* 0223DCE4 */ rbrew_write32(cpu->mem, _t153, cpu->r[7]);
|
|
/* 0223DCE8 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0223DCEC */ _t154 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DCEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0223DCF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223DCF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223DCF4 */ _t155 = cpu->r[30] + 0x00000128u;
|
|
/* 0223DCF4 */ rbrew_write32(cpu->mem, _t155, cpu->r[31]);
|
|
/* 0223DCF8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DCF8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0223DCF8 */ if (_t157) goto L_0223DDD0; else goto L_0223DCFC;
|
|
L_0223DCFC: ; // 0x223dcfc
|
|
/* 0223DCFC */ goto L_0223DD80;
|
|
L_0223DD00: ; // 0x223dd00
|
|
/* 0223DD00 */ _t158 = cpu->r[27] + 0x00000000u;
|
|
/* 0223DD00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0223DD04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0223DD08 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DD08 */ _t160 = _t159 & 0x00000001u;
|
|
/* 0223DD08 */ if (_t160) goto L_0223DD0C; else goto L_0223DD4C;
|
|
L_0223DD0C: ; // 0x223dd0c
|
|
/* 0223DD0C */ Gambit_fn_0282A450(cpu);
|
|
/* 0223DD10 */ cpu->r[26] = cpu->r[3];
|
|
/* 0223DD14 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0223DD18 */ _t161 = cpu->r[27] + 0x00000000u;
|
|
/* 0223DD18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0223DD1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0223DD20 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DD20 */ _t163 = _t162 & 0x00000001u;
|
|
/* 0223DD20 */ if (_t163) goto L_0223DD24; else goto L_0223DD40;
|
|
L_0223DD24: ; // 0x223dd24
|
|
/* 0223DD24 */ cpu->r[29] = 0x101D0000u;
|
|
/* 0223DD28 */ cpu->r[4] = cpu->r[28];
|
|
/* 0223DD2C */ cpu->r[29] = cpu->r[29] + 0xFFFFFFA0u;
|
|
/* 0223DD30 */ cpu->r[5] = 0x00000003u;
|
|
/* 0223DD34 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223DD38 */ Gambit_fn_0282A374(cpu);
|
|
/* 0223DD3C */ _t164 = cpu->r[27] + 0x00000000u;
|
|
/* 0223DD3C */ rbrew_write32(cpu->mem, _t164, cpu->r[29]);
|
|
L_0223DD40: ; // 0x223dd40
|
|
/* 0223DD40 */ cpu->r[3] = cpu->r[26];
|
|
/* 0223DD44 */ Gambit_fn_02837030(cpu);
|
|
/* 0223DD48 */ _t165 = cpu->r[27] + 0x00000000u;
|
|
/* 0223DD48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t165);
|
|
L_0223DD4C: ; // 0x223dd4c
|
|
/* 0223DD4C */ cpu->r[11] = 0x10050000u;
|
|
/* 0223DD50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223DD54 */ _t166 = cpu->r[30] + 0x00000030u;
|
|
/* 0223DD54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0223DD58 */ cpu->r[11] = cpu->r[11] + 0x00002D6Cu;
|
|
/* 0223DD5C */ _t167 = cpu->r[9] + cpu->r[8];
|
|
/* 0223DD5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0223DD60 */ _t168 = cpu->r[1] + 0x00000024u;
|
|
/* 0223DD60 */ rbrew_write32(cpu->mem, _t168, cpu->r[11]);
|
|
/* 0223DD64 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0223DD68 */ _t169 = cpu->r[1] + 0x00000020u;
|
|
/* 0223DD68 */ rbrew_write32(cpu->mem, _t169, cpu->r[7]);
|
|
/* 0223DD6C */ Gambit_fn_027B70F0(cpu);
|
|
/* 0223DD70 */ _t170 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DD70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0223DD74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223DD74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223DD78 */ _t171 = cpu->r[30] + 0x00000128u;
|
|
/* 0223DD78 */ rbrew_write32(cpu->mem, _t171, cpu->r[31]);
|
|
/* 0223DD7C */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DD7C */ _t173 = _t172 & 0x00000001u;
|
|
/* 0223DD7C */ if (_t173) goto L_0223DDD0; else goto L_0223DD80;
|
|
L_0223DD80: ; // 0x223dd80
|
|
/* 0223DD80 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DD84 */ Gambit_fn_0223BD34(cpu);
|
|
/* 0223DD88 */ _t174 = cpu->r[30] + 0x00000004u;
|
|
/* 0223DD88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0223DD8C */ _t175 = cpu->r[30] + 0x000000E4u;
|
|
/* 0223DD8C */ rbrew_write_f32(cpu->mem, _t175, cpu->f[1]);
|
|
/* 0223DD90 */ _t176 = cpu->r[30] + 0x000002D0u;
|
|
/* 0223DD90 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[1]);
|
|
/* 0223DD94 */ _t177 = cpu->r[7] + 0x0000025Cu;
|
|
/* 0223DD94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0223DD98 */ cpu->ctr = cpu->r[0];
|
|
/* 0223DD9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DDA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223DDA4 */ _t178 = cpu->r[3] + 0x00000004u;
|
|
/* 0223DDA4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0223DDA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 0223DDAC */ _t179 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DDAC */ _t180 = _t179 & 0x00000001u;
|
|
/* 0223DDAC */ if (_t180) goto L_0223DDF0; else goto L_0223DDB0;
|
|
L_0223DDB0: ; // 0x223ddb0
|
|
/* 0223DDB0 */ _t181 = cpu->r[30] + 0x000002C4u;
|
|
/* 0223DDB0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t181);
|
|
/* 0223DDB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DDB8 */ _t182 = cpu->r[30] + 0x000002C5u;
|
|
/* 0223DDB8 */ rbrew_write8(cpu->mem, _t182, (uint8_t)cpu->r[12]);
|
|
/* 0223DDBC */ Gambit_fn_0222C128(cpu);
|
|
/* 0223DDC0 */ _t183 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DDC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0223DDC4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223DDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223DDC8 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DDC8 */ _t185 = _t184 & 0x00000001u;
|
|
/* 0223DDC8 */ if (_t185) goto L_0223DE04; else goto L_0223DDCC;
|
|
L_0223DDCC: ; // 0x223ddcc
|
|
/* 0223DDCC */ goto L_0223DE7C;
|
|
L_0223DDD0: ; // 0x223ddd0
|
|
/* 0223DDD0 */ _t186 = cpu->r[30] + 0x000002C5u;
|
|
/* 0223DDD0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t186);
|
|
/* 0223DDD4 */ _t187 = cpu->r[30] + 0x000002C4u;
|
|
/* 0223DDD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t187);
|
|
/* 0223DDD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0223DDDC */ _t188 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DDDC */ _t189 = _t188 & 0x00000001u;
|
|
/* 0223DDDC */ if (_t189) goto L_0223DDE0; else goto L_0223DDF0;
|
|
L_0223DDE0: ; // 0x223dde0
|
|
/* 0223DDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x000000FEu);
|
|
/* 0223DDE4 */ _t190 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DDE4 */ _t191 = _t190 & 0x00000001u;
|
|
/* 0223DDE4 */ if (_t191) goto L_0223DDF0; else goto L_0223DDE8;
|
|
L_0223DDE8: ; // 0x223dde8
|
|
/* 0223DDE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DDEC */ Gambit_fn_02790488(cpu);
|
|
L_0223DDF0: ; // 0x223ddf0
|
|
/* 0223DDF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DDF4 */ Gambit_fn_0222C128(cpu);
|
|
/* 0223DDF8 */ _t192 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223DDF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0223DDFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223DDFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223DE00 */ _t193 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DE00 */ _t194 = _t193 & 0x00000001u;
|
|
/* 0223DE00 */ if (_t194) goto L_0223DE04; else goto L_0223DE7C;
|
|
L_0223DE04: ; // 0x223de04
|
|
/* 0223DE04 */ _t195 = cpu->r[30] + 0x000002B8u;
|
|
/* 0223DE04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 0223DE08 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0223DE0C */ _t196 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DE0C */ _t197 = _t196 & 0x00000001u;
|
|
/* 0223DE0C */ if (_t197) goto L_0223DE7C; else goto L_0223DE10;
|
|
L_0223DE10: ; // 0x223de10
|
|
/* 0223DE10 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DE14 */ Gambit_fn_0223BD34(cpu);
|
|
/* 0223DE18 */ cpu->f[0] = cpu->f[1];
|
|
/* 0223DE1C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DE20 */ Gambit_fn_0223D8CC(cpu);
|
|
/* 0223DE24 */ cpu->f[7] = cpu->f[0] / cpu->f[1];
|
|
/* 0223DE28 */ _t198 = cpu->r[30] + 0x000002D0u;
|
|
/* 0223DE28 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0223DE2C */ cpu->f[12] = cpu->f[8] - cpu->f[7];
|
|
/* 0223DE30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0223DE34 */ _t199 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DE34 */ _t200 = _t199 & 0x00000001u;
|
|
/* 0223DE34 */ if (_t200) goto L_0223DE38; else goto L_0223DE3C;
|
|
L_0223DE38: ; // 0x223de38
|
|
/* 0223DE38 */ cpu->f[12] = cpu->f[31];
|
|
L_0223DE3C: ; // 0x223de3c
|
|
/* 0223DE3C */ cpu->r[5] = 0x10050000u;
|
|
/* 0223DE40 */ _t201 = cpu->r[30] + 0x000000C8u;
|
|
/* 0223DE40 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 0223DE44 */ _t202 = cpu->r[5] + 0x00002EC8u;
|
|
/* 0223DE44 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0223DE48 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0223DE4C */ _t203 = cpu->r[30] + 0x000002D0u;
|
|
/* 0223DE4C */ rbrew_write_f32(cpu->mem, _t203, cpu->f[12]);
|
|
/* 0223DE50 */ _t204 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DE50 */ _t205 = _t204 & 0x00000001u;
|
|
/* 0223DE50 */ if (_t205) goto L_0223DE60; else goto L_0223DE54;
|
|
L_0223DE54: ; // 0x223de54
|
|
/* 0223DE54 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DE58 */ _t206 = cpu->r[30] + 0x000000C8u;
|
|
/* 0223DE58 */ rbrew_write_f32(cpu->mem, _t206, cpu->f[31]);
|
|
/* 0223DE5C */ Gambit_fn_02790488(cpu);
|
|
L_0223DE60: ; // 0x223de60
|
|
/* 0223DE60 */ _t207 = cpu->r[30] + 0x000002CCu;
|
|
/* 0223DE60 */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t207);
|
|
/* 0223DE64 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0223DE68 */ /* nop */
|
|
/* 0223DE6C */ _t208 = cpu->r[30] + 0x000002CCu;
|
|
/* 0223DE6C */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[12]);
|
|
/* 0223DE70 */ _t209 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DE70 */ _t210 = _t209 & 0x00000001u;
|
|
/* 0223DE70 */ if (_t210) goto L_0223DE7C; else goto L_0223DE74;
|
|
L_0223DE74: ; // 0x223de74
|
|
/* 0223DE74 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DE78 */ Gambit_fn_02790488(cpu);
|
|
L_0223DE7C: ; // 0x223de7c
|
|
/* 0223DE7C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223DE80 */ Gambit_fn_0222DADC(cpu);
|
|
/* 0223DE84 */ /* nop */
|
|
/* 0223DE88 */ _t211 = cpu->r[1] + 0x000000B8u;
|
|
/* 0223DE88 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 0223DE8C */ _t212 = cpu->r[1] + 0x000000B0u;
|
|
/* 0223DE8C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t212);
|
|
/* 0223DE90 */ _t213 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DE90 */ _t214 = _t213 & 0x00000001u;
|
|
/* 0223DE90 */ if (_t214) goto L_0223DE94; // else: addr-0 trap, fall-through
|
|
L_0223DE94: ; // 0x223de94
|
|
/* 0223DE94 */ _t215 = cpu->r[1] + 0x000000C4u;
|
|
/* 0223DE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t215);
|
|
/* 0223DE98 */ cpu->lr = cpu->r[0];
|
|
/* 0223DE9C */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 0223DEA0 */ return;
|
|
}
|
|
|
|
// fn_0223DEA4 @ 0x223dea4
|
|
void Gambit_fn_0223DEA4(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;
|
|
|
|
L_0223DEA4: ; // 0x223dea4
|
|
/* 0223DEA4 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0223DEA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223DEA4 */ cpu->r[1] = _t0;
|
|
/* 0223DEA8 */ /* nop */
|
|
/* 0223DEAC */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0223DEAC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223DEB0 */ /* nop */
|
|
/* 0223DEB4 */ cpu->r[0] = cpu->lr;
|
|
/* 0223DEB8 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 0223DEB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223DEBC */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 0223DEBC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0223DEC0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0223DEC4 */ _t4 = cpu->r[29] + 0x000002C8u;
|
|
/* 0223DEC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223DEC8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223DEC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223DECC */ cpu->f[31] = cpu->f[1];
|
|
/* 0223DED0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DED0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223DED0 */ if (_t6) goto L_0223DF00; else goto L_0223DED4;
|
|
L_0223DED4: ; // 0x223ded4
|
|
/* 0223DED4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0223DED8 */ _t7 = cpu->r[29] + 0x000002C6u;
|
|
/* 0223DED8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0223DEDC */ /* nop */
|
|
/* 0223DEE0 */ _t8 = cpu->r[1] + 0x00000058u;
|
|
/* 0223DEE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0223DEE4 */ _t9 = cpu->r[1] + 0x00000050u;
|
|
/* 0223DEE4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t9);
|
|
/* 0223DEE8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223DEEC */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DEEC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223DEEC */ if (_t11) goto L_0223DEF0; // else: addr-0 trap, fall-through
|
|
L_0223DEF0: ; // 0x223def0
|
|
/* 0223DEF0 */ _t12 = cpu->r[1] + 0x00000064u;
|
|
/* 0223DEF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223DEF4 */ cpu->lr = cpu->r[0];
|
|
/* 0223DEF8 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0223DEFC */ return;
|
|
L_0223DF00: ; // 0x223df00
|
|
/* 0223DF00 */ _t13 = cpu->r[29] + 0x000002C6u;
|
|
/* 0223DF00 */ cpu->r[5] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0223DF04 */ /* nop */
|
|
/* 0223DF08 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223DF08 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0223DF08 */ if (_t15) goto L_0223DF0C; else goto L_0223DF38;
|
|
L_0223DF0C: ; // 0x223df0c
|
|
/* 0223DF0C */ cpu->r[12] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 0223DF10 */ _t16 = cpu->r[29] + 0x000002C6u;
|
|
/* 0223DF10 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]);
|
|
/* 0223DF14 */ /* nop */
|
|
/* 0223DF18 */ _t17 = cpu->r[1] + 0x00000058u;
|
|
/* 0223DF18 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0223DF1C */ _t18 = cpu->r[1] + 0x00000050u;
|
|
/* 0223DF1C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t18);
|
|
/* 0223DF20 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223DF24 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DF24 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223DF24 */ if (_t20) goto L_0223DF28; // else: addr-0 trap, fall-through
|
|
L_0223DF28: ; // 0x223df28
|
|
/* 0223DF28 */ _t21 = cpu->r[1] + 0x00000064u;
|
|
/* 0223DF28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223DF2C */ cpu->lr = cpu->r[0];
|
|
/* 0223DF30 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0223DF34 */ return;
|
|
L_0223DF38: ; // 0x223df38
|
|
/* 0223DF38 */ cpu->r[27] = 0x101C0000u;
|
|
/* 0223DF3C */ _t22 = cpu->r[27] + 0x00005BA0u;
|
|
/* 0223DF3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0223DF3C */ cpu->r[27] = _t22;
|
|
/* 0223DF40 */ _t23 = cpu->r[29] + 0x00000058u;
|
|
/* 0223DF40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0223DF44 */ _t24 = cpu->r[11] + 0x00000078u;
|
|
/* 0223DF44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0223DF48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 0223DF4C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223DF50 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DF50 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0223DF50 */ if (_t26) goto L_0223DF54; else goto L_0223DF60;
|
|
L_0223DF54: ; // 0x223df54
|
|
/* 0223DF54 */ _t27 = cpu->r[11] + 0x00000080u;
|
|
/* 0223DF54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0223DF58 */ cpu->r[6] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223DF5C */ _t28 = cpu->r[6] + cpu->r[8];
|
|
/* 0223DF5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
L_0223DF60: ; // 0x223df60
|
|
/* 0223DF60 */ Gambit_fn_025E068C(cpu);
|
|
/* 0223DF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223DF68 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223DF68 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0223DF68 */ if (_t30) goto L_0223DF6C; else goto L_0223DF90;
|
|
L_0223DF6C: ; // 0x223df6c
|
|
/* 0223DF6C */ /* nop */
|
|
/* 0223DF70 */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 0223DF70 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0223DF74 */ _t32 = cpu->r[1] + 0x00000050u;
|
|
/* 0223DF74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 0223DF78 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223DF7C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DF7C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0223DF7C */ if (_t34) goto L_0223DF80; // else: addr-0 trap, fall-through
|
|
L_0223DF80: ; // 0x223df80
|
|
/* 0223DF80 */ _t35 = cpu->r[1] + 0x00000064u;
|
|
/* 0223DF80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0223DF84 */ cpu->lr = cpu->r[0];
|
|
/* 0223DF88 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0223DF8C */ return;
|
|
L_0223DF90: ; // 0x223df90
|
|
/* 0223DF90 */ _t36 = cpu->r[29] + 0x00000140u;
|
|
/* 0223DF90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0223DF94 */ cpu->r[22] = 0x00000000u;
|
|
/* 0223DF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[7]);
|
|
/* 0223DF9C */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223DF9C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0223DF9C */ if (_t38) goto L_0223DFA0; else goto L_0223E074;
|
|
L_0223DFA0: ; // 0x223dfa0
|
|
/* 0223DFA0 */ cpu->r[26] = cpu->r[29] + 0x00000264u;
|
|
/* 0223DFA4 */ cpu->r[25] = cpu->r[29] + 0x00000144u;
|
|
/* 0223DFA8 */ cpu->r[24] = cpu->r[29] + 0x000001A4u;
|
|
/* 0223DFAC */ cpu->r[23] = 0x00000003u;
|
|
/* 0223DFB0 */ cpu->r[21] = 0x101C0000u;
|
|
/* 0223DFB4 */ cpu->r[20] = cpu->r[1] + 0x00000014u;
|
|
/* 0223DFB8 */ cpu->r[31] = 0x00000000u;
|
|
L_0223DFBC: ; // 0x223dfbc
|
|
/* 0223DFBC */ _t39 = cpu->r[21] + 0x000060F4u;
|
|
/* 0223DFBC */ cpu->r[18] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0223DFC0 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 0223DFC0 */ rbrew_write32(cpu->mem, _t40, cpu->r[23]);
|
|
/* 0223DFC4 */ _t41 = cpu->r[20] + 0x00000000u;
|
|
/* 0223DFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223DFC8 */ _t42 = cpu->r[24] + cpu->r[22];
|
|
/* 0223DFC8 */ cpu->r[19] = rbrew_read8(cpu->mem, _t42);
|
|
/* 0223DFCC */ cpu->r[3] = cpu->r[18];
|
|
/* 0223DFD0 */ cpu->r[28] = cpu->r[26] + cpu->r[31];
|
|
/* 0223DFD4 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 0223DFD4 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0223DFD8 */ cpu->r[4] = cpu->r[19];
|
|
/* 0223DFDC */ cpu->r[30] = cpu->r[25] + cpu->r[31];
|
|
/* 0223DFE0 */ Gambit_fn_023F600C(cpu);
|
|
/* 0223DFE4 */ cpu->r[3] = cpu->r[18];
|
|
/* 0223DFE8 */ cpu->r[4] = cpu->r[19];
|
|
/* 0223DFEC */ cpu->r[5] = cpu->r[28];
|
|
/* 0223DFF0 */ cpu->r[6] = cpu->r[30];
|
|
/* 0223DFF4 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0223DFF8 */ Gambit_fn_023F4B7C(cpu);
|
|
/* 0223DFFC */ cpu->r[28] = cpu->r[3];
|
|
/* 0223E000 */ cpu->r[30] = 0x00000000u;
|
|
/* 0223E004 */ cpu->r[18] = 0x00000006u;
|
|
/* 0223E008 */ cpu->r[19] = 0x00000001u;
|
|
L_0223E00C: ; // 0x223e00c
|
|
/* 0223E00C */ /* nop */
|
|
/* 0223E010 */ cpu->r[0] = cpu->r[28] & cpu->r[0];
|
|
/* 0223E010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223E014 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E014 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0223E014 */ if (_t45) goto L_0223E054; else goto L_0223E018;
|
|
L_0223E018: ; // 0x223e018
|
|
/* 0223E018 */ _t46 = cpu->r[29] + 0x00000058u;
|
|
/* 0223E018 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0223E01C */ cpu->r[9] = cpu->r[29] + 0x00000174u;
|
|
/* 0223E020 */ _t47 = cpu->r[24] + cpu->r[22];
|
|
/* 0223E020 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 0223E024 */ cpu->r[7] = cpu->r[9] + cpu->r[31];
|
|
/* 0223E028 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223E02C */ _t48 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0223E02C */ cpu->r[6] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0223E030 */ cpu->f[1] = cpu->f[31];
|
|
/* 0223E034 */ cpu->r[9] = cpu->r[29] + 0x000002BCu;
|
|
/* 0223E038 */ _t49 = cpu->r[29] + 0x00000054u;
|
|
/* 0223E038 */ cpu->r[4] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0223E03C */ cpu->r[10] = cpu->r[30];
|
|
/* 0223E040 */ cpu->r[8] = cpu->r[25] + cpu->r[31];
|
|
/* 0223E044 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E044 */ rbrew_write32(cpu->mem, _t50, cpu->r[6]);
|
|
/* 0223E048 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E04C */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 0223E04C */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0223E050 */ Gambit_fn_0222D5F8(cpu);
|
|
L_0223E054: ; // 0x223e054
|
|
/* 0223E054 */ cpu->r[18] = cpu->r[18] + 0xFFFFFFFFu;
|
|
/* 0223E054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 0223E058 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0223E05C */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E05C */ _t53 = _t52 & 0x00000001u;
|
|
/* 0223E05C */ if (_t53) goto L_0223E060; else goto L_0223E00C;
|
|
L_0223E060: ; // 0x223e060
|
|
/* 0223E060 */ _t54 = cpu->r[29] + 0x00000140u;
|
|
/* 0223E060 */ cpu->r[9] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223E064 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 0223E068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[9]);
|
|
/* 0223E06C */ cpu->r[31] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0223E070 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E070 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0223E070 */ if (_t56) goto L_0223DFBC; else goto L_0223E074;
|
|
L_0223E074: ; // 0x223e074
|
|
/* 0223E074 */ _t57 = cpu->r[27] + 0x00000000u;
|
|
/* 0223E074 */ cpu->r[10] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0223E078 */ _t58 = cpu->r[10] + 0x00000044u;
|
|
/* 0223E078 */ cpu->r[11] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0223E07C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223E080 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223E084 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E084 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0223E084 */ if (_t60) goto L_0223E08C; else goto L_0223E088;
|
|
L_0223E088: ; // 0x223e088
|
|
/* 0223E088 */ cpu->r[5] = 0x00000001u;
|
|
L_0223E08C: ; // 0x223e08c
|
|
/* 0223E08C */ cpu->r[12] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 0223E090 */ _t61 = cpu->r[29] + 0x000002C6u;
|
|
/* 0223E090 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[12]);
|
|
/* 0223E094 */ /* nop */
|
|
/* 0223E098 */ _t62 = cpu->r[1] + 0x00000058u;
|
|
/* 0223E098 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0223E09C */ _t63 = cpu->r[1] + 0x00000050u;
|
|
/* 0223E09C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 0223E0A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223E0A4 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E0A4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0223E0A4 */ if (_t65) goto L_0223E0A8; // else: addr-0 trap, fall-through
|
|
L_0223E0A8: ; // 0x223e0a8
|
|
/* 0223E0A8 */ _t66 = cpu->r[1] + 0x00000064u;
|
|
/* 0223E0A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0223E0AC */ cpu->lr = cpu->r[0];
|
|
/* 0223E0B0 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0223E0B4 */ return;
|
|
}
|
|
|
|
// fn_0223E0B8 @ 0x223e0b8
|
|
void Gambit_fn_0223E0B8(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;
|
|
|
|
L_0223E0B8: ; // 0x223e0b8
|
|
/* 0223E0B8 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 0223E0B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E0B8 */ cpu->r[1] = _t0;
|
|
/* 0223E0BC */ /* nop */
|
|
/* 0223E0C0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223E0C4 */ _t1 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E0C4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223E0C8 */ /* nop */
|
|
/* 0223E0CC */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E0CC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223E0D0 */ _t3 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E0D0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0223E0D4 */ _t4 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E0D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223E0D8 */ /* nop */
|
|
/* 0223E0DC */ _t5 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E0DC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0223E0E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0223E0E4 */ _t6 = cpu->r[30] + 0x000002C7u;
|
|
/* 0223E0E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0223E0E8 */ /* nop */
|
|
/* 0223E0EC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E0EC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223E0EC */ if (_t8) goto L_0223E134; else goto L_0223E0F0;
|
|
L_0223E0F0: ; // 0x223e0f0
|
|
/* 0223E0F0 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E0F0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0223E0F0 */ if (_t10) goto L_0223E1D4; else goto L_0223E0F4;
|
|
L_0223E0F4: ; // 0x223e0f4
|
|
/* 0223E0F4 */ cpu->r[8] = 0x00000001u;
|
|
/* 0223E0F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E0FC */ _t11 = cpu->r[30] + 0x000002C7u;
|
|
/* 0223E0FC */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[8]);
|
|
/* 0223E100 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0223E104 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E108 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E10C */ /* nop */
|
|
/* 0223E110 */ _t12 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E110 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0223E114 */ _t13 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E114 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0223E118 */ _t14 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E118 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 0223E11C */ _t15 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E11C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 0223E120 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E120 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0223E120 */ if (_t17) goto L_0223E124; // else: addr-0 trap, fall-through
|
|
L_0223E124: ; // 0x223e124
|
|
/* 0223E124 */ _t18 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223E128 */ cpu->lr = cpu->r[0];
|
|
/* 0223E12C */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0223E130 */ return;
|
|
L_0223E134: ; // 0x223e134
|
|
/* 0223E134 */ _t19 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E134 */ cpu->r[6] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0223E138 */ /* nop */
|
|
/* 0223E13C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E13C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0223E13C */ if (_t21) goto L_0223E184; else goto L_0223E140;
|
|
L_0223E140: ; // 0x223e140
|
|
/* 0223E140 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E140 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223E140 */ if (_t23) goto L_0223E1D4; else goto L_0223E144;
|
|
L_0223E144: ; // 0x223e144
|
|
/* 0223E144 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223E148 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E14C */ _t24 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E14C */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[0]);
|
|
/* 0223E150 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0223E154 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E158 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E15C */ /* nop */
|
|
/* 0223E160 */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E160 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0223E164 */ _t26 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E164 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0223E168 */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E168 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 0223E16C */ _t28 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E16C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 0223E170 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E170 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0223E170 */ if (_t30) goto L_0223E174; // else: addr-0 trap, fall-through
|
|
L_0223E174: ; // 0x223e174
|
|
/* 0223E174 */ _t31 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0223E178 */ cpu->lr = cpu->r[0];
|
|
/* 0223E17C */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0223E180 */ return;
|
|
L_0223E184: ; // 0x223e184
|
|
/* 0223E184 */ _t32 = cpu->r[30] + 0x000002C9u;
|
|
/* 0223E184 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32);
|
|
/* 0223E188 */ /* nop */
|
|
/* 0223E18C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E18C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0223E18C */ if (_t34) goto L_0223E20C; else goto L_0223E190;
|
|
L_0223E190: ; // 0x223e190
|
|
/* 0223E190 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E190 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0223E190 */ if (_t36) goto L_0223E1D4; else goto L_0223E194;
|
|
L_0223E194: ; // 0x223e194
|
|
/* 0223E194 */ cpu->r[5] = 0x00000001u;
|
|
/* 0223E198 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E19C */ _t37 = cpu->r[30] + 0x000002C9u;
|
|
/* 0223E19C */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[5]);
|
|
/* 0223E1A0 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0223E1A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E1A8 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E1AC */ /* nop */
|
|
/* 0223E1B0 */ _t38 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E1B0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0223E1B4 */ _t39 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E1B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0223E1B8 */ _t40 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E1B8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 0223E1BC */ _t41 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E1BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0223E1C0 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E1C0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0223E1C0 */ if (_t43) goto L_0223E1C4; // else: addr-0 trap, fall-through
|
|
L_0223E1C4: ; // 0x223e1c4
|
|
/* 0223E1C4 */ _t44 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E1C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0223E1C8 */ cpu->lr = cpu->r[0];
|
|
/* 0223E1CC */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0223E1D0 */ return;
|
|
L_0223E1D4: ; // 0x223e1d4
|
|
/* 0223E1D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E1D8 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E1DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E1E0 */ Gambit_fn_02790488(cpu);
|
|
/* 0223E1E4 */ /* nop */
|
|
/* 0223E1E8 */ _t45 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E1E8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0223E1EC */ _t46 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E1EC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0223E1F0 */ _t47 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E1F0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t47);
|
|
/* 0223E1F4 */ _t48 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E1F4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 0223E1F8 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E1F8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0223E1F8 */ if (_t50) goto L_0223E1FC; // else: addr-0 trap, fall-through
|
|
L_0223E1FC: ; // 0x223e1fc
|
|
/* 0223E1FC */ _t51 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E1FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0223E200 */ cpu->lr = cpu->r[0];
|
|
/* 0223E204 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0223E208 */ return;
|
|
L_0223E20C: ; // 0x223e20c
|
|
/* 0223E20C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E210 */ Gambit_fn_0222C57C(cpu);
|
|
/* 0223E214 */ _t52 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0223E214 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0223E218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0223E21C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E21C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0223E21C */ if (_t54) goto L_0223E258; else goto L_0223E220;
|
|
L_0223E220: ; // 0x223e220
|
|
/* 0223E220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0223E224 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E224 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0223E224 */ if (_t56) goto L_0223E258; else goto L_0223E228;
|
|
L_0223E228: ; // 0x223e228
|
|
/* 0223E228 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E22C */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E230 */ /* nop */
|
|
/* 0223E234 */ _t57 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E234 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0223E238 */ _t58 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E238 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0223E23C */ _t59 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E23C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 0223E240 */ _t60 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E240 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 0223E244 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E244 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0223E244 */ if (_t62) goto L_0223E248; // else: addr-0 trap, fall-through
|
|
L_0223E248: ; // 0x223e248
|
|
/* 0223E248 */ _t63 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0223E24C */ cpu->lr = cpu->r[0];
|
|
/* 0223E250 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0223E254 */ return;
|
|
L_0223E258: ; // 0x223e258
|
|
/* 0223E258 */ _t64 = cpu->r[30] + 0x00000004u;
|
|
/* 0223E258 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0223E25C */ _t65 = cpu->r[6] + 0x00000394u;
|
|
/* 0223E25C */ cpu->r[7] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0223E260 */ cpu->ctr = cpu->r[7];
|
|
/* 0223E264 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E26C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223E270 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E270 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0223E270 */ if (_t67) goto L_0223E33C; else goto L_0223E274;
|
|
L_0223E274: ; // 0x223e274
|
|
/* 0223E274 */ _t68 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E274 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0223E278 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0223E278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223E27C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E27C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0223E27C */ if (_t70) goto L_0223E280; else goto L_0223E3F4;
|
|
L_0223E280: ; // 0x223e280
|
|
/* 0223E280 */ _t71 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0223E280 */ cpu->r[0] = rbrew_read8(cpu->mem, _t71);
|
|
/* 0223E284 */ cpu->r[12] = 0x00000004u;
|
|
/* 0223E288 */ _t72 = cpu->r[30] + 0x00000140u;
|
|
/* 0223E288 */ cpu->r[10] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0223E28C */ cpu->ctr = cpu->r[12];
|
|
/* 0223E290 */ cpu->r[8] = 0x00000000u;
|
|
/* 0223E294 */ _t73 = cpu->r[30] + 0x00000230u;
|
|
/* 0223E294 */ rbrew_write32(cpu->mem, _t73, cpu->r[10]);
|
|
/* 0223E298 */ cpu->r[9] = cpu->r[30] + 0x00000234u;
|
|
/* 0223E29C */ cpu->r[11] = cpu->r[30] + 0x00000144u;
|
|
/* 0223E2A0 */ _t74 = cpu->r[30] + 0x0000022Cu;
|
|
/* 0223E2A0 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[0]);
|
|
L_0223E2A4: ; // 0x223e2a4
|
|
/* 0223E2A4 */ _t75 = cpu->r[11] + cpu->r[8];
|
|
/* 0223E2A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0223E2A8 */ cpu->r[12] = cpu->r[11] + cpu->r[8];
|
|
/* 0223E2AC */ _t76 = cpu->r[9] + cpu->r[8];
|
|
/* 0223E2AC */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 0223E2B0 */ _t77 = cpu->r[12] + 0x00000004u;
|
|
/* 0223E2B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0223E2B4 */ cpu->r[10] = cpu->r[9] + cpu->r[8];
|
|
/* 0223E2B8 */ _t78 = cpu->r[10] + 0x00000004u;
|
|
/* 0223E2B8 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[11]);
|
|
/* 0223E2BC */ _t79 = cpu->r[12] + 0x00000008u;
|
|
/* 0223E2BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0223E2C0 */ cpu->r[8] = cpu->r[8] + 0x0000000Cu;
|
|
/* 0223E2C4 */ _t80 = cpu->r[10] + 0x00000008u;
|
|
/* 0223E2C4 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[0]);
|
|
/* 0223E2C8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223E2C8 */ _t81 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223E2C8 */ _t82 = _t81 >> (0x00000002u & 31u);
|
|
/* 0223E2C8 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0223E2C8 */ if (_t83) goto L_0223E2A4; else goto L_0223E2CC;
|
|
L_0223E2CC: ; // 0x223e2cc
|
|
/* 0223E2CC */ cpu->r[11] = 0x00000004u;
|
|
/* 0223E2D0 */ cpu->r[10] = cpu->r[30] + 0x00000264u;
|
|
/* 0223E2D4 */ cpu->r[12] = cpu->r[30] + 0x00000174u;
|
|
/* 0223E2D8 */ cpu->ctr = cpu->r[11];
|
|
/* 0223E2DC */ cpu->r[6] = 0x00000000u;
|
|
L_0223E2E0: ; // 0x223e2e0
|
|
/* 0223E2E0 */ _t84 = cpu->r[12] + cpu->r[6];
|
|
/* 0223E2E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0223E2E4 */ cpu->r[7] = cpu->r[12] + cpu->r[6];
|
|
/* 0223E2E8 */ _t85 = cpu->r[10] + cpu->r[6];
|
|
/* 0223E2E8 */ rbrew_write32(cpu->mem, _t85, cpu->r[7]);
|
|
/* 0223E2EC */ _t86 = cpu->r[7] + 0x00000004u;
|
|
/* 0223E2EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0223E2F0 */ cpu->r[5] = cpu->r[10] + cpu->r[6];
|
|
/* 0223E2F4 */ _t87 = cpu->r[5] + 0x00000004u;
|
|
/* 0223E2F4 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[8]);
|
|
/* 0223E2F8 */ _t88 = cpu->r[7] + 0x00000008u;
|
|
/* 0223E2F8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0223E2FC */ cpu->r[6] = cpu->r[6] + 0x0000000Cu;
|
|
/* 0223E300 */ _t89 = cpu->r[5] + 0x00000008u;
|
|
/* 0223E300 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[9]);
|
|
/* 0223E304 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223E304 */ _t90 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223E304 */ _t91 = _t90 >> (0x00000002u & 31u);
|
|
/* 0223E304 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0223E304 */ if (_t92) goto L_0223E2E0; else goto L_0223E308;
|
|
L_0223E308: ; // 0x223e308
|
|
/* 0223E308 */ cpu->r[3] = cpu->r[30] + 0x00000294u;
|
|
/* 0223E30C */ cpu->r[4] = cpu->r[30] + 0x000001A4u;
|
|
/* 0223E310 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223E314 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
/* 0223E318 */ _t93 = cpu->r[30] + 0x000001ACu;
|
|
/* 0223E318 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0223E31C */ _t94 = cpu->r[30] + 0x000001A8u;
|
|
/* 0223E31C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0223E320 */ _t95 = cpu->r[30] + 0x0000029Cu;
|
|
/* 0223E320 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[0]);
|
|
/* 0223E324 */ _t96 = cpu->r[30] + 0x000001B0u;
|
|
/* 0223E324 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0223E328 */ _t97 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0223E32C */ _t98 = cpu->r[30] + 0x000002A0u;
|
|
/* 0223E32C */ rbrew_write_f32(cpu->mem, _t98, cpu->f[7]);
|
|
/* 0223E330 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0223E334 */ _t99 = cpu->r[30] + 0x00000298u;
|
|
/* 0223E334 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[13]);
|
|
/* 0223E338 */ goto L_0223E3F4;
|
|
L_0223E33C: ; // 0x223e33c
|
|
/* 0223E33C */ _t100 = cpu->r[30] + 0x000001B4u;
|
|
/* 0223E33C */ cpu->r[5] = rbrew_read8(cpu->mem, _t100);
|
|
/* 0223E340 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223E344 */ _t101 = cpu->r[30] + 0x000001B8u;
|
|
/* 0223E344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0223E348 */ cpu->ctr = cpu->r[4];
|
|
/* 0223E34C */ cpu->r[10] = 0x00000000u;
|
|
/* 0223E350 */ _t102 = cpu->r[30] + 0x00000140u;
|
|
/* 0223E350 */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 0223E354 */ cpu->r[11] = cpu->r[30] + 0x00000144u;
|
|
/* 0223E358 */ cpu->r[7] = cpu->r[30] + 0x000001BCu;
|
|
/* 0223E35C */ _t103 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0223E35C */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[5]);
|
|
L_0223E360: ; // 0x223e360
|
|
/* 0223E360 */ _t104 = cpu->r[7] + cpu->r[10];
|
|
/* 0223E360 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0223E364 */ cpu->r[4] = cpu->r[7] + cpu->r[10];
|
|
/* 0223E368 */ _t105 = cpu->r[11] + cpu->r[10];
|
|
/* 0223E368 */ rbrew_write32(cpu->mem, _t105, cpu->r[9]);
|
|
/* 0223E36C */ _t106 = cpu->r[4] + 0x00000004u;
|
|
/* 0223E36C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0223E370 */ cpu->r[9] = cpu->r[11] + cpu->r[10];
|
|
/* 0223E374 */ _t107 = cpu->r[9] + 0x00000004u;
|
|
/* 0223E374 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[10]);
|
|
/* 0223E378 */ _t108 = cpu->r[4] + 0x00000008u;
|
|
/* 0223E378 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0223E37C */ cpu->r[10] = cpu->r[10] + 0x0000000Cu;
|
|
/* 0223E380 */ _t109 = cpu->r[9] + 0x00000008u;
|
|
/* 0223E380 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[11]);
|
|
/* 0223E384 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223E384 */ _t110 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223E384 */ _t111 = _t110 >> (0x00000002u & 31u);
|
|
/* 0223E384 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0223E384 */ if (_t112) goto L_0223E360; else goto L_0223E388;
|
|
L_0223E388: ; // 0x223e388
|
|
/* 0223E388 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223E38C */ cpu->r[12] = cpu->r[30] + 0x00000174u;
|
|
/* 0223E390 */ cpu->r[8] = cpu->r[30] + 0x000001ECu;
|
|
/* 0223E394 */ cpu->ctr = cpu->r[0];
|
|
/* 0223E398 */ cpu->r[9] = 0x00000000u;
|
|
L_0223E39C: ; // 0x223e39c
|
|
/* 0223E39C */ _t113 = cpu->r[8] + cpu->r[9];
|
|
/* 0223E39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0223E3A0 */ cpu->r[7] = cpu->r[8] + cpu->r[9];
|
|
/* 0223E3A4 */ _t114 = cpu->r[12] + cpu->r[9];
|
|
/* 0223E3A4 */ rbrew_write32(cpu->mem, _t114, cpu->r[0]);
|
|
/* 0223E3A8 */ _t115 = cpu->r[7] + 0x00000004u;
|
|
/* 0223E3A8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0223E3AC */ cpu->r[6] = cpu->r[12] + cpu->r[9];
|
|
/* 0223E3B0 */ _t116 = cpu->r[6] + 0x00000004u;
|
|
/* 0223E3B0 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[6]);
|
|
/* 0223E3B4 */ _t117 = cpu->r[7] + 0x00000008u;
|
|
/* 0223E3B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0223E3B8 */ cpu->r[9] = cpu->r[9] + 0x0000000Cu;
|
|
/* 0223E3BC */ _t118 = cpu->r[6] + 0x00000008u;
|
|
/* 0223E3BC */ rbrew_write_f32(cpu->mem, _t118, cpu->f[7]);
|
|
/* 0223E3C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223E3C0 */ _t119 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223E3C0 */ _t120 = _t119 >> (0x00000002u & 31u);
|
|
/* 0223E3C0 */ _t121 = _t120 & 0x00000001u;
|
|
/* 0223E3C0 */ if (_t121) goto L_0223E39C; else goto L_0223E3C4;
|
|
L_0223E3C4: ; // 0x223e3c4
|
|
/* 0223E3C4 */ cpu->r[3] = cpu->r[30] + 0x000001A4u;
|
|
/* 0223E3C8 */ cpu->r[4] = cpu->r[30] + 0x0000021Cu;
|
|
/* 0223E3CC */ cpu->r[5] = 0x00000004u;
|
|
/* 0223E3D0 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
/* 0223E3D4 */ _t122 = cpu->r[30] + 0x00000224u;
|
|
/* 0223E3D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0223E3D8 */ _t123 = cpu->r[30] + 0x00000228u;
|
|
/* 0223E3D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 0223E3DC */ _t124 = cpu->r[30] + 0x000001ACu;
|
|
/* 0223E3DC */ rbrew_write_f32(cpu->mem, _t124, cpu->f[10]);
|
|
/* 0223E3E0 */ _t125 = cpu->r[30] + 0x00000220u;
|
|
/* 0223E3E0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 0223E3E4 */ _t126 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E3E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0223E3E8 */ _t127 = cpu->r[30] + 0x000001A8u;
|
|
/* 0223E3E8 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[8]);
|
|
/* 0223E3EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0223E3F0 */ _t128 = cpu->r[30] + 0x000001B0u;
|
|
/* 0223E3F0 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[13]);
|
|
L_0223E3F4: ; // 0x223e3f4
|
|
/* 0223E3F4 */ _t129 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0223E3F4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t129);
|
|
/* 0223E3F8 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223E3FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0223E400 */ _t130 = cpu->r[9] + 0x00002DF4u;
|
|
/* 0223E400 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0223E404 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E404 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0223E404 */ if (_t132) goto L_0223E408; else goto L_0223E684;
|
|
L_0223E408: ; // 0x223e408
|
|
/* 0223E408 */ _t133 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E408 */ cpu->r[7] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0223E40C */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 0223E410 */ _t134 = rbrew_rlwinm(cpu->r[5], 0x00000007u, 0x00000012u, 0x00000013u);
|
|
/* 0223E410 */ _t135 = cpu->r[7] & 0xFFFFCFFFu;
|
|
/* 0223E410 */ cpu->r[7] = _t135 | _t134;
|
|
/* 0223E414 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223E418 */ _t136 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E418 */ rbrew_write32(cpu->mem, _t136, cpu->r[7]);
|
|
/* 0223E41C */ _t137 = cpu->r[12] + 0xFFFFE5F8u;
|
|
/* 0223E41C */ cpu->r[12] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0223E420 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0223E424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223E428 */ cpu->r[31] = rbrew_rlwinm(cpu->r[7], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0223E42C */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E42C */ _t139 = _t138 & 0x00000001u;
|
|
/* 0223E42C */ if (_t139) goto L_0223E430; else goto L_0223E450;
|
|
L_0223E430: ; // 0x223e430
|
|
/* 0223E430 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0223E434 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223E438 */ cpu->r[5] = 0x101D0000u;
|
|
/* 0223E43C */ cpu->r[4] = cpu->r[4] + 0x00005554u;
|
|
/* 0223E440 */ _t140 = cpu->r[5] + 0xFFFFE5F8u;
|
|
/* 0223E440 */ rbrew_write32(cpu->mem, _t140, cpu->r[9]);
|
|
/* 0223E444 */ cpu->r[5] = 0x00000016u;
|
|
/* 0223E448 */ cpu->r[3] = cpu->r[28] + 0x00004F95u;
|
|
/* 0223E44C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0223E450: ; // 0x223e450
|
|
/* 0223E450 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223E454 */ _t141 = cpu->r[12] + 0xFFFFE5F4u;
|
|
/* 0223E454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0223E454 */ cpu->r[12] = _t141;
|
|
/* 0223E458 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0223E45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223E460 */ cpu->r[29] = 0x00000000u;
|
|
/* 0223E464 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E464 */ _t143 = _t142 & 0x00000001u;
|
|
/* 0223E464 */ if (_t143) goto L_0223E468; else goto L_0223E474;
|
|
L_0223E468: ; // 0x223e468
|
|
/* 0223E468 */ _t144 = cpu->r[26] + 0xFFFFFF9Cu;
|
|
/* 0223E468 */ rbrew_write32(cpu->mem, _t144, cpu->r[29]);
|
|
/* 0223E46C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223E470 */ _t145 = cpu->r[12] + 0x00000000u;
|
|
/* 0223E470 */ rbrew_write32(cpu->mem, _t145, cpu->r[0]);
|
|
L_0223E474: ; // 0x223e474
|
|
/* 0223E474 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0223E478 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E478 */ _t147 = _t146 & 0x00000001u;
|
|
/* 0223E478 */ if (_t147) goto L_0223E4B0; else goto L_0223E47C;
|
|
L_0223E47C: ; // 0x223e47c
|
|
/* 0223E47C */ cpu->r[7] = 0x10050000u;
|
|
/* 0223E480 */ _t148 = cpu->r[30] + 0x00000030u;
|
|
/* 0223E480 */ cpu->r[3] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0223E484 */ cpu->r[7] = cpu->r[7] + 0x00002D6Cu;
|
|
/* 0223E488 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223E48C */ _t149 = cpu->r[1] + 0x00000024u;
|
|
/* 0223E48C */ rbrew_write32(cpu->mem, _t149, cpu->r[7]);
|
|
/* 0223E490 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0223E494 */ _t150 = cpu->r[1] + 0x00000020u;
|
|
/* 0223E494 */ rbrew_write32(cpu->mem, _t150, cpu->r[9]);
|
|
/* 0223E498 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0223E49C */ _t151 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E49C */ cpu->r[10] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0223E4A0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223E4A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223E4A4 */ _t152 = cpu->r[30] + 0x00000128u;
|
|
/* 0223E4A4 */ rbrew_write32(cpu->mem, _t152, cpu->r[31]);
|
|
/* 0223E4A8 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E4A8 */ _t154 = _t153 & 0x00000001u;
|
|
/* 0223E4A8 */ if (_t154) goto L_0223E664; else goto L_0223E4AC;
|
|
L_0223E4AC: ; // 0x223e4ac
|
|
/* 0223E4AC */ goto L_0223E530;
|
|
L_0223E4B0: ; // 0x223e4b0
|
|
/* 0223E4B0 */ _t155 = cpu->r[26] + 0xFFFFFF9Cu;
|
|
/* 0223E4B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0223E4B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0223E4B8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E4B8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0223E4B8 */ if (_t157) goto L_0223E4BC; else goto L_0223E4FC;
|
|
L_0223E4BC: ; // 0x223e4bc
|
|
/* 0223E4BC */ Gambit_fn_0282A450(cpu);
|
|
/* 0223E4C0 */ cpu->r[25] = cpu->r[3];
|
|
/* 0223E4C4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0223E4C8 */ _t158 = cpu->r[26] + 0xFFFFFF9Cu;
|
|
/* 0223E4C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0223E4CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0223E4D0 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E4D0 */ _t160 = _t159 & 0x00000001u;
|
|
/* 0223E4D0 */ if (_t160) goto L_0223E4D4; else goto L_0223E4F0;
|
|
L_0223E4D4: ; // 0x223e4d4
|
|
/* 0223E4D4 */ cpu->r[27] = 0x101D0000u;
|
|
/* 0223E4D8 */ cpu->r[4] = cpu->r[28] + 0x00004F95u;
|
|
/* 0223E4DC */ cpu->r[27] = cpu->r[27] + 0xFFFFFFA0u;
|
|
/* 0223E4E0 */ cpu->r[5] = 0x00000003u;
|
|
/* 0223E4E4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0223E4E8 */ Gambit_fn_0282A374(cpu);
|
|
/* 0223E4EC */ _t161 = cpu->r[26] + 0xFFFFFF9Cu;
|
|
/* 0223E4EC */ rbrew_write32(cpu->mem, _t161, cpu->r[27]);
|
|
L_0223E4F0: ; // 0x223e4f0
|
|
/* 0223E4F0 */ cpu->r[3] = cpu->r[25];
|
|
/* 0223E4F4 */ Gambit_fn_02837030(cpu);
|
|
/* 0223E4F8 */ _t162 = cpu->r[26] + 0xFFFFFF9Cu;
|
|
/* 0223E4F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t162);
|
|
L_0223E4FC: ; // 0x223e4fc
|
|
/* 0223E4FC */ cpu->r[7] = 0x10050000u;
|
|
/* 0223E500 */ cpu->r[6] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223E504 */ _t163 = cpu->r[30] + 0x00000030u;
|
|
/* 0223E504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0223E508 */ cpu->r[7] = cpu->r[7] + 0x00002D6Cu;
|
|
/* 0223E50C */ _t164 = cpu->r[6] + cpu->r[5];
|
|
/* 0223E50C */ cpu->r[9] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0223E510 */ _t165 = cpu->r[1] + 0x00000024u;
|
|
/* 0223E510 */ rbrew_write32(cpu->mem, _t165, cpu->r[7]);
|
|
/* 0223E514 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0223E518 */ _t166 = cpu->r[1] + 0x00000020u;
|
|
/* 0223E518 */ rbrew_write32(cpu->mem, _t166, cpu->r[9]);
|
|
/* 0223E51C */ Gambit_fn_027B70F0(cpu);
|
|
/* 0223E520 */ _t167 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E520 */ cpu->r[10] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0223E524 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223E524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223E528 */ _t168 = cpu->r[30] + 0x00000128u;
|
|
/* 0223E528 */ rbrew_write32(cpu->mem, _t168, cpu->r[31]);
|
|
/* 0223E52C */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E52C */ _t170 = _t169 & 0x00000001u;
|
|
/* 0223E52C */ if (_t170) goto L_0223E664; else goto L_0223E530;
|
|
L_0223E530: ; // 0x223e530
|
|
/* 0223E530 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E534 */ Gambit_fn_0223BD34(cpu);
|
|
/* 0223E538 */ _t171 = cpu->r[30] + 0x000002C4u;
|
|
/* 0223E538 */ cpu->r[0] = rbrew_read8(cpu->mem, _t171);
|
|
/* 0223E53C */ _t172 = cpu->r[30] + 0x000002D0u;
|
|
/* 0223E53C */ rbrew_write_f32(cpu->mem, _t172, cpu->f[1]);
|
|
/* 0223E540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x000000FFu);
|
|
/* 0223E544 */ _t173 = cpu->r[30] + 0x000000E4u;
|
|
/* 0223E544 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[1]);
|
|
/* 0223E548 */ _t174 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E548 */ _t175 = _t174 & 0x00000001u;
|
|
/* 0223E548 */ if (_t175) goto L_0223E624; else goto L_0223E54C;
|
|
L_0223E54C: ; // 0x223e54c
|
|
/* 0223E54C */ _t176 = cpu->r[30] + 0x00000004u;
|
|
/* 0223E54C */ cpu->r[12] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0223E550 */ _t177 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0223E550 */ cpu->r[4] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0223E554 */ cpu->ctr = cpu->r[4];
|
|
/* 0223E558 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E55C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E560 */ _t178 = cpu->r[3] + 0x00000000u;
|
|
/* 0223E560 */ cpu->r[6] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0223E564 */ _t179 = cpu->r[1] + 0x00000028u;
|
|
/* 0223E564 */ rbrew_write32(cpu->mem, _t179, cpu->r[6]);
|
|
/* 0223E568 */ _t180 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E568 */ cpu->r[7] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0223E56C */ _t181 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223E56C */ rbrew_write32(cpu->mem, _t181, cpu->r[7]);
|
|
/* 0223E570 */ _t182 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223E570 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 0223E574 */ _t183 = cpu->r[3] + 0x00000008u;
|
|
/* 0223E574 */ cpu->r[8] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0223E578 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0223E57C */ _t184 = cpu->r[1] + 0x00000030u;
|
|
/* 0223E57C */ rbrew_write32(cpu->mem, _t184, cpu->r[8]);
|
|
/* 0223E580 */ _t185 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E580 */ _t186 = _t185 & 0x00000001u;
|
|
/* 0223E580 */ if (_t186) goto L_0223E624; else goto L_0223E584;
|
|
L_0223E584: ; // 0x223e584
|
|
/* 0223E584 */ _t187 = cpu->r[30] + 0x000000FCu;
|
|
/* 0223E584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0223E588 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0223E58C */ _t188 = cpu->r[10] + 0x00006000u;
|
|
/* 0223E58C */ cpu->r[10] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0223E590 */ _t189 = cpu->r[1] + 0x00000034u;
|
|
/* 0223E590 */ rbrew_write32(cpu->mem, _t189, cpu->r[0]);
|
|
/* 0223E594 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0223E598 */ _t190 = cpu->r[11] + 0x000054C0u;
|
|
/* 0223E598 */ cpu->r[11] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0223E59C */ _t191 = cpu->r[30] + 0x00000100u;
|
|
/* 0223E59C */ cpu->r[0] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0223E5A0 */ _t192 = cpu->r[30] + 0x00000104u;
|
|
/* 0223E5A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0223E5A4 */ _t193 = cpu->r[1] + 0x00000038u;
|
|
/* 0223E5A4 */ rbrew_write32(cpu->mem, _t193, cpu->r[0]);
|
|
/* 0223E5A8 */ _t194 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223E5A8 */ rbrew_write32(cpu->mem, _t194, cpu->r[4]);
|
|
/* 0223E5AC */ _t195 = cpu->r[10] + 0x00000274u;
|
|
/* 0223E5AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t195);
|
|
/* 0223E5B0 */ cpu->r[5] = cpu->r[3] + cpu->r[11];
|
|
/* 0223E5B4 */ _t196 = cpu->r[5] + 0x00000104u;
|
|
/* 0223E5B4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t196);
|
|
/* 0223E5B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 0223E5BC */ _t197 = cpu->r[30] + 0x00000051u;
|
|
/* 0223E5BC */ cpu->r[31] = rbrew_read8(cpu->mem, _t197);
|
|
/* 0223E5C0 */ _t198 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E5C0 */ _t199 = _t198 & 0x00000001u;
|
|
/* 0223E5C0 */ if (_t199) goto L_0223E624; else goto L_0223E5C4;
|
|
L_0223E5C4: ; // 0x223e5c4
|
|
/* 0223E5C4 */ cpu->r[7] = cpu->r[1] + 0x00000028u;
|
|
/* 0223E5C8 */ cpu->r[6] = cpu->r[1] + 0x00000034u;
|
|
/* 0223E5CC */ cpu->r[5] = cpu->r[31];
|
|
/* 0223E5D0 */ Gambit_fn_021F000C(cpu);
|
|
/* 0223E5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223E5D8 */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E5D8 */ _t201 = _t200 & 0x00000001u;
|
|
/* 0223E5D8 */ if (_t201) goto L_0223E624; else goto L_0223E5DC;
|
|
L_0223E5DC: ; // 0x223e5dc
|
|
/* 0223E5DC */ _t202 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0223E5DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0223E5E0 */ _t203 = cpu->r[30] + 0x00000054u;
|
|
/* 0223E5E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0223E5E4 */ _t204 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0223E5E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0223E5E8 */ _t205 = cpu->r[30] + 0x00000058u;
|
|
/* 0223E5E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0223E5EC */ _t206 = cpu->r[1] + 0x00000008u;
|
|
/* 0223E5EC */ rbrew_write32(cpu->mem, _t206, cpu->r[7]);
|
|
/* 0223E5F0 */ _t207 = cpu->r[30] + 0x000002C4u;
|
|
/* 0223E5F0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t207);
|
|
/* 0223E5F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223E5F8 */ _t208 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223E5F8 */ rbrew_write32(cpu->mem, _t208, cpu->r[0]);
|
|
/* 0223E5FC */ cpu->r[9] = cpu->r[4];
|
|
/* 0223E600 */ _t209 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E600 */ rbrew_write32(cpu->mem, _t209, cpu->r[8]);
|
|
/* 0223E604 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223E608 */ _t210 = cpu->r[1] + 0x00000014u;
|
|
/* 0223E608 */ rbrew_write32(cpu->mem, _t210, cpu->r[29]);
|
|
/* 0223E60C */ cpu->r[7] = cpu->r[1] + 0x00000034u;
|
|
/* 0223E610 */ cpu->r[10] = cpu->r[31];
|
|
/* 0223E614 */ _t211 = cpu->r[1] + 0x00000018u;
|
|
/* 0223E614 */ rbrew_write32(cpu->mem, _t211, cpu->r[29]);
|
|
/* 0223E618 */ cpu->r[8] = cpu->r[1] + 0x00000028u;
|
|
/* 0223E61C */ _t212 = cpu->r[1] + 0x00000010u;
|
|
/* 0223E61C */ rbrew_write32(cpu->mem, _t212, cpu->r[0]);
|
|
/* 0223E620 */ Gambit_fn_02224198(cpu);
|
|
L_0223E624: ; // 0x223e624
|
|
/* 0223E624 */ _t213 = cpu->r[30] + 0x00000004u;
|
|
/* 0223E624 */ cpu->r[8] = rbrew_read32(cpu->mem, _t213);
|
|
/* 0223E628 */ _t214 = cpu->r[8] + 0x0000025Cu;
|
|
/* 0223E628 */ cpu->r[9] = rbrew_read32(cpu->mem, _t214);
|
|
/* 0223E62C */ cpu->ctr = cpu->r[9];
|
|
/* 0223E630 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E638 */ _t215 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E638 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t215);
|
|
/* 0223E63C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0223E640 */ _t216 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E640 */ _t217 = _t216 & 0x00000001u;
|
|
/* 0223E640 */ if (_t217) goto L_0223E684; else goto L_0223E644;
|
|
L_0223E644: ; // 0x223e644
|
|
/* 0223E644 */ _t218 = cpu->r[30] + 0x000002C4u;
|
|
/* 0223E644 */ cpu->r[0] = rbrew_read8(cpu->mem, _t218);
|
|
/* 0223E648 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E64C */ _t219 = cpu->r[30] + 0x000002C5u;
|
|
/* 0223E64C */ rbrew_write8(cpu->mem, _t219, (uint8_t)cpu->r[0]);
|
|
/* 0223E650 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E654 */ _t220 = cpu->r[30] + 0x00000051u;
|
|
/* 0223E654 */ cpu->r[6] = rbrew_read8(cpu->mem, _t220);
|
|
/* 0223E658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0223E65C */ _t221 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E65C */ _t222 = _t221 & 0x00000001u;
|
|
/* 0223E65C */ if (_t222) goto L_0223E6B8; else goto L_0223E660;
|
|
L_0223E660: ; // 0x223e660
|
|
/* 0223E660 */ goto L_0223E698;
|
|
L_0223E664: ; // 0x223e664
|
|
/* 0223E664 */ _t223 = cpu->r[30] + 0x000002C5u;
|
|
/* 0223E664 */ cpu->r[11] = rbrew_read8(cpu->mem, _t223);
|
|
/* 0223E668 */ _t224 = cpu->r[30] + 0x000002C4u;
|
|
/* 0223E668 */ cpu->r[4] = rbrew_read8(cpu->mem, _t224);
|
|
/* 0223E66C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[4]);
|
|
/* 0223E670 */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E670 */ _t226 = _t225 & 0x00000001u;
|
|
/* 0223E670 */ if (_t226) goto L_0223E674; else goto L_0223E684;
|
|
L_0223E674: ; // 0x223e674
|
|
/* 0223E674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x000000FEu);
|
|
/* 0223E678 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E678 */ _t228 = _t227 & 0x00000001u;
|
|
/* 0223E678 */ if (_t228) goto L_0223E684; else goto L_0223E67C;
|
|
L_0223E67C: ; // 0x223e67c
|
|
/* 0223E67C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E680 */ Gambit_fn_02790488(cpu);
|
|
L_0223E684: ; // 0x223e684
|
|
/* 0223E684 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E688 */ Gambit_fn_0223BD7C(cpu);
|
|
/* 0223E68C */ _t229 = cpu->r[30] + 0x00000051u;
|
|
/* 0223E68C */ cpu->r[6] = rbrew_read8(cpu->mem, _t229);
|
|
/* 0223E690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0223E694 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E694 */ _t231 = _t230 & 0x00000001u;
|
|
/* 0223E694 */ if (_t231) goto L_0223E6B8; else goto L_0223E698;
|
|
L_0223E698: ; // 0x223e698
|
|
/* 0223E698 */ _t232 = cpu->r[30] + 0x000002B4u;
|
|
/* 0223E698 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 0223E69C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E6A0 */ Gambit_fn_0223DEA4(cpu);
|
|
/* 0223E6A4 */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0223E6A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223E6A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223E6AC */ _t233 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E6AC */ _t234 = _t233 & 0x00000001u;
|
|
/* 0223E6AC */ if (_t234) goto L_0223E6B8; else goto L_0223E6B0;
|
|
L_0223E6B0: ; // 0x223e6b0
|
|
/* 0223E6B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E6B4 */ Gambit_fn_02790488(cpu);
|
|
L_0223E6B8: ; // 0x223e6b8
|
|
/* 0223E6B8 */ _t235 = cpu->r[30] + 0x000002C8u;
|
|
/* 0223E6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0223E6BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223E6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223E6C0 */ _t236 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E6C0 */ _t237 = _t236 & 0x00000001u;
|
|
/* 0223E6C0 */ if (_t237) goto L_0223E6C4; else goto L_0223E708;
|
|
L_0223E6C4: ; // 0x223e6c4
|
|
/* 0223E6C4 */ _t238 = cpu->r[30] + 0x000002B8u;
|
|
/* 0223E6C4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 0223E6C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0223E6CC */ _t239 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E6CC */ _t240 = _t239 & 0x00000001u;
|
|
/* 0223E6CC */ if (_t240) goto L_0223E6D0; else goto L_0223E714;
|
|
L_0223E6D0: ; // 0x223e6d0
|
|
/* 0223E6D0 */ _t241 = cpu->r[30] + 0x00000004u;
|
|
/* 0223E6D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t241);
|
|
/* 0223E6D4 */ _t242 = cpu->r[12] + 0x00000254u;
|
|
/* 0223E6D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0223E6D8 */ cpu->ctr = cpu->r[5];
|
|
/* 0223E6DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E6E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E6E4 */ _t243 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0223E6E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t243);
|
|
/* 0223E6E8 */ _t244 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E6E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t244);
|
|
/* 0223E6EC */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 0223E6F0 */ cpu->f[30] = cpu->f[30] - cpu->f[10];
|
|
/* 0223E6F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0223E6F8 */ _t245 = cpu->r[30] + 0x000002B8u;
|
|
/* 0223E6F8 */ rbrew_write_f32(cpu->mem, _t245, cpu->f[30]);
|
|
/* 0223E6FC */ _t246 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E6FC */ _t247 = _t246 & 0x00000001u;
|
|
/* 0223E6FC */ if (_t247) goto L_0223E71C; else goto L_0223E700;
|
|
L_0223E700: ; // 0x223e700
|
|
/* 0223E700 */ cpu->r[8] = 0x00000078u;
|
|
/* 0223E704 */ _t248 = cpu->r[30] + 0x000002CCu;
|
|
/* 0223E704 */ rbrew_write16(cpu->mem, _t248, (uint16_t)cpu->r[8]);
|
|
L_0223E708: ; // 0x223e708
|
|
/* 0223E708 */ _t249 = cpu->r[30] + 0x000002B8u;
|
|
/* 0223E708 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 0223E70C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0223E710 */ _t250 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223E710 */ _t251 = _t250 & 0x00000001u;
|
|
/* 0223E710 */ if (_t251) goto L_0223E71C; else goto L_0223E714;
|
|
L_0223E714: ; // 0x223e714
|
|
/* 0223E714 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E718 */ Gambit_fn_02790488(cpu);
|
|
L_0223E71C: ; // 0x223e71c
|
|
/* 0223E71C */ _t252 = cpu->r[30] + 0x00000004u;
|
|
/* 0223E71C */ cpu->r[10] = rbrew_read32(cpu->mem, _t252);
|
|
/* 0223E720 */ _t253 = cpu->r[10] + 0x0000025Cu;
|
|
/* 0223E720 */ cpu->r[11] = rbrew_read32(cpu->mem, _t253);
|
|
/* 0223E724 */ cpu->ctr = cpu->r[11];
|
|
/* 0223E728 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E72C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E730 */ _t254 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E730 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 0223E734 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0223E738 */ _t255 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E738 */ _t256 = _t255 & 0x00000001u;
|
|
/* 0223E738 */ if (_t256) goto L_0223E73C; else goto L_0223E76C;
|
|
L_0223E73C: ; // 0x223e73c
|
|
/* 0223E73C */ _t257 = cpu->r[30] + 0x00000004u;
|
|
/* 0223E73C */ cpu->r[12] = rbrew_read32(cpu->mem, _t257);
|
|
/* 0223E740 */ _t258 = cpu->r[12] + 0x00000254u;
|
|
/* 0223E740 */ cpu->r[4] = rbrew_read32(cpu->mem, _t258);
|
|
/* 0223E744 */ cpu->ctr = cpu->r[4];
|
|
/* 0223E748 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E74C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E750 */ _t259 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E750 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 0223E754 */ _t260 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0223E754 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t260);
|
|
/* 0223E758 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 0223E75C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0223E760 */ _t261 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E760 */ _t262 = _t261 & 0x00000001u;
|
|
/* 0223E760 */ if (_t262) goto L_0223E76C; else goto L_0223E764;
|
|
L_0223E764: ; // 0x223e764
|
|
/* 0223E764 */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E768 */ Gambit_fn_02790488(cpu);
|
|
L_0223E76C: ; // 0x223e76c
|
|
/* 0223E76C */ cpu->r[3] = cpu->r[30];
|
|
/* 0223E770 */ Gambit_fn_0222DADC(cpu);
|
|
/* 0223E774 */ /* nop */
|
|
/* 0223E778 */ _t263 = cpu->r[1] + 0x00000068u;
|
|
/* 0223E778 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 0223E77C */ _t264 = cpu->r[1] + 0x00000078u;
|
|
/* 0223E77C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 0223E780 */ _t265 = cpu->r[1] + 0x00000060u;
|
|
/* 0223E780 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t265);
|
|
/* 0223E784 */ _t266 = cpu->r[1] + 0x00000070u;
|
|
/* 0223E784 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t266);
|
|
/* 0223E788 */ _t267 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E788 */ _t268 = _t267 & 0x00000001u;
|
|
/* 0223E788 */ if (_t268) goto L_0223E78C; // else: addr-0 trap, fall-through
|
|
L_0223E78C: ; // 0x223e78c
|
|
/* 0223E78C */ _t269 = cpu->r[1] + 0x00000084u;
|
|
/* 0223E78C */ cpu->r[0] = rbrew_read32(cpu->mem, _t269);
|
|
/* 0223E790 */ cpu->lr = cpu->r[0];
|
|
/* 0223E794 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0223E798 */ return;
|
|
}
|
|
|
|
// fn_0223E79C @ 0x223e79c
|
|
void Gambit_fn_0223E79C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223E79C: ; // 0x223e79c
|
|
/* 0223E79C */ _t0 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0223E79C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223E7A0 */ _t1 = cpu->r[5] + 0x00000000u;
|
|
/* 0223E7A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223E7A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0223E7A8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E7A8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223E7A8 */ if (_t3) goto L_0223E7AC; else goto L_0223E7B8;
|
|
L_0223E7AC: ; // 0x223e7ac
|
|
/* 0223E7AC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223E7B0 */ _t4 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223E7B0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223E7B4 */ return;
|
|
L_0223E7B8: ; // 0x223e7b8
|
|
/* 0223E7B8 */ _t5 = cpu->r[3] + 0x00000130u;
|
|
/* 0223E7B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0223E7BC */ return;
|
|
}
|
|
|
|
// fn_0223E7C0 @ 0x223e7c0
|
|
void Gambit_fn_0223E7C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223E7C0: ; // 0x223e7c0
|
|
/* 0223E7C0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223E7C4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0223E7C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0223E7C8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0223E7C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0223E7C8 */ cpu->r[1] = _t1;
|
|
/* 0223E7CC */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E7CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223E7D0 */ _t3 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0223E7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223E7D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0223E7D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E7DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E7DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223E7E0 */ cpu->lr = cpu->r[0];
|
|
/* 0223E7E4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0223E7E8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223E7EC */ return;
|
|
}
|
|
|
|
// fn_0223E7C8 @ 0x223e7c8
|
|
void Gambit_fn_0223E7C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223E7C8: ; // 0x223e7c8
|
|
/* 0223E7C8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0223E7C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E7C8 */ cpu->r[1] = _t0;
|
|
/* 0223E7CC */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 0223E7CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223E7D0 */ _t2 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0223E7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223E7D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0223E7D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223E7DC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E7DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223E7E0 */ cpu->lr = cpu->r[0];
|
|
/* 0223E7E4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0223E7E8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223E7EC */ return;
|
|
}
|
|
|
|
// fn_0223E7F0 @ 0x223e7f0
|
|
void Gambit_fn_0223E7F0(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_0223E7F0: ; // 0x223e7f0
|
|
/* 0223E7F0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0223E7F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E7F0 */ cpu->r[1] = _t0;
|
|
/* 0223E7F4 */ /* nop */
|
|
/* 0223E7F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0223E7FC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0223E7FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223E800 */ cpu->r[29] = cpu->r[3];
|
|
/* 0223E804 */ _t2 = cpu->r[29] + 0x00000128u;
|
|
/* 0223E804 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223E808 */ cpu->r[30] = cpu->r[4];
|
|
/* 0223E80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 0223E810 */ cpu->r[31] = cpu->r[5];
|
|
/* 0223E814 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E814 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0223E814 */ if (_t4) goto L_0223E818; else goto L_0223E8FC;
|
|
L_0223E818: ; // 0x223e818
|
|
/* 0223E818 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223E81C */ _t5 = cpu->r[12] + 0xFFFFE5F8u;
|
|
/* 0223E81C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223E81C */ cpu->r[12] = _t5;
|
|
/* 0223E820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223E824 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0223E828 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E828 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0223E828 */ if (_t7) goto L_0223E82C; else goto L_0223E848;
|
|
L_0223E82C: ; // 0x223e82c
|
|
/* 0223E82C */ cpu->r[11] = 0x00000001u;
|
|
/* 0223E830 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0223E834 */ cpu->r[3] = cpu->r[28] + 0x00004F95u;
|
|
/* 0223E838 */ cpu->r[5] = 0x00000016u;
|
|
/* 0223E83C */ cpu->r[4] = cpu->r[4] + 0x00005554u;
|
|
/* 0223E840 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0223E840 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0223E844 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0223E848: ; // 0x223e848
|
|
/* 0223E848 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223E84C */ _t9 = cpu->r[11] + 0xFFFFE5F4u;
|
|
/* 0223E84C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223E84C */ cpu->r[11] = _t9;
|
|
/* 0223E850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223E854 */ cpu->r[27] = 0x101D0000u;
|
|
/* 0223E858 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E858 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223E858 */ if (_t11) goto L_0223E85C; else goto L_0223E888;
|
|
L_0223E85C: ; // 0x223e85c
|
|
/* 0223E85C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223E860 */ cpu->r[6] = 0x00000000u;
|
|
/* 0223E864 */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 0223E864 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0223E868 */ _t13 = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223E868 */ rbrew_write32(cpu->mem, _t13, cpu->r[6]);
|
|
/* 0223E86C */ Gambit_fn_0282A450(cpu);
|
|
/* 0223E870 */ cpu->r[25] = cpu->r[3];
|
|
/* 0223E874 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0223E878 */ _t14 = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223E878 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223E87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0223E880 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E880 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223E880 */ if (_t16) goto L_0223E8AC; else goto L_0223E884;
|
|
L_0223E884: ; // 0x223e884
|
|
/* 0223E884 */ goto L_0223E8C8;
|
|
L_0223E888: ; // 0x223e888
|
|
/* 0223E888 */ _t17 = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223E888 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223E88C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223E890 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E890 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0223E890 */ if (_t19) goto L_0223E894; else goto L_0223E8D4;
|
|
L_0223E894: ; // 0x223e894
|
|
/* 0223E894 */ Gambit_fn_0282A450(cpu);
|
|
/* 0223E898 */ cpu->r[25] = cpu->r[3];
|
|
/* 0223E89C */ Gambit_fn_02836FFC(cpu);
|
|
/* 0223E8A0 */ _t20 = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223E8A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223E8A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0223E8A8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223E8A8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0223E8A8 */ if (_t22) goto L_0223E8AC; else goto L_0223E8C8;
|
|
L_0223E8AC: ; // 0x223e8ac
|
|
/* 0223E8AC */ cpu->r[26] = 0x101D0000u;
|
|
/* 0223E8B0 */ cpu->r[4] = cpu->r[28] + 0x00004F95u;
|
|
/* 0223E8B4 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFA0u;
|
|
/* 0223E8B8 */ cpu->r[5] = 0x00000003u;
|
|
/* 0223E8BC */ cpu->r[3] = cpu->r[26];
|
|
/* 0223E8C0 */ Gambit_fn_0282A374(cpu);
|
|
/* 0223E8C4 */ _t23 = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223E8C4 */ rbrew_write32(cpu->mem, _t23, cpu->r[26]);
|
|
L_0223E8C8: ; // 0x223e8c8
|
|
/* 0223E8C8 */ cpu->r[3] = cpu->r[25];
|
|
/* 0223E8CC */ Gambit_fn_02837030(cpu);
|
|
/* 0223E8D0 */ _t24 = cpu->r[27] + 0xFFFFFF9Cu;
|
|
/* 0223E8D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
L_0223E8D4: ; // 0x223e8d4
|
|
/* 0223E8D4 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223E8D8 */ _t25 = cpu->r[29] + 0x00000030u;
|
|
/* 0223E8D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0223E8DC */ cpu->r[8] = cpu->r[8] + 0x00002D6Cu;
|
|
/* 0223E8E0 */ _t26 = cpu->r[10] + 0x00000008u;
|
|
/* 0223E8E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223E8E4 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E8E4 */ rbrew_write32(cpu->mem, _t27, cpu->r[8]);
|
|
/* 0223E8E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223E8EC */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0223E8EC */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 0223E8F0 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0223E8F4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223E8F8 */ _t29 = cpu->r[29] + 0x00000128u;
|
|
/* 0223E8F8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_0223E8FC: ; // 0x223e8fc
|
|
/* 0223E8FC */ cpu->r[5] = cpu->r[31];
|
|
/* 0223E900 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223E904 */ cpu->r[3] = cpu->r[29];
|
|
/* 0223E908 */ Gambit_fn_0222CA20(cpu);
|
|
/* 0223E90C */ /* nop */
|
|
/* 0223E910 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 0223E910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0223E914 */ cpu->lr = cpu->r[0];
|
|
/* 0223E918 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0223E91C */ return;
|
|
}
|
|
|
|
// fn_0223E920 @ 0x223e920
|
|
void Gambit_fn_0223E920(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0223E920: ; // 0x223e920
|
|
/* 0223E920 */ cpu->r[0] = cpu->lr;
|
|
/* 0223E924 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223E924 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E924 */ cpu->r[1] = _t0;
|
|
/* 0223E928 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0223E928 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0223E92C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223E92C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223E930 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E930 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0223E934 */ cpu->r[30] = cpu->r[5];
|
|
/* 0223E938 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223E93C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223E93C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223E940 */ cpu->r[29] = cpu->r[4];
|
|
/* 0223E944 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223E948 */ Gambit_fn_0223BA44(cpu);
|
|
/* 0223E94C */ cpu->r[3] = cpu->r[31];
|
|
/* 0223E950 */ cpu->r[4] = cpu->r[29];
|
|
/* 0223E954 */ cpu->r[5] = cpu->r[30];
|
|
/* 0223E958 */ Gambit_fn_0222CCFC(cpu);
|
|
/* 0223E95C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E95C */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223E960 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223E960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223E964 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0223E964 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223E968 */ cpu->lr = cpu->r[0];
|
|
/* 0223E96C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0223E96C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223E970 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223E974 */ return;
|
|
}
|
|
|
|
// fn_0223E924 @ 0x223e924
|
|
void Gambit_fn_0223E924(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0223E924: ; // 0x223e924
|
|
/* 0223E924 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223E924 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E924 */ cpu->r[1] = _t0;
|
|
/* 0223E928 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0223E928 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0223E92C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223E92C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223E930 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E930 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0223E934 */ cpu->r[30] = cpu->r[5];
|
|
/* 0223E938 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223E93C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223E93C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223E940 */ cpu->r[29] = cpu->r[4];
|
|
/* 0223E944 */ cpu->r[4] = cpu->r[30];
|
|
/* 0223E948 */ Gambit_fn_0223BA44(cpu);
|
|
/* 0223E94C */ cpu->r[3] = cpu->r[31];
|
|
/* 0223E950 */ cpu->r[4] = cpu->r[29];
|
|
/* 0223E954 */ cpu->r[5] = cpu->r[30];
|
|
/* 0223E958 */ Gambit_fn_0222CCFC(cpu);
|
|
/* 0223E95C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223E95C */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223E960 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223E960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223E964 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0223E964 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223E968 */ cpu->lr = cpu->r[0];
|
|
/* 0223E96C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0223E96C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223E970 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223E974 */ return;
|
|
}
|
|
|
|
// fn_0223E978 @ 0x223e978
|
|
void Gambit_fn_0223E978(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_0223E978: ; // 0x223e978
|
|
/* 0223E978 */ cpu->r[0] = cpu->lr;
|
|
/* 0223E97C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0223E97C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E97C */ cpu->r[1] = _t0;
|
|
/* 0223E980 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0223E980 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223E984 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223E988 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223E988 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223E98C */ _t3 = cpu->r[31] + 0x000002C7u;
|
|
/* 0223E98C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0223E990 */ /* nop */
|
|
/* 0223E994 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E994 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223E994 */ if (_t5) goto L_0223E998; else goto L_0223EAF0;
|
|
L_0223E998: ; // 0x223e998
|
|
/* 0223E998 */ _t6 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223E998 */ cpu->r[10] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0223E99C */ /* nop */
|
|
/* 0223E9A0 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E9A0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223E9A0 */ if (_t8) goto L_0223E9A4; else goto L_0223EAF0;
|
|
L_0223E9A4: ; // 0x223e9a4
|
|
/* 0223E9A4 */ _t9 = cpu->r[31] + 0x000002C9u;
|
|
/* 0223E9A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0223E9A8 */ /* nop */
|
|
/* 0223E9AC */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E9AC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223E9AC */ if (_t11) goto L_0223E9B0; else goto L_0223EAF0;
|
|
L_0223E9B0: ; // 0x223e9b0
|
|
/* 0223E9B0 */ _t12 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0223E9B0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0223E9B4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223E9B8 */ _t13 = cpu->r[31] + 0x00000140u;
|
|
/* 0223E9B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223E9BC */ cpu->ctr = cpu->r[0];
|
|
/* 0223E9C0 */ cpu->r[7] = 0x00000000u;
|
|
/* 0223E9C4 */ _t14 = cpu->r[31] + 0x000001B8u;
|
|
/* 0223E9C4 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0223E9C8 */ cpu->r[11] = cpu->r[31] + 0x000001BCu;
|
|
/* 0223E9CC */ cpu->r[9] = cpu->r[31] + 0x00000144u;
|
|
/* 0223E9D0 */ _t15 = cpu->r[31] + 0x000001B4u;
|
|
/* 0223E9D0 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[8]);
|
|
L_0223E9D4: ; // 0x223e9d4
|
|
/* 0223E9D4 */ _t16 = cpu->r[9] + cpu->r[7];
|
|
/* 0223E9D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0223E9D8 */ cpu->r[8] = cpu->r[9] + cpu->r[7];
|
|
/* 0223E9DC */ _t17 = cpu->r[11] + cpu->r[7];
|
|
/* 0223E9DC */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 0223E9E0 */ _t18 = cpu->r[8] + 0x00000004u;
|
|
/* 0223E9E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0223E9E4 */ cpu->r[12] = cpu->r[11] + cpu->r[7];
|
|
/* 0223E9E8 */ _t19 = cpu->r[12] + 0x00000004u;
|
|
/* 0223E9E8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 0223E9EC */ _t20 = cpu->r[8] + 0x00000008u;
|
|
/* 0223E9EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0223E9F0 */ cpu->r[7] = cpu->r[7] + 0x0000000Cu;
|
|
/* 0223E9F4 */ _t21 = cpu->r[12] + 0x00000008u;
|
|
/* 0223E9F4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 0223E9F8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223E9F8 */ _t22 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223E9F8 */ _t23 = _t22 >> (0x00000002u & 31u);
|
|
/* 0223E9F8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0223E9F8 */ if (_t24) goto L_0223E9D4; else goto L_0223E9FC;
|
|
L_0223E9FC: ; // 0x223e9fc
|
|
/* 0223E9FC */ cpu->r[10] = 0x00000004u;
|
|
/* 0223EA00 */ cpu->r[9] = cpu->r[31] + 0x000001ECu;
|
|
/* 0223EA04 */ cpu->r[8] = cpu->r[31] + 0x00000174u;
|
|
/* 0223EA08 */ cpu->ctr = cpu->r[10];
|
|
/* 0223EA0C */ cpu->r[12] = 0x00000000u;
|
|
L_0223EA10: ; // 0x223ea10
|
|
/* 0223EA10 */ _t25 = cpu->r[8] + cpu->r[12];
|
|
/* 0223EA10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0223EA14 */ cpu->r[7] = cpu->r[8] + cpu->r[12];
|
|
/* 0223EA18 */ _t26 = cpu->r[9] + cpu->r[12];
|
|
/* 0223EA18 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 0223EA1C */ _t27 = cpu->r[7] + 0x00000004u;
|
|
/* 0223EA1C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0223EA20 */ cpu->r[11] = cpu->r[9] + cpu->r[12];
|
|
/* 0223EA24 */ _t28 = cpu->r[11] + 0x00000004u;
|
|
/* 0223EA24 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 0223EA28 */ _t29 = cpu->r[7] + 0x00000008u;
|
|
/* 0223EA28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0223EA2C */ cpu->r[12] = cpu->r[12] + 0x0000000Cu;
|
|
/* 0223EA30 */ _t30 = cpu->r[11] + 0x00000008u;
|
|
/* 0223EA30 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 0223EA34 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223EA34 */ _t31 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223EA34 */ _t32 = _t31 >> (0x00000002u & 31u);
|
|
/* 0223EA34 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0223EA34 */ if (_t33) goto L_0223EA10; else goto L_0223EA38;
|
|
L_0223EA38: ; // 0x223ea38
|
|
/* 0223EA38 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223EA3C */ cpu->r[4] = cpu->r[31] + 0x000001A4u;
|
|
/* 0223EA40 */ cpu->r[3] = cpu->r[31] + 0x0000021Cu;
|
|
/* 0223EA44 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
/* 0223EA48 */ _t34 = cpu->r[31] + 0x000001A8u;
|
|
/* 0223EA48 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0223EA4C */ cpu->r[8] = 0x00000000u;
|
|
/* 0223EA50 */ _t35 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0223EA50 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[8]);
|
|
/* 0223EA54 */ _t36 = cpu->r[31] + 0x000001B0u;
|
|
/* 0223EA54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0223EA58 */ _t37 = cpu->r[31] + 0x00000220u;
|
|
/* 0223EA58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 0223EA5C */ _t38 = cpu->r[31] + 0x00000228u;
|
|
/* 0223EA5C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 0223EA60 */ _t39 = cpu->r[31] + 0x000001ACu;
|
|
/* 0223EA60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0223EA64 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 0223EA64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0223EA68 */ _t41 = cpu->r[31] + 0x00000224u;
|
|
/* 0223EA68 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 0223EA6C */ _t42 = cpu->r[31] + 0x00000140u;
|
|
/* 0223EA6C */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 0223EA70 */ _t43 = cpu->r[12] + 0x00000394u;
|
|
/* 0223EA70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0223EA74 */ cpu->ctr = cpu->r[8];
|
|
/* 0223EA78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223EA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223EA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223EA84 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EA84 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0223EA84 */ if (_t45) goto L_0223EAF0; else goto L_0223EA88;
|
|
L_0223EA88: ; // 0x223ea88
|
|
/* 0223EA88 */ _t46 = cpu->r[31] + 0x000001B4u;
|
|
/* 0223EA88 */ cpu->r[10] = rbrew_read8(cpu->mem, _t46);
|
|
/* 0223EA8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223EA90 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EA90 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0223EA90 */ if (_t48) goto L_0223EAF0; else goto L_0223EA94;
|
|
L_0223EA94: ; // 0x223ea94
|
|
/* 0223EA94 */ _t49 = cpu->r[31] + 0x00000138u;
|
|
/* 0223EA94 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0223EA98 */ /* nop */
|
|
/* 0223EA9C */ cpu->f[11] = cpu->f[13] + cpu->f[13];
|
|
/* 0223EAA0 */ /* nop */
|
|
/* 0223EAA4 */ cpu->f[0] = -cpu->f[11];
|
|
/* 0223EAA8 */ _t50 = cpu->r[31] + 0x00000228u;
|
|
/* 0223EAA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0223EAAC */ _t51 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0223EAAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0223EAB0 */ /* nop */
|
|
/* 0223EAB4 */ /* nop */
|
|
/* 0223EAB8 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0223EAB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0223EABC */ cpu->f[0] = cpu->f[11] * cpu->f[0];
|
|
/* 0223EAC0 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EAC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0223EAC4 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EAC4 */ rbrew_write32(cpu->mem, _t54, cpu->r[7]);
|
|
/* 0223EAC8 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 0223EAC8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 0223EACC */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0223EACC */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0223EAD0 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0223EAD0 */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 0223EAD4 */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223EAD4 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0223EAD8 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223EAD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0223EADC */ /* nop */
|
|
/* 0223EAE0 */ cpu->f[13] = cpu->f[13] + cpu->f[11];
|
|
/* 0223EAE4 */ /* nop */
|
|
/* 0223EAE8 */ /* nop */
|
|
/* 0223EAEC */ _t60 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0223EAEC */ rbrew_write_f32(cpu->mem, _t60, cpu->f[13]);
|
|
L_0223EAF0: ; // 0x223eaf0
|
|
/* 0223EAF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223EAF4 */ Gambit_fn_0222D730(cpu);
|
|
/* 0223EAF8 */ _t61 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223EAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0223EAFC */ _t62 = cpu->r[1] + 0x00000024u;
|
|
/* 0223EAFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0223EB00 */ cpu->lr = cpu->r[0];
|
|
/* 0223EB04 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0223EB08 */ return;
|
|
}
|
|
|
|
// fn_0223E97C @ 0x223e97c
|
|
void Gambit_fn_0223E97C(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_0223E97C: ; // 0x223e97c
|
|
/* 0223E97C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0223E97C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223E97C */ cpu->r[1] = _t0;
|
|
/* 0223E980 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0223E980 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223E984 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223E988 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223E988 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223E98C */ _t3 = cpu->r[31] + 0x000002C7u;
|
|
/* 0223E98C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0223E990 */ /* nop */
|
|
/* 0223E994 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E994 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223E994 */ if (_t5) goto L_0223E998; else goto L_0223EAF0;
|
|
L_0223E998: ; // 0x223e998
|
|
/* 0223E998 */ _t6 = cpu->r[31] + 0x000002C8u;
|
|
/* 0223E998 */ cpu->r[10] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0223E99C */ /* nop */
|
|
/* 0223E9A0 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E9A0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223E9A0 */ if (_t8) goto L_0223E9A4; else goto L_0223EAF0;
|
|
L_0223E9A4: ; // 0x223e9a4
|
|
/* 0223E9A4 */ _t9 = cpu->r[31] + 0x000002C9u;
|
|
/* 0223E9A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0223E9A8 */ /* nop */
|
|
/* 0223E9AC */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223E9AC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223E9AC */ if (_t11) goto L_0223E9B0; else goto L_0223EAF0;
|
|
L_0223E9B0: ; // 0x223e9b0
|
|
/* 0223E9B0 */ _t12 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0223E9B0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0223E9B4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223E9B8 */ _t13 = cpu->r[31] + 0x00000140u;
|
|
/* 0223E9B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223E9BC */ cpu->ctr = cpu->r[0];
|
|
/* 0223E9C0 */ cpu->r[7] = 0x00000000u;
|
|
/* 0223E9C4 */ _t14 = cpu->r[31] + 0x000001B8u;
|
|
/* 0223E9C4 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0223E9C8 */ cpu->r[11] = cpu->r[31] + 0x000001BCu;
|
|
/* 0223E9CC */ cpu->r[9] = cpu->r[31] + 0x00000144u;
|
|
/* 0223E9D0 */ _t15 = cpu->r[31] + 0x000001B4u;
|
|
/* 0223E9D0 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[8]);
|
|
L_0223E9D4: ; // 0x223e9d4
|
|
/* 0223E9D4 */ _t16 = cpu->r[9] + cpu->r[7];
|
|
/* 0223E9D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0223E9D8 */ cpu->r[8] = cpu->r[9] + cpu->r[7];
|
|
/* 0223E9DC */ _t17 = cpu->r[11] + cpu->r[7];
|
|
/* 0223E9DC */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 0223E9E0 */ _t18 = cpu->r[8] + 0x00000004u;
|
|
/* 0223E9E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0223E9E4 */ cpu->r[12] = cpu->r[11] + cpu->r[7];
|
|
/* 0223E9E8 */ _t19 = cpu->r[12] + 0x00000004u;
|
|
/* 0223E9E8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 0223E9EC */ _t20 = cpu->r[8] + 0x00000008u;
|
|
/* 0223E9EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0223E9F0 */ cpu->r[7] = cpu->r[7] + 0x0000000Cu;
|
|
/* 0223E9F4 */ _t21 = cpu->r[12] + 0x00000008u;
|
|
/* 0223E9F4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 0223E9F8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223E9F8 */ _t22 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223E9F8 */ _t23 = _t22 >> (0x00000002u & 31u);
|
|
/* 0223E9F8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0223E9F8 */ if (_t24) goto L_0223E9D4; else goto L_0223E9FC;
|
|
L_0223E9FC: ; // 0x223e9fc
|
|
/* 0223E9FC */ cpu->r[10] = 0x00000004u;
|
|
/* 0223EA00 */ cpu->r[9] = cpu->r[31] + 0x000001ECu;
|
|
/* 0223EA04 */ cpu->r[8] = cpu->r[31] + 0x00000174u;
|
|
/* 0223EA08 */ cpu->ctr = cpu->r[10];
|
|
/* 0223EA0C */ cpu->r[12] = 0x00000000u;
|
|
L_0223EA10: ; // 0x223ea10
|
|
/* 0223EA10 */ _t25 = cpu->r[8] + cpu->r[12];
|
|
/* 0223EA10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0223EA14 */ cpu->r[7] = cpu->r[8] + cpu->r[12];
|
|
/* 0223EA18 */ _t26 = cpu->r[9] + cpu->r[12];
|
|
/* 0223EA18 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 0223EA1C */ _t27 = cpu->r[7] + 0x00000004u;
|
|
/* 0223EA1C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0223EA20 */ cpu->r[11] = cpu->r[9] + cpu->r[12];
|
|
/* 0223EA24 */ _t28 = cpu->r[11] + 0x00000004u;
|
|
/* 0223EA24 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 0223EA28 */ _t29 = cpu->r[7] + 0x00000008u;
|
|
/* 0223EA28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0223EA2C */ cpu->r[12] = cpu->r[12] + 0x0000000Cu;
|
|
/* 0223EA30 */ _t30 = cpu->r[11] + 0x00000008u;
|
|
/* 0223EA30 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 0223EA34 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223EA34 */ _t31 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223EA34 */ _t32 = _t31 >> (0x00000002u & 31u);
|
|
/* 0223EA34 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0223EA34 */ if (_t33) goto L_0223EA10; else goto L_0223EA38;
|
|
L_0223EA38: ; // 0x223ea38
|
|
/* 0223EA38 */ cpu->r[5] = 0x00000004u;
|
|
/* 0223EA3C */ cpu->r[4] = cpu->r[31] + 0x000001A4u;
|
|
/* 0223EA40 */ cpu->r[3] = cpu->r[31] + 0x0000021Cu;
|
|
/* 0223EA44 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
/* 0223EA48 */ _t34 = cpu->r[31] + 0x000001A8u;
|
|
/* 0223EA48 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0223EA4C */ cpu->r[8] = 0x00000000u;
|
|
/* 0223EA50 */ _t35 = cpu->r[31] + 0x0000013Cu;
|
|
/* 0223EA50 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[8]);
|
|
/* 0223EA54 */ _t36 = cpu->r[31] + 0x000001B0u;
|
|
/* 0223EA54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0223EA58 */ _t37 = cpu->r[31] + 0x00000220u;
|
|
/* 0223EA58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 0223EA5C */ _t38 = cpu->r[31] + 0x00000228u;
|
|
/* 0223EA5C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 0223EA60 */ _t39 = cpu->r[31] + 0x000001ACu;
|
|
/* 0223EA60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0223EA64 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 0223EA64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0223EA68 */ _t41 = cpu->r[31] + 0x00000224u;
|
|
/* 0223EA68 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 0223EA6C */ _t42 = cpu->r[31] + 0x00000140u;
|
|
/* 0223EA6C */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 0223EA70 */ _t43 = cpu->r[12] + 0x00000394u;
|
|
/* 0223EA70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0223EA74 */ cpu->ctr = cpu->r[8];
|
|
/* 0223EA78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223EA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223EA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223EA84 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EA84 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0223EA84 */ if (_t45) goto L_0223EAF0; else goto L_0223EA88;
|
|
L_0223EA88: ; // 0x223ea88
|
|
/* 0223EA88 */ _t46 = cpu->r[31] + 0x000001B4u;
|
|
/* 0223EA88 */ cpu->r[10] = rbrew_read8(cpu->mem, _t46);
|
|
/* 0223EA8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223EA90 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EA90 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0223EA90 */ if (_t48) goto L_0223EAF0; else goto L_0223EA94;
|
|
L_0223EA94: ; // 0x223ea94
|
|
/* 0223EA94 */ _t49 = cpu->r[31] + 0x00000138u;
|
|
/* 0223EA94 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0223EA98 */ /* nop */
|
|
/* 0223EA9C */ cpu->f[11] = cpu->f[13] + cpu->f[13];
|
|
/* 0223EAA0 */ /* nop */
|
|
/* 0223EAA4 */ cpu->f[0] = -cpu->f[11];
|
|
/* 0223EAA8 */ _t50 = cpu->r[31] + 0x00000228u;
|
|
/* 0223EAA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0223EAAC */ _t51 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0223EAAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0223EAB0 */ /* nop */
|
|
/* 0223EAB4 */ /* nop */
|
|
/* 0223EAB8 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0223EAB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0223EABC */ cpu->f[0] = cpu->f[11] * cpu->f[0];
|
|
/* 0223EAC0 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EAC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0223EAC4 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EAC4 */ rbrew_write32(cpu->mem, _t54, cpu->r[7]);
|
|
/* 0223EAC8 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 0223EAC8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 0223EACC */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0223EACC */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0223EAD0 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0223EAD0 */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 0223EAD4 */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223EAD4 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0223EAD8 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223EAD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0223EADC */ /* nop */
|
|
/* 0223EAE0 */ cpu->f[13] = cpu->f[13] + cpu->f[11];
|
|
/* 0223EAE4 */ /* nop */
|
|
/* 0223EAE8 */ /* nop */
|
|
/* 0223EAEC */ _t60 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0223EAEC */ rbrew_write_f32(cpu->mem, _t60, cpu->f[13]);
|
|
L_0223EAF0: ; // 0x223eaf0
|
|
/* 0223EAF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223EAF4 */ Gambit_fn_0222D730(cpu);
|
|
/* 0223EAF8 */ _t61 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223EAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0223EAFC */ _t62 = cpu->r[1] + 0x00000024u;
|
|
/* 0223EAFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0223EB00 */ cpu->lr = cpu->r[0];
|
|
/* 0223EB04 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0223EB08 */ return;
|
|
}
|
|
|
|
// fn_0223EB0C @ 0x223eb0c
|
|
void Gambit_fn_0223EB0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0223EB0C: ; // 0x223eb0c
|
|
/* 0223EB0C */ cpu->r[0] = cpu->lr;
|
|
/* 0223EB10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223EB10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223EB10 */ cpu->r[1] = _t0;
|
|
/* 0223EB14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EB14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223EB18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223EB1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EB1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223EB20 */ _t3 = cpu->r[31] + 0x000001B4u;
|
|
/* 0223EB20 */ cpu->r[9] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0223EB24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223EB28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EB28 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223EB28 */ if (_t5) goto L_0223EB2C; else goto L_0223EB44;
|
|
L_0223EB2C: ; // 0x223eb2c
|
|
/* 0223EB2C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EB2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223EB30 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EB30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223EB34 */ cpu->lr = cpu->r[0];
|
|
/* 0223EB38 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223EB3C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223EB40 */ return;
|
|
L_0223EB44: ; // 0x223eb44
|
|
/* 0223EB44 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223EB48 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0223EB48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223EB4C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0223EB4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223EB50 */ _t10 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0223EB50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223EB54 */ cpu->ctr = cpu->r[0];
|
|
/* 0223EB58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223EB5C */ _t11 = cpu->r[31] + 0x00000024u;
|
|
/* 0223EB5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223EB60 */ cpu->r[0] = cpu->r[3] + cpu->r[8];
|
|
/* 0223EB64 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223EB68 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EB68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223EB6C */ cpu->r[11] = cpu->r[10] ^ 0x00000001u;
|
|
/* 0223EB70 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EB70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223EB74 */ cpu->lr = cpu->r[0];
|
|
/* 0223EB78 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223EB7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223EB80 */ return;
|
|
}
|
|
|
|
// fn_0223EB10 @ 0x223eb10
|
|
void Gambit_fn_0223EB10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0223EB10: ; // 0x223eb10
|
|
/* 0223EB10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223EB10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223EB10 */ cpu->r[1] = _t0;
|
|
/* 0223EB14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EB14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223EB18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223EB1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EB1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223EB20 */ _t3 = cpu->r[31] + 0x000001B4u;
|
|
/* 0223EB20 */ cpu->r[9] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0223EB24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223EB28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EB28 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223EB28 */ if (_t5) goto L_0223EB2C; else goto L_0223EB44;
|
|
L_0223EB2C: ; // 0x223eb2c
|
|
/* 0223EB2C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EB2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223EB30 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EB30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223EB34 */ cpu->lr = cpu->r[0];
|
|
/* 0223EB38 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223EB3C */ cpu->r[3] = 0x00000001u;
|
|
/* 0223EB40 */ return;
|
|
L_0223EB44: ; // 0x223eb44
|
|
/* 0223EB44 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0223EB48 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0223EB48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223EB4C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0223EB4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223EB50 */ _t10 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0223EB50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223EB54 */ cpu->ctr = cpu->r[0];
|
|
/* 0223EB58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223EB5C */ _t11 = cpu->r[31] + 0x00000024u;
|
|
/* 0223EB5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223EB60 */ cpu->r[0] = cpu->r[3] + cpu->r[8];
|
|
/* 0223EB64 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223EB68 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0223EB68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223EB6C */ cpu->r[11] = cpu->r[10] ^ 0x00000001u;
|
|
/* 0223EB70 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EB70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223EB74 */ cpu->lr = cpu->r[0];
|
|
/* 0223EB78 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223EB7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223EB80 */ return;
|
|
}
|
|
|
|
// fn_0223EB84 @ 0x223eb84
|
|
void Gambit_fn_0223EB84(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_0223EB84: ; // 0x223eb84
|
|
/* 0223EB84 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0223EB84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223EB84 */ cpu->r[1] = _t0;
|
|
/* 0223EB88 */ /* nop */
|
|
/* 0223EB8C */ cpu->r[0] = cpu->lr;
|
|
/* 0223EB90 */ cpu->r[31] = 0x00000000u;
|
|
/* 0223EB94 */ cpu->r[27] = 0x101D0000u;
|
|
/* 0223EB98 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0223EB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223EB9C */ cpu->r[29] = cpu->r[3];
|
|
/* 0223EBA0 */ cpu->r[21] = 0x101D0000u;
|
|
/* 0223EBA4 */ cpu->r[22] = 0x101D0000u;
|
|
/* 0223EBA8 */ cpu->r[30] = cpu->r[31];
|
|
/* 0223EBAC */ cpu->r[24] = 0x00000001u;
|
|
/* 0223EBB0 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0223EBB4 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0223EBB8 */ cpu->r[28] = 0x10050000u;
|
|
/* 0223EBBC */ cpu->r[27] = cpu->r[27] + 0xFFFFFFA0u;
|
|
/* 0223EBC0 */ _t2 = cpu->r[29] + 0x00000030u;
|
|
/* 0223EBC0 */ cpu->r[23] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223EBC4 */ cpu->r[28] = cpu->r[28] + 0x00002D6Cu;
|
|
L_0223EBC8: ; // 0x223ebc8
|
|
/* 0223EBC8 */ _t3 = cpu->r[25] + 0xFFFFE5F8u;
|
|
/* 0223EBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223EBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223EBD0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EBD0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223EBD0 */ if (_t5) goto L_0223EBD4; else goto L_0223EBEC;
|
|
L_0223EBD4: ; // 0x223ebd4
|
|
/* 0223EBD4 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0223EBD8 */ cpu->r[3] = cpu->r[26] + 0x00004F95u;
|
|
/* 0223EBDC */ cpu->r[5] = 0x00000016u;
|
|
/* 0223EBE0 */ cpu->r[4] = cpu->r[4] + 0x00005554u;
|
|
/* 0223EBE4 */ _t6 = cpu->r[25] + 0xFFFFE5F8u;
|
|
/* 0223EBE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[24]);
|
|
/* 0223EBE8 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0223EBEC: ; // 0x223ebec
|
|
/* 0223EBEC */ _t7 = cpu->r[22] + 0xFFFFE5F4u;
|
|
/* 0223EBEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223EBF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223EBF4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EBF4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223EBF4 */ if (_t9) goto L_0223EBF8; else goto L_0223EC00;
|
|
L_0223EBF8: ; // 0x223ebf8
|
|
/* 0223EBF8 */ _t10 = cpu->r[21] + 0xFFFFFF9Cu;
|
|
/* 0223EBF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 0223EBFC */ _t11 = cpu->r[22] + 0xFFFFE5F4u;
|
|
/* 0223EBFC */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
L_0223EC00: ; // 0x223ec00
|
|
/* 0223EC00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 0223EC04 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223EC04 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223EC04 */ if (_t13) goto L_0223EC30; else goto L_0223EC08;
|
|
L_0223EC08: ; // 0x223ec08
|
|
/* 0223EC08 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EC08 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 0223EC0C */ cpu->r[0] = 0x00000000u;
|
|
/* 0223EC10 */ cpu->r[3] = cpu->r[23];
|
|
/* 0223EC14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223EC18 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0223EC18 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0223EC1C */ Gambit_fn_027B70B8(cpu);
|
|
/* 0223EC20 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0223EC24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 0223EC28 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223EC28 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0223EC28 */ if (_t17) goto L_0223EBC8; else goto L_0223EC2C;
|
|
L_0223EC2C: ; // 0x223ec2c
|
|
/* 0223EC2C */ goto L_0223EC9C;
|
|
L_0223EC30: ; // 0x223ec30
|
|
/* 0223EC30 */ _t18 = cpu->r[21] + 0xFFFFFF9Cu;
|
|
/* 0223EC30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223EC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223EC38 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EC38 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223EC38 */ if (_t20) goto L_0223EC3C; else goto L_0223EC74;
|
|
L_0223EC3C: ; // 0x223ec3c
|
|
/* 0223EC3C */ Gambit_fn_0282A450(cpu);
|
|
/* 0223EC40 */ cpu->r[20] = cpu->r[3];
|
|
/* 0223EC44 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0223EC48 */ _t21 = cpu->r[21] + 0xFFFFFF9Cu;
|
|
/* 0223EC48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223EC4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223EC50 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EC50 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223EC50 */ if (_t23) goto L_0223EC54; else goto L_0223EC68;
|
|
L_0223EC54: ; // 0x223ec54
|
|
/* 0223EC54 */ cpu->r[5] = 0x00000003u;
|
|
/* 0223EC58 */ cpu->r[4] = cpu->r[26] + 0x00004F95u;
|
|
/* 0223EC5C */ cpu->r[3] = cpu->r[27];
|
|
/* 0223EC60 */ Gambit_fn_0282A374(cpu);
|
|
/* 0223EC64 */ _t24 = cpu->r[21] + 0xFFFFFF9Cu;
|
|
/* 0223EC64 */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
L_0223EC68: ; // 0x223ec68
|
|
/* 0223EC68 */ cpu->r[3] = cpu->r[20];
|
|
/* 0223EC6C */ Gambit_fn_02837030(cpu);
|
|
/* 0223EC70 */ _t25 = cpu->r[21] + 0xFFFFFF9Cu;
|
|
/* 0223EC70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
L_0223EC74: ; // 0x223ec74
|
|
/* 0223EC74 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223EC78 */ _t26 = cpu->r[10] + cpu->r[11];
|
|
/* 0223EC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223EC7C */ cpu->r[3] = cpu->r[23];
|
|
/* 0223EC80 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EC80 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 0223EC84 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223EC88 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0223EC88 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0223EC8C */ Gambit_fn_027B70B8(cpu);
|
|
/* 0223EC90 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0223EC94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 0223EC98 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223EC98 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0223EC98 */ if (_t30) goto L_0223EBC8; else goto L_0223EC9C;
|
|
L_0223EC9C: ; // 0x223ec9c
|
|
/* 0223EC9C */ _t31 = cpu->r[29] + 0x00000128u;
|
|
/* 0223EC9C */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 0223ECA0 */ _t32 = cpu->r[29] + 0x00000128u;
|
|
/* 0223ECA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0223ECA4 */ /* nop */
|
|
/* 0223ECA8 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 0223ECA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0223ECAC */ cpu->lr = cpu->r[0];
|
|
/* 0223ECB0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0223ECB4 */ return;
|
|
}
|
|
|
|
// fn_0223ECB8 @ 0x223ecb8
|
|
void Gambit_fn_0223ECB8(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_0223ECB8: ; // 0x223ecb8
|
|
/* 0223ECB8 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0223ECB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223ECB8 */ cpu->r[1] = _t0;
|
|
/* 0223ECBC */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0223ECBC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0223ECC0 */ /* nop */
|
|
/* 0223ECC4 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0223ECC4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0223ECC8 */ /* nop */
|
|
/* 0223ECCC */ /* nop */
|
|
/* 0223ECD0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223ECD4 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 0223ECD4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0223ECD8 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0223ECD8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 0223ECDC */ /* nop */
|
|
/* 0223ECE0 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 0223ECE0 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0223ECE4 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 0223ECE4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0223ECE8 */ /* nop */
|
|
/* 0223ECEC */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 0223ECEC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0223ECF0 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 0223ECF4 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 0223ECF4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 0223ECF8 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0223ECFC */ cpu->r[7] = 0x101E0000u;
|
|
/* 0223ED00 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0223ED00 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0223ED04 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 0223ED08 */ _t10 = cpu->r[7] + 0x0000308Cu;
|
|
/* 0223ED08 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0223ED08 */ cpu->r[7] = _t10;
|
|
/* 0223ED0C */ cpu->r[5] = 0x101E0000u;
|
|
/* 0223ED10 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0223ED14 */ _t11 = cpu->r[5] + 0x00003094u;
|
|
/* 0223ED14 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 0223ED14 */ cpu->r[5] = _t11;
|
|
/* 0223ED18 */ cpu->r[10] = cpu->r[10] + 0x000030A4u;
|
|
/* 0223ED1C */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 0223ED1C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0223ED20 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0223ED24 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 0223ED24 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0223ED28 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 0223ED2C */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 0223ED2C */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 0223ED30 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0223ED34 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 0223ED34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223ED38 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0223ED3C */ _t16 = cpu->r[12] + 0x0000309Cu;
|
|
/* 0223ED3C */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 0223ED3C */ cpu->r[12] = _t16;
|
|
/* 0223ED40 */ cpu->r[11] = 0x00000002u;
|
|
/* 0223ED44 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 0223ED44 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223ED48 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0223ED48 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223ED4C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0223ED4C */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0223ED50 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0223ED50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223ED54 */ _t21 = cpu->r[31] + 0x000030B8u;
|
|
/* 0223ED54 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0223ED54 */ cpu->r[31] = _t21;
|
|
/* 0223ED58 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223ED5C */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 0223ED5C */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 0223ED60 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0223ED64 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0223ED64 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0223ED68 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 0223ED68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0223ED68 */ cpu->r[12] = _t24;
|
|
/* 0223ED6C */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 0223ED6C */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 0223ED70 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 0223ED70 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0223ED74 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 0223ED74 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0223ED78 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223ED78 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 0223ED7C */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 0223ED7C */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0223ED80 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 0223ED80 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 0223ED84 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0223ED88 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 0223ED88 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 0223ED8C */ cpu->r[6] = 0x101F0000u;
|
|
/* 0223ED90 */ _t32 = cpu->r[7] + 0x000030B4u;
|
|
/* 0223ED90 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0223ED94 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 0223ED94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0223ED94 */ cpu->r[6] = _t33;
|
|
/* 0223ED98 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 0223ED98 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 0223ED9C */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 0223ED9C */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 0223EDA0 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0223EDA4 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0223EDA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0223EDA8 */ _t37 = cpu->r[5] + 0x000030ACu;
|
|
/* 0223EDA8 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 0223EDA8 */ cpu->r[5] = _t37;
|
|
/* 0223EDAC */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 0223EDAC */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 0223EDB0 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 0223EDB0 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 0223EDB4 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 0223EDB4 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0223EDB8 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0223EDB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0223EDBC */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 0223EDBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0223EDC0 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 0223EDC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0223EDC4 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0223EDC4 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 0223EDC8 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 0223EDC8 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 0223EDCC */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 0223EDCC */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 0223EDD0 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223EDD0 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 0223EDD4 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 0223EDD4 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 0223EDD8 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 0223EDD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0223EDDC */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0223EDDC */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 0223EDE0 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0223EDE4 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 0223EDE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0223EDE8 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 0223EDE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0223EDE8 */ cpu->r[11] = _t52;
|
|
/* 0223EDEC */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 0223EDEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0223EDF0 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0223EDF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223EDF4 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 0223EDF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0223EDF8 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 0223EDF8 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 0223EDFC */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 0223EDFC */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0223EE00 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 0223EE00 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 0223EE04 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0223EE08 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0223EE08 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 0223EE0C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0223EE10 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 0223EE10 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 0223EE14 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 0223EE18 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 0223EE18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0223EE18 */ cpu->r[12] = _t61;
|
|
/* 0223EE1C */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 0223EE1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0223EE20 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0223EE20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0223EE24 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 0223EE24 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 0223EE28 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 0223EE28 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0223EE2C */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 0223EE2C */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 0223EE30 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 0223EE30 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 0223EE34 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 0223EE34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0223EE38 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0223EE38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0223EE3C */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 0223EE3C */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 0223EE40 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0223EE40 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 0223EE44 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0223EE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0223EE48 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0223EE48 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 0223EE4C */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0223EE4C */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0223EE50 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 0223EE50 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 0223EE54 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 0223EE54 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 0223EE58 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 0223EE58 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 0223EE5C */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 0223EE5C */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 0223EE60 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 0223EE60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0223EE64 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0223EE68 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0223EE68 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 0223EE6C */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 0223EE6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0223EE6C */ cpu->r[10] = _t81;
|
|
/* 0223EE70 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 0223EE70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0223EE74 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 0223EE74 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0223EE78 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 0223EE78 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 0223EE7C */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 0223EE7C */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0223EE80 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 0223EE80 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0223EE84 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223EE88 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 0223EE88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0223EE8C */ _t88 = cpu->r[12] + 0x00002DFCu;
|
|
/* 0223EE8C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0223EE90 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0223EE90 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 0223EE94 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 0223EE94 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 0223EE98 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 0223EE98 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 0223EE9C */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0223EE9C */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 0223EEA0 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 0223EEA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0223EEA4 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 0223EEA4 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 0223EEA8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223EEAC */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 0223EEAC */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 0223EEB0 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0223EEB4 */ _t96 = cpu->r[12] + 0x00002EE4u;
|
|
/* 0223EEB4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0223EEB8 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 0223EEB8 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 0223EEBC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223EEC0 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 0223EEC0 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 0223EEC4 */ _t99 = cpu->r[12] + 0x00002EE0u;
|
|
/* 0223EEC4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0223EEC8 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223EECC */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0223EECC */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0223EED0 */ _t101 = cpu->r[11] + 0x00002E44u;
|
|
/* 0223EED0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0223EED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 0223EED8 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 0223EED8 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 0223EEDC */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EEDC */ _t104 = _t103 & 0x00000001u;
|
|
/* 0223EEDC */ if (_t104) goto L_0223EEE0; else goto L_0223EEF0;
|
|
L_0223EEE0: ; // 0x223eee0
|
|
/* 0223EEE0 */ cpu->r[3] = 0x00000010u;
|
|
/* 0223EEE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223EEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223EEEC */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EEEC */ _t106 = _t105 & 0x00000001u;
|
|
/* 0223EEEC */ if (_t106) goto L_0223EF00; else goto L_0223EEF0;
|
|
L_0223EEF0: ; // 0x223eef0
|
|
/* 0223EEF0 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 0223EEF0 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 0223EEF4 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 0223EEF4 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 0223EEF8 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 0223EEF8 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 0223EEFC */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223EEFC */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_0223EF00: ; // 0x223ef00
|
|
/* 0223EF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 0223EF04 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 0223EF08 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EF08 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0223EF08 */ if (_t112) goto L_0223EF0C; else goto L_0223EF1C;
|
|
L_0223EF0C: ; // 0x223ef0c
|
|
/* 0223EF0C */ cpu->r[3] = 0x00000010u;
|
|
/* 0223EF10 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223EF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223EF18 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EF18 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0223EF18 */ if (_t114) goto L_0223EF2C; else goto L_0223EF1C;
|
|
L_0223EF1C: ; // 0x223ef1c
|
|
/* 0223EF1C */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 0223EF1C */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0223EF20 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0223EF20 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 0223EF24 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 0223EF24 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 0223EF28 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223EF28 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_0223EF2C: ; // 0x223ef2c
|
|
/* 0223EF2C */ cpu->r[8] = 0x101F0000u;
|
|
/* 0223EF30 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 0223EF34 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 0223EF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0223EF38 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 0223EF38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0223EF3C */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 0223EF3C */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0223EF40 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 0223EF40 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 0223EF44 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0223EF44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0223EF48 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 0223EF48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0223EF4C */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 0223EF4C */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0223EF50 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 0223EF50 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 0223EF54 */ /* nop */
|
|
/* 0223EF58 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 0223EF58 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0223EF5C */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 0223EF5C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0223EF60 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 0223EF60 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 0223EF64 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 0223EF64 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 0223EF68 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 0223EF68 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0223EF6C */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 0223EF6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0223EF70 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0223EF70 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 0223EF74 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 0223EF74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 0223EF78 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223EF78 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0223EF78 */ if (_t136) goto L_0223EF7C; // else: addr-0 trap, fall-through
|
|
L_0223EF7C: ; // 0x223ef7c
|
|
/* 0223EF7C */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0223EF7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0223EF80 */ cpu->lr = cpu->r[0];
|
|
/* 0223EF84 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0223EF88 */ return;
|
|
}
|
|
|
|
// fn_0223EF8C @ 0x223ef8c
|
|
void Gambit_fn_0223EF8C(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_0223EF8C: ; // 0x223ef8c
|
|
/* 0223EF8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223EF90 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EF90 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0223EF90 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223EF90 */ goto L_0223EF94;
|
|
L_0223EF94: ; // 0x223ef94
|
|
/* 0223EF94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223EF94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223EF98 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EF98 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223EF98 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223EF98 */ goto L_0223EF9C;
|
|
L_0223EF9C: ; // 0x223ef9c
|
|
/* 0223EF9C */ 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_0223EFA0 @ 0x223efa0
|
|
void Gambit_fn_0223EFA0(CPUState* cpu) {
|
|
L_0223EFA0: ; // 0x223efa0
|
|
/* 0223EFA0 */ return;
|
|
}
|
|
|
|
// fn_0223EFB0 @ 0x223efb0
|
|
void Gambit_fn_0223EFB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223EFB0: ; // 0x223efb0
|
|
/* 0223EFB0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0223EFB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223EFB0 */ cpu->r[1] = _t0;
|
|
/* 0223EFB4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EFB4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223EFB4 */ if (_t2) goto L_0223EFB8; else goto L_0223EFC0;
|
|
L_0223EFB8: ; // 0x223efb8
|
|
/* 0223EFB8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0223EFBC */ Gambit_fn_02801A78(cpu);
|
|
L_0223EFC0: ; // 0x223efc0
|
|
/* 0223EFC0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223EFC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223EFC4 */ cpu->lr = cpu->r[0];
|
|
/* 0223EFC8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0223EFCC */ return;
|
|
}
|
|
|
|
// fn_0223EFD0 @ 0x223efd0
|
|
void Gambit_fn_0223EFD0(CPUState* cpu) {
|
|
L_0223EFD0: ; // 0x223efd0
|
|
/* 0223EFD0 */ return;
|
|
}
|
|
|
|
// fn_0223EFD4 @ 0x223efd4
|
|
void Gambit_fn_0223EFD4(CPUState* cpu) {
|
|
L_0223EFD4: ; // 0x223efd4
|
|
/* 0223EFD4 */ return;
|
|
}
|
|
|
|
// fn_0223EFD8 @ 0x223efd8
|
|
void Gambit_fn_0223EFD8(CPUState* cpu) {
|
|
L_0223EFD8: ; // 0x223efd8
|
|
/* 0223EFD8 */ return;
|
|
}
|
|
|
|
// fn_0223EFDC @ 0x223efdc
|
|
void Gambit_fn_0223EFDC(CPUState* cpu) {
|
|
L_0223EFDC: ; // 0x223efdc
|
|
/* 0223EFDC */ return;
|
|
}
|
|
|
|
// fn_0223EFE0 @ 0x223efe0
|
|
void Gambit_fn_0223EFE0(CPUState* cpu) {
|
|
L_0223EFE0: ; // 0x223efe0
|
|
/* 0223EFE0 */ return;
|
|
}
|
|
|
|
// fn_0223EFE4 @ 0x223efe4
|
|
void Gambit_fn_0223EFE4(CPUState* cpu) {
|
|
L_0223EFE4: ; // 0x223efe4
|
|
/* 0223EFE4 */ return;
|
|
}
|
|
|
|
// fn_0223EFE8 @ 0x223efe8
|
|
void Gambit_fn_0223EFE8(CPUState* cpu) {
|
|
L_0223EFE8: ; // 0x223efe8
|
|
/* 0223EFE8 */ return;
|
|
}
|
|
|
|
// fn_0223EFEC @ 0x223efec
|
|
void Gambit_fn_0223EFEC(CPUState* cpu) {
|
|
L_0223EFEC: ; // 0x223efec
|
|
/* 0223EFEC */ return;
|
|
}
|
|
|
|
// fn_0223EFF0 @ 0x223eff0
|
|
void Gambit_fn_0223EFF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223EFF0: ; // 0x223eff0
|
|
/* 0223EFF0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223EFF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223EFF4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223EFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223EFF8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223EFF8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223EFF8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223EFF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223EFF8 */ goto L_0223EFFC;
|
|
L_0223EFFC: ; // 0x223effc
|
|
/* 0223EFFC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223EFFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F000 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0223F000 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F004 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F008 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F00C @ 0x223f00c
|
|
void Gambit_fn_0223F00C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F00C: ; // 0x223f00c
|
|
/* 0223F00C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F00C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F010 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F014 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F014 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F014 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F014 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F014 */ goto L_0223F018;
|
|
L_0223F018: ; // 0x223f018
|
|
/* 0223F018 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F018 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F01C */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0223F01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F020 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F024 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F028 @ 0x223f028
|
|
void Gambit_fn_0223F028(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F028: ; // 0x223f028
|
|
/* 0223F028 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F02C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F030 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F030 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F030 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F030 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F030 */ goto L_0223F034;
|
|
L_0223F034: ; // 0x223f034
|
|
/* 0223F034 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F034 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F038 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0223F038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F03C */ cpu->ctr = cpu->r[0];
|
|
/* 0223F040 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F044 @ 0x223f044
|
|
void Gambit_fn_0223F044(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F044: ; // 0x223f044
|
|
/* 0223F044 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F048 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0223F048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F04C */ cpu->ctr = cpu->r[0];
|
|
/* 0223F050 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F054 @ 0x223f054
|
|
void Gambit_fn_0223F054(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F054: ; // 0x223f054
|
|
/* 0223F054 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F058 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223F058 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F058 */ cpu->r[1] = _t0;
|
|
/* 0223F05C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F05C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F060 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F064 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F064 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F068 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223F068 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223F070 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F070 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223F070 */ if (_t5) goto L_0223F074; else goto L_0223F090;
|
|
L_0223F074: ; // 0x223f074
|
|
/* 0223F074 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223F074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223F078 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223F078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F07C */ cpu->ctr = cpu->r[0];
|
|
/* 0223F080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223F088 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223F08C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223F08C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223F090: ; // 0x223f090
|
|
/* 0223F090 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F094 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F098 */ cpu->lr = cpu->r[0];
|
|
/* 0223F09C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223F0A0 */ return;
|
|
}
|
|
|
|
// fn_0223F058 @ 0x223f058
|
|
void Gambit_fn_0223F058(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F058: ; // 0x223f058
|
|
/* 0223F058 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223F058 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F058 */ cpu->r[1] = _t0;
|
|
/* 0223F05C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F05C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F060 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F064 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F064 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F068 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223F068 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0223F070 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F070 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223F070 */ if (_t5) goto L_0223F074; else goto L_0223F090;
|
|
L_0223F074: ; // 0x223f074
|
|
/* 0223F074 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223F074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223F078 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223F078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F07C */ cpu->ctr = cpu->r[0];
|
|
/* 0223F080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223F088 */ cpu->r[0] = 0x00000002u;
|
|
/* 0223F08C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223F08C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0223F090: ; // 0x223f090
|
|
/* 0223F090 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F094 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F098 */ cpu->lr = cpu->r[0];
|
|
/* 0223F09C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223F0A0 */ return;
|
|
}
|
|
|
|
// fn_0223F0A4 @ 0x223f0a4
|
|
void Gambit_fn_0223F0A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F0A4: ; // 0x223f0a4
|
|
/* 0223F0A4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F0A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F0A8 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0223F0A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F0AC */ cpu->ctr = cpu->r[0];
|
|
/* 0223F0B0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F0B4 @ 0x223f0b4
|
|
void Gambit_fn_0223F0B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F0B4: ; // 0x223f0b4
|
|
/* 0223F0B4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F0B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F0B8 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223F0B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F0BC */ cpu->ctr = cpu->r[0];
|
|
/* 0223F0C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F0C4 @ 0x223f0c4
|
|
void Gambit_fn_0223F0C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F0C4: ; // 0x223f0c4
|
|
/* 0223F0C4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F0C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F0C8 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0223F0C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F0CC */ cpu->ctr = cpu->r[0];
|
|
/* 0223F0D0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F0D4 @ 0x223f0d4
|
|
void Gambit_fn_0223F0D4(CPUState* cpu) {
|
|
L_0223F0D4: ; // 0x223f0d4
|
|
/* 0223F0D4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F0D8 */ return;
|
|
}
|
|
|
|
// fn_0223F0DC @ 0x223f0dc
|
|
void Gambit_fn_0223F0DC(CPUState* cpu) {
|
|
L_0223F0DC: ; // 0x223f0dc
|
|
/* 0223F0DC */ return;
|
|
}
|
|
|
|
// fn_0223F0E0 @ 0x223f0e0
|
|
void Gambit_fn_0223F0E0(CPUState* cpu) {
|
|
L_0223F0E0: ; // 0x223f0e0
|
|
/* 0223F0E0 */ return;
|
|
}
|
|
|
|
// fn_0223F0E4 @ 0x223f0e4
|
|
void Gambit_fn_0223F0E4(CPUState* cpu) {
|
|
L_0223F0E4: ; // 0x223f0e4
|
|
/* 0223F0E4 */ return;
|
|
}
|
|
|
|
// fn_0223F0E8 @ 0x223f0e8
|
|
void Gambit_fn_0223F0E8(CPUState* cpu) {
|
|
L_0223F0E8: ; // 0x223f0e8
|
|
/* 0223F0E8 */ return;
|
|
}
|
|
|
|
// fn_0223F0EC @ 0x223f0ec
|
|
void Gambit_fn_0223F0EC(CPUState* cpu) {
|
|
L_0223F0EC: ; // 0x223f0ec
|
|
/* 0223F0EC */ return;
|
|
}
|
|
|
|
// fn_0223F0F0 @ 0x223f0f0
|
|
void Gambit_fn_0223F0F0(CPUState* cpu) {
|
|
L_0223F0F0: ; // 0x223f0f0
|
|
/* 0223F0F0 */ return;
|
|
}
|
|
|
|
// fn_0223F0F4 @ 0x223f0f4
|
|
void Gambit_fn_0223F0F4(CPUState* cpu) {
|
|
L_0223F0F4: ; // 0x223f0f4
|
|
/* 0223F0F4 */ return;
|
|
}
|
|
|
|
// fn_0223F0F8 @ 0x223f0f8
|
|
void Gambit_fn_0223F0F8(CPUState* cpu) {
|
|
L_0223F0F8: ; // 0x223f0f8
|
|
/* 0223F0F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F0FC */ return;
|
|
}
|
|
|
|
// fn_0223F100 @ 0x223f100
|
|
void Gambit_fn_0223F100(CPUState* cpu) {
|
|
L_0223F100: ; // 0x223f100
|
|
/* 0223F100 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F104 */ return;
|
|
}
|
|
|
|
// fn_0223F108 @ 0x223f108
|
|
void Gambit_fn_0223F108(CPUState* cpu) {
|
|
L_0223F108: ; // 0x223f108
|
|
/* 0223F108 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F10C */ return;
|
|
}
|
|
|
|
// fn_0223F110 @ 0x223f110
|
|
void Gambit_fn_0223F110(CPUState* cpu) {
|
|
L_0223F110: ; // 0x223f110
|
|
/* 0223F110 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F114 */ return;
|
|
}
|
|
|
|
// fn_0223F118 @ 0x223f118
|
|
void Gambit_fn_0223F118(CPUState* cpu) {
|
|
L_0223F118: ; // 0x223f118
|
|
/* 0223F118 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F11C */ return;
|
|
}
|
|
|
|
// fn_0223F120 @ 0x223f120
|
|
void Gambit_fn_0223F120(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F120: ; // 0x223f120
|
|
/* 0223F120 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F124 */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0223F124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F128 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F12C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F130 @ 0x223f130
|
|
void Gambit_fn_0223F130(CPUState* cpu) {
|
|
L_0223F130: ; // 0x223f130
|
|
/* 0223F130 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F134 */ return;
|
|
}
|
|
|
|
// fn_0223F138 @ 0x223f138
|
|
void Gambit_fn_0223F138(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F138: ; // 0x223f138
|
|
/* 0223F138 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F138 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F13C */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 0223F13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F140 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F144 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F148 @ 0x223f148
|
|
void Gambit_fn_0223F148(CPUState* cpu) {
|
|
L_0223F148: ; // 0x223f148
|
|
/* 0223F148 */ cpu->r[3] = 0x00000002u;
|
|
/* 0223F14C */ return;
|
|
}
|
|
|
|
// fn_0223F150 @ 0x223f150
|
|
void Gambit_fn_0223F150(CPUState* cpu) {
|
|
L_0223F150: ; // 0x223f150
|
|
/* 0223F150 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F154 */ return;
|
|
}
|
|
|
|
// fn_0223F158 @ 0x223f158
|
|
void Gambit_fn_0223F158(CPUState* cpu) {
|
|
L_0223F158: ; // 0x223f158
|
|
/* 0223F158 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F15C */ return;
|
|
}
|
|
|
|
// fn_0223F160 @ 0x223f160
|
|
void Gambit_fn_0223F160(CPUState* cpu) {
|
|
L_0223F160: ; // 0x223f160
|
|
/* 0223F160 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F164 */ return;
|
|
}
|
|
|
|
// fn_0223F168 @ 0x223f168
|
|
void Gambit_fn_0223F168(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F168: ; // 0x223f168
|
|
/* 0223F168 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 0223F168 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F16C */ return;
|
|
}
|
|
|
|
// fn_0223F170 @ 0x223f170
|
|
void Gambit_fn_0223F170(CPUState* cpu) {
|
|
L_0223F170: ; // 0x223f170
|
|
/* 0223F170 */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 0223F174 */ return;
|
|
}
|
|
|
|
// fn_0223F178 @ 0x223f178
|
|
void Gambit_fn_0223F178(CPUState* cpu) {
|
|
L_0223F178: ; // 0x223f178
|
|
/* 0223F178 */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 0223F17C */ return;
|
|
}
|
|
|
|
// fn_0223F180 @ 0x223f180
|
|
void Gambit_fn_0223F180(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F180: ; // 0x223f180
|
|
/* 0223F180 */ _t0 = cpu->r[3] + 0x000000E8u;
|
|
/* 0223F180 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223F184 */ return;
|
|
}
|
|
|
|
// fn_0223F188 @ 0x223f188
|
|
void Gambit_fn_0223F188(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F188: ; // 0x223f188
|
|
/* 0223F188 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F18C */ _t0 = cpu->r[12] + 0x00002EE8u;
|
|
/* 0223F18C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223F190 */ return;
|
|
}
|
|
|
|
// fn_0223F194 @ 0x223f194
|
|
void Gambit_fn_0223F194(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F194: ; // 0x223f194
|
|
/* 0223F194 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F198 */ _t0 = cpu->r[12] + 0x00002EE8u;
|
|
/* 0223F198 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223F19C */ return;
|
|
}
|
|
|
|
// fn_0223F1A0 @ 0x223f1a0
|
|
void Gambit_fn_0223F1A0(CPUState* cpu) {
|
|
L_0223F1A0: ; // 0x223f1a0
|
|
/* 0223F1A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F1A4 */ return;
|
|
}
|
|
|
|
// fn_0223F1A8 @ 0x223f1a8
|
|
void Gambit_fn_0223F1A8(CPUState* cpu) {
|
|
L_0223F1A8: ; // 0x223f1a8
|
|
/* 0223F1A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F1AC */ return;
|
|
}
|
|
|
|
// fn_0223F1B0 @ 0x223f1b0
|
|
void Gambit_fn_0223F1B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F1B0: ; // 0x223f1b0
|
|
/* 0223F1B0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F1B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F1B4 */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 0223F1B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F1B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F1BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F1C0 @ 0x223f1c0
|
|
void Gambit_fn_0223F1C0(CPUState* cpu) {
|
|
L_0223F1C0: ; // 0x223f1c0
|
|
/* 0223F1C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F1C4 */ return;
|
|
}
|
|
|
|
// fn_0223F1C8 @ 0x223f1c8
|
|
void Gambit_fn_0223F1C8(CPUState* cpu) {
|
|
L_0223F1C8: ; // 0x223f1c8
|
|
/* 0223F1C8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F1CC */ return;
|
|
}
|
|
|
|
// fn_0223F1D0 @ 0x223f1d0
|
|
void Gambit_fn_0223F1D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223F1D0: ; // 0x223f1d0
|
|
/* 0223F1D0 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223F1D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F1D4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F1D8 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 0223F1D8 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 0223F1D8 */ cpu->r[12] = _t2 | _t1;
|
|
/* 0223F1DC */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 0223F1DC */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0223F1E0 */ return;
|
|
}
|
|
|
|
// fn_0223F1E4 @ 0x223f1e4
|
|
void Gambit_fn_0223F1E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F1E4: ; // 0x223f1e4
|
|
/* 0223F1E4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F1E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F1E8 */ _t1 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0223F1E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F1EC */ cpu->ctr = cpu->r[0];
|
|
/* 0223F1F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F1F4 @ 0x223f1f4
|
|
void Gambit_fn_0223F1F4(CPUState* cpu) {
|
|
L_0223F1F4: ; // 0x223f1f4
|
|
/* 0223F1F4 */ return;
|
|
}
|
|
|
|
// fn_0223F1F8 @ 0x223f1f8
|
|
void Gambit_fn_0223F1F8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F1F8: ; // 0x223f1f8
|
|
/* 0223F1F8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F1FC */ _t0 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223F1FC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223F200 */ return;
|
|
}
|
|
|
|
// fn_0223F204 @ 0x223f204
|
|
void Gambit_fn_0223F204(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F204: ; // 0x223f204
|
|
/* 0223F204 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 0223F204 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223F208 */ return;
|
|
}
|
|
|
|
// fn_0223F20C @ 0x223f20c
|
|
void Gambit_fn_0223F20C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F20C: ; // 0x223f20c
|
|
/* 0223F20C */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 0223F20C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F210 */ return;
|
|
}
|
|
|
|
// fn_0223F214 @ 0x223f214
|
|
void Gambit_fn_0223F214(CPUState* cpu) {
|
|
L_0223F214: ; // 0x223f214
|
|
/* 0223F214 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F218 */ return;
|
|
}
|
|
|
|
// fn_0223F21C @ 0x223f21c
|
|
void Gambit_fn_0223F21C(CPUState* cpu) {
|
|
L_0223F21C: ; // 0x223f21c
|
|
/* 0223F21C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F220 */ return;
|
|
}
|
|
|
|
// fn_0223F224 @ 0x223f224
|
|
void Gambit_fn_0223F224(CPUState* cpu) {
|
|
L_0223F224: ; // 0x223f224
|
|
/* 0223F224 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F228 */ return;
|
|
}
|
|
|
|
// fn_0223F22C @ 0x223f22c
|
|
void Gambit_fn_0223F22C(CPUState* cpu) {
|
|
L_0223F22C: ; // 0x223f22c
|
|
/* 0223F22C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F230 */ return;
|
|
}
|
|
|
|
// fn_0223F234 @ 0x223f234
|
|
void Gambit_fn_0223F234(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F234: ; // 0x223f234
|
|
/* 0223F234 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 0223F234 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0223F238 */ return;
|
|
}
|
|
|
|
// fn_0223F23C @ 0x223f23c
|
|
void Gambit_fn_0223F23C(CPUState* cpu) {
|
|
L_0223F23C: ; // 0x223f23c
|
|
/* 0223F23C */ return;
|
|
}
|
|
|
|
// fn_0223F240 @ 0x223f240
|
|
void Gambit_fn_0223F240(CPUState* cpu) {
|
|
L_0223F240: ; // 0x223f240
|
|
/* 0223F240 */ return;
|
|
}
|
|
|
|
// fn_0223F244 @ 0x223f244
|
|
void Gambit_fn_0223F244(CPUState* cpu) {
|
|
L_0223F244: ; // 0x223f244
|
|
/* 0223F244 */ return;
|
|
}
|
|
|
|
// fn_0223F248 @ 0x223f248
|
|
void Gambit_fn_0223F248(CPUState* cpu) {
|
|
L_0223F248: ; // 0x223f248
|
|
/* 0223F248 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F24C */ return;
|
|
}
|
|
|
|
// fn_0223F250 @ 0x223f250
|
|
void Gambit_fn_0223F250(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0223F250: ; // 0x223f250
|
|
/* 0223F250 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F254 */ _t0 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223F254 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0223F258 */ return;
|
|
}
|
|
|
|
// fn_0223F25C @ 0x223f25c
|
|
void Gambit_fn_0223F25C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223F25C: ; // 0x223f25c
|
|
/* 0223F25C */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223F25C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F260 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0223F260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F264 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F264 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F264 */ if (_t2) goto L_0223F274; else goto L_0223F268;
|
|
L_0223F268: ; // 0x223f268
|
|
/* 0223F268 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F26C */ _t3 = cpu->r[12] + 0x00002DF4u;
|
|
/* 0223F26C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0223F270 */ return;
|
|
L_0223F274: ; // 0x223f274
|
|
/* 0223F274 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F278 */ _t4 = cpu->r[12] + 0x00002DFCu;
|
|
/* 0223F278 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0223F27C */ return;
|
|
}
|
|
|
|
// fn_0223F280 @ 0x223f280
|
|
void Gambit_fn_0223F280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
L_0223F280: ; // 0x223f280
|
|
/* 0223F280 */ goto L_0222E4C4;
|
|
}
|
|
|
|
// fn_0223F284 @ 0x223f284
|
|
void Gambit_fn_0223F284(CPUState* cpu) {
|
|
L_0223F284: ; // 0x223f284
|
|
/* 0223F284 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F288 */ return;
|
|
}
|
|
|
|
// fn_0223F28C @ 0x223f28c
|
|
void Gambit_fn_0223F28C(CPUState* cpu) {
|
|
L_0223F28C: ; // 0x223f28c
|
|
/* 0223F28C */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F290 */ return;
|
|
}
|
|
|
|
// fn_0223F294 @ 0x223f294
|
|
void Gambit_fn_0223F294(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F294: ; // 0x223f294
|
|
/* 0223F294 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0223F294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F298 */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 0223F29C */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 0223F29C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223F2A0 */ return;
|
|
}
|
|
|
|
// fn_0223F2A4 @ 0x223f2a4
|
|
void Gambit_fn_0223F2A4(CPUState* cpu) {
|
|
L_0223F2A4: ; // 0x223f2a4
|
|
/* 0223F2A4 */ cpu->r[3] = 0x10050000u;
|
|
/* 0223F2A8 */ cpu->r[3] = cpu->r[3] + 0x00002DE4u;
|
|
/* 0223F2AC */ return;
|
|
}
|
|
|
|
// fn_0223F2B0 @ 0x223f2b0
|
|
void Gambit_fn_0223F2B0(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_0223F2B0: ; // 0x223f2b0
|
|
/* 0223F2B0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223F2B4 */ _t0 = cpu->r[10] + 0xFFFFE5F0u;
|
|
/* 0223F2B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F2B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223F2BC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223F2C0 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF98u;
|
|
/* 0223F2C4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F2C4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F2C4 */ if (_t2) goto L_0223F2C8; else goto L_0223F2E0;
|
|
L_0223F2C8: ; // 0x223f2c8
|
|
/* 0223F2C8 */ cpu->r[0] = 0x10050000u;
|
|
/* 0223F2CC */ cpu->r[9] = 0x00000001u;
|
|
/* 0223F2D0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223F2D4 */ cpu->r[0] = cpu->r[0] + 0x00002DB4u;
|
|
/* 0223F2D8 */ _t3 = cpu->r[11] + 0xFFFFE5F0u;
|
|
/* 0223F2D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0223F2DC */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F2DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0223F2E0: ; // 0x223f2e0
|
|
/* 0223F2E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0223F2E4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F2E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223F2E4 */ if (_t6) goto L_0223F2E8; else goto L_0223F2F0;
|
|
L_0223F2E8: ; // 0x223f2e8
|
|
/* 0223F2E8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F2EC */ return;
|
|
L_0223F2F0: ; // 0x223f2f0
|
|
/* 0223F2F0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223F2F4 */ _t7 = cpu->r[9] + 0xFFFFDA00u;
|
|
/* 0223F2F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F2F8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223F2FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223F300 */ cpu->r[11] = cpu->r[11] + 0xFFFFFBFCu;
|
|
/* 0223F304 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F304 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223F304 */ if (_t9) goto L_0223F308; else goto L_0223F320;
|
|
L_0223F308: ; // 0x223f308
|
|
/* 0223F308 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223F30C */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F310 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223F314 */ cpu->r[9] = cpu->r[9] + 0x00002DA4u;
|
|
/* 0223F318 */ _t10 = cpu->r[10] + 0xFFFFDA00u;
|
|
/* 0223F318 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0223F31C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0223F31C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0223F320: ; // 0x223f320
|
|
/* 0223F320 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0223F324 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F324 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0223F324 */ if (_t13) goto L_0223F328; else goto L_0223F330;
|
|
L_0223F328: ; // 0x223f328
|
|
/* 0223F328 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F32C */ goto L_0223F3E8;
|
|
L_0223F330: ; // 0x223f330
|
|
/* 0223F330 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223F334 */ _t14 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 0223F334 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223F338 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223F33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223F340 */ cpu->r[9] = cpu->r[9] + 0xFFFFFB4Cu;
|
|
/* 0223F344 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F344 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223F344 */ if (_t16) goto L_0223F348; else goto L_0223F360;
|
|
L_0223F348: ; // 0x223f348
|
|
/* 0223F348 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223F34C */ cpu->r[10] = 0x00000001u;
|
|
/* 0223F350 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223F354 */ cpu->r[11] = cpu->r[11] + 0x00002D94u;
|
|
/* 0223F358 */ _t17 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 0223F358 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0223F35C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0223F35C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0223F360: ; // 0x223f360
|
|
/* 0223F360 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0223F364 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F364 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0223F364 */ if (_t20) goto L_0223F368; else goto L_0223F370;
|
|
L_0223F368: ; // 0x223f368
|
|
/* 0223F368 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F36C */ goto L_0223F3E4;
|
|
L_0223F370: ; // 0x223f370
|
|
/* 0223F370 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223F374 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0223F374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223F374 */ cpu->r[9] = _t21;
|
|
/* 0223F378 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223F37C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F380 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0223F384 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F384 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0223F384 */ if (_t23) goto L_0223F388; else goto L_0223F39C;
|
|
L_0223F388: ; // 0x223f388
|
|
/* 0223F388 */ cpu->r[0] = 0x10050000u;
|
|
/* 0223F38C */ cpu->r[11] = 0x00000001u;
|
|
/* 0223F390 */ cpu->r[0] = cpu->r[0] + 0x00002D84u;
|
|
/* 0223F394 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0223F394 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0223F398 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F398 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0223F39C: ; // 0x223f39c
|
|
/* 0223F39C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0223F3A0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F3A0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223F3A0 */ if (_t27) goto L_0223F3A4; else goto L_0223F3AC;
|
|
L_0223F3A4: ; // 0x223f3a4
|
|
/* 0223F3A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F3A8 */ goto L_0223F3E4;
|
|
L_0223F3AC: ; // 0x223f3ac
|
|
/* 0223F3AC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223F3B0 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0223F3B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0223F3B0 */ cpu->r[10] = _t28;
|
|
/* 0223F3B4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223F3B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0223F3BC */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0223F3C0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F3C0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0223F3C0 */ if (_t30) goto L_0223F3C4; else goto L_0223F3D8;
|
|
L_0223F3C4: ; // 0x223f3c4
|
|
/* 0223F3C4 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223F3C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F3CC */ cpu->r[9] = cpu->r[9] + 0x00002D5Cu;
|
|
/* 0223F3D0 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F3D0 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0223F3D4 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0223F3D4 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0223F3D8: ; // 0x223f3d8
|
|
/* 0223F3D8 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0223F3DC */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0223F3E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0223F3E4: ; // 0x223f3e4
|
|
/* 0223F3E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0223F3E8: ; // 0x223f3e8
|
|
/* 0223F3E8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0223F3EC */ return;
|
|
}
|
|
|
|
// fn_0223F3F0 @ 0x223f3f0
|
|
void Gambit_fn_0223F3F0(CPUState* cpu) {
|
|
L_0223F3F0: ; // 0x223f3f0
|
|
/* 0223F3F0 */ cpu->r[3] = cpu->r[3] + 0x000002D8u;
|
|
/* 0223F3F4 */ return;
|
|
}
|
|
|
|
// fn_0223F3F8 @ 0x223f3f8
|
|
void Gambit_fn_0223F3F8(CPUState* cpu) {
|
|
L_0223F3F8: ; // 0x223f3f8
|
|
/* 0223F3F8 */ cpu->r[3] = cpu->r[3] + 0x00000308u;
|
|
/* 0223F3FC */ return;
|
|
}
|
|
|
|
// fn_0223F400 @ 0x223f400
|
|
void Gambit_fn_0223F400(CPUState* cpu) {
|
|
L_0223F400: ; // 0x223f400
|
|
/* 0223F400 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F404 */ return;
|
|
}
|
|
|
|
// fn_0223F408 @ 0x223f408
|
|
void Gambit_fn_0223F408(CPUState* cpu) {
|
|
L_0223F408: ; // 0x223f408
|
|
/* 0223F408 */ cpu->r[3] = 0x00000002u;
|
|
/* 0223F40C */ return;
|
|
}
|
|
|
|
// fn_0223F410 @ 0x223f410
|
|
void Gambit_fn_0223F410(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_0223F410: ; // 0x223f410
|
|
/* 0223F410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223F414 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F414 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0223F414 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F414 */ goto L_0223F418;
|
|
L_0223F418: ; // 0x223f418
|
|
/* 0223F418 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F41C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F41C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223F41C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F41C */ goto L_0223F420;
|
|
L_0223F420: ; // 0x223f420
|
|
/* 0223F420 */ 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_0223F424 @ 0x223f424
|
|
void Gambit_fn_0223F424(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_0223F424: ; // 0x223f424
|
|
/* 0223F424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223F428 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F428 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0223F428 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F428 */ goto L_0223F42C;
|
|
L_0223F42C: ; // 0x223f42c
|
|
/* 0223F42C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F430 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F430 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0223F430 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F430 */ goto L_0223F434;
|
|
L_0223F434: ; // 0x223f434
|
|
/* 0223F434 */ 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_0223F43C @ 0x223f43c
|
|
void Gambit_fn_0223F43C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F43C: ; // 0x223f43c
|
|
/* 0223F43C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223F43C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F43C */ cpu->r[1] = _t0;
|
|
/* 0223F440 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F440 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F444 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223F448 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F448 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F44C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F44C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0223F44C */ if (_t4) goto L_0223F450; else goto L_0223F460;
|
|
L_0223F450: ; // 0x223f450
|
|
/* 0223F450 */ cpu->r[3] = 0x0000023Cu;
|
|
/* 0223F454 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223F458 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223F45C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F45C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223F45C */ if (_t6) goto L_0223F484; else goto L_0223F460;
|
|
L_0223F460: ; // 0x223f460
|
|
/* 0223F460 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F464 */ cpu->r[4] = 0x000000FFu;
|
|
/* 0223F468 */ cpu->r[5] = 0x00000000u;
|
|
/* 0223F46C */ Gambit_fn_02790BA4(cpu);
|
|
/* 0223F470 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F474 */ cpu->r[0] = 0x00000000u;
|
|
/* 0223F478 */ cpu->r[12] = cpu->r[12] + 0x000033E4u;
|
|
/* 0223F47C */ _t7 = cpu->r[31] + 0x00000238u;
|
|
/* 0223F47C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0223F480 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0223F480 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
L_0223F484: ; // 0x223f484
|
|
/* 0223F484 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F488 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F48C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F48C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F490 */ cpu->lr = cpu->r[0];
|
|
/* 0223F494 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223F498 */ return;
|
|
}
|
|
|
|
// fn_0223F49C @ 0x223f49c
|
|
void Gambit_fn_0223F49C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0223F49C: ; // 0x223f49c
|
|
/* 0223F49C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0223F49C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F49C */ cpu->r[1] = _t0;
|
|
/* 0223F4A0 */ /* nop */
|
|
/* 0223F4A4 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F4A8 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0223F4A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0223F4AC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F4B0 */ _t2 = cpu->r[31] + 0x00000030u;
|
|
/* 0223F4B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223F4B4 */ _t3 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F4B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F4B8 */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 0223F4B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F4BC */ cpu->r[29] = 0x00000000u;
|
|
/* 0223F4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 0223F4C4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223F4C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223F4C4 */ if (_t6) goto L_0223F4C8; else goto L_0223F50C;
|
|
L_0223F4C8: ; // 0x223f4c8
|
|
/* 0223F4C8 */ cpu->r[30] = cpu->r[31] + 0x00000104u;
|
|
/* 0223F4CC */ cpu->r[28] = 0x101C0000u;
|
|
/* 0223F4D0 */ cpu->r[27] = 0x00000000u;
|
|
L_0223F4D4: ; // 0x223f4d4
|
|
/* 0223F4D4 */ _t7 = cpu->r[28] + 0x0000557Cu;
|
|
/* 0223F4D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F4D8 */ _t8 = cpu->r[30] + cpu->r[8];
|
|
/* 0223F4D8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0223F4DC */ cpu->r[9] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223F4E0 */ _t9 = cpu->r[9] + cpu->r[10];
|
|
/* 0223F4E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F4E4 */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 0223F4E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F4E8 */ _t11 = cpu->r[12] + cpu->r[27];
|
|
/* 0223F4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223F4EC */ Gambit_fn_02240758(cpu);
|
|
/* 0223F4F0 */ _t12 = cpu->r[31] + 0x00000030u;
|
|
/* 0223F4F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223F4F4 */ _t13 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F4F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223F4F8 */ _t14 = cpu->r[11] + 0x00000000u;
|
|
/* 0223F4F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223F4FC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0223F500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0223F504 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 0223F508 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223F508 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223F508 */ if (_t16) goto L_0223F4D4; else goto L_0223F50C;
|
|
L_0223F50C: ; // 0x223f50c
|
|
/* 0223F50C */ /* nop */
|
|
/* 0223F510 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0223F510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223F514 */ cpu->lr = cpu->r[0];
|
|
/* 0223F518 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0223F51C */ return;
|
|
}
|
|
|
|
// fn_0223F520 @ 0x223f520
|
|
void Gambit_fn_0223F520(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F520: ; // 0x223f520
|
|
/* 0223F520 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F524 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F524 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F524 */ cpu->r[1] = _t0;
|
|
/* 0223F528 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F528 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F52C */ cpu->r[5] = 0x00000008u;
|
|
/* 0223F530 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F534 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223F538 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F53C */ Gambit_fn_0223FC48(cpu);
|
|
/* 0223F540 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F544 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223F548 */ Gambit_fn_02791444(cpu);
|
|
/* 0223F54C */ cpu->r[10] = 0x10050000u;
|
|
/* 0223F550 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223F554 */ _t3 = cpu->r[10] + 0x00003354u;
|
|
/* 0223F554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F558 */ cpu->r[11] = 0x00000004u;
|
|
/* 0223F55C */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F55C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0223F560 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F564 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F564 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0223F568 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F56C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F570 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F570 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0223F574 */ Gambit_fn_02791774(cpu);
|
|
/* 0223F578 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F57C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0223F580 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F580 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F584 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F588 */ cpu->lr = cpu->r[0];
|
|
/* 0223F58C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F58C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F590 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F594 */ return;
|
|
}
|
|
|
|
// fn_0223F524 @ 0x223f524
|
|
void Gambit_fn_0223F524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F524: ; // 0x223f524
|
|
/* 0223F524 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F524 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F524 */ cpu->r[1] = _t0;
|
|
/* 0223F528 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F528 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F52C */ cpu->r[5] = 0x00000008u;
|
|
/* 0223F530 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F534 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223F538 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F53C */ Gambit_fn_0223FC48(cpu);
|
|
/* 0223F540 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F544 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223F548 */ Gambit_fn_02791444(cpu);
|
|
/* 0223F54C */ cpu->r[10] = 0x10050000u;
|
|
/* 0223F550 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223F554 */ _t3 = cpu->r[10] + 0x00003354u;
|
|
/* 0223F554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F558 */ cpu->r[11] = 0x00000004u;
|
|
/* 0223F55C */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F55C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0223F560 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223F564 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F564 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0223F568 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F56C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F570 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F570 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0223F574 */ Gambit_fn_02791774(cpu);
|
|
/* 0223F578 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F57C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0223F580 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F580 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F584 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F588 */ cpu->lr = cpu->r[0];
|
|
/* 0223F58C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F58C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F590 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F594 */ return;
|
|
}
|
|
|
|
// fn_0223F598 @ 0x223f598
|
|
void Gambit_fn_0223F598(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_0223F598: ; // 0x223f598
|
|
/* 0223F598 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F59C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F59C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F59C */ cpu->r[1] = _t0;
|
|
/* 0223F5A0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F5A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F5A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F5A8 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223F5AC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F5AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F5B0 */ cpu->r[0] = 0x00000006u;
|
|
/* 0223F5B4 */ _t3 = cpu->r[9] + 0x00003374u;
|
|
/* 0223F5B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F5B8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F5BC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F5BC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223F5C0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F5C4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F5C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0223F5C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F5CC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F5CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0223F5D0 */ Gambit_fn_02791888(cpu);
|
|
/* 0223F5D4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F5D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F5D8 */ _t8 = cpu->r[31] + 0x00000238u;
|
|
/* 0223F5D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0223F5DC */ cpu->r[12] = cpu->r[12] | 0x00000040u;
|
|
/* 0223F5E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F5E4 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F5E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0223F5E8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F5E8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223F5E8 */ if (_t11) goto L_0223F5EC; else goto L_0223F644;
|
|
L_0223F5EC: ; // 0x223f5ec
|
|
/* 0223F5EC */ _t12 = cpu->r[31] + 0x00000030u;
|
|
/* 0223F5EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223F5F0 */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 0223F5F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223F5F4 */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F5F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223F5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F5FC */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223F5FC */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223F5FC */ if (_t16) goto L_0223F600; else goto L_0223F63C;
|
|
L_0223F600: ; // 0x223f600
|
|
/* 0223F600 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0223F604 */ _t17 = cpu->r[12] + 0x0000557Cu;
|
|
/* 0223F604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223F608 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F60C */ cpu->r[12] = cpu->r[31] + cpu->r[12];
|
|
/* 0223F610 */ _t18 = cpu->r[12] + 0x00000104u;
|
|
/* 0223F610 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 0223F614 */ cpu->r[7] = 0x00000000u;
|
|
L_0223F618: ; // 0x223f618
|
|
/* 0223F618 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223F61C */ _t19 = cpu->r[6] + cpu->r[11];
|
|
/* 0223F61C */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223F620 */ _t20 = cpu->r[8] + 0x00000004u;
|
|
/* 0223F620 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223F624 */ _t21 = cpu->r[9] + cpu->r[7];
|
|
/* 0223F624 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223F628 */ _t22 = cpu->r[6] + 0x00000030u;
|
|
/* 0223F628 */ cpu->r[10] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0223F62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223F630 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F630 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0223F630 */ if (_t24) goto L_0223F644; else goto L_0223F634;
|
|
L_0223F634: ; // 0x223f634
|
|
/* 0223F634 */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 0223F638 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223F638 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223F638 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 0223F638 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223F638 */ if (_t27) goto L_0223F618; else goto L_0223F63C;
|
|
L_0223F63C: ; // 0x223f63c
|
|
/* 0223F63C */ cpu->r[12] = 0x00000001u;
|
|
/* 0223F640 */ _t28 = cpu->r[31] + 0x00000238u;
|
|
/* 0223F640 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[12]);
|
|
L_0223F644: ; // 0x223f644
|
|
/* 0223F644 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0223F648 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F648 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0223F64C */ cpu->lr = cpu->r[0];
|
|
/* 0223F650 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F654 */ return;
|
|
}
|
|
|
|
// fn_0223F59C @ 0x223f59c
|
|
void Gambit_fn_0223F59C(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_0223F59C: ; // 0x223f59c
|
|
/* 0223F59C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F59C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F59C */ cpu->r[1] = _t0;
|
|
/* 0223F5A0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F5A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223F5A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F5A8 */ cpu->r[9] = 0x10050000u;
|
|
/* 0223F5AC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F5AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223F5B0 */ cpu->r[0] = 0x00000006u;
|
|
/* 0223F5B4 */ _t3 = cpu->r[9] + 0x00003374u;
|
|
/* 0223F5B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F5B8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F5BC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F5BC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0223F5C0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F5C4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F5C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0223F5C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F5CC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F5CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0223F5D0 */ Gambit_fn_02791888(cpu);
|
|
/* 0223F5D4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F5D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F5D8 */ _t8 = cpu->r[31] + 0x00000238u;
|
|
/* 0223F5D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0223F5DC */ cpu->r[12] = cpu->r[12] | 0x00000040u;
|
|
/* 0223F5E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F5E4 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F5E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0223F5E8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F5E8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223F5E8 */ if (_t11) goto L_0223F5EC; else goto L_0223F644;
|
|
L_0223F5EC: ; // 0x223f5ec
|
|
/* 0223F5EC */ _t12 = cpu->r[31] + 0x00000030u;
|
|
/* 0223F5EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223F5F0 */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 0223F5F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223F5F4 */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 0223F5F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223F5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F5FC */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0223F5FC */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223F5FC */ if (_t16) goto L_0223F600; else goto L_0223F63C;
|
|
L_0223F600: ; // 0x223f600
|
|
/* 0223F600 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0223F604 */ _t17 = cpu->r[12] + 0x0000557Cu;
|
|
/* 0223F604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0223F608 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F60C */ cpu->r[12] = cpu->r[31] + cpu->r[12];
|
|
/* 0223F610 */ _t18 = cpu->r[12] + 0x00000104u;
|
|
/* 0223F610 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 0223F614 */ cpu->r[7] = 0x00000000u;
|
|
L_0223F618: ; // 0x223f618
|
|
/* 0223F618 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223F61C */ _t19 = cpu->r[6] + cpu->r[11];
|
|
/* 0223F61C */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223F620 */ _t20 = cpu->r[8] + 0x00000004u;
|
|
/* 0223F620 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223F624 */ _t21 = cpu->r[9] + cpu->r[7];
|
|
/* 0223F624 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223F628 */ _t22 = cpu->r[6] + 0x00000030u;
|
|
/* 0223F628 */ cpu->r[10] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0223F62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0223F630 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F630 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0223F630 */ if (_t24) goto L_0223F644; else goto L_0223F634;
|
|
L_0223F634: ; // 0x223f634
|
|
/* 0223F634 */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 0223F638 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0223F638 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0223F638 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 0223F638 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0223F638 */ if (_t27) goto L_0223F618; else goto L_0223F63C;
|
|
L_0223F63C: ; // 0x223f63c
|
|
/* 0223F63C */ cpu->r[12] = 0x00000001u;
|
|
/* 0223F640 */ _t28 = cpu->r[31] + 0x00000238u;
|
|
/* 0223F640 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[12]);
|
|
L_0223F644: ; // 0x223f644
|
|
/* 0223F644 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0223F648 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F648 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0223F64C */ cpu->lr = cpu->r[0];
|
|
/* 0223F650 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F654 */ return;
|
|
}
|
|
|
|
// fn_0223F658 @ 0x223f658
|
|
void Gambit_fn_0223F658(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F658: ; // 0x223f658
|
|
/* 0223F658 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0223F65C */ _t0 = cpu->r[12] + 0x0000557Cu;
|
|
/* 0223F65C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F660 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 0223F664 */ _t1 = cpu->r[11] + 0x00000104u;
|
|
/* 0223F664 */ cpu->r[10] = rbrew_read8(cpu->mem, _t1);
|
|
/* 0223F668 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 0223F668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0223F66C */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223F670 */ _t3 = cpu->r[12] + cpu->r[0];
|
|
/* 0223F670 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223F674 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 0223F674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F678 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223F67C */ _t5 = cpu->r[11] + cpu->r[0];
|
|
/* 0223F67C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F680 */ return;
|
|
}
|
|
|
|
// fn_0223F684 @ 0x223f684
|
|
void Gambit_fn_0223F684(CPUState* cpu) {
|
|
L_0223F684: ; // 0x223f684
|
|
/* 0223F684 */ return;
|
|
}
|
|
|
|
// fn_0223F688 @ 0x223f688
|
|
void Gambit_fn_0223F688(CPUState* cpu) {
|
|
L_0223F688: ; // 0x223f688
|
|
/* 0223F688 */ return;
|
|
}
|
|
|
|
// fn_0223F68C @ 0x223f68c
|
|
void Gambit_fn_0223F68C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0223F68C: ; // 0x223f68c
|
|
/* 0223F68C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0223F68C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F694 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F694 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F694 */ if (_t2) goto L_0223F6A0; else goto L_0223F698;
|
|
L_0223F698: ; // 0x223f698
|
|
/* 0223F698 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0223F69C */ return;
|
|
L_0223F6A0: ; // 0x223f6a0
|
|
/* 0223F6A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F6A4 */ return;
|
|
}
|
|
|
|
// fn_0223F6A8 @ 0x223f6a8
|
|
void Gambit_fn_0223F6A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0223F6A8: ; // 0x223f6a8
|
|
/* 0223F6A8 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0223F6A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F6AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F6B0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F6B0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F6B0 */ if (_t2) goto L_0223F6BC; else goto L_0223F6B4;
|
|
L_0223F6B4: ; // 0x223f6b4
|
|
/* 0223F6B4 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0223F6B8 */ return;
|
|
L_0223F6BC: ; // 0x223f6bc
|
|
/* 0223F6BC */ cpu->r[3] = 0x00000000u;
|
|
/* 0223F6C0 */ return;
|
|
}
|
|
|
|
// fn_0223F6C4 @ 0x223f6c4
|
|
void Gambit_fn_0223F6C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F6C4: ; // 0x223f6c4
|
|
/* 0223F6C4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F6C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F6C8 */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 0223F6C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F6CC */ cpu->ctr = cpu->r[0];
|
|
/* 0223F6D0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F6D4 @ 0x223f6d4
|
|
void Gambit_fn_0223F6D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F6D4: ; // 0x223f6d4
|
|
/* 0223F6D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F6D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223F6DC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F6DC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F6DC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F6DC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F6DC */ goto L_0223F6E0;
|
|
L_0223F6E0: ; // 0x223f6e0
|
|
/* 0223F6E0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F6E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F6E4 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 0223F6E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F6E8 */ cpu->ctr = cpu->r[12];
|
|
/* 0223F6EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F6F0 @ 0x223f6f0
|
|
void Gambit_fn_0223F6F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F6F0: ; // 0x223f6f0
|
|
/* 0223F6F0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F6F4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F6F8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F6F8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F6F8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F6F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F6F8 */ goto L_0223F6FC;
|
|
L_0223F6FC: ; // 0x223f6fc
|
|
/* 0223F6FC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F6FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F700 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0223F700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F704 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F708 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F70C @ 0x223f70c
|
|
void Gambit_fn_0223F70C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F70C: ; // 0x223f70c
|
|
/* 0223F70C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F70C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F710 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F714 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F714 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F714 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F714 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F714 */ goto L_0223F718;
|
|
L_0223F718: ; // 0x223f718
|
|
/* 0223F718 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F718 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F71C */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 0223F71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F720 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F724 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F728 @ 0x223f728
|
|
void Gambit_fn_0223F728(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F728: ; // 0x223f728
|
|
/* 0223F728 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F72C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F730 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F730 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F730 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F730 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F730 */ goto L_0223F734;
|
|
L_0223F734: ; // 0x223f734
|
|
/* 0223F734 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F734 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F738 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0223F738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F73C */ cpu->ctr = cpu->r[0];
|
|
/* 0223F740 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F744 @ 0x223f744
|
|
void Gambit_fn_0223F744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F744: ; // 0x223f744
|
|
/* 0223F744 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F744 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F748 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F74C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F74C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F74C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F74C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F74C */ goto L_0223F750;
|
|
L_0223F750: ; // 0x223f750
|
|
/* 0223F750 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F750 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F754 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 0223F754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F758 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F75C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F760 @ 0x223f760
|
|
void Gambit_fn_0223F760(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F760: ; // 0x223f760
|
|
/* 0223F760 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F764 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F768 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F768 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F768 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F768 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F768 */ goto L_0223F76C;
|
|
L_0223F76C: ; // 0x223f76c
|
|
/* 0223F76C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F76C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F770 */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0223F770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F774 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F778 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F77C @ 0x223f77c
|
|
void Gambit_fn_0223F77C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0223F77C: ; // 0x223f77c
|
|
/* 0223F77C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0223F77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F780 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0223F780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0223F784 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F784 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F784 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0223F784 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0223F784 */ goto L_0223F788;
|
|
L_0223F788: ; // 0x223f788
|
|
/* 0223F788 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F788 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F78C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0223F78C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223F790 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F794 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F798 @ 0x223f798
|
|
void Gambit_fn_0223F798(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F798: ; // 0x223f798
|
|
/* 0223F798 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F79C */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 0223F79C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F7A0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F7A4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F7A8 @ 0x223f7a8
|
|
void Gambit_fn_0223F7A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F7A8: ; // 0x223f7a8
|
|
/* 0223F7A8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F7A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F7AC */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0223F7AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F7B0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F7B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F7B8 @ 0x223f7b8
|
|
void Gambit_fn_0223F7B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F7B8: ; // 0x223f7b8
|
|
/* 0223F7B8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F7BC */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 0223F7BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F7C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F7C4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F7C8 @ 0x223f7c8
|
|
void Gambit_fn_0223F7C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F7C8: ; // 0x223f7c8
|
|
/* 0223F7C8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F7C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F7CC */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0223F7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F7D0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F7D4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F7D8 @ 0x223f7d8
|
|
void Gambit_fn_0223F7D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F7D8: ; // 0x223f7d8
|
|
/* 0223F7D8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F7D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F7DC */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0223F7DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F7E0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F7E4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F7E8 @ 0x223f7e8
|
|
void Gambit_fn_0223F7E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0223F7E8: ; // 0x223f7e8
|
|
/* 0223F7E8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0223F7E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F7EC */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0223F7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0223F7F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223F7F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0223F7F8 @ 0x223f7f8
|
|
void Gambit_fn_0223F7F8(CPUState* cpu) {
|
|
L_0223F7F8: ; // 0x223f7f8
|
|
/* 0223F7F8 */ return;
|
|
}
|
|
|
|
// fn_0223F7FC @ 0x223f7fc
|
|
void Gambit_fn_0223F7FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0223F7FC: ; // 0x223f7fc
|
|
/* 0223F7FC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223F800 */ _t0 = cpu->r[9] + 0xFFFFD9BCu;
|
|
/* 0223F800 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0223F800 */ cpu->r[9] = _t0;
|
|
/* 0223F804 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223F808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0223F80C */ cpu->r[12] = cpu->r[12] + 0xFFFFDB18u;
|
|
/* 0223F810 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F810 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0223F810 */ if (_t2) goto L_0223F814; else goto L_0223F828;
|
|
L_0223F814: ; // 0x223f814
|
|
/* 0223F814 */ cpu->r[7] = 0x10050000u;
|
|
/* 0223F818 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223F81C */ cpu->r[7] = cpu->r[7] + 0x000033C4u;
|
|
/* 0223F820 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0223F820 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F824 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0223F824 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0223F828: ; // 0x223f828
|
|
/* 0223F828 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0223F82C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F82C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223F82C */ if (_t6) goto L_0223F830; else goto L_0223F838;
|
|
L_0223F830: ; // 0x223f830
|
|
/* 0223F830 */ cpu->r[3] = 0x00000001u;
|
|
/* 0223F834 */ return;
|
|
L_0223F838: ; // 0x223f838
|
|
/* 0223F838 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0223F83C */ _t7 = cpu->r[7] + 0xFFFFD4E0u;
|
|
/* 0223F83C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F83C */ cpu->r[7] = _t7;
|
|
/* 0223F840 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0223F844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0223F848 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0223F84C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223F84C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0223F84C */ if (_t9) goto L_0223F850; else goto L_0223F864;
|
|
L_0223F850: ; // 0x223f850
|
|
/* 0223F850 */ cpu->r[0] = 0x10050000u;
|
|
/* 0223F854 */ cpu->r[9] = 0x00000001u;
|
|
/* 0223F858 */ cpu->r[0] = cpu->r[0] + 0x000033B4u;
|
|
/* 0223F85C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0223F85C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0223F860 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0223F860 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0223F864: ; // 0x223f864
|
|
/* 0223F864 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0223F868 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0223F86C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0223F870 */ return;
|
|
}
|
|
|
|
// fn_0223F874 @ 0x223f874
|
|
void Gambit_fn_0223F874(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F874: ; // 0x223f874
|
|
/* 0223F874 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F878 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F87C */ cpu->r[10] = 0x00000001u;
|
|
/* 0223F880 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F880 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F880 */ cpu->r[1] = _t0;
|
|
/* 0223F884 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F884 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F888 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F888 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F88C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F890 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F890 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F894 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F898 */ _t4 = cpu->r[12] + 0x0000335Cu;
|
|
/* 0223F898 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F89C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F8A0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F8A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F8A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F8A8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F8A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F8AC */ Gambit_fn_02791774(cpu);
|
|
/* 0223F8B0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F8B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F8B4 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 0223F8B8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F8B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F8BC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F8C0 */ cpu->lr = cpu->r[0];
|
|
/* 0223F8C4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F8C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F8C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F8CC */ return;
|
|
}
|
|
|
|
// fn_0223F880 @ 0x223f880
|
|
void Gambit_fn_0223F880(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F880: ; // 0x223f880
|
|
/* 0223F880 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F880 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F880 */ cpu->r[1] = _t0;
|
|
/* 0223F884 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F884 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F888 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F888 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F88C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F890 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F890 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F894 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F898 */ _t4 = cpu->r[12] + 0x0000335Cu;
|
|
/* 0223F898 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F89C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F8A0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F8A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F8A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F8A8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F8A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F8AC */ Gambit_fn_02791774(cpu);
|
|
/* 0223F8B0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F8B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F8B4 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 0223F8B8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F8B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F8BC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F8C0 */ cpu->lr = cpu->r[0];
|
|
/* 0223F8C4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F8C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F8C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F8CC */ return;
|
|
}
|
|
|
|
// fn_0223F8D0 @ 0x223f8d0
|
|
void Gambit_fn_0223F8D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F8D0: ; // 0x223f8d0
|
|
/* 0223F8D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F8D4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F8D8 */ cpu->r[10] = 0x00000002u;
|
|
/* 0223F8DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F8DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F8DC */ cpu->r[1] = _t0;
|
|
/* 0223F8E0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F8E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F8E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F8E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F8E8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F8EC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F8EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F8F0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F8F4 */ _t4 = cpu->r[12] + 0x00003364u;
|
|
/* 0223F8F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F8F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F8FC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F8FC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F900 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F904 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F904 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F908 */ Gambit_fn_02791774(cpu);
|
|
/* 0223F90C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F90C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F910 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0223F914 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F914 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F918 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F91C */ cpu->lr = cpu->r[0];
|
|
/* 0223F920 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F920 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F924 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F928 */ return;
|
|
}
|
|
|
|
// fn_0223F8DC @ 0x223f8dc
|
|
void Gambit_fn_0223F8DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F8DC: ; // 0x223f8dc
|
|
/* 0223F8DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F8DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F8DC */ cpu->r[1] = _t0;
|
|
/* 0223F8E0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F8E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F8E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F8E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F8E8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F8EC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F8EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F8F0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F8F4 */ _t4 = cpu->r[12] + 0x00003364u;
|
|
/* 0223F8F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F8F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F8FC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F8FC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F900 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F904 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F904 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F908 */ Gambit_fn_02791774(cpu);
|
|
/* 0223F90C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F90C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F910 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0223F914 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F914 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F918 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F91C */ cpu->lr = cpu->r[0];
|
|
/* 0223F920 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F920 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F924 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F928 */ return;
|
|
}
|
|
|
|
// fn_0223F92C @ 0x223f92c
|
|
void Gambit_fn_0223F92C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F92C: ; // 0x223f92c
|
|
/* 0223F92C */ cpu->r[0] = cpu->lr;
|
|
/* 0223F930 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F934 */ cpu->r[10] = 0x00000003u;
|
|
/* 0223F938 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F938 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F938 */ cpu->r[1] = _t0;
|
|
/* 0223F93C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F93C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F940 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F940 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F944 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F948 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F948 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F94C */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F950 */ _t4 = cpu->r[12] + 0x0000336Cu;
|
|
/* 0223F950 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F954 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F958 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F958 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F95C */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F960 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F960 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F964 */ Gambit_fn_02791774(cpu);
|
|
/* 0223F968 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F96C */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0223F970 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F970 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F974 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F978 */ cpu->lr = cpu->r[0];
|
|
/* 0223F97C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F97C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F980 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F984 */ return;
|
|
}
|
|
|
|
// fn_0223F938 @ 0x223f938
|
|
void Gambit_fn_0223F938(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F938: ; // 0x223f938
|
|
/* 0223F938 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F938 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F938 */ cpu->r[1] = _t0;
|
|
/* 0223F93C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F93C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F940 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F940 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F944 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F948 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F948 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F94C */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F950 */ _t4 = cpu->r[12] + 0x0000336Cu;
|
|
/* 0223F950 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F954 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F958 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F958 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F95C */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F960 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F960 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F964 */ Gambit_fn_02791774(cpu);
|
|
/* 0223F968 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F96C */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0223F970 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F970 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F974 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F978 */ cpu->lr = cpu->r[0];
|
|
/* 0223F97C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F97C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F980 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F984 */ return;
|
|
}
|
|
|
|
// fn_0223F988 @ 0x223f988
|
|
void Gambit_fn_0223F988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F988: ; // 0x223f988
|
|
/* 0223F988 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F98C */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F990 */ cpu->r[10] = 0x00000007u;
|
|
/* 0223F994 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F994 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F994 */ cpu->r[1] = _t0;
|
|
/* 0223F998 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F998 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F99C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F99C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F9A0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F9A4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F9A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F9A8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F9AC */ _t4 = cpu->r[12] + 0x0000337Cu;
|
|
/* 0223F9AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F9B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F9B4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F9B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F9B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F9BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F9BC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F9C0 */ Gambit_fn_02791888(cpu);
|
|
/* 0223F9C4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F9C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F9C8 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0223F9CC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F9CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F9D0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F9D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F9D4 */ cpu->lr = cpu->r[0];
|
|
/* 0223F9D8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F9DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F9E0 */ return;
|
|
}
|
|
|
|
// fn_0223F994 @ 0x223f994
|
|
void Gambit_fn_0223F994(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F994: ; // 0x223f994
|
|
/* 0223F994 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F994 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F994 */ cpu->r[1] = _t0;
|
|
/* 0223F998 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F998 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F99C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F99C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F9A0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F9A4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F9A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223F9A8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223F9AC */ _t4 = cpu->r[12] + 0x0000337Cu;
|
|
/* 0223F9AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223F9B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223F9B4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223F9B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223F9B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223F9BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223F9BC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223F9C0 */ Gambit_fn_02791888(cpu);
|
|
/* 0223F9C4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F9C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223F9C8 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0223F9CC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223F9CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223F9D0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223F9D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223F9D4 */ cpu->lr = cpu->r[0];
|
|
/* 0223F9D8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223F9DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223F9E0 */ return;
|
|
}
|
|
|
|
// fn_0223F9E4 @ 0x223f9e4
|
|
void Gambit_fn_0223F9E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F9E4: ; // 0x223f9e4
|
|
/* 0223F9E4 */ cpu->r[0] = cpu->lr;
|
|
/* 0223F9E8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223F9EC */ cpu->r[10] = 0x00000008u;
|
|
/* 0223F9F0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F9F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F9F0 */ cpu->r[1] = _t0;
|
|
/* 0223F9F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F9F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F9F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F9F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F9FC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA00 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FA04 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FA08 */ _t4 = cpu->r[12] + 0x00003384u;
|
|
/* 0223FA08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FA0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FA10 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FA10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FA18 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA18 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223FA1C */ Gambit_fn_02791888(cpu);
|
|
/* 0223FA20 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FA24 */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 0223FA28 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA28 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223FA2C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FA30 */ cpu->lr = cpu->r[0];
|
|
/* 0223FA34 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FA34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FA38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FA3C */ return;
|
|
}
|
|
|
|
// fn_0223F9F0 @ 0x223f9f0
|
|
void Gambit_fn_0223F9F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223F9F0: ; // 0x223f9f0
|
|
/* 0223F9F0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223F9F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223F9F0 */ cpu->r[1] = _t0;
|
|
/* 0223F9F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223F9F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223F9F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223F9F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223F9FC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA00 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FA04 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FA08 */ _t4 = cpu->r[12] + 0x00003384u;
|
|
/* 0223FA08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FA0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FA10 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FA10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FA18 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA18 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223FA1C */ Gambit_fn_02791888(cpu);
|
|
/* 0223FA20 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FA24 */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 0223FA28 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA28 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223FA2C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FA30 */ cpu->lr = cpu->r[0];
|
|
/* 0223FA34 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FA34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FA38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FA3C */ return;
|
|
}
|
|
|
|
// fn_0223FA40 @ 0x223fa40
|
|
void Gambit_fn_0223FA40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FA40: ; // 0x223fa40
|
|
/* 0223FA40 */ cpu->r[0] = cpu->lr;
|
|
/* 0223FA44 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223FA48 */ cpu->r[10] = 0x00000009u;
|
|
/* 0223FA4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FA4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FA4C */ cpu->r[1] = _t0;
|
|
/* 0223FA50 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FA50 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223FA54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FA54 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223FA58 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FA60 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FA64 */ _t4 = cpu->r[12] + 0x0000338Cu;
|
|
/* 0223FA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FA68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FA6C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FA6C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FA70 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FA74 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA74 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223FA78 */ Gambit_fn_02791888(cpu);
|
|
/* 0223FA7C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FA80 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0223FA84 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA84 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223FA88 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FA8C */ cpu->lr = cpu->r[0];
|
|
/* 0223FA90 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FA90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FA94 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FA98 */ return;
|
|
}
|
|
|
|
// fn_0223FA4C @ 0x223fa4c
|
|
void Gambit_fn_0223FA4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FA4C: ; // 0x223fa4c
|
|
/* 0223FA4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FA4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FA4C */ cpu->r[1] = _t0;
|
|
/* 0223FA50 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FA50 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223FA54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FA54 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223FA58 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FA60 */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FA64 */ _t4 = cpu->r[12] + 0x0000338Cu;
|
|
/* 0223FA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FA68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FA6C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FA6C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FA70 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FA74 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FA74 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223FA78 */ Gambit_fn_02791888(cpu);
|
|
/* 0223FA7C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FA80 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0223FA84 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FA84 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223FA88 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FA8C */ cpu->lr = cpu->r[0];
|
|
/* 0223FA90 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FA90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FA94 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FA98 */ return;
|
|
}
|
|
|
|
// fn_0223FA9C @ 0x223fa9c
|
|
void Gambit_fn_0223FA9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FA9C: ; // 0x223fa9c
|
|
/* 0223FA9C */ cpu->r[0] = cpu->lr;
|
|
/* 0223FAA0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223FAA4 */ cpu->r[10] = 0x0000000Au;
|
|
/* 0223FAA8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FAA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FAA8 */ cpu->r[1] = _t0;
|
|
/* 0223FAAC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FAAC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223FAB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FAB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223FAB4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FAB8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FAB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FABC */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FAC0 */ _t4 = cpu->r[12] + 0x00003394u;
|
|
/* 0223FAC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FAC4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FAC8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FAC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FACC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FAD0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FAD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223FAD4 */ Gambit_fn_02791888(cpu);
|
|
/* 0223FAD8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FADC */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 0223FAE0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FAE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223FAE4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FAE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FAE8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FAEC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FAEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FAF0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FAF4 */ return;
|
|
}
|
|
|
|
// fn_0223FAA8 @ 0x223faa8
|
|
void Gambit_fn_0223FAA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FAA8: ; // 0x223faa8
|
|
/* 0223FAA8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FAA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FAA8 */ cpu->r[1] = _t0;
|
|
/* 0223FAAC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FAAC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0223FAB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FAB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223FAB4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FAB8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FAB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FABC */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FAC0 */ _t4 = cpu->r[12] + 0x00003394u;
|
|
/* 0223FAC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FAC4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FAC8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FAC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FACC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FAD0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FAD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0223FAD4 */ Gambit_fn_02791888(cpu);
|
|
/* 0223FAD8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FADC */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 0223FAE0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FAE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0223FAE4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FAE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FAE8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FAEC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FAEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FAF0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FAF4 */ return;
|
|
}
|
|
|
|
// fn_0223FAF8 @ 0x223faf8
|
|
void Gambit_fn_0223FAF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FAF8: ; // 0x223faf8
|
|
/* 0223FAF8 */ cpu->r[0] = cpu->lr;
|
|
/* 0223FAFC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FAFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FAFC */ cpu->r[1] = _t0;
|
|
/* 0223FB00 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223FB04 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FB04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FB08 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 0223FB0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB0C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0223FB10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FB18 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FB18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FB1C */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FB20 */ _t4 = cpu->r[8] + 0x0000339Cu;
|
|
/* 0223FB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FB24 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223FB28 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FB28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FB2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB30 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0223FB34 */ Gambit_fn_027919C4(cpu);
|
|
/* 0223FB38 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FB38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FB3C */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 0223FB40 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FB40 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0223FB44 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FB48 */ cpu->lr = cpu->r[0];
|
|
/* 0223FB4C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FB4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FB50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FB54 */ return;
|
|
}
|
|
|
|
// fn_0223FAFC @ 0x223fafc
|
|
void Gambit_fn_0223FAFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FAFC: ; // 0x223fafc
|
|
/* 0223FAFC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FAFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FAFC */ cpu->r[1] = _t0;
|
|
/* 0223FB00 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223FB04 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FB04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FB08 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 0223FB0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB0C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0223FB10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FB18 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FB18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FB1C */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FB20 */ _t4 = cpu->r[8] + 0x0000339Cu;
|
|
/* 0223FB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FB24 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223FB28 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FB28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FB2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB30 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0223FB34 */ Gambit_fn_027919C4(cpu);
|
|
/* 0223FB38 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FB38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FB3C */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 0223FB40 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FB40 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0223FB44 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FB48 */ cpu->lr = cpu->r[0];
|
|
/* 0223FB4C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FB4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FB50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FB54 */ return;
|
|
}
|
|
|
|
// fn_0223FB58 @ 0x223fb58
|
|
void Gambit_fn_0223FB58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FB58: ; // 0x223fb58
|
|
/* 0223FB58 */ cpu->r[0] = cpu->lr;
|
|
/* 0223FB5C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FB5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FB5C */ cpu->r[1] = _t0;
|
|
/* 0223FB60 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223FB64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FB64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FB68 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 0223FB6C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB6C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0223FB70 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB74 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FB78 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FB78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FB7C */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FB80 */ _t4 = cpu->r[8] + 0x000033A4u;
|
|
/* 0223FB80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FB84 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223FB88 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FB88 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FB8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB90 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB90 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0223FB94 */ Gambit_fn_027919C4(cpu);
|
|
/* 0223FB98 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FB98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FB9C */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 0223FBA0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FBA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0223FBA4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FBA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FBA8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FBAC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FBAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FBB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FBB4 */ return;
|
|
}
|
|
|
|
// fn_0223FB5C @ 0x223fb5c
|
|
void Gambit_fn_0223FB5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0223FB5C: ; // 0x223fb5c
|
|
/* 0223FB5C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FB5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FB5C */ cpu->r[1] = _t0;
|
|
/* 0223FB60 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223FB64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FB64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FB68 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 0223FB6C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB6C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0223FB70 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB74 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FB78 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FB78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FB7C */ cpu->r[0] = 0x00000004u;
|
|
/* 0223FB80 */ _t4 = cpu->r[8] + 0x000033A4u;
|
|
/* 0223FB80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FB84 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223FB88 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FB88 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0223FB8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FB90 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FB90 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0223FB94 */ Gambit_fn_027919C4(cpu);
|
|
/* 0223FB98 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FB98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FB9C */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 0223FBA0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0223FBA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0223FBA4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FBA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FBA8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FBAC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FBAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FBB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FBB4 */ return;
|
|
}
|
|
|
|
// fn_0223FBB8 @ 0x223fbb8
|
|
void Gambit_fn_0223FBB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0223FBB8: ; // 0x223fbb8
|
|
/* 0223FBB8 */ cpu->r[0] = cpu->lr;
|
|
/* 0223FBBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FBBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FBBC */ cpu->r[1] = _t0;
|
|
/* 0223FBC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FBC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FBC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FBC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FBC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FBCC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223FBCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223FBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0223FBD4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FBD4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223FBD4 */ if (_t5) goto L_0223FBD8; else goto L_0223FBF4;
|
|
L_0223FBD8: ; // 0x223fbd8
|
|
/* 0223FBD8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223FBD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223FBDC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223FBDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FBE0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223FBE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FBE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223FBEC */ cpu->r[10] = 0x00000002u;
|
|
/* 0223FBF0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223FBF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0223FBF4: ; // 0x223fbf4
|
|
/* 0223FBF4 */ cpu->r[0] = 0x00000005u;
|
|
/* 0223FBF8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223FBFC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FBFC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0223FC00 */ _t10 = cpu->r[12] + 0x000033ACu;
|
|
/* 0223FC00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FC00 */ cpu->r[12] = _t10;
|
|
/* 0223FC04 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0223FC04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223FC08 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC0C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC0C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0223FC10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FC14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FC18 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FC18 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0223FC1C */ Gambit_fn_02791888(cpu);
|
|
/* 0223FC20 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FC20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223FC24 */ cpu->lr = cpu->r[0];
|
|
/* 0223FC28 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223FC2C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FC30 */ return;
|
|
}
|
|
|
|
// fn_0223FBBC @ 0x223fbbc
|
|
void Gambit_fn_0223FBBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0223FBBC: ; // 0x223fbbc
|
|
/* 0223FBBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0223FBBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FBBC */ cpu->r[1] = _t0;
|
|
/* 0223FBC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FBC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FBC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FBC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FBC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FBCC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223FBCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223FBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0223FBD4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FBD4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0223FBD4 */ if (_t5) goto L_0223FBD8; else goto L_0223FBF4;
|
|
L_0223FBD8: ; // 0x223fbd8
|
|
/* 0223FBD8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0223FBD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223FBDC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0223FBDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FBE0 */ cpu->ctr = cpu->r[0];
|
|
/* 0223FBE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FBE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0223FBEC */ cpu->r[10] = 0x00000002u;
|
|
/* 0223FBF0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0223FBF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0223FBF4: ; // 0x223fbf4
|
|
/* 0223FBF4 */ cpu->r[0] = 0x00000005u;
|
|
/* 0223FBF8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0223FBFC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FBFC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0223FC00 */ _t10 = cpu->r[12] + 0x000033ACu;
|
|
/* 0223FC00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FC00 */ cpu->r[12] = _t10;
|
|
/* 0223FC04 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0223FC04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0223FC08 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC0C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC0C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0223FC10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FC14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FC18 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FC18 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0223FC1C */ Gambit_fn_02791888(cpu);
|
|
/* 0223FC20 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FC20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223FC24 */ cpu->lr = cpu->r[0];
|
|
/* 0223FC28 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223FC2C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FC30 */ return;
|
|
}
|
|
|
|
// fn_0223FC3C @ 0x223fc3c
|
|
void Gambit_fn_0223FC3C(CPUState* cpu) {
|
|
L_0223FC3C: ; // 0x223fc3c
|
|
/* 0223FC3C */ cpu->r[3] = 0x10050000u;
|
|
/* 0223FC40 */ cpu->r[3] = cpu->r[3] + 0x000033D4u;
|
|
/* 0223FC44 */ return;
|
|
}
|
|
|
|
// fn_0223FC48 @ 0x223fc48
|
|
void Gambit_fn_0223FC48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0223FC48: ; // 0x223fc48
|
|
/* 0223FC48 */ cpu->r[0] = cpu->lr;
|
|
/* 0223FC4C */ cpu->r[12] = 0x00000001u;
|
|
/* 0223FC50 */ cpu->r[6] = 0x02240000u;
|
|
/* 0223FC54 */ cpu->r[7] = 0x02240000u;
|
|
/* 0223FC58 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0223FC5C */ cpu->r[6] = cpu->r[6] + 0xFFFFFC34u;
|
|
/* 0223FC60 */ cpu->r[8] = 0x00000000u;
|
|
/* 0223FC64 */ cpu->r[7] = cpu->r[7] + 0xFFFFFC34u;
|
|
/* 0223FC68 */ cpu->r[10] = cpu->r[10] + 0x00005580u;
|
|
/* 0223FC6C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0223FC6C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0223FC70 */ cpu->r[0] = 0x101C0000u;
|
|
/* 0223FC74 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FC74 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0223FC74 */ cpu->r[1] = _t1;
|
|
/* 0223FC78 */ cpu->r[0] = cpu->r[0] + 0x0000557Cu;
|
|
/* 0223FC7C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC7C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0223FC80 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC84 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FC84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FC88 */ Gambit_fn_02791B10(cpu);
|
|
/* 0223FC8C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FC8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FC90 */ cpu->lr = cpu->r[0];
|
|
/* 0223FC94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FC98 */ return;
|
|
}
|
|
|
|
// fn_0223FC74 @ 0x223fc74
|
|
void Gambit_fn_0223FC74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0223FC74: ; // 0x223fc74
|
|
/* 0223FC74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FC74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FC74 */ cpu->r[1] = _t0;
|
|
/* 0223FC78 */ cpu->r[0] = cpu->r[0] + 0x0000557Cu;
|
|
/* 0223FC7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC7C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0223FC80 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FC84 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FC84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FC88 */ Gambit_fn_02791B10(cpu);
|
|
/* 0223FC8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FC8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0223FC90 */ cpu->lr = cpu->r[0];
|
|
/* 0223FC94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FC98 */ return;
|
|
}
|
|
|
|
// fn_0223FCA0 @ 0x223fca0
|
|
void Gambit_fn_0223FCA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0223FCA0: ; // 0x223fca0
|
|
/* 0223FCA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FCA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FCA0 */ cpu->r[1] = _t0;
|
|
/* 0223FCA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FCA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FCA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FCA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223FCAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FCAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FCB0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FCB0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0223FCB0 */ if (_t4) goto L_0223FCB4; else goto L_0223FCC4;
|
|
L_0223FCB4: ; // 0x223fcb4
|
|
/* 0223FCB4 */ cpu->r[3] = 0x00000038u;
|
|
/* 0223FCB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0223FCBC */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FCBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0223FCC0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FCC0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0223FCC0 */ if (_t6) goto L_0223FCEC; else goto L_0223FCC4;
|
|
L_0223FCC4: ; // 0x223fcc4
|
|
/* 0223FCC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FCC8 */ Gambit_fn_0279039C(cpu);
|
|
/* 0223FCCC */ cpu->r[12] = 0x10050000u;
|
|
/* 0223FCD0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0223FCD4 */ cpu->r[12] = cpu->r[12] + 0x00003630u;
|
|
/* 0223FCD8 */ _t7 = cpu->r[31] + 0x00000028u;
|
|
/* 0223FCD8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0223FCDC */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0223FCDC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0223FCE0 */ _t9 = cpu->r[31] + 0x00000030u;
|
|
/* 0223FCE0 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0223FCE4 */ _t10 = cpu->r[31] + 0x00000034u;
|
|
/* 0223FCE4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0223FCE8 */ _t11 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223FCE8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0223FCEC: ; // 0x223fcec
|
|
/* 0223FCEC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FCEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223FCF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FCF4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FCF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223FCF8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FCFC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FD00 */ return;
|
|
}
|
|
|
|
// fn_0223FD04 @ 0x223fd04
|
|
void Gambit_fn_0223FD04(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;
|
|
|
|
L_0223FD04: ; // 0x223fd04
|
|
/* 0223FD04 */ _t0 = cpu->r[1] + 0xFFFFFEC0u;
|
|
/* 0223FD04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FD04 */ cpu->r[1] = _t0;
|
|
/* 0223FD08 */ /* nop */
|
|
/* 0223FD0C */ cpu->r[0] = cpu->lr;
|
|
/* 0223FD10 */ _t1 = cpu->r[1] + 0x00000130u;
|
|
/* 0223FD10 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0223FD14 */ /* nop */
|
|
/* 0223FD18 */ _t2 = cpu->r[1] + 0x00000144u;
|
|
/* 0223FD18 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FD1C */ _t3 = cpu->r[1] + 0x00000138u;
|
|
/* 0223FD1C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0223FD20 */ cpu->r[29] = cpu->r[3];
|
|
/* 0223FD24 */ cpu->r[30] = cpu->r[4];
|
|
/* 0223FD28 */ cpu->r[7] = 0x101C0000u;
|
|
/* 0223FD2C */ _t4 = cpu->r[30] + 0x00000034u;
|
|
/* 0223FD2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FD30 */ _t5 = cpu->r[7] + 0x00006000u;
|
|
/* 0223FD30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223FD34 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FD34 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0223FD38 */ _t7 = cpu->r[7] + 0x00000268u;
|
|
/* 0223FD38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0223FD3C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0223FD40 */ _t9 = cpu->r[12] + 0x00000238u;
|
|
/* 0223FD40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FD44 */ cpu->r[31] = 0x00000000u;
|
|
/* 0223FD48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0223FD4C */ cpu->r[6] = cpu->r[12] + 0x00000238u;
|
|
/* 0223FD50 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FD50 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0223FD50 */ if (_t11) goto L_0223FD54; else goto L_0223FD60;
|
|
L_0223FD54: ; // 0x223fd54
|
|
/* 0223FD54 */ _t12 = cpu->r[6] + 0x00000008u;
|
|
/* 0223FD54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0223FD58 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223FD5C */ _t13 = cpu->r[9] + cpu->r[11];
|
|
/* 0223FD5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
L_0223FD60: ; // 0x223fd60
|
|
/* 0223FD60 */ _t14 = cpu->r[6] + 0x00000048u;
|
|
/* 0223FD60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0223FD64 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FD64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0223FD68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0223FD6C */ cpu->r[28] = 0x00000000u;
|
|
/* 0223FD70 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FD70 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0223FD70 */ if (_t17) goto L_0223FD74; else goto L_0223FD80;
|
|
L_0223FD74: ; // 0x223fd74
|
|
/* 0223FD74 */ _t18 = cpu->r[6] + 0x00000050u;
|
|
/* 0223FD74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223FD78 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223FD7C */ _t19 = cpu->r[6] + cpu->r[7];
|
|
/* 0223FD7C */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
L_0223FD80: ; // 0x223fd80
|
|
/* 0223FD80 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0223FD84 */ Gambit_fn_02982574(cpu);
|
|
/* 0223FD88 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223FD8C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0223FD90 */ _t20 = cpu->r[12] + 0xFFFF97D8u;
|
|
/* 0223FD90 */ cpu->r[11] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0223FD94 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0223FD98 */ _t21 = cpu->r[9] + 0xFFFF97D0u;
|
|
/* 0223FD98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0223FD9C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0223FDA0 */ _t22 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0223FDA0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0223FDA4 */ _t23 = cpu->r[10] + 0xFFFF97D4u;
|
|
/* 0223FDA4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0223FDA8 */ _t24 = cpu->r[1] + 0x00000041u;
|
|
/* 0223FDA8 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[12]);
|
|
/* 0223FDAC */ _t25 = cpu->r[1] + 0x00000040u;
|
|
/* 0223FDAC */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[11]);
|
|
/* 0223FDB0 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0223FDB0 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 0223FDB4 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0223FDB8 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0223FDB8 */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 0223FDBC */ Gambit_fn_02984F3C(cpu);
|
|
/* 0223FDC0 */ cpu->r[27] = 0x10050000u;
|
|
/* 0223FDC4 */ cpu->r[5] = cpu->r[28];
|
|
/* 0223FDC8 */ cpu->r[27] = cpu->r[27] + 0x00003514u;
|
|
/* 0223FDCC */ cpu->r[10] = 0x00000006u;
|
|
/* 0223FDD0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0223FDD4 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FDD4 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 0223FDD8 */ cpu->r[11] = 0x10050000u;
|
|
/* 0223FDDC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FDE0 */ _t29 = cpu->r[1] + 0x00000048u;
|
|
/* 0223FDE0 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 0223FDE4 */ cpu->r[11] = cpu->r[11] + 0x000035C8u;
|
|
/* 0223FDE8 */ cpu->r[9] = 0x00000000u;
|
|
/* 0223FDEC */ _t30 = cpu->r[30] + 0x00000030u;
|
|
/* 0223FDEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0223FDF0 */ cpu->r[7] = cpu->r[1] + 0x00000044u;
|
|
/* 0223FDF4 */ cpu->r[10] = cpu->r[9];
|
|
/* 0223FDF8 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FDF8 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]);
|
|
/* 0223FDFC */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0223FE00 */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 0223FE04 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FE04 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0223FE08 */ Gambit_fn_023C97C0(cpu);
|
|
/* 0223FE0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FE10 */ _t33 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FE10 */ rbrew_write32(cpu->mem, _t33, cpu->r[3]);
|
|
/* 0223FE14 */ _t34 = cpu->r[3] + 0x000000A4u;
|
|
/* 0223FE14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0223FE18 */ cpu->r[28] = 0x10050000u;
|
|
/* 0223FE1C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FE1C */ rbrew_write32(cpu->mem, _t35, cpu->r[27]);
|
|
/* 0223FE20 */ cpu->r[28] = cpu->r[28] + 0x000035D8u;
|
|
/* 0223FE24 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FE28 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FE28 */ rbrew_write32(cpu->mem, _t36, cpu->r[28]);
|
|
/* 0223FE2C */ Gambit_fn_02983BC4(cpu);
|
|
/* 0223FE30 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223FE34 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 0223FE34 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 0223FE38 */ cpu->r[6] = cpu->r[4];
|
|
/* 0223FE3C */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0223FE40 */ _t38 = cpu->r[1] + 0x00000050u;
|
|
/* 0223FE40 */ rbrew_write32(cpu->mem, _t38, cpu->r[3]);
|
|
/* 0223FE44 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FE48 */ Gambit_fn_02983954(cpu);
|
|
/* 0223FE4C */ _t39 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FE4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0223FE50 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FE50 */ rbrew_write32(cpu->mem, _t40, cpu->r[27]);
|
|
/* 0223FE54 */ cpu->r[4] = 0x00000004u;
|
|
/* 0223FE58 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FE58 */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 0223FE5C */ _t42 = cpu->r[8] + 0x000000A4u;
|
|
/* 0223FE5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0223FE60 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0223FE64 */ Gambit_fn_029843D4(cpu);
|
|
/* 0223FE68 */ cpu->r[8] = 0x10050000u;
|
|
/* 0223FE6C */ _t43 = cpu->r[8] + 0x000035C4u;
|
|
/* 0223FE6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0223FE70 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 0223FE74 */ _t44 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FE74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0223FE78 */ cpu->f[1] = cpu->f[31];
|
|
/* 0223FE7C */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 0223FE7C */ rbrew_write32(cpu->mem, _t45, cpu->r[3]);
|
|
/* 0223FE80 */ _t46 = cpu->r[10] + 0x000000A4u;
|
|
/* 0223FE80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0223FE84 */ cpu->r[4] = 0x00000000u;
|
|
/* 0223FE88 */ Gambit_fn_02983FDC(cpu);
|
|
/* 0223FE8C */ _t47 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FE8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0223FE90 */ cpu->r[4] = 0x00000001u;
|
|
/* 0223FE94 */ _t48 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0223FE94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0223FE98 */ Gambit_fn_0216E264(cpu);
|
|
/* 0223FE9C */ _t49 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FE9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0223FEA0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0223FEA4 */ _t50 = cpu->r[30] + 0x00000038u;
|
|
/* 0223FEA4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0223FEA8 */ Gambit_fn_0216E218(cpu);
|
|
/* 0223FEAC */ cpu->f[1] = cpu->f[31];
|
|
/* 0223FEB0 */ _t51 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FEB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0223FEB4 */ Gambit_fn_029806D4(cpu);
|
|
/* 0223FEB8 */ _t52 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FEB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0223FEBC */ Gambit_fn_02980378(cpu);
|
|
/* 0223FEC0 */ cpu->r[8] = 0x101C0000u;
|
|
/* 0223FEC4 */ _t53 = cpu->r[8] + 0x00001344u;
|
|
/* 0223FEC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0223FEC8 */ cpu->r[9] = 0x00000002u;
|
|
/* 0223FECC */ _t54 = cpu->r[8] + 0x00000014u;
|
|
/* 0223FECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0223FED0 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0223FED0 */ rbrew_write32(cpu->mem, _t55, cpu->r[9]);
|
|
/* 0223FED4 */ _t56 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0223FED4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0223FED8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0223FEDC */ Gambit_fn_0201D9E4(cpu);
|
|
/* 0223FEE0 */ _t57 = cpu->r[29] + 0x00000008u;
|
|
/* 0223FEE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0223FEE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FEE8 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223FEEC */ Gambit_fn_02161BFC(cpu);
|
|
/* 0223FEF0 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 0223FEF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0223FEF4 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FEF4 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 0223FEF8 */ _t60 = cpu->r[31] + 0x00000155u;
|
|
/* 0223FEF8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t60);
|
|
/* 0223FEFC */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0223FF00 */ _t61 = cpu->r[31] + 0x00000156u;
|
|
/* 0223FF00 */ cpu->r[6] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0223FF04 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0223FF08 */ Gambit_fn_0216E2B0(cpu);
|
|
/* 0223FF0C */ /* nop */
|
|
/* 0223FF10 */ _t62 = cpu->r[1] + 0x00000138u;
|
|
/* 0223FF10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0223FF14 */ _t63 = cpu->r[1] + 0x00000130u;
|
|
/* 0223FF14 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 0223FF18 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FF18 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0223FF18 */ if (_t65) goto L_0223FF1C; // else: addr-0 trap, fall-through
|
|
L_0223FF1C: ; // 0x223ff1c
|
|
/* 0223FF1C */ _t66 = cpu->r[1] + 0x00000144u;
|
|
/* 0223FF1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0223FF20 */ cpu->lr = cpu->r[0];
|
|
/* 0223FF24 */ cpu->r[1] = cpu->r[1] + 0x00000140u;
|
|
/* 0223FF28 */ return;
|
|
}
|
|
|
|
// fn_0223FF2C @ 0x223ff2c
|
|
void Gambit_fn_0223FF2C(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_0223FF2C: ; // 0x223ff2c
|
|
/* 0223FF2C */ cpu->r[0] = cpu->lr;
|
|
/* 0223FF30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FF30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FF30 */ cpu->r[1] = _t0;
|
|
/* 0223FF34 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FF34 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0223FF38 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FF38 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223FF3C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0223FF40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FF40 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FF44 */ _t4 = cpu->r[30] + 0x00001358u;
|
|
/* 0223FF44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FF44 */ cpu->r[30] = _t4;
|
|
/* 0223FF48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FF4C */ _t5 = cpu->r[12] + 0x00000010u;
|
|
/* 0223FF4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223FF50 */ Gambit_fn_0216F4A0(cpu);
|
|
/* 0223FF54 */ _t6 = cpu->r[31] + 0x00000024u;
|
|
/* 0223FF54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223FF58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[3]);
|
|
/* 0223FF5C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FF5C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223FF5C */ if (_t8) goto L_0223FF60; else goto L_0223FF88;
|
|
L_0223FF60: ; // 0x223ff60
|
|
/* 0223FF60 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 0223FF60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FF64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 0223FF68 */ _t10 = cpu->r[10] + 0x00000010u;
|
|
/* 0223FF68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FF6C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FF6C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0223FF6C */ if (_t12) goto L_0223FF70; else goto L_0223FF78;
|
|
L_0223FF70: ; // 0x223ff70
|
|
/* 0223FF70 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223FF74 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0223FF78: ; // 0x223ff78
|
|
/* 0223FF78 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0223FF78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223FF7C */ _t14 = cpu->r[4] + 0x00000004u;
|
|
/* 0223FF7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0223FF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223FF84 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FF84 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223FF84 */ if (_t16) goto L_0223FF88; else goto L_0223FFB0;
|
|
L_0223FF88: ; // 0x223ff88
|
|
/* 0223FF88 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223FF8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FF90 */ _t17 = cpu->r[31] + 0x00000030u;
|
|
/* 0223FF90 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 0223FF94 */ Gambit_fn_02790488(cpu);
|
|
/* 0223FF98 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223FF9C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FF9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223FFA0 */ cpu->lr = cpu->r[0];
|
|
/* 0223FFA4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FFA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223FFA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FFAC */ return;
|
|
L_0223FFB0: ; // 0x223ffb0
|
|
/* 0223FFB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FFB4 */ Gambit_fn_0223FD04(cpu);
|
|
/* 0223FFB8 */ cpu->r[3] = 0x0000036Cu;
|
|
/* 0223FFBC */ Gambit_fn_02801A78(cpu);
|
|
/* 0223FFC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223FFC4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FFC4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0223FFC4 */ if (_t22) goto L_0223FFCC; else goto L_0223FFC8;
|
|
L_0223FFC8: ; // 0x223ffc8
|
|
/* 0223FFC8 */ Gambit_fn_02800E08(cpu);
|
|
L_0223FFCC: ; // 0x223ffcc
|
|
/* 0223FFCC */ _t23 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223FFCC */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 0223FFD0 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FFD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0223FFD4 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FFD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0223FFD8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FFDC */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FFDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223FFE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FFE4 */ return;
|
|
}
|
|
|
|
// fn_0223FF30 @ 0x223ff30
|
|
void Gambit_fn_0223FF30(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_0223FF30: ; // 0x223ff30
|
|
/* 0223FF30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FF30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FF30 */ cpu->r[1] = _t0;
|
|
/* 0223FF34 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FF34 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0223FF38 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FF38 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0223FF3C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0223FF40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FF40 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0223FF44 */ _t4 = cpu->r[30] + 0x00001358u;
|
|
/* 0223FF44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0223FF44 */ cpu->r[30] = _t4;
|
|
/* 0223FF48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FF4C */ _t5 = cpu->r[12] + 0x00000010u;
|
|
/* 0223FF4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0223FF50 */ Gambit_fn_0216F4A0(cpu);
|
|
/* 0223FF54 */ _t6 = cpu->r[31] + 0x00000024u;
|
|
/* 0223FF54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0223FF58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[3]);
|
|
/* 0223FF5C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FF5C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0223FF5C */ if (_t8) goto L_0223FF60; else goto L_0223FF88;
|
|
L_0223FF60: ; // 0x223ff60
|
|
/* 0223FF60 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 0223FF60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0223FF64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 0223FF68 */ _t10 = cpu->r[10] + 0x00000010u;
|
|
/* 0223FF68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0223FF6C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0223FF6C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0223FF6C */ if (_t12) goto L_0223FF70; else goto L_0223FF78;
|
|
L_0223FF70: ; // 0x223ff70
|
|
/* 0223FF70 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0223FF74 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0223FF78: ; // 0x223ff78
|
|
/* 0223FF78 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0223FF78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0223FF7C */ _t14 = cpu->r[4] + 0x00000004u;
|
|
/* 0223FF7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0223FF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0223FF84 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FF84 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0223FF84 */ if (_t16) goto L_0223FF88; else goto L_0223FFB0;
|
|
L_0223FF88: ; // 0x223ff88
|
|
/* 0223FF88 */ cpu->r[0] = 0x00000001u;
|
|
/* 0223FF8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FF90 */ _t17 = cpu->r[31] + 0x00000030u;
|
|
/* 0223FF90 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 0223FF94 */ Gambit_fn_02790488(cpu);
|
|
/* 0223FF98 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0223FF9C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FF9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0223FFA0 */ cpu->lr = cpu->r[0];
|
|
/* 0223FFA4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FFA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0223FFA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FFAC */ return;
|
|
L_0223FFB0: ; // 0x223ffb0
|
|
/* 0223FFB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0223FFB4 */ Gambit_fn_0223FD04(cpu);
|
|
/* 0223FFB8 */ cpu->r[3] = 0x0000036Cu;
|
|
/* 0223FFBC */ Gambit_fn_02801A78(cpu);
|
|
/* 0223FFC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0223FFC4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0223FFC4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0223FFC4 */ if (_t22) goto L_0223FFCC; else goto L_0223FFC8;
|
|
L_0223FFC8: ; // 0x223ffc8
|
|
/* 0223FFC8 */ Gambit_fn_02800E08(cpu);
|
|
L_0223FFCC: ; // 0x223ffcc
|
|
/* 0223FFCC */ _t23 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0223FFCC */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 0223FFD0 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FFD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0223FFD4 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0223FFD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0223FFD8 */ cpu->lr = cpu->r[0];
|
|
/* 0223FFDC */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FFDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0223FFE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0223FFE4 */ return;
|
|
}
|
|
|
|
// fn_0223FFE8 @ 0x223ffe8
|
|
void Gambit_fn_0223FFE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0223FFE8: ; // 0x223ffe8
|
|
/* 0223FFE8 */ cpu->r[0] = cpu->lr;
|
|
/* 0223FFEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FFEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FFEC */ cpu->r[1] = _t0;
|
|
/* 0223FFF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FFF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FFF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FFF8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FFF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FFFC */ _t3 = cpu->r[31] + 0x00000028u;
|
|
/* 0223FFFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02240000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02240004 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240004 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02240004 */ if (_t5) goto L_02240030; else goto L_02240008;
|
|
L_02240008: ; // 0x2240008
|
|
/* 02240008 */ _t6 = cpu->r[11] + 0x00000014u;
|
|
/* 02240008 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0224000C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02240010 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240010 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02240010 */ if (_t8) goto L_02240030; else goto L_02240014;
|
|
L_02240014: ; // 0x2240014
|
|
/* 02240014 */ _t9 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02240014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02240018 */ _t10 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02240018 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0224001C */ Gambit_fn_02800EE4(cpu);
|
|
/* 02240020 */ cpu->r[0] = 0x00000001u;
|
|
/* 02240024 */ cpu->r[3] = cpu->r[31];
|
|
/* 02240028 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 02240028 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0224002C */ Gambit_fn_02790488(cpu);
|
|
L_02240030: ; // 0x2240030
|
|
/* 02240030 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02240030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02240034 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02240034 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02240038 */ cpu->lr = cpu->r[0];
|
|
/* 0224003C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02240040 */ return;
|
|
}
|
|
|
|
// fn_0223FFEC @ 0x223ffec
|
|
void Gambit_fn_0223FFEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0223FFEC: ; // 0x223ffec
|
|
/* 0223FFEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0223FFEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0223FFEC */ cpu->r[1] = _t0;
|
|
/* 0223FFF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0223FFF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0223FFF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0223FFF8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0223FFF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0223FFFC */ _t3 = cpu->r[31] + 0x00000028u;
|
|
/* 0223FFFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02240000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02240004 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240004 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02240004 */ if (_t5) goto L_02240030; else goto L_02240008;
|
|
L_02240008: ; // 0x2240008
|
|
/* 02240008 */ _t6 = cpu->r[11] + 0x00000014u;
|
|
/* 02240008 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0224000C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02240010 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240010 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02240010 */ if (_t8) goto L_02240030; else goto L_02240014;
|
|
L_02240014: ; // 0x2240014
|
|
/* 02240014 */ _t9 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02240014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02240018 */ _t10 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02240018 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0224001C */ Gambit_fn_02800EE4(cpu);
|
|
/* 02240020 */ cpu->r[0] = 0x00000001u;
|
|
/* 02240024 */ cpu->r[3] = cpu->r[31];
|
|
/* 02240028 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 02240028 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0224002C */ Gambit_fn_02790488(cpu);
|
|
L_02240030: ; // 0x2240030
|
|
/* 02240030 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02240030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02240034 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02240034 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02240038 */ cpu->lr = cpu->r[0];
|
|
/* 0224003C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02240040 */ return;
|
|
}
|
|
|
|
// fn_02240000 @ 0x2240000
|
|
void Gambit_fn_02240000(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02240000: ; // 0x2240000
|
|
/* 02240000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02240004 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240004 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02240004 */ if (_t1) goto L_02240030; else goto L_02240008;
|
|
L_02240008: ; // 0x2240008
|
|
/* 02240008 */ _t2 = cpu->r[11] + 0x00000014u;
|
|
/* 02240008 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0224000C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02240010 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240010 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02240010 */ if (_t4) goto L_02240030; else goto L_02240014;
|
|
L_02240014: ; // 0x2240014
|
|
/* 02240014 */ _t5 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02240014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02240018 */ _t6 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02240018 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0224001C */ Gambit_fn_02800EE4(cpu);
|
|
/* 02240020 */ cpu->r[0] = 0x00000001u;
|
|
/* 02240024 */ cpu->r[3] = cpu->r[31];
|
|
/* 02240028 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 02240028 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0224002C */ Gambit_fn_02790488(cpu);
|
|
L_02240030: ; // 0x2240030
|
|
/* 02240030 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02240030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02240034 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02240034 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02240038 */ cpu->lr = cpu->r[0];
|
|
/* 0224003C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02240040 */ return;
|
|
}
|
|
|
|
// fn_02240044 @ 0x2240044
|
|
void Gambit_fn_02240044(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;
|
|
|
|
L_02240044: ; // 0x2240044
|
|
/* 02240044 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02240044 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02240044 */ cpu->r[1] = _t0;
|
|
/* 02240048 */ /* nop */
|
|
/* 0224004C */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0224004C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02240050 */ /* nop */
|
|
/* 02240054 */ cpu->r[0] = cpu->lr;
|
|
/* 02240058 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 02240058 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0224005C */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0224005C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02240060 */ /* nop */
|
|
/* 02240064 */ cpu->r[27] = cpu->r[4];
|
|
/* 02240068 */ _t4 = cpu->r[1] + 0x00000050u;
|
|
/* 02240068 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0224006C */ cpu->r[3] = cpu->r[27];
|
|
/* 02240070 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 02240070 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02240074 */ Gambit_fn_029810B4(cpu);
|
|
/* 02240078 */ _t6 = cpu->r[27] + 0x0000001Cu;
|
|
/* 02240078 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0224007C */ cpu->r[26] = 0x00000000u;
|
|
/* 02240080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[8]);
|
|
/* 02240084 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240084 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02240084 */ if (_t8) goto L_02240088; else goto L_02240184;
|
|
L_02240088: ; // 0x2240088
|
|
/* 02240088 */ cpu->r[9] = 0x10050000u;
|
|
/* 0224008C */ _t9 = cpu->r[9] + 0x000035C4u;
|
|
/* 0224008C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02240090 */ cpu->r[31] = 0x00000000u;
|
|
L_02240094: ; // 0x2240094
|
|
/* 02240094 */ cpu->r[28] = 0x00000000u;
|
|
/* 02240098 */ cpu->f[30] = cpu->f[31];
|
|
/* 0224009C */ goto L_02240130;
|
|
L_022400A0: ; // 0x22400a0
|
|
/* 022400A0 */ _t10 = rbrew_rlwinm(cpu->r[26], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 022400A0 */ _t11 = cpu->r[29] & 0x0000FFFFu;
|
|
/* 022400A0 */ cpu->r[29] = _t11 | _t10;
|
|
/* 022400A4 */ cpu->r[3] = cpu->r[27];
|
|
/* 022400A8 */ _t12 = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 022400A8 */ _t13 = cpu->r[29] & 0xFFFF0000u;
|
|
/* 022400A8 */ cpu->r[29] = _t13 | _t12;
|
|
/* 022400AC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 022400B0 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022400B0 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022400B4 */ Gambit_fn_026200CC(cpu);
|
|
/* 022400B8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022400B8 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 022400BC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022400BC */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t16);
|
|
/* 022400C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFFFu);
|
|
/* 022400C4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022400C4 */ rbrew_write32(cpu->mem, _t17, cpu->r[4]);
|
|
/* 022400C8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022400C8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022400C8 */ if (_t19) goto L_0224012C; else goto L_022400CC;
|
|
L_022400CC: ; // 0x22400cc
|
|
/* 022400CC */ _t20 = cpu->r[1] + 0x0000000Au;
|
|
/* 022400CC */ cpu->r[25] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t20);
|
|
/* 022400D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0xFFFFFFFFu);
|
|
/* 022400D4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022400D4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022400D4 */ if (_t22) goto L_0224012C; else goto L_022400D8;
|
|
L_022400D8: ; // 0x22400d8
|
|
/* 022400D8 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022400D8 */ cpu->r[24] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t23);
|
|
/* 022400DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0xFFFFFFFFu);
|
|
/* 022400E0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022400E0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022400E0 */ if (_t25) goto L_0224012C; else goto L_022400E4;
|
|
L_022400E4: ; // 0x22400e4
|
|
/* 022400E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 022400E8 */ cpu->r[3] = cpu->r[27];
|
|
/* 022400EC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022400F0 */ _t26 = cpu->r[27] + 0x0000001Cu;
|
|
/* 022400F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022400F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 022400F8 */ cpu->r[10] = 0x00000000u;
|
|
/* 022400FC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022400FC */ _t28 = _t27 & 0x00000001u;
|
|
/* 022400FC */ if (_t28) goto L_02240100; else goto L_0224010C;
|
|
L_02240100: ; // 0x2240100
|
|
/* 02240100 */ _t29 = cpu->r[27] + 0x00000024u;
|
|
/* 02240100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02240104 */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02240108 */ _t30 = cpu->r[12] + cpu->r[0];
|
|
/* 02240108 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
L_0224010C: ; // 0x224010c
|
|
/* 0224010C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0224010C */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02240110 */ _t32 = cpu->r[3] + 0x00000088u;
|
|
/* 02240110 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02240114 */ _t33 = cpu->r[11] + 0x00000114u;
|
|
/* 02240114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02240118 */ cpu->ctr = cpu->r[0];
|
|
/* 0224011C */ cpu->r[4] = cpu->r[25];
|
|
/* 02240120 */ cpu->r[5] = cpu->r[24];
|
|
/* 02240124 */ cpu->f[1] = cpu->f[30];
|
|
/* 02240128 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0224012C: ; // 0x224012c
|
|
/* 0224012C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
L_02240130: ; // 0x2240130
|
|
/* 02240130 */ cpu->r[3] = cpu->r[27];
|
|
/* 02240134 */ cpu->r[4] = cpu->r[26];
|
|
/* 02240138 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0224013C */ _t34 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0224013C */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02240140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 02240144 */ cpu->r[12] = 0x00000000u;
|
|
/* 02240148 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240148 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02240148 */ if (_t36) goto L_0224014C; else goto L_02240154;
|
|
L_0224014C: ; // 0x224014c
|
|
/* 0224014C */ _t37 = cpu->r[27] + 0x00000024u;
|
|
/* 0224014C */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02240150 */ _t38 = cpu->r[6] + cpu->r[31];
|
|
/* 02240150 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
L_02240154: ; // 0x2240154
|
|
/* 02240154 */ _t39 = cpu->r[12] + 0x00000000u;
|
|
/* 02240154 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02240158 */ _t40 = cpu->r[3] + 0x00000088u;
|
|
/* 02240158 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0224015C */ _t41 = cpu->r[7] + 0x000000B4u;
|
|
/* 0224015C */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02240160 */ cpu->ctr = cpu->r[9];
|
|
/* 02240164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02240168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[3]);
|
|
/* 0224016C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224016C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0224016C */ if (_t43) goto L_022400A0; else goto L_02240170;
|
|
L_02240170: ; // 0x2240170
|
|
/* 02240170 */ _t44 = cpu->r[27] + 0x0000001Cu;
|
|
/* 02240170 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02240174 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02240178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]);
|
|
/* 0224017C */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 02240180 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240180 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02240180 */ if (_t46) goto L_02240094; else goto L_02240184;
|
|
L_02240184: ; // 0x2240184
|
|
/* 02240184 */ /* nop */
|
|
/* 02240188 */ _t47 = cpu->r[1] + 0x00000040u;
|
|
/* 02240188 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0224018C */ _t48 = cpu->r[1] + 0x00000050u;
|
|
/* 0224018C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02240190 */ _t49 = cpu->r[1] + 0x00000038u;
|
|
/* 02240190 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 02240194 */ _t50 = cpu->r[1] + 0x00000048u;
|
|
/* 02240194 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t50);
|
|
/* 02240198 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240198 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02240198 */ if (_t52) goto L_0224019C; // else: addr-0 trap, fall-through
|
|
L_0224019C: ; // 0x224019c
|
|
/* 0224019C */ _t53 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0224019C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022401A0 */ cpu->lr = cpu->r[0];
|
|
/* 022401A4 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022401A8 */ return;
|
|
}
|
|
|
|
// fn_022401AC @ 0x22401ac
|
|
void Gambit_fn_022401AC(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;
|
|
|
|
L_022401AC: ; // 0x22401ac
|
|
/* 022401AC */ _t0 = cpu->r[1] + 0xFFFFFE10u;
|
|
/* 022401AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022401AC */ cpu->r[1] = _t0;
|
|
/* 022401B0 */ /* nop */
|
|
/* 022401B4 */ cpu->r[0] = cpu->lr;
|
|
/* 022401B8 */ _t1 = cpu->r[1] + 0x000001C0u;
|
|
/* 022401B8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 022401BC */ _t2 = cpu->r[1] + 0x000001E0u;
|
|
/* 022401BC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022401C0 */ /* nop */
|
|
/* 022401C4 */ _t3 = cpu->r[1] + 0x000001D0u;
|
|
/* 022401C4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022401C8 */ _t4 = cpu->r[1] + 0x000001F4u;
|
|
/* 022401C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022401CC */ /* nop */
|
|
/* 022401D0 */ _t5 = cpu->r[1] + 0x000001C8u;
|
|
/* 022401D0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 022401D4 */ /* nop */
|
|
/* 022401D8 */ _t6 = cpu->r[1] + 0x000001E8u;
|
|
/* 022401D8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 022401DC */ _t7 = cpu->r[1] + 0x000001D8u;
|
|
/* 022401DC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022401E0 */ cpu->r[29] = cpu->r[4];
|
|
/* 022401E4 */ _t8 = cpu->r[29] + 0x00000034u;
|
|
/* 022401E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022401E8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022401EC */ _t9 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022401EC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022401F0 */ Gambit_fn_027FAE24(cpu);
|
|
/* 022401F4 */ cpu->r[7] = 0x101C0000u;
|
|
/* 022401F8 */ _t10 = cpu->r[7] + 0x00001344u;
|
|
/* 022401F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022401FC */ cpu->r[8] = 0x00000002u;
|
|
/* 02240200 */ _t11 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02240200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02240204 */ cpu->r[28] = cpu->r[3];
|
|
/* 02240208 */ _t12 = cpu->r[7] + 0x00000014u;
|
|
/* 02240208 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0224020C */ cpu->r[10] = 0x10110000u;
|
|
/* 02240210 */ _t13 = cpu->r[1] + 0x00000060u;
|
|
/* 02240210 */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 02240214 */ _t14 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02240214 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02240218 */ cpu->r[9] = cpu->r[1] + 0x000000A8u;
|
|
/* 0224021C */ cpu->r[5] = 0x00000100u;
|
|
/* 02240220 */ _t15 = cpu->r[1] + 0x00000064u;
|
|
/* 02240220 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02240224 */ cpu->r[0] = 0x10050000u;
|
|
/* 02240228 */ _t16 = cpu->r[1] + 0x000000A4u;
|
|
/* 02240228 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 0224022C */ cpu->r[0] = cpu->r[0] + 0x0000358Cu;
|
|
/* 02240230 */ _t17 = cpu->r[10] + 0x00007399u;
|
|
/* 02240230 */ cpu->r[10] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02240234 */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02240238 */ _t18 = cpu->r[1] + 0x000000A0u;
|
|
/* 02240238 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0224023C */ _t19 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0224023C */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 02240240 */ cpu->r[7] = cpu->r[1] + 0x00000064u;
|
|
/* 02240244 */ cpu->r[27] = 0x10050000u;
|
|
/* 02240248 */ _t20 = cpu->r[1] + 0x000000A8u;
|
|
/* 02240248 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[10]);
|
|
/* 0224024C */ cpu->r[5] = cpu->r[1] + 0x00000060u;
|
|
/* 02240250 */ cpu->r[27] = cpu->r[27] + 0x00003514u;
|
|
/* 02240254 */ _t21 = cpu->r[1] + 0x000001A7u;
|
|
/* 02240254 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[10]);
|
|
/* 02240258 */ Gambit_fn_0201E7F0(cpu);
|
|
/* 0224025C */ cpu->r[5] = 0x00000004u;
|
|
/* 02240260 */ cpu->r[4] = cpu->r[28];
|
|
/* 02240264 */ cpu->r[3] = 0x00000008u;
|
|
/* 02240268 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0224026C */ cpu->r[31] = cpu->r[3];
|
|
/* 0224026C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02240270 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240270 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02240270 */ if (_t23) goto L_0224028C; else goto L_02240274;
|
|
L_02240274: ; // 0x2240274
|
|
/* 02240274 */ cpu->r[5] = 0x00000000u;
|
|
/* 02240278 */ cpu->r[6] = cpu->r[28];
|
|
/* 0224027C */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02240280 */ cpu->r[3] = cpu->r[31];
|
|
/* 02240284 */ Gambit_fn_027C6980(cpu);
|
|
/* 02240288 */ cpu->r[31] = cpu->r[3];
|
|
L_0224028C: ; // 0x224028c
|
|
/* 0224028C */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 02240290 */ Gambit_fn_02982574(cpu);
|
|
/* 02240294 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02240298 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0224029C */ _t24 = cpu->r[12] + 0xFFFF97D0u;
|
|
/* 0224029C */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022402A0 */ _t25 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 022402A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 022402A4 */ _t26 = cpu->r[1] + 0x00000078u;
|
|
/* 022402A4 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 022402A8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022402AC */ _t27 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022402AC */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[0]);
|
|
/* 022402B0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022402B4 */ _t28 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 022402B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t28);
|
|
/* 022402B8 */ _t29 = cpu->r[9] + 0xFFFF97D4u;
|
|
/* 022402B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022402BC */ _t30 = cpu->r[1] + 0x0000008Du;
|
|
/* 022402BC */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
/* 022402C0 */ cpu->r[3] = cpu->r[1] + 0x00000090u;
|
|
/* 022402C4 */ _t31 = cpu->r[1] + 0x00000088u;
|
|
/* 022402C4 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 022402C8 */ Gambit_fn_02984F3C(cpu);
|
|
/* 022402CC */ cpu->r[9] = 0x00000006u;
|
|
/* 022402D0 */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 022402D4 */ _t32 = cpu->r[29] + 0x00000030u;
|
|
/* 022402D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022402D8 */ cpu->r[7] = cpu->r[1] + 0x00000068u;
|
|
/* 022402DC */ cpu->r[8] = cpu->r[28];
|
|
/* 022402E0 */ _t33 = cpu->r[1] + 0x00000094u;
|
|
/* 022402E0 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022402E4 */ cpu->r[6] = cpu->r[1] + 0x00000074u;
|
|
/* 022402E8 */ cpu->r[5] = cpu->r[3];
|
|
/* 022402EC */ _t34 = cpu->r[1] + 0x00000068u;
|
|
/* 022402EC */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022402F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022402F4 */ Gambit_fn_023C96F0(cpu);
|
|
/* 022402F8 */ _t35 = cpu->r[30] + 0x00000034u;
|
|
/* 022402F8 */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
/* 022402FC */ cpu->r[0] = 0x10050000u;
|
|
/* 02240300 */ _t36 = cpu->r[30] + 0x00000008u;
|
|
/* 02240300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02240304 */ cpu->r[0] = cpu->r[0] + 0x000035ECu;
|
|
/* 02240308 */ _t37 = cpu->r[1] + 0x00000070u;
|
|
/* 02240308 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
/* 0224030C */ cpu->r[4] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02240310 */ _t38 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02240310 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02240314 */ Gambit_fn_029807A8(cpu);
|
|
/* 02240318 */ cpu->r[31] = cpu->r[3];
|
|
/* 0224031C */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 0224031C */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02240320 */ /* nop */
|
|
/* 02240324 */ cpu->r[4] = cpu->r[29];
|
|
/* 02240328 */ cpu->r[3] = cpu->r[28];
|
|
/* 0224032C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02240330 */ _t40 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02240330 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02240334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[5]);
|
|
/* 02240338 */ cpu->r[11] = 0x00000000u;
|
|
/* 0224033C */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224033C */ _t42 = _t41 & 0x00000001u;
|
|
/* 0224033C */ if (_t42) goto L_02240340; else goto L_0224034C;
|
|
L_02240340: ; // 0x2240340
|
|
/* 02240340 */ _t43 = cpu->r[28] + 0x00000024u;
|
|
/* 02240340 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02240344 */ cpu->r[6] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02240348 */ _t44 = cpu->r[6] + cpu->r[9];
|
|
/* 02240348 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
L_0224034C: ; // 0x224034c
|
|
/* 0224034C */ _t45 = cpu->r[11] + 0x00000000u;
|
|
/* 0224034C */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02240350 */ _t46 = cpu->r[3] + 0x00000088u;
|
|
/* 02240350 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02240354 */ _t47 = cpu->r[10] + 0x00000074u;
|
|
/* 02240354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02240358 */ cpu->ctr = cpu->r[0];
|
|
/* 0224035C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02240360 */ /* nop */
|
|
/* 02240364 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02240368 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 02240368 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0224036C */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0224036C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02240370 */ _t50 = cpu->r[1] + 0x00000054u;
|
|
/* 02240370 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[7]);
|
|
/* 02240374 */ _t51 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02240374 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02240378 */ _t52 = cpu->r[1] + 0x00000044u;
|
|
/* 02240378 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[10]);
|
|
/* 0224037C */ _t53 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0224037C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 02240380 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 02240380 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02240384 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 02240384 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02240388 */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 02240388 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 0224038C */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 0224038C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02240390 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 02240390 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02240394 */ _t59 = cpu->r[1] + 0x00000058u;
|
|
/* 02240394 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 02240398 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 02240398 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0224039C */ _t61 = cpu->r[1] + 0x00000050u;
|
|
/* 0224039C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[0]);
|
|
/* 022403A0 */ _t62 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022403A0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[10]);
|
|
/* 022403A4 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022403A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022403A8 */ _t64 = cpu->r[1] + 0x00000040u;
|
|
/* 022403A8 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[11]);
|
|
/* 022403AC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 022403B0 */ _t65 = cpu->r[1] + 0x00000048u;
|
|
/* 022403B0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 022403B4 */ Gambit_fn_02C69350(cpu);
|
|
/* 022403B8 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 022403BC */ cpu->f[31] = cpu->f[1];
|
|
/* 022403C0 */ Gambit_fn_02C69350(cpu);
|
|
/* 022403C4 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022403C8 */ cpu->f[30] = cpu->f[1];
|
|
/* 022403CC */ Gambit_fn_02C69350(cpu);
|
|
/* 022403D0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022403D4 */ _t66 = cpu->r[12] + 0x000035C4u;
|
|
/* 022403D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022403D8 */ cpu->r[8] = 0x10050000u;
|
|
/* 022403DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 022403E0 */ _t67 = cpu->r[8] + 0x000035E4u;
|
|
/* 022403E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022403E4 */ cpu->f[29] = cpu->f[1];
|
|
/* 022403E8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022403E8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 022403E8 */ if (_t69) goto L_022403EC; else goto L_022403F0;
|
|
L_022403EC: ; // 0x22403ec
|
|
/* 022403EC */ cpu->f[31] = cpu->f[13];
|
|
L_022403F0: ; // 0x22403f0
|
|
/* 022403F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 022403F4 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022403F4 */ _t71 = _t70 & 0x00000001u;
|
|
/* 022403F4 */ if (_t71) goto L_022403F8; else goto L_022403FC;
|
|
L_022403F8: ; // 0x22403f8
|
|
/* 022403F8 */ cpu->f[30] = cpu->f[13];
|
|
L_022403FC: ; // 0x22403fc
|
|
/* 022403FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[0]);
|
|
/* 02240400 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240400 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02240400 */ if (_t73) goto L_02240404; else goto L_02240408;
|
|
L_02240404: ; // 0x2240404
|
|
/* 02240404 */ cpu->f[29] = cpu->f[13];
|
|
L_02240408: ; // 0x2240408
|
|
/* 02240408 */ cpu->r[5] = 0x10050000u;
|
|
/* 0224040C */ _t74 = cpu->r[5] + 0x000035E8u;
|
|
/* 0224040C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02240410 */ cpu->r[12] = 0x10050000u;
|
|
/* 02240414 */ /* nop */
|
|
/* 02240418 */ cpu->f[9] = cpu->f[12] / cpu->f[30];
|
|
/* 0224041C */ _t75 = cpu->r[30] + 0x00000034u;
|
|
/* 0224041C */ cpu->r[6] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02240420 */ cpu->r[12] = cpu->r[12] + 0x000034FCu;
|
|
/* 02240424 */ /* nop */
|
|
/* 02240428 */ /* nop */
|
|
/* 0224042C */ cpu->f[11] = cpu->f[12] / cpu->f[29];
|
|
/* 02240430 */ cpu->f[12] = cpu->f[12] / cpu->f[31];
|
|
/* 02240434 */ /* nop */
|
|
/* 02240438 */ /* nop */
|
|
/* 0224043C */ /* nop */
|
|
/* 02240440 */ /* nop */
|
|
/* 02240444 */ /* nop */
|
|
/* 02240448 */ /* nop */
|
|
/* 0224044C */ /* nop */
|
|
/* 02240450 */ /* nop */
|
|
/* 02240454 */ /* nop */
|
|
/* 02240458 */ /* nop */
|
|
/* 0224045C */ /* nop */
|
|
/* 02240460 */ /* nop */
|
|
/* 02240464 */ /* nop */
|
|
/* 02240468 */ /* nop */
|
|
/* 0224046C */ /* nop */
|
|
/* 02240470 */ /* nop */
|
|
/* 02240474 */ /* nop */
|
|
/* 02240478 */ /* nop */
|
|
/* 0224047C */ _t76 = cpu->r[6] + 0x0000007Cu;
|
|
/* 0224047C */ cpu->r[0] = rbrew_read8(cpu->mem, _t76);
|
|
/* 02240480 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02240484 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02240488 */ cpu->r[4] = cpu->r[6] + 0x00000034u;
|
|
/* 0224048C */ _t77 = cpu->r[6] + 0x0000007Cu;
|
|
/* 0224048C */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 02240490 */ Gambit_fn_02C69510(cpu);
|
|
/* 02240494 */ _t78 = cpu->r[30] + 0x00000034u;
|
|
/* 02240494 */ cpu->r[10] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02240498 */ _t79 = cpu->r[10] + 0x0000007Cu;
|
|
/* 02240498 */ cpu->r[9] = rbrew_read8(cpu->mem, _t79);
|
|
/* 0224049C */ _t80 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0224049C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[29]);
|
|
/* 022404A0 */ cpu->r[9] = cpu->r[9] | 0x00000001u;
|
|
/* 022404A4 */ _t81 = cpu->r[10] + 0x00000064u;
|
|
/* 022404A4 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[31]);
|
|
/* 022404A8 */ _t82 = cpu->r[10] + 0x0000007Cu;
|
|
/* 022404A8 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[9]);
|
|
/* 022404AC */ _t83 = cpu->r[10] + 0x00000068u;
|
|
/* 022404AC */ rbrew_write_f32(cpu->mem, _t83, cpu->f[30]);
|
|
/* 022404B0 */ _t84 = cpu->r[30] + 0x00000034u;
|
|
/* 022404B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022404B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022404B8 */ Gambit_fn_02240044(cpu);
|
|
/* 022404BC */ _t85 = cpu->r[30] + 0x00000034u;
|
|
/* 022404BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022404C0 */ Gambit_fn_029802A0(cpu);
|
|
/* 022404C4 */ /* nop */
|
|
/* 022404C8 */ _t86 = cpu->r[1] + 0x000001C8u;
|
|
/* 022404C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022404CC */ _t87 = cpu->r[1] + 0x000001D8u;
|
|
/* 022404CC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022404D0 */ _t88 = cpu->r[1] + 0x000001C0u;
|
|
/* 022404D0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 022404D4 */ _t89 = cpu->r[1] + 0x000001E8u;
|
|
/* 022404D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022404D8 */ _t90 = cpu->r[1] + 0x000001D0u;
|
|
/* 022404D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 022404DC */ _t91 = cpu->r[1] + 0x000001E0u;
|
|
/* 022404DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 022404E0 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022404E0 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022404E0 */ if (_t93) goto L_022404E4; // else: addr-0 trap, fall-through
|
|
L_022404E4: ; // 0x22404e4
|
|
/* 022404E4 */ _t94 = cpu->r[1] + 0x000001F4u;
|
|
/* 022404E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022404E8 */ cpu->lr = cpu->r[0];
|
|
/* 022404EC */ cpu->r[1] = cpu->r[1] + 0x000001F0u;
|
|
/* 022404F0 */ return;
|
|
}
|
|
|
|
// fn_022404F4 @ 0x22404f4
|
|
void Gambit_fn_022404F4(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;
|
|
|
|
L_022404F4: ; // 0x22404f4
|
|
/* 022404F4 */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 022404F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022404F4 */ cpu->r[1] = _t0;
|
|
/* 022404F8 */ _t1 = cpu->r[1] + 0x000000C8u;
|
|
/* 022404F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022404FC */ /* nop */
|
|
/* 02240500 */ _t2 = cpu->r[1] + 0x000000D0u;
|
|
/* 02240500 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02240504 */ cpu->r[0] = cpu->lr;
|
|
/* 02240508 */ /* nop */
|
|
/* 0224050C */ _t3 = cpu->r[1] + 0x000000DCu;
|
|
/* 0224050C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02240510 */ cpu->r[29] = cpu->r[3];
|
|
/* 02240514 */ Gambit_fn_027FAE24(cpu);
|
|
/* 02240518 */ cpu->r[5] = 0x10050000u;
|
|
/* 0224051C */ cpu->r[10] = 0x00000080u;
|
|
/* 02240520 */ _t4 = cpu->r[5] + 0x00003600u;
|
|
/* 02240520 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02240524 */ cpu->r[12] = 0x10050000u;
|
|
/* 02240528 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02240528 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0224052C */ cpu->r[7] = 0x10050000u;
|
|
/* 02240530 */ _t6 = cpu->r[12] + 0x000035C4u;
|
|
/* 02240530 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02240534 */ cpu->r[12] = 0x10050000u;
|
|
/* 02240538 */ _t7 = cpu->r[7] + 0x000035FCu;
|
|
/* 02240538 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0224053C */ cpu->r[9] = 0x10050000u;
|
|
/* 02240540 */ _t8 = cpu->r[12] + 0x000035F8u;
|
|
/* 02240540 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02240544 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02240544 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02240548 */ cpu->r[8] = 0x10050000u;
|
|
/* 0224054C */ _t10 = cpu->r[1] + 0x00000034u;
|
|
/* 0224054C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[11]);
|
|
/* 02240550 */ cpu->r[6] = 0x10050000u;
|
|
/* 02240554 */ _t11 = cpu->r[8] + 0x00003608u;
|
|
/* 02240554 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02240558 */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 02240558 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 0224055C */ _t13 = cpu->r[1] + 0x00000058u;
|
|
/* 0224055C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 02240560 */ _t14 = cpu->r[1] + 0x00000050u;
|
|
/* 02240560 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 02240564 */ cpu->r[30] = 0x00000000u;
|
|
/* 02240568 */ _t15 = cpu->r[9] + 0x000035F4u;
|
|
/* 02240568 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0224056C */ _t16 = cpu->r[1] + 0x00000040u;
|
|
/* 0224056C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 02240570 */ _t17 = cpu->r[1] + 0x00000030u;
|
|
/* 02240570 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02240574 */ cpu->r[31] = 0x10110000u;
|
|
/* 02240578 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 02240578 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 0224057C */ _t19 = cpu->r[6] + 0x00003604u;
|
|
/* 0224057C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02240580 */ _t20 = cpu->r[1] + 0x00000048u;
|
|
/* 02240580 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 02240584 */ cpu->r[0] = 0x10050000u;
|
|
/* 02240588 */ _t21 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02240588 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[10]);
|
|
/* 0224058C */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0224058C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 02240590 */ _t23 = cpu->r[1] + 0x00000054u;
|
|
/* 02240590 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 02240594 */ cpu->r[27] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02240598 */ _t24 = cpu->r[31] + 0x00007399u;
|
|
/* 02240598 */ cpu->r[31] = rbrew_read8(cpu->mem, _t24);
|
|
/* 0224059C */ cpu->r[0] = cpu->r[0] + 0x00003514u;
|
|
/* 022405A0 */ _t25 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022405A0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 022405A4 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 022405A4 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 022405A8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022405A8 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 022405AC */ cpu->r[7] = cpu->r[1] + 0x00000050u;
|
|
/* 022405B0 */ _t28 = cpu->r[1] + 0x000000ABu;
|
|
/* 022405B0 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[31]);
|
|
/* 022405B4 */ _t29 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022405B4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[31]);
|
|
/* 022405B8 */ cpu->r[8] = 0x10050000u;
|
|
/* 022405BC */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 022405BC */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
/* 022405C0 */ cpu->r[8] = cpu->r[8] + 0x000035A4u;
|
|
/* 022405C4 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022405C4 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 022405C8 */ cpu->r[5] = cpu->r[30];
|
|
/* 022405CC */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 022405CC */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 022405D0 */ cpu->r[11] = 0x10050000u;
|
|
/* 022405D4 */ _t33 = cpu->r[1] + 0x00000060u;
|
|
/* 022405D4 */ rbrew_write32(cpu->mem, _t33, cpu->r[27]);
|
|
/* 022405D8 */ cpu->r[11] = cpu->r[11] + 0x00003544u;
|
|
/* 022405DC */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 022405DC */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 022405E0 */ cpu->r[10] = 0x00000040u;
|
|
/* 022405E4 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022405E4 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[5]);
|
|
/* 022405E8 */ cpu->r[9] = cpu->r[1] + 0x00000060u;
|
|
/* 022405EC */ cpu->r[28] = cpu->r[3];
|
|
/* 022405F0 */ _t36 = cpu->r[1] + 0x00000064u;
|
|
/* 022405F0 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 022405F4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022405F8 */ _t37 = cpu->r[1] + 0x00000011u;
|
|
/* 022405F8 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[5]);
|
|
/* 022405FC */ _t38 = cpu->r[1] + 0x00000068u;
|
|
/* 022405FC */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 02240600 */ Gambit_fn_02240848(cpu);
|
|
/* 02240604 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02240604 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02240608 */ _t40 = cpu->r[6] + 0x00000000u;
|
|
/* 02240608 */ cpu->r[12] = rbrew_read8(cpu->mem, _t40);
|
|
/* 0224060C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02240610 */ cpu->r[7] = 0x00080000u;
|
|
/* 02240614 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240614 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02240614 */ if (_t42) goto L_0224063C; else goto L_02240618;
|
|
L_02240618: ; // 0x2240618
|
|
/* 02240618 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0224061C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02240620 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02240624 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02240624 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02240624 */ if (_t44) goto L_02240638; else goto L_02240628;
|
|
L_02240628: ; // 0x2240628
|
|
/* 02240628 */ _t45 = cpu->r[6] + 0x00000000u;
|
|
/* 02240628 */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 0224062C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02240630 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240630 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02240630 */ if (_t47) goto L_02240634; else goto L_02240618;
|
|
L_02240634: ; // 0x2240634
|
|
/* 02240634 */ goto L_0224063C;
|
|
L_02240638: ; // 0x2240638
|
|
/* 02240638 */ cpu->r[30] = 0x00000000u;
|
|
L_0224063C: ; // 0x224063c
|
|
/* 0224063C */ _t48 = cpu->r[1] + 0x00000068u;
|
|
/* 0224063C */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02240640 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02240640 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02240644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02240648 */ _t50 = cpu->r[5] + 0x00000014u;
|
|
/* 02240648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0224064C */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224064C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0224064C */ if (_t52) goto L_02240654; else goto L_02240650;
|
|
L_02240650: ; // 0x2240650
|
|
/* 02240650 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02240654: ; // 0x2240654
|
|
/* 02240654 */ cpu->ctr = cpu->r[6];
|
|
/* 02240658 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0224065C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02240660 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 02240660 */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02240664 */ cpu->r[6] = 0x00000000u;
|
|
/* 02240668 */ cpu->r[5] = cpu->r[30];
|
|
/* 0224066C */ cpu->r[3] = cpu->r[27];
|
|
/* 02240670 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02240674 */ _t54 = cpu->r[27] + cpu->r[30];
|
|
/* 02240674 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[31]);
|
|
/* 02240678 */ cpu->r[0] = cpu->r[1] + 0x000000ACu;
|
|
/* 0224067C */ _t55 = cpu->r[29] + 0x00000034u;
|
|
/* 0224067C */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02240680 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02240684 */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 02240684 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 02240688 */ cpu->r[11] = 0x00000002u;
|
|
/* 0224068C */ _t57 = cpu->r[29] + 0x00000008u;
|
|
/* 0224068C */ cpu->r[8] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02240690 */ cpu->r[7] = 0x10050000u;
|
|
/* 02240694 */ _t58 = cpu->r[1] + 0x000000B0u;
|
|
/* 02240694 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 02240698 */ _t59 = cpu->r[12] + 0x00006000u;
|
|
/* 02240698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0224069C */ cpu->r[7] = cpu->r[7] + 0x0000355Cu;
|
|
/* 022406A0 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 022406A0 */ rbrew_write32(cpu->mem, _t60, cpu->r[11]);
|
|
/* 022406A4 */ _t61 = cpu->r[1] + 0x00000064u;
|
|
/* 022406A4 */ rbrew_write32(cpu->mem, _t61, cpu->r[7]);
|
|
/* 022406A8 */ _t62 = cpu->r[1] + 0x000000ACu;
|
|
/* 022406A8 */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
/* 022406AC */ _t63 = cpu->r[12] + 0x0000025Cu;
|
|
/* 022406AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022406B0 */ _t64 = cpu->r[29] + 0x00000024u;
|
|
/* 022406B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022406B4 */ cpu->r[4] = 0x10050000u;
|
|
/* 022406B8 */ _t65 = cpu->r[8] + 0x00000008u;
|
|
/* 022406B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022406BC */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 022406C0 */ cpu->r[4] = cpu->r[4] + 0x00003620u;
|
|
/* 022406C4 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 022406C4 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 022406C8 */ _t67 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 022406C8 */ _t68 = _t67 & 0x00000001u;
|
|
/* 022406C8 */ if (_t68) goto L_022406CC; // else: addr-0 trap, fall-through
|
|
L_022406CC: ; // 0x22406cc
|
|
/* 022406CC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 022406D0 */ cpu->r[11] = 0x10050000u;
|
|
/* 022406D4 */ _t69 = cpu->r[1] + 0x00000040u;
|
|
/* 022406D4 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[31]);
|
|
/* 022406D8 */ cpu->r[9] = 0x10050000u;
|
|
/* 022406DC */ _t70 = cpu->r[11] + 0x00003610u;
|
|
/* 022406DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022406E0 */ _t71 = cpu->r[9] + 0x0000360Cu;
|
|
/* 022406E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022406E4 */ cpu->r[5] = 0x00000080u;
|
|
/* 022406E8 */ _t72 = cpu->r[1] + 0x00000030u;
|
|
/* 022406E8 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 022406EC */ _t73 = cpu->r[1] + 0x00000014u;
|
|
/* 022406EC */ rbrew_write32(cpu->mem, _t73, cpu->r[5]);
|
|
/* 022406F0 */ cpu->r[11] = 0x10050000u;
|
|
/* 022406F4 */ _t74 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022406F4 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[12]);
|
|
/* 022406F8 */ _t75 = cpu->r[11] + 0x00003618u;
|
|
/* 022406F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022406FC */ cpu->r[8] = 0x10050000u;
|
|
/* 02240700 */ _t76 = cpu->r[1] + 0x00000018u;
|
|
/* 02240700 */ rbrew_write32(cpu->mem, _t76, cpu->r[5]);
|
|
/* 02240704 */ _t77 = cpu->r[8] + 0x0000361Cu;
|
|
/* 02240704 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02240708 */ _t78 = cpu->r[1] + 0x00000038u;
|
|
/* 02240708 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[31]);
|
|
/* 0224070C */ _t79 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0224070C */ rbrew_write_f32(cpu->mem, _t79, cpu->f[10]);
|
|
/* 02240710 */ cpu->r[9] = 0x10050000u;
|
|
/* 02240714 */ _t80 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02240714 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 02240718 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0224071C */ cpu->r[0] = 0x00000001u;
|
|
/* 02240720 */ _t81 = cpu->r[9] + 0x00003614u;
|
|
/* 02240720 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02240724 */ _t82 = cpu->r[1] + 0x00000010u;
|
|
/* 02240724 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[0]);
|
|
/* 02240728 */ cpu->r[4] = cpu->r[28];
|
|
/* 0224072C */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 0224072C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[0]);
|
|
/* 02240730 */ Gambit_fn_02A037FC(cpu);
|
|
/* 02240734 */ _t84 = cpu->r[29] + 0x00000028u;
|
|
/* 02240734 */ rbrew_write32(cpu->mem, _t84, cpu->r[3]);
|
|
/* 02240738 */ /* nop */
|
|
/* 0224073C */ _t85 = cpu->r[1] + 0x000000D0u;
|
|
/* 0224073C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02240740 */ _t86 = cpu->r[1] + 0x000000C8u;
|
|
/* 02240740 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 02240744 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240744 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02240744 */ if (_t88) goto L_02240748; // else: addr-0 trap, fall-through
|
|
L_02240748: ; // 0x2240748
|
|
/* 02240748 */ _t89 = cpu->r[1] + 0x000000DCu;
|
|
/* 02240748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0224074C */ cpu->lr = cpu->r[0];
|
|
/* 02240750 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02240754 */ return;
|
|
}
|
|
|
|
// fn_02240758 @ 0x2240758
|
|
void Gambit_fn_02240758(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02240758: ; // 0x2240758
|
|
/* 02240758 */ cpu->r[0] = cpu->lr;
|
|
/* 0224075C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0224075C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0224075C */ cpu->r[1] = _t0;
|
|
/* 02240760 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02240760 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02240764 */ cpu->r[31] = cpu->r[3];
|
|
/* 02240768 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02240768 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0224076C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0224076C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02240770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02240774 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240774 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02240774 */ if (_t5) goto L_02240780; else goto L_02240778;
|
|
L_02240778: ; // 0x2240778
|
|
/* 02240778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0224077C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0224077C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0224077C */ if (_t7) goto L_02240780; else goto L_022407B4;
|
|
L_02240780: ; // 0x2240780
|
|
/* 02240780 */ _t8 = cpu->r[31] + 0x00000024u;
|
|
/* 02240780 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02240784 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02240788 */ _t9 = cpu->r[12] + 0x00001358u;
|
|
/* 02240788 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0224078C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000008u);
|
|
/* 02240790 */ _t10 = cpu->r[12] + 0x00000010u;
|
|
/* 02240790 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02240794 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240794 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02240794 */ if (_t12) goto L_02240798; else goto L_022407A0;
|
|
L_02240798: ; // 0x2240798
|
|
/* 02240798 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0224079C */ cpu->r[11] = cpu->r[11] + cpu->r[8];
|
|
L_022407A0: ; // 0x22407a0
|
|
/* 022407A0 */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 022407A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022407A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022407A8 */ Gambit_fn_022401AC(cpu);
|
|
/* 022407AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022407B0 */ Gambit_fn_022404F4(cpu);
|
|
L_022407B4: ; // 0x22407b4
|
|
/* 022407B4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022407B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022407B8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022407B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022407BC */ cpu->lr = cpu->r[0];
|
|
/* 022407C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022407C4 */ return;
|
|
}
|
|
|
|
// fn_0224075C @ 0x224075c
|
|
void Gambit_fn_0224075C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0224075C: ; // 0x224075c
|
|
/* 0224075C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0224075C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0224075C */ cpu->r[1] = _t0;
|
|
/* 02240760 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02240760 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02240764 */ cpu->r[31] = cpu->r[3];
|
|
/* 02240768 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02240768 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0224076C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0224076C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02240770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02240774 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240774 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02240774 */ if (_t5) goto L_02240780; else goto L_02240778;
|
|
L_02240778: ; // 0x2240778
|
|
/* 02240778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0224077C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0224077C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0224077C */ if (_t7) goto L_02240780; else goto L_022407B4;
|
|
L_02240780: ; // 0x2240780
|
|
/* 02240780 */ _t8 = cpu->r[31] + 0x00000024u;
|
|
/* 02240780 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02240784 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02240788 */ _t9 = cpu->r[12] + 0x00001358u;
|
|
/* 02240788 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0224078C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000008u);
|
|
/* 02240790 */ _t10 = cpu->r[12] + 0x00000010u;
|
|
/* 02240790 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02240794 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02240794 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02240794 */ if (_t12) goto L_02240798; else goto L_022407A0;
|
|
L_02240798: ; // 0x2240798
|
|
/* 02240798 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0224079C */ cpu->r[11] = cpu->r[11] + cpu->r[8];
|
|
L_022407A0: ; // 0x22407a0
|
|
/* 022407A0 */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 022407A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022407A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022407A8 */ Gambit_fn_022401AC(cpu);
|
|
/* 022407AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022407B0 */ Gambit_fn_022404F4(cpu);
|
|
L_022407B4: ; // 0x22407b4
|
|
/* 022407B4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022407B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022407B8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022407B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022407BC */ cpu->lr = cpu->r[0];
|
|
/* 022407C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022407C4 */ return;
|
|
}
|
|
|
|
// fn_022407C8 @ 0x22407c8
|
|
void Gambit_fn_022407C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022407C8: ; // 0x22407c8
|
|
/* 022407C8 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 022407CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022407CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022407CC */ cpu->r[1] = _t0;
|
|
/* 022407D0 */ cpu->r[10] = 0x101E0000u;
|
|
/* 022407D4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022407D8 */ _t1 = cpu->r[10] + 0x000031A8u;
|
|
/* 022407D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 022407D8 */ cpu->r[10] = _t1;
|
|
/* 022407DC */ cpu->r[7] = 0x101E0000u;
|
|
/* 022407E0 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 022407E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 022407E4 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 022407E8 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022407EC */ _t3 = cpu->r[7] + 0x000031B8u;
|
|
/* 022407EC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 022407EC */ cpu->r[7] = _t3;
|
|
/* 022407F0 */ _t4 = cpu->r[8] + 0x000031B0u;
|
|
/* 022407F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 022407F0 */ cpu->r[8] = _t4;
|
|
/* 022407F4 */ cpu->r[0] = 0x00000002u;
|
|
/* 022407F8 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 022407F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022407FC */ cpu->r[8] = 0x101E0000u;
|
|
/* 02240800 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02240800 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02240804 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02240808 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02240808 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0224080C */ _t8 = cpu->r[8] + 0x000031C8u;
|
|
/* 0224080C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0224080C */ cpu->r[8] = _t8;
|
|
/* 02240810 */ _t9 = cpu->r[12] + 0x000031C0u;
|
|
/* 02240810 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02240810 */ cpu->r[12] = _t9;
|
|
/* 02240814 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02240814 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02240818 */ cpu->r[0] = 0x00000004u;
|
|
/* 0224081C */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0224081C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02240820 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02240824 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02240824 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02240828 */ _t13 = cpu->r[11] + 0x000031D0u;
|
|
/* 02240828 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0224082C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02240830 */ return;
|
|
}
|
|
|
|
// fn_022407CC @ 0x22407cc
|
|
void Gambit_fn_022407CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022407CC: ; // 0x22407cc
|
|
/* 022407CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022407CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022407CC */ cpu->r[1] = _t0;
|
|
/* 022407D0 */ cpu->r[10] = 0x101E0000u;
|
|
/* 022407D4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022407D8 */ _t1 = cpu->r[10] + 0x000031A8u;
|
|
/* 022407D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 022407D8 */ cpu->r[10] = _t1;
|
|
/* 022407DC */ cpu->r[7] = 0x101E0000u;
|
|
/* 022407E0 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 022407E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 022407E4 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 022407E8 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022407EC */ _t3 = cpu->r[7] + 0x000031B8u;
|
|
/* 022407EC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 022407EC */ cpu->r[7] = _t3;
|
|
/* 022407F0 */ _t4 = cpu->r[8] + 0x000031B0u;
|
|
/* 022407F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 022407F0 */ cpu->r[8] = _t4;
|
|
/* 022407F4 */ cpu->r[0] = 0x00000002u;
|
|
/* 022407F8 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 022407F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022407FC */ cpu->r[8] = 0x101E0000u;
|
|
/* 02240800 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02240800 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02240804 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02240808 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02240808 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0224080C */ _t8 = cpu->r[8] + 0x000031C8u;
|
|
/* 0224080C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0224080C */ cpu->r[8] = _t8;
|
|
/* 02240810 */ _t9 = cpu->r[12] + 0x000031C0u;
|
|
/* 02240810 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02240810 */ cpu->r[12] = _t9;
|
|
/* 02240814 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02240814 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02240818 */ cpu->r[0] = 0x00000004u;
|
|
/* 0224081C */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0224081C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02240820 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02240824 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02240824 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02240828 */ _t13 = cpu->r[11] + 0x000031D0u;
|
|
/* 02240828 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0224082C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02240830 */ return;
|
|
}
|
|
|
|
// fn_02240834 @ 0x2240834
|
|
void Gambit_fn_02240834(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_02240834: ; // 0x2240834
|
|
/* 02240834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02240838 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240838 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02240838 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240838 */ goto L_0224083C;
|
|
L_0224083C: ; // 0x224083c
|
|
/* 0224083C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0224083C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02240840 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240840 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02240840 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240840 */ goto L_02240844;
|
|
L_02240844: ; // 0x2240844
|
|
/* 02240844 */ 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_02240848 @ 0x2240848
|
|
void Gambit_fn_02240848(CPUState* cpu) {
|
|
L_02240848: ; // 0x2240848
|
|
/* 02240848 */ return;
|
|
}
|
|
|
|
// fn_0224084C @ 0x224084c
|
|
void Gambit_fn_0224084C(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_0224084C: ; // 0x224084c
|
|
/* 0224084C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02240850 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240850 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02240850 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240850 */ goto L_02240854;
|
|
L_02240854: ; // 0x2240854
|
|
/* 02240854 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02240854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02240858 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240858 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02240858 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240858 */ goto L_0224085C;
|
|
L_0224085C: ; // 0x224085c
|
|
/* 0224085C */ 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_02240860 @ 0x2240860
|
|
void Gambit_fn_02240860(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02240860: ; // 0x2240860
|
|
/* 02240860 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02240860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02240864 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02240864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02240868 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0224086C */ cpu->r[11] = 0x10110000u;
|
|
/* 02240870 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02240870 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02240874 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02240874 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02240878 */ return;
|
|
}
|
|
|
|
// fn_0224087C @ 0x224087c
|
|
void Gambit_fn_0224087C(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_0224087C: ; // 0x224087c
|
|
/* 0224087C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02240880 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240880 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02240880 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240880 */ goto L_02240884;
|
|
L_02240884: ; // 0x2240884
|
|
/* 02240884 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02240884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02240888 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240888 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02240888 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240888 */ goto L_0224088C;
|
|
L_0224088C: ; // 0x224088c
|
|
/* 0224088C */ 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_02240890 @ 0x2240890
|
|
void Gambit_fn_02240890(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_02240890: ; // 0x2240890
|
|
/* 02240890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02240894 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240894 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02240894 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240894 */ goto L_02240898;
|
|
L_02240898: ; // 0x2240898
|
|
/* 02240898 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02240898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0224089C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0224089C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0224089C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0224089C */ goto L_022408A0;
|
|
L_022408A0: ; // 0x22408a0
|
|
/* 022408A0 */ 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_022408A4 @ 0x22408a4
|
|
void Gambit_fn_022408A4(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_022408A4: ; // 0x22408a4
|
|
/* 022408A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022408A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022408A8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022408A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022408A8 */ goto L_022408AC;
|
|
L_022408AC: ; // 0x22408ac
|
|
/* 022408AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022408AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022408B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022408B0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022408B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022408B0 */ goto L_022408B4;
|
|
L_022408B4: ; // 0x22408b4
|
|
/* 022408B4 */ 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_022408B8 @ 0x22408b8
|
|
void Gambit_fn_022408B8(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_022408B8: ; // 0x22408b8
|
|
/* 022408B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022408BC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022408BC */ _t1 = _t0 & 0x00000001u;
|
|
/* 022408BC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022408BC */ goto L_022408C0;
|
|
L_022408C0: ; // 0x22408c0
|
|
/* 022408C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022408C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022408C4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022408C4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022408C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022408C4 */ goto L_022408C8;
|
|
L_022408C8: ; // 0x22408c8
|
|
/* 022408C8 */ 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_022408CC @ 0x22408cc
|
|
void Gambit_fn_022408CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022408CC: ; // 0x22408cc
|
|
/* 022408CC */ cpu->r[11] = 0x101D0000u;
|
|
/* 022408D0 */ _t0 = cpu->r[11] + 0xFFFFD4E0u;
|
|
/* 022408D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022408D0 */ cpu->r[11] = _t0;
|
|
/* 022408D4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022408D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022408DC */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 022408E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022408E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022408E0 */ if (_t2) goto L_022408E4; else goto L_022408F8;
|
|
L_022408E4: ; // 0x22408e4
|
|
/* 022408E4 */ cpu->r[9] = 0x10050000u;
|
|
/* 022408E8 */ cpu->r[8] = 0x00000001u;
|
|
/* 022408EC */ cpu->r[9] = cpu->r[9] + 0x00003504u;
|
|
/* 022408F0 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 022408F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 022408F4 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022408F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022408F8: ; // 0x22408f8
|
|
/* 022408F8 */ cpu->r[10] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022408FC */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 02240900 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02240904 */ return;
|
|
}
|
|
|
|
// fn_02240908 @ 0x2240908
|
|
void Gambit_fn_02240908(CPUState* cpu) {
|
|
L_02240908: ; // 0x2240908
|
|
/* 02240908 */ return;
|
|
}
|
|
|
|
// fn_0224090C @ 0x224090c
|
|
void Gambit_fn_0224090C(CPUState* cpu) {
|
|
L_0224090C: ; // 0x224090c
|
|
/* 0224090C */ return;
|
|
}
|
|
|
|
// fn_02240910 @ 0x2240910
|
|
void Gambit_fn_02240910(CPUState* cpu) {
|
|
L_02240910: ; // 0x2240910
|
|
/* 02240910 */ return;
|
|
}
|
|
|
|
// fn_02240914 @ 0x2240914
|
|
void Gambit_fn_02240914(CPUState* cpu) {
|
|
L_02240914: ; // 0x2240914
|
|
/* 02240914 */ return;
|
|
}
|
|
|
|
// fn_02240918 @ 0x2240918
|
|
void Gambit_fn_02240918(CPUState* cpu) {
|
|
L_02240918: ; // 0x2240918
|
|
/* 02240918 */ return;
|
|
}
|
|
|
|
// fn_0224091C @ 0x224091c
|
|
void Gambit_fn_0224091C(CPUState* cpu) {
|
|
L_0224091C: ; // 0x224091c
|
|
/* 0224091C */ return;
|
|
}
|
|
|
|
// fn_02240920 @ 0x2240920
|
|
void Gambit_fn_02240920(CPUState* cpu) {
|
|
L_02240920: ; // 0x2240920
|
|
/* 02240920 */ return;
|
|
}
|
|
|
|
// fn_02240924 @ 0x2240924
|
|
void Gambit_fn_02240924(CPUState* cpu) {
|
|
L_02240924: ; // 0x2240924
|
|
/* 02240924 */ return;
|
|
}
|
|
|
|
// fn_02240928 @ 0x2240928
|
|
void Gambit_fn_02240928(CPUState* cpu) {
|
|
L_02240928: ; // 0x2240928
|
|
/* 02240928 */ return;
|
|
}
|
|
|
|
// fn_0224092C @ 0x224092c
|
|
void Gambit_fn_0224092C(CPUState* cpu) {
|
|
L_0224092C: ; // 0x224092c
|
|
/* 0224092C */ return;
|
|
}
|
|
|
|
// fn_02240930 @ 0x2240930
|
|
void Gambit_fn_02240930(CPUState* cpu) {
|
|
L_02240930: ; // 0x2240930
|
|
/* 02240930 */ return;
|
|
}
|
|
|
|
// fn_02240934 @ 0x2240934
|
|
void Gambit_fn_02240934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02240934: ; // 0x2240934
|
|
/* 02240934 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02240934 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02240938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0224093C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0224093C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0224093C */ if (_t2) goto L_02240948; else goto L_02240940;
|
|
L_02240940: ; // 0x2240940
|
|
/* 02240940 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02240944 */ return;
|
|
L_02240948: ; // 0x2240948
|
|
/* 02240948 */ cpu->r[3] = 0x00000000u;
|
|
/* 0224094C */ return;
|
|
}
|
|
|
|
// fn_02240950 @ 0x2240950
|
|
void Gambit_fn_02240950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02240950: ; // 0x2240950
|
|
/* 02240950 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02240950 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02240954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02240958 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240958 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02240958 */ if (_t2) goto L_02240964; else goto L_0224095C;
|
|
L_0224095C: ; // 0x224095c
|
|
/* 0224095C */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02240960 */ return;
|
|
L_02240964: ; // 0x2240964
|
|
/* 02240964 */ cpu->r[3] = 0x00000000u;
|
|
/* 02240968 */ return;
|
|
}
|
|
|
|
// fn_0224096C @ 0x224096c
|
|
void Gambit_fn_0224096C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0224096C: ; // 0x224096c
|
|
/* 0224096C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0224096C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02240970 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02240970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02240974 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240974 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02240974 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02240974 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240974 */ goto L_02240978;
|
|
L_02240978: ; // 0x2240978
|
|
/* 02240978 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02240978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0224097C */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 0224097C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02240980 */ cpu->ctr = cpu->r[12];
|
|
/* 02240984 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02240988 @ 0x2240988
|
|
void Gambit_fn_02240988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02240988: ; // 0x2240988
|
|
/* 02240988 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02240988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0224098C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0224098C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02240990 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02240990 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02240990 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02240990 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02240990 */ goto L_02240994;
|
|
L_02240994: ; // 0x2240994
|
|
/* 02240994 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02240994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02240998 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02240998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0224099C */ cpu->ctr = cpu->r[0];
|
|
/* 022409A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022409A4 @ 0x22409a4
|
|
void Gambit_fn_022409A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022409A4: ; // 0x22409a4
|
|
/* 022409A4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022409A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022409A8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022409A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022409AC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022409AC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022409AC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022409AC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022409AC */ goto L_022409B0;
|
|
L_022409B0: ; // 0x22409b0
|
|
/* 022409B0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022409B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022409B4 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 022409B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022409B8 */ cpu->ctr = cpu->r[0];
|
|
/* 022409BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022409C0 @ 0x22409c0
|
|
void Gambit_fn_022409C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022409C0: ; // 0x22409c0
|
|
/* 022409C0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022409C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022409C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022409C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022409C8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022409C8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022409C8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022409C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022409C8 */ goto L_022409CC;
|
|
L_022409CC: ; // 0x22409cc
|
|
/* 022409CC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022409CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022409D0 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022409D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022409D4 */ cpu->ctr = cpu->r[0];
|
|
/* 022409D8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022409DC @ 0x22409dc
|
|
void Gambit_fn_022409DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022409DC: ; // 0x22409dc
|
|
/* 022409DC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022409DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022409E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022409E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022409E4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022409E4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022409E4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022409E4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022409E4 */ goto L_022409E8;
|
|
L_022409E8: ; // 0x22409e8
|
|
/* 022409E8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022409E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022409EC */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 022409EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022409F0 */ cpu->ctr = cpu->r[0];
|
|
/* 022409F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|