mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-27 03:43:28 +00:00
33376 lines
1.7 MiB
Plaintext
33376 lines
1.7 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_0245D244 @ 0x245d244
|
|
void Gambit_fn_0245D244(CPUState* cpu) {
|
|
L_0245D244: ; // 0x245d244
|
|
/* 0245D244 */ return;
|
|
}
|
|
|
|
// fn_0245D248 @ 0x245d248
|
|
void Gambit_fn_0245D248(CPUState* cpu) {
|
|
L_0245D248: ; // 0x245d248
|
|
/* 0245D248 */ return;
|
|
}
|
|
|
|
// fn_0245D24C @ 0x245d24c
|
|
void Gambit_fn_0245D24C(CPUState* cpu) {
|
|
L_0245D24C: ; // 0x245d24c
|
|
/* 0245D24C */ return;
|
|
}
|
|
|
|
// fn_0245D250 @ 0x245d250
|
|
void Gambit_fn_0245D250(CPUState* cpu) {
|
|
L_0245D250: ; // 0x245d250
|
|
/* 0245D250 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245D254 */ return;
|
|
}
|
|
|
|
// fn_0245D258 @ 0x245d258
|
|
void Gambit_fn_0245D258(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0245D258: ; // 0x245d258
|
|
/* 0245D258 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D25C */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0245D25C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D260 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D264 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245D268 @ 0x245d268
|
|
void Gambit_fn_0245D268(CPUState* cpu) {
|
|
L_0245D268: ; // 0x245d268
|
|
/* 0245D268 */ return;
|
|
}
|
|
|
|
// fn_0245D26C @ 0x245d26c
|
|
void Gambit_fn_0245D26C(CPUState* cpu) {
|
|
L_0245D26C: ; // 0x245d26c
|
|
/* 0245D26C */ cpu->r[3] = 0x00000000u;
|
|
/* 0245D270 */ return;
|
|
}
|
|
|
|
// fn_0245D274 @ 0x245d274
|
|
void Gambit_fn_0245D274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0245D274: ; // 0x245d274
|
|
/* 0245D274 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0245D278 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 0245D278 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D278 */ cpu->r[9] = _t0;
|
|
/* 0245D27C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0245D280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245D284 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 0245D288 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D288 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0245D288 */ if (_t2) goto L_0245D28C; else goto L_0245D2A0;
|
|
L_0245D28C: ; // 0x245d28c
|
|
/* 0245D28C */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245D290 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245D294 */ cpu->r[7] = cpu->r[7] + 0x000020A8u;
|
|
/* 0245D298 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0245D298 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245D29C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0245D29C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0245D2A0: ; // 0x245d2a0
|
|
/* 0245D2A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0245D2A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D2A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D2A4 */ if (_t6) goto L_0245D2A8; else goto L_0245D2B0;
|
|
L_0245D2A8: ; // 0x245d2a8
|
|
/* 0245D2A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245D2AC */ return;
|
|
L_0245D2B0: ; // 0x245d2b0
|
|
/* 0245D2B0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0245D2B4 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0245D2B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D2B4 */ cpu->r[7] = _t7;
|
|
/* 0245D2B8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0245D2BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0245D2C0 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0245D2C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D2C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245D2C4 */ if (_t9) goto L_0245D2C8; else goto L_0245D2DC;
|
|
L_0245D2C8: ; // 0x245d2c8
|
|
/* 0245D2C8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245D2CC */ cpu->r[9] = 0x00000001u;
|
|
/* 0245D2D0 */ cpu->r[0] = cpu->r[0] + 0x00002080u;
|
|
/* 0245D2D4 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0245D2D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0245D2D8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0245D2D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0245D2DC: ; // 0x245d2dc
|
|
/* 0245D2DC */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0245D2E0 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0245D2E4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0245D2E8 */ return;
|
|
}
|
|
|
|
// fn_0245D2EC @ 0x245d2ec
|
|
void Gambit_fn_0245D2EC(CPUState* cpu) {
|
|
L_0245D2EC: ; // 0x245d2ec
|
|
/* 0245D2EC */ return;
|
|
}
|
|
|
|
// fn_0245D2F0 @ 0x245d2f0
|
|
void Gambit_fn_0245D2F0(CPUState* cpu) {
|
|
L_0245D2F0: ; // 0x245d2f0
|
|
/* 0245D2F0 */ return;
|
|
}
|
|
|
|
// fn_0245D2F4 @ 0x245d2f4
|
|
void Gambit_fn_0245D2F4(CPUState* cpu) {
|
|
L_0245D2F4: ; // 0x245d2f4
|
|
/* 0245D2F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0245D2F8 */ return;
|
|
}
|
|
|
|
// fn_0245D2FC @ 0x245d2fc
|
|
void Gambit_fn_0245D2FC(CPUState* cpu) {
|
|
L_0245D2FC: ; // 0x245d2fc
|
|
/* 0245D2FC */ cpu->r[3] = 0x00000000u;
|
|
/* 0245D300 */ return;
|
|
}
|
|
|
|
// fn_0245D304 @ 0x245d304
|
|
void Gambit_fn_0245D304(CPUState* cpu) {
|
|
L_0245D304: ; // 0x245d304
|
|
/* 0245D304 */ return;
|
|
}
|
|
|
|
// fn_0245D308 @ 0x245d308
|
|
void Gambit_fn_0245D308(CPUState* cpu) {
|
|
L_0245D308: ; // 0x245d308
|
|
/* 0245D308 */ return;
|
|
}
|
|
|
|
// fn_0245D30C @ 0x245d30c
|
|
void Gambit_fn_0245D30C(CPUState* cpu) {
|
|
L_0245D30C: ; // 0x245d30c
|
|
/* 0245D30C */ return;
|
|
}
|
|
|
|
// fn_0245D310 @ 0x245d310
|
|
void Gambit_fn_0245D310(CPUState* cpu) {
|
|
L_0245D310: ; // 0x245d310
|
|
/* 0245D310 */ return;
|
|
}
|
|
|
|
// fn_0245D314 @ 0x245d314
|
|
void Gambit_fn_0245D314(CPUState* cpu) {
|
|
L_0245D314: ; // 0x245d314
|
|
/* 0245D314 */ return;
|
|
}
|
|
|
|
// fn_0245D318 @ 0x245d318
|
|
void Gambit_fn_0245D318(CPUState* cpu) {
|
|
L_0245D318: ; // 0x245d318
|
|
/* 0245D318 */ return;
|
|
}
|
|
|
|
// fn_0245D31C @ 0x245d31c
|
|
void Gambit_fn_0245D31C(CPUState* cpu) {
|
|
L_0245D31C: ; // 0x245d31c
|
|
/* 0245D31C */ return;
|
|
}
|
|
|
|
// fn_0245D320 @ 0x245d320
|
|
void Gambit_fn_0245D320(CPUState* cpu) {
|
|
L_0245D320: ; // 0x245d320
|
|
/* 0245D320 */ return;
|
|
}
|
|
|
|
// fn_0245D324 @ 0x245d324
|
|
void Gambit_fn_0245D324(CPUState* cpu) {
|
|
L_0245D324: ; // 0x245d324
|
|
/* 0245D324 */ return;
|
|
}
|
|
|
|
// fn_0245D328 @ 0x245d328
|
|
void Gambit_fn_0245D328(CPUState* cpu) {
|
|
L_0245D328: ; // 0x245d328
|
|
/* 0245D328 */ return;
|
|
}
|
|
|
|
// fn_0245D32C @ 0x245d32c
|
|
void Gambit_fn_0245D32C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_0245D32C: ; // 0x245d32c
|
|
/* 0245D32C */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 0245D330 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_0245D334 @ 0x245d334
|
|
void Gambit_fn_0245D334(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_0245D334: ; // 0x245d334
|
|
/* 0245D334 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D338 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0245D338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D338 */ cpu->r[1] = _t0;
|
|
/* 0245D33C */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0245D33C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D340 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0245D340 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D344 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D348 */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0245D348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D34C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D350 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D354 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D358 */ cpu->r[4] = cpu->r[3];
|
|
/* 0245D35C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D360 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0245D364 */ _t5 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D364 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D368 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D36C */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D370 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0245D374 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245D378 */ cpu->r[3] = 0x00000214u;
|
|
/* 0245D37C */ _t6 = cpu->r[1] + 0x00000084u;
|
|
/* 0245D37C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245D380 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D388 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245D388 */ if (_t8) goto L_0245D390; else goto L_0245D38C;
|
|
L_0245D38C: ; // 0x245d38c
|
|
/* 0245D38C */ Gambit_fn_0245DAEC(cpu);
|
|
L_0245D390: ; // 0x245d390
|
|
/* 0245D390 */ _t9 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D390 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0245D394 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D398 */ _t11 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D39C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D3A8 */ cpu->r[3] = 0x00000224u;
|
|
/* 0245D3AC */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D3B4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D3B4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245D3B4 */ if (_t13) goto L_0245D3BC; else goto L_0245D3B8;
|
|
L_0245D3B8: ; // 0x245d3b8
|
|
/* 0245D3B8 */ Gambit_fn_0245CECC(cpu);
|
|
L_0245D3BC: ; // 0x245d3bc
|
|
/* 0245D3BC */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D3BC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0245D3C0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D3C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D3C4 */ _t16 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D3C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D3C8 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D3D4 */ cpu->r[3] = 0x00000220u;
|
|
/* 0245D3D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D3DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D3E0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D3E0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245D3E0 */ if (_t18) goto L_0245D3E8; else goto L_0245D3E4;
|
|
L_0245D3E4: ; // 0x245d3e4
|
|
/* 0245D3E4 */ Gambit_fn_0245CA2C(cpu);
|
|
L_0245D3E8: ; // 0x245d3e8
|
|
/* 0245D3E8 */ _t19 = cpu->r[31] + 0x00000038u;
|
|
/* 0245D3E8 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 0245D3EC */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D3EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D3F0 */ _t21 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D3F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245D3F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D400 */ _t22 = cpu->r[1] + 0x000000BCu;
|
|
/* 0245D400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245D404 */ _t23 = cpu->r[1] + 0x000000B4u;
|
|
/* 0245D404 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245D408 */ cpu->lr = cpu->r[0];
|
|
/* 0245D40C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0245D410 */ return;
|
|
}
|
|
|
|
// fn_0245D338 @ 0x245d338
|
|
void Gambit_fn_0245D338(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_0245D338: ; // 0x245d338
|
|
/* 0245D338 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0245D338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D338 */ cpu->r[1] = _t0;
|
|
/* 0245D33C */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0245D33C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D340 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0245D340 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D344 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D348 */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0245D348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D34C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D350 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D354 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D358 */ cpu->r[4] = cpu->r[3];
|
|
/* 0245D35C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D360 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0245D364 */ _t5 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D364 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D368 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D36C */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D370 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0245D374 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245D378 */ cpu->r[3] = 0x00000214u;
|
|
/* 0245D37C */ _t6 = cpu->r[1] + 0x00000084u;
|
|
/* 0245D37C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245D380 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D388 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245D388 */ if (_t8) goto L_0245D390; else goto L_0245D38C;
|
|
L_0245D38C: ; // 0x245d38c
|
|
/* 0245D38C */ Gambit_fn_0245DAEC(cpu);
|
|
L_0245D390: ; // 0x245d390
|
|
/* 0245D390 */ _t9 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D390 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0245D394 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D398 */ _t11 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D39C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D3A8 */ cpu->r[3] = 0x00000224u;
|
|
/* 0245D3AC */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D3B4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D3B4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245D3B4 */ if (_t13) goto L_0245D3BC; else goto L_0245D3B8;
|
|
L_0245D3B8: ; // 0x245d3b8
|
|
/* 0245D3B8 */ Gambit_fn_0245CECC(cpu);
|
|
L_0245D3BC: ; // 0x245d3bc
|
|
/* 0245D3BC */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D3BC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0245D3C0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D3C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D3C4 */ _t16 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D3C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D3C8 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D3D4 */ cpu->r[3] = 0x00000220u;
|
|
/* 0245D3D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D3DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D3E0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D3E0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245D3E0 */ if (_t18) goto L_0245D3E8; else goto L_0245D3E4;
|
|
L_0245D3E4: ; // 0x245d3e4
|
|
/* 0245D3E4 */ Gambit_fn_0245CA2C(cpu);
|
|
L_0245D3E8: ; // 0x245d3e8
|
|
/* 0245D3E8 */ _t19 = cpu->r[31] + 0x00000038u;
|
|
/* 0245D3E8 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 0245D3EC */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D3EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D3F0 */ _t21 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D3F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245D3F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D400 */ _t22 = cpu->r[1] + 0x000000BCu;
|
|
/* 0245D400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245D404 */ _t23 = cpu->r[1] + 0x000000B4u;
|
|
/* 0245D404 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245D408 */ cpu->lr = cpu->r[0];
|
|
/* 0245D40C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0245D410 */ return;
|
|
}
|
|
|
|
// fn_0245D414 @ 0x245d414
|
|
void Gambit_fn_0245D414(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_0245D334: ; // 0x245d334
|
|
/* 0245D334 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D338 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0245D338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D338 */ cpu->r[1] = _t0;
|
|
/* 0245D33C */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0245D33C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D340 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0245D340 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D344 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D348 */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0245D348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D34C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D350 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D354 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D358 */ cpu->r[4] = cpu->r[3];
|
|
/* 0245D35C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D360 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0245D364 */ _t5 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D364 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D368 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D36C */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D370 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0245D374 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245D378 */ cpu->r[3] = 0x00000214u;
|
|
/* 0245D37C */ _t6 = cpu->r[1] + 0x00000084u;
|
|
/* 0245D37C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245D380 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D388 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245D388 */ if (_t8) goto L_0245D390; else goto L_0245D38C;
|
|
L_0245D38C: ; // 0x245d38c
|
|
/* 0245D38C */ Gambit_fn_0245DAEC(cpu);
|
|
L_0245D390: ; // 0x245d390
|
|
/* 0245D390 */ _t9 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D390 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0245D394 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D398 */ _t11 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D39C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D3A8 */ cpu->r[3] = 0x00000224u;
|
|
/* 0245D3AC */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D3B4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D3B4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245D3B4 */ if (_t13) goto L_0245D3BC; else goto L_0245D3B8;
|
|
L_0245D3B8: ; // 0x245d3b8
|
|
/* 0245D3B8 */ Gambit_fn_0245CECC(cpu);
|
|
L_0245D3BC: ; // 0x245d3bc
|
|
/* 0245D3BC */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D3BC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0245D3C0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D3C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D3C4 */ _t16 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D3C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D3C8 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D3D4 */ cpu->r[3] = 0x00000220u;
|
|
/* 0245D3D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D3DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D3E0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D3E0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245D3E0 */ if (_t18) goto L_0245D3E8; else goto L_0245D3E4;
|
|
L_0245D3E4: ; // 0x245d3e4
|
|
/* 0245D3E4 */ Gambit_fn_0245CA2C(cpu);
|
|
L_0245D3E8: ; // 0x245d3e8
|
|
/* 0245D3E8 */ _t19 = cpu->r[31] + 0x00000038u;
|
|
/* 0245D3E8 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 0245D3EC */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D3EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D3F0 */ _t21 = cpu->r[12] + 0x00000034u;
|
|
/* 0245D3F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245D3F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D3F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245D3FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D400 */ _t22 = cpu->r[1] + 0x000000BCu;
|
|
/* 0245D400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245D404 */ _t23 = cpu->r[1] + 0x000000B4u;
|
|
/* 0245D404 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245D408 */ cpu->lr = cpu->r[0];
|
|
/* 0245D40C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0245D410 */ return;
|
|
L_0245D414: ; // 0x245d414
|
|
/* 0245D414 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D418 */ goto L_0245D334;
|
|
}
|
|
|
|
// fn_0245D41C @ 0x245d41c
|
|
void Gambit_fn_0245D41C(CPUState* cpu) {
|
|
L_0245D41C: ; // 0x245d41c
|
|
/* 0245D41C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D420 */ goto L_0245D7CC;
|
|
L_0245D7CC: ; // 0x245d7cc
|
|
/* 0245D7CC */ return;
|
|
}
|
|
|
|
// fn_0245D424 @ 0x245d424
|
|
void Gambit_fn_0245D424(CPUState* cpu) {
|
|
L_0245D424: ; // 0x245d424
|
|
/* 0245D424 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D428 */ goto L_0245D7D0;
|
|
L_0245D7D0: ; // 0x245d7d0
|
|
/* 0245D7D0 */ return;
|
|
}
|
|
|
|
// fn_0245D42C @ 0x245d42c
|
|
void Gambit_fn_0245D42C(CPUState* cpu) {
|
|
L_0245D42C: ; // 0x245d42c
|
|
/* 0245D42C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D430 */ goto L_0245D7D4;
|
|
L_0245D7D4: ; // 0x245d7d4
|
|
/* 0245D7D4 */ return;
|
|
}
|
|
|
|
// fn_0245D434 @ 0x245d434
|
|
void Gambit_fn_0245D434(CPUState* cpu) {
|
|
L_0245D434: ; // 0x245d434
|
|
/* 0245D434 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D438 */ goto L_0245D7D8;
|
|
L_0245D7D8: ; // 0x245d7d8
|
|
/* 0245D7D8 */ return;
|
|
}
|
|
|
|
// fn_0245D43C @ 0x245d43c
|
|
void Gambit_fn_0245D43C(CPUState* cpu) {
|
|
L_0245D43C: ; // 0x245d43c
|
|
/* 0245D43C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D440 */ goto L_0245D7DC;
|
|
L_0245D7DC: ; // 0x245d7dc
|
|
/* 0245D7DC */ return;
|
|
}
|
|
|
|
// fn_0245D444 @ 0x245d444
|
|
void Gambit_fn_0245D444(CPUState* cpu) {
|
|
L_0245D444: ; // 0x245d444
|
|
/* 0245D444 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D448 */ goto L_0245D7E0;
|
|
L_0245D7E0: ; // 0x245d7e0
|
|
/* 0245D7E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245D7E4 */ return;
|
|
}
|
|
|
|
// fn_0245D44C @ 0x245d44c
|
|
void Gambit_fn_0245D44C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D44C: ; // 0x245d44c
|
|
/* 0245D44C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D450 */ goto L_0245D7E8;
|
|
L_0245D7E8: ; // 0x245d7e8
|
|
/* 0245D7E8 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0245D7E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0245D7EC */ return;
|
|
}
|
|
|
|
// fn_0245D454 @ 0x245d454
|
|
void Gambit_fn_0245D454(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D454: ; // 0x245d454
|
|
/* 0245D454 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D458 */ goto L_0245D7F8;
|
|
L_0245D7F8: ; // 0x245d7f8
|
|
/* 0245D7F8 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0245D7F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0245D7FC */ return;
|
|
}
|
|
|
|
// fn_0245D45C @ 0x245d45c
|
|
void Gambit_fn_0245D45C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D45C: ; // 0x245d45c
|
|
/* 0245D45C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245D460 */ goto L_0245D800;
|
|
L_0245D800: ; // 0x245d800
|
|
/* 0245D800 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0245D800 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D804 */ return;
|
|
}
|
|
|
|
// fn_0245D464 @ 0x245d464
|
|
void Gambit_fn_0245D464(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_0245D464: ; // 0x245d464
|
|
/* 0245D464 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D468 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245D468 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D468 */ cpu->r[1] = _t0;
|
|
/* 0245D46C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D46C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D470 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0245D470 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245D474 */ cpu->r[30] = cpu->r[5];
|
|
/* 0245D478 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245D47C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D47C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0245D480 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245D480 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245D484 */ cpu->r[29] = cpu->r[4];
|
|
/* 0245D488 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D488 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D488 */ if (_t6) goto L_0245D48C; else goto L_0245D49C;
|
|
L_0245D48C: ; // 0x245d48c
|
|
/* 0245D48C */ cpu->r[3] = 0x0000003Cu;
|
|
/* 0245D490 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D494 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245D498 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D498 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245D498 */ if (_t8) goto L_0245D4EC; else goto L_0245D49C;
|
|
L_0245D49C: ; // 0x245d49c
|
|
/* 0245D49C */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245D4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D4A4 */ cpu->r[5] = 0x00000020u;
|
|
/* 0245D4A8 */ cpu->r[4] = cpu->r[4] + 0x0000237Cu;
|
|
/* 0245D4AC */ Gambit_fn_026DD9F0(cpu);
|
|
/* 0245D4B0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245D4B4 */ _t9 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D4B4 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0245D4B8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245D4BC */ cpu->r[0] = cpu->r[0] + 0x00002448u;
|
|
/* 0245D4C0 */ _t10 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0245D4C0 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0245D4C4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245D4C8 */ cpu->r[12] = cpu->r[12] + 0x00002438u;
|
|
/* 0245D4CC */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 0245D4CC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0245D4D0 */ cpu->r[11] = cpu->r[11] + 0x000023C0u;
|
|
/* 0245D4D4 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245D4D4 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0245D4D8 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245D4DC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0245D4DC */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0245D4E0 */ _t14 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D4E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0245D4E4 */ _t15 = cpu->r[31] + 0x00000038u;
|
|
/* 0245D4E4 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0245D4E8 */ _t16 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D4E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
L_0245D4EC: ; // 0x245d4ec
|
|
/* 0245D4EC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D4EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245D4F0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245D4F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245D4F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D4F8 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0245D4F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245D4FC */ cpu->lr = cpu->r[0];
|
|
/* 0245D500 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D500 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D504 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245D508 */ return;
|
|
}
|
|
|
|
// fn_0245D468 @ 0x245d468
|
|
void Gambit_fn_0245D468(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_0245D468: ; // 0x245d468
|
|
/* 0245D468 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245D468 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D468 */ cpu->r[1] = _t0;
|
|
/* 0245D46C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D46C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D470 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0245D470 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245D474 */ cpu->r[30] = cpu->r[5];
|
|
/* 0245D478 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245D47C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D47C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0245D480 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245D480 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245D484 */ cpu->r[29] = cpu->r[4];
|
|
/* 0245D488 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D488 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D488 */ if (_t6) goto L_0245D48C; else goto L_0245D49C;
|
|
L_0245D48C: ; // 0x245d48c
|
|
/* 0245D48C */ cpu->r[3] = 0x0000003Cu;
|
|
/* 0245D490 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245D494 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245D498 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D498 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245D498 */ if (_t8) goto L_0245D4EC; else goto L_0245D49C;
|
|
L_0245D49C: ; // 0x245d49c
|
|
/* 0245D49C */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245D4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D4A4 */ cpu->r[5] = 0x00000020u;
|
|
/* 0245D4A8 */ cpu->r[4] = cpu->r[4] + 0x0000237Cu;
|
|
/* 0245D4AC */ Gambit_fn_026DD9F0(cpu);
|
|
/* 0245D4B0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245D4B4 */ _t9 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D4B4 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0245D4B8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245D4BC */ cpu->r[0] = cpu->r[0] + 0x00002448u;
|
|
/* 0245D4C0 */ _t10 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0245D4C0 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0245D4C4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245D4C8 */ cpu->r[12] = cpu->r[12] + 0x00002438u;
|
|
/* 0245D4CC */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 0245D4CC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0245D4D0 */ cpu->r[11] = cpu->r[11] + 0x000023C0u;
|
|
/* 0245D4D4 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245D4D4 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0245D4D8 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245D4DC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0245D4DC */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0245D4E0 */ _t14 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D4E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0245D4E4 */ _t15 = cpu->r[31] + 0x00000038u;
|
|
/* 0245D4E4 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0245D4E8 */ _t16 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D4E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
L_0245D4EC: ; // 0x245d4ec
|
|
/* 0245D4EC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D4EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245D4F0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245D4F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245D4F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D4F8 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0245D4F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245D4FC */ cpu->lr = cpu->r[0];
|
|
/* 0245D500 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D500 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D504 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245D508 */ return;
|
|
}
|
|
|
|
// fn_0245D50C @ 0x245d50c
|
|
void Gambit_fn_0245D50C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0245D50C: ; // 0x245d50c
|
|
/* 0245D50C */ _t0 = cpu->r[3] + 0x00000030u;
|
|
/* 0245D50C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D510 */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 0245D510 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D514 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0245D518 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0245D51C */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 0245D520 */ return;
|
|
}
|
|
|
|
// fn_0245D524 @ 0x245d524
|
|
void Gambit_fn_0245D524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245D524: ; // 0x245d524
|
|
/* 0245D524 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D528 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D528 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D528 */ cpu->r[1] = _t0;
|
|
/* 0245D52C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D52C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D530 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D534 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245D538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D53C */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245D53C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D540 */ Gambit_fn_0206C030(cpu);
|
|
/* 0245D544 */ _t4 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D544 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D548 */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D54C */ _t5 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D54C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D550 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0245D554 */ _t6 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D554 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245D558 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D55C */ _t8 = cpu->r[12] + 0x00000164u;
|
|
/* 0245D55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D560 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D564 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D568 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245D56C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D56C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D570 */ cpu->lr = cpu->r[0];
|
|
/* 0245D574 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D578 */ return;
|
|
}
|
|
|
|
// fn_0245D528 @ 0x245d528
|
|
void Gambit_fn_0245D528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245D528: ; // 0x245d528
|
|
/* 0245D528 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D528 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D528 */ cpu->r[1] = _t0;
|
|
/* 0245D52C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D52C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D530 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D534 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245D538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D53C */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245D53C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D540 */ Gambit_fn_0206C030(cpu);
|
|
/* 0245D544 */ _t4 = cpu->r[31] + 0x00000028u;
|
|
/* 0245D544 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D548 */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D54C */ _t5 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D54C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D550 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0245D554 */ _t6 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D554 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245D558 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D55C */ _t8 = cpu->r[12] + 0x00000164u;
|
|
/* 0245D55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D560 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D564 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D568 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245D56C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D56C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D570 */ cpu->lr = cpu->r[0];
|
|
/* 0245D574 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D578 */ return;
|
|
}
|
|
|
|
// fn_0245D57C @ 0x245d57c
|
|
void Gambit_fn_0245D57C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0245D57C: ; // 0x245d57c
|
|
/* 0245D57C */ _t0 = cpu->r[3] + 0x00000030u;
|
|
/* 0245D57C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D580 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D580 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D584 */ _t2 = cpu->r[12] + 0x00000174u;
|
|
/* 0245D584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245D588 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D58C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245D590 @ 0x245d590
|
|
void Gambit_fn_0245D590(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245D590: ; // 0x245d590
|
|
/* 0245D590 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D594 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D594 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D594 */ cpu->r[1] = _t0;
|
|
/* 0245D598 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D598 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D59C */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D5A0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245D5A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D5A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D5A8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245D5A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D5AC */ Gambit_fn_0206C030(cpu);
|
|
/* 0245D5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D5B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D5B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245D5B4 */ if (_t5) goto L_0245D5C0; else goto L_0245D5B8;
|
|
L_0245D5B8: ; // 0x245d5b8
|
|
/* 0245D5B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D5BC */ Gambit_fn_0245D57C(cpu);
|
|
L_0245D5C0: ; // 0x245d5c0
|
|
/* 0245D5C0 */ _t6 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D5C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245D5C4 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D5C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D5C8 */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 0245D5C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D5CC */ cpu->ctr = cpu->r[0];
|
|
/* 0245D5D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D5D4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245D5D8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D5DC */ cpu->lr = cpu->r[0];
|
|
/* 0245D5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D5E4 */ return;
|
|
}
|
|
|
|
// fn_0245D594 @ 0x245d594
|
|
void Gambit_fn_0245D594(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245D594: ; // 0x245d594
|
|
/* 0245D594 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D594 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D594 */ cpu->r[1] = _t0;
|
|
/* 0245D598 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D598 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D59C */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D5A0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245D5A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D5A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D5A8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245D5A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D5AC */ Gambit_fn_0206C030(cpu);
|
|
/* 0245D5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D5B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D5B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245D5B4 */ if (_t5) goto L_0245D5C0; else goto L_0245D5B8;
|
|
L_0245D5B8: ; // 0x245d5b8
|
|
/* 0245D5B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D5BC */ Gambit_fn_0245D57C(cpu);
|
|
L_0245D5C0: ; // 0x245d5c0
|
|
/* 0245D5C0 */ _t6 = cpu->r[31] + 0x00000030u;
|
|
/* 0245D5C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245D5C4 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D5C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D5C8 */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 0245D5C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D5CC */ cpu->ctr = cpu->r[0];
|
|
/* 0245D5D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D5D4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245D5D8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D5DC */ cpu->lr = cpu->r[0];
|
|
/* 0245D5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D5E4 */ return;
|
|
}
|
|
|
|
// fn_0245D5E8 @ 0x245d5e8
|
|
void Gambit_fn_0245D5E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0245D5E8: ; // 0x245d5e8
|
|
/* 0245D5E8 */ _t0 = cpu->r[3] + 0x00000030u;
|
|
/* 0245D5E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D5EC */ goto L_0245E5C0;
|
|
L_0245DA54: ; // 0x245da54
|
|
/* 0245DA54 */ cpu->r[0] = cpu->lr;
|
|
/* 0245DA58 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245DA58 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0245DA58 */ cpu->r[1] = _t1;
|
|
/* 0245DA5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DA5C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245DA60 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DA60 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0245DA64 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245DA68 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DA68 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245DA6C */ _t5 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0245DA6C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0245DA70 */ /* nop */
|
|
/* 0245DA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0245DA78 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245DA7C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DA7C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245DA7C */ if (_t7) goto L_0245DA80; else goto L_0245DA94;
|
|
L_0245DA80: ; // 0x245da80
|
|
/* 0245DA80 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 0245DA80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245DA84 */ _t9 = cpu->r[11] + 0x00000014u;
|
|
/* 0245DA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245DA88 */ cpu->ctr = cpu->r[0];
|
|
/* 0245DA8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DA90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245DA94: ; // 0x245da94
|
|
/* 0245DA94 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DA98 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245DA9C */ Gambit_fn_0245D9CC(cpu);
|
|
/* 0245DAA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DAA4 */ /* nop */
|
|
/* 0245DAA8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245DAAC */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DAB0 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245DAB4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245DAB8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DAB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245DABC */ cpu->lr = cpu->r[0];
|
|
/* 0245DAC0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DAC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245DAC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245DAC8 */ return;
|
|
L_0245E5C0: ; // 0x245e5c0
|
|
/* 0245E5C0 */ _t13 = cpu->r[3] + 0x000001E8u;
|
|
/* 0245E5C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0245E5C4 */ /* nop */
|
|
/* 0245E5C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0245E5CC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E5CC */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245E5CC */ _t16 = _t15 ^ 0x00000001u;
|
|
/* 0245E5CC */ if (_t16) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245E5CC */ goto L_0245E5D0;
|
|
L_0245E5D0: ; // 0x245e5d0
|
|
/* 0245E5D0 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 0245E5D4 */ cpu->r[4] = 0x00000004u;
|
|
/* 0245E5D8 */ goto L_0245DA54;
|
|
}
|
|
|
|
// fn_0245D5F0 @ 0x245d5f0
|
|
void Gambit_fn_0245D5F0(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_0245D5F0: ; // 0x245d5f0
|
|
/* 0245D5F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D5F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D5F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D5F4 */ cpu->r[1] = _t0;
|
|
/* 0245D5F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D5F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0245D5FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D5FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0245D600 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245D604 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D604 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245D608 */ _t4 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D608 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D60C */ _t5 = cpu->r[3] + 0x00000118u;
|
|
/* 0245D60C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D610 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0245D610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0245D614 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245D618 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D618 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245D618 */ if (_t7) goto L_0245D61C; else goto L_0245D63C;
|
|
L_0245D61C: ; // 0x245d61c
|
|
/* 0245D61C */ _t8 = cpu->r[3] + 0x00000220u;
|
|
/* 0245D61C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D620 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 0245D624 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D624 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245D624 */ if (_t10) goto L_0245D63C; else goto L_0245D628;
|
|
L_0245D628: ; // 0x245d628
|
|
/* 0245D628 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D628 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D62C */ _t12 = cpu->r[10] + 0x00000094u;
|
|
/* 0245D62C */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D630 */ cpu->ctr = cpu->r[11];
|
|
/* 0245D634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D638 */ _t13 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
L_0245D63C: ; // 0x245d63c
|
|
/* 0245D63C */ _t14 = cpu->r[3] + 0x00000118u;
|
|
/* 0245D63C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245D640 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0245D640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245D644 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D644 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0245D644 */ if (_t16) goto L_0245D67C; else goto L_0245D648;
|
|
L_0245D648: ; // 0x245d648
|
|
/* 0245D648 */ Gambit_fn_027ECBB4(cpu);
|
|
/* 0245D64C */ _t17 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D64C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245D650 */ cpu->r[4] = 0x00000012u;
|
|
/* 0245D654 */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D658 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0245D65C */ _t18 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D65C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245D660 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245D664 */ Gambit_fn_0245CF64(cpu);
|
|
/* 0245D668 */ _t19 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245D66C */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D66C */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D670 */ _t21 = cpu->r[5] + 0x00000164u;
|
|
/* 0245D670 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245D674 */ cpu->ctr = cpu->r[6];
|
|
/* 0245D678 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245D67C: ; // 0x245d67c
|
|
/* 0245D67C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D67C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245D680 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D680 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245D684 */ cpu->lr = cpu->r[0];
|
|
/* 0245D688 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D688 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0245D68C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D690 */ return;
|
|
}
|
|
|
|
// fn_0245D5F4 @ 0x245d5f4
|
|
void Gambit_fn_0245D5F4(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_0245D5F4: ; // 0x245d5f4
|
|
/* 0245D5F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D5F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D5F4 */ cpu->r[1] = _t0;
|
|
/* 0245D5F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D5F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0245D5FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D5FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0245D600 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245D604 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D604 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245D608 */ _t4 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D608 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D60C */ _t5 = cpu->r[3] + 0x00000118u;
|
|
/* 0245D60C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D610 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0245D610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0245D614 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245D618 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D618 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245D618 */ if (_t7) goto L_0245D61C; else goto L_0245D63C;
|
|
L_0245D61C: ; // 0x245d61c
|
|
/* 0245D61C */ _t8 = cpu->r[3] + 0x00000220u;
|
|
/* 0245D61C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D620 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 0245D624 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D624 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245D624 */ if (_t10) goto L_0245D63C; else goto L_0245D628;
|
|
L_0245D628: ; // 0x245d628
|
|
/* 0245D628 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D628 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D62C */ _t12 = cpu->r[10] + 0x00000094u;
|
|
/* 0245D62C */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D630 */ cpu->ctr = cpu->r[11];
|
|
/* 0245D634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D638 */ _t13 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
L_0245D63C: ; // 0x245d63c
|
|
/* 0245D63C */ _t14 = cpu->r[3] + 0x00000118u;
|
|
/* 0245D63C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245D640 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0245D640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245D644 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D644 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0245D644 */ if (_t16) goto L_0245D67C; else goto L_0245D648;
|
|
L_0245D648: ; // 0x245d648
|
|
/* 0245D648 */ Gambit_fn_027ECBB4(cpu);
|
|
/* 0245D64C */ _t17 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D64C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245D650 */ cpu->r[4] = 0x00000012u;
|
|
/* 0245D654 */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D658 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0245D65C */ _t18 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D65C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245D660 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245D664 */ Gambit_fn_0245CF64(cpu);
|
|
/* 0245D668 */ _t19 = cpu->r[30] + 0x00000034u;
|
|
/* 0245D668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245D66C */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D66C */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245D670 */ _t21 = cpu->r[5] + 0x00000164u;
|
|
/* 0245D670 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245D674 */ cpu->ctr = cpu->r[6];
|
|
/* 0245D678 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245D67C: ; // 0x245d67c
|
|
/* 0245D67C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D67C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245D680 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D680 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245D684 */ cpu->lr = cpu->r[0];
|
|
/* 0245D688 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D688 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0245D68C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D690 */ return;
|
|
}
|
|
|
|
// fn_0245D694 @ 0x245d694
|
|
void Gambit_fn_0245D694(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0245D694: ; // 0x245d694
|
|
/* 0245D694 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D698 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D698 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D698 */ cpu->r[1] = _t0;
|
|
/* 0245D69C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D69C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D6A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D6A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D6A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D6A8 */ _t3 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D6A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D6AC */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D6AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D6B0 */ _t5 = cpu->r[12] + 0x00000184u;
|
|
/* 0245D6B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D6B4 */ cpu->ctr = cpu->r[11];
|
|
/* 0245D6B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D6BC */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D6BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245D6C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D6C4 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 0245D6C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D6C8 */ cpu->r[3] = cpu->r[12];
|
|
/* 0245D6CC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D6CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245D6CC */ if (_t9) goto L_0245D6F0; else goto L_0245D6D0;
|
|
L_0245D6D0: ; // 0x245d6d0
|
|
/* 0245D6D0 */ _t10 = cpu->r[11] + 0x0000016Cu;
|
|
/* 0245D6D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D6D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D6D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D6DC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D6E0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D6E4 */ cpu->lr = cpu->r[0];
|
|
/* 0245D6E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D6EC */ return;
|
|
L_0245D6F0: ; // 0x245d6f0
|
|
/* 0245D6F0 */ _t13 = cpu->r[11] + 0x00000094u;
|
|
/* 0245D6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D6F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D6F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D6FC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D6FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245D700 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D704 */ cpu->lr = cpu->r[0];
|
|
/* 0245D708 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D70C */ return;
|
|
}
|
|
|
|
// fn_0245D698 @ 0x245d698
|
|
void Gambit_fn_0245D698(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0245D698: ; // 0x245d698
|
|
/* 0245D698 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D698 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D698 */ cpu->r[1] = _t0;
|
|
/* 0245D69C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D69C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D6A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D6A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D6A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D6A8 */ _t3 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D6A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245D6AC */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D6AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D6B0 */ _t5 = cpu->r[12] + 0x00000184u;
|
|
/* 0245D6B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D6B4 */ cpu->ctr = cpu->r[11];
|
|
/* 0245D6B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D6BC */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 0245D6BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245D6C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D6C4 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 0245D6C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D6C8 */ cpu->r[3] = cpu->r[12];
|
|
/* 0245D6CC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D6CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245D6CC */ if (_t9) goto L_0245D6F0; else goto L_0245D6D0;
|
|
L_0245D6D0: ; // 0x245d6d0
|
|
/* 0245D6D0 */ _t10 = cpu->r[11] + 0x0000016Cu;
|
|
/* 0245D6D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D6D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D6D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D6DC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D6E0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D6E4 */ cpu->lr = cpu->r[0];
|
|
/* 0245D6E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D6EC */ return;
|
|
L_0245D6F0: ; // 0x245d6f0
|
|
/* 0245D6F0 */ _t13 = cpu->r[11] + 0x00000094u;
|
|
/* 0245D6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D6F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245D6F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D6FC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D6FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245D700 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D704 */ cpu->lr = cpu->r[0];
|
|
/* 0245D708 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D70C */ return;
|
|
}
|
|
|
|
// fn_0245D710 @ 0x245d710
|
|
void Gambit_fn_0245D710(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0245D710: ; // 0x245d710
|
|
/* 0245D710 */ _t0 = cpu->r[3] + 0x00000034u;
|
|
/* 0245D710 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D714 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D714 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D718 */ _t2 = cpu->r[12] + 0x00000184u;
|
|
/* 0245D718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245D71C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D720 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245D724 @ 0x245d724
|
|
void Gambit_fn_0245D724(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0245D724: ; // 0x245d724
|
|
/* 0245D724 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 0245D724 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D728 */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 0245D728 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D72C */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0245D730 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0245D734 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 0245D738 */ return;
|
|
}
|
|
|
|
// fn_0245D73C @ 0x245d73c
|
|
void Gambit_fn_0245D73C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0245D73C: ; // 0x245d73c
|
|
/* 0245D73C */ cpu->r[0] = cpu->lr;
|
|
/* 0245D740 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D740 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D740 */ cpu->r[1] = _t0;
|
|
/* 0245D744 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D744 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D748 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D748 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245D74C */ cpu->r[30] = cpu->r[3];
|
|
/* 0245D750 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245D754 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D754 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245D758 */ Gambit_fn_0245D724(cpu);
|
|
/* 0245D75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D760 */ _t4 = cpu->r[30] + 0x00000038u;
|
|
/* 0245D760 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D764 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D764 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D764 */ if (_t6) goto L_0245D7AC; else goto L_0245D768;
|
|
L_0245D768: ; // 0x245d768
|
|
/* 0245D768 */ _t7 = cpu->r[30] + 0x00000028u;
|
|
/* 0245D768 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D76C */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D770 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0245D774 */ _t8 = cpu->r[30] + 0x00000038u;
|
|
/* 0245D774 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D778 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245D77C */ Gambit_fn_0245CABC(cpu);
|
|
/* 0245D780 */ _t9 = cpu->r[30] + 0x00000038u;
|
|
/* 0245D780 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245D784 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D788 */ _t11 = cpu->r[12] + 0x00000164u;
|
|
/* 0245D788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D78C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D790 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D794 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D798 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D798 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D79C */ cpu->lr = cpu->r[0];
|
|
/* 0245D7A0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D7A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245D7A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D7A8 */ return;
|
|
L_0245D7AC: ; // 0x245d7ac
|
|
/* 0245D7AC */ cpu->r[4] = cpu->r[31];
|
|
/* 0245D7B0 */ Gambit_fn_0245CABC(cpu);
|
|
/* 0245D7B4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D7B8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D7B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D7BC */ cpu->lr = cpu->r[0];
|
|
/* 0245D7C0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245D7C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D7C8 */ return;
|
|
}
|
|
|
|
// fn_0245D740 @ 0x245d740
|
|
void Gambit_fn_0245D740(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0245D740: ; // 0x245d740
|
|
/* 0245D740 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D740 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D740 */ cpu->r[1] = _t0;
|
|
/* 0245D744 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D744 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D748 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D748 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245D74C */ cpu->r[30] = cpu->r[3];
|
|
/* 0245D750 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245D754 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D754 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245D758 */ Gambit_fn_0245D724(cpu);
|
|
/* 0245D75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245D760 */ _t4 = cpu->r[30] + 0x00000038u;
|
|
/* 0245D760 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D764 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D764 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D764 */ if (_t6) goto L_0245D7AC; else goto L_0245D768;
|
|
L_0245D768: ; // 0x245d768
|
|
/* 0245D768 */ _t7 = cpu->r[30] + 0x00000028u;
|
|
/* 0245D768 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245D76C */ cpu->r[5] = 0x00000001u;
|
|
/* 0245D770 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0245D774 */ _t8 = cpu->r[30] + 0x00000038u;
|
|
/* 0245D774 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245D778 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245D77C */ Gambit_fn_0245CABC(cpu);
|
|
/* 0245D780 */ _t9 = cpu->r[30] + 0x00000038u;
|
|
/* 0245D780 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245D784 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 0245D784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D788 */ _t11 = cpu->r[12] + 0x00000164u;
|
|
/* 0245D788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D78C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D790 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245D794 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D798 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D798 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D79C */ cpu->lr = cpu->r[0];
|
|
/* 0245D7A0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D7A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245D7A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D7A8 */ return;
|
|
L_0245D7AC: ; // 0x245d7ac
|
|
/* 0245D7AC */ cpu->r[4] = cpu->r[31];
|
|
/* 0245D7B0 */ Gambit_fn_0245CABC(cpu);
|
|
/* 0245D7B4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245D7B8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0245D7B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D7BC */ cpu->lr = cpu->r[0];
|
|
/* 0245D7C0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245D7C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D7C8 */ return;
|
|
}
|
|
|
|
// fn_0245D7CC @ 0x245d7cc
|
|
void Gambit_fn_0245D7CC(CPUState* cpu) {
|
|
L_0245D7CC: ; // 0x245d7cc
|
|
/* 0245D7CC */ return;
|
|
}
|
|
|
|
// fn_0245D7D0 @ 0x245d7d0
|
|
void Gambit_fn_0245D7D0(CPUState* cpu) {
|
|
L_0245D7D0: ; // 0x245d7d0
|
|
/* 0245D7D0 */ return;
|
|
}
|
|
|
|
// fn_0245D7D4 @ 0x245d7d4
|
|
void Gambit_fn_0245D7D4(CPUState* cpu) {
|
|
L_0245D7D4: ; // 0x245d7d4
|
|
/* 0245D7D4 */ return;
|
|
}
|
|
|
|
// fn_0245D7D8 @ 0x245d7d8
|
|
void Gambit_fn_0245D7D8(CPUState* cpu) {
|
|
L_0245D7D8: ; // 0x245d7d8
|
|
/* 0245D7D8 */ return;
|
|
}
|
|
|
|
// fn_0245D7DC @ 0x245d7dc
|
|
void Gambit_fn_0245D7DC(CPUState* cpu) {
|
|
L_0245D7DC: ; // 0x245d7dc
|
|
/* 0245D7DC */ return;
|
|
}
|
|
|
|
// fn_0245D7E0 @ 0x245d7e0
|
|
void Gambit_fn_0245D7E0(CPUState* cpu) {
|
|
L_0245D7E0: ; // 0x245d7e0
|
|
/* 0245D7E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245D7E4 */ return;
|
|
}
|
|
|
|
// fn_0245D7E8 @ 0x245d7e8
|
|
void Gambit_fn_0245D7E8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D7E8: ; // 0x245d7e8
|
|
/* 0245D7E8 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0245D7E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0245D7EC */ return;
|
|
}
|
|
|
|
// fn_0245D7F0 @ 0x245d7f0
|
|
void Gambit_fn_0245D7F0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D7F0: ; // 0x245d7f0
|
|
/* 0245D7F0 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0245D7F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D7F4 */ return;
|
|
}
|
|
|
|
// fn_0245D7F8 @ 0x245d7f8
|
|
void Gambit_fn_0245D7F8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D7F8: ; // 0x245d7f8
|
|
/* 0245D7F8 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0245D7F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0245D7FC */ return;
|
|
}
|
|
|
|
// fn_0245D800 @ 0x245d800
|
|
void Gambit_fn_0245D800(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D800: ; // 0x245d800
|
|
/* 0245D800 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0245D800 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D804 */ return;
|
|
}
|
|
|
|
// fn_0245D808 @ 0x245d808
|
|
void Gambit_fn_0245D808(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245D808: ; // 0x245d808
|
|
/* 0245D808 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0245D808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245D80C */ return;
|
|
}
|
|
|
|
// fn_0245D810 @ 0x245d810
|
|
void Gambit_fn_0245D810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0245D810: ; // 0x245d810
|
|
/* 0245D810 */ cpu->r[0] = cpu->lr;
|
|
/* 0245D814 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D814 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D814 */ cpu->r[1] = _t0;
|
|
/* 0245D818 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D818 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D81C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D81C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D820 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0245D820 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245D824 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D828 */ /* nop */
|
|
/* 0245D82C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245D830 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D834 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245D838 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D83C */ cpu->lr = cpu->r[0];
|
|
/* 0245D840 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D840 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D844 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D848 */ return;
|
|
}
|
|
|
|
// fn_0245D814 @ 0x245d814
|
|
void Gambit_fn_0245D814(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0245D814: ; // 0x245d814
|
|
/* 0245D814 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D814 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D814 */ cpu->r[1] = _t0;
|
|
/* 0245D818 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D818 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D81C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D81C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D820 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0245D820 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245D824 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D828 */ /* nop */
|
|
/* 0245D82C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245D830 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D834 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245D838 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245D83C */ cpu->lr = cpu->r[0];
|
|
/* 0245D840 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D840 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245D844 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D848 */ return;
|
|
}
|
|
|
|
// fn_0245D84C @ 0x245d84c
|
|
void Gambit_fn_0245D84C(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_0245D84C: ; // 0x245d84c
|
|
/* 0245D84C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245D84C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0245D850 */ /* nop */
|
|
/* 0245D854 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0245D854 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D858 */ cpu->r[8] = cpu->r[0];
|
|
/* 0245D85C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0245D860 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0245D860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245D864 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D864 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245D864 */ if (_t4) goto L_0245D868; else goto L_0245D880;
|
|
L_0245D868: ; // 0x245d868
|
|
/* 0245D868 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D86C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0245D870 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0245D870 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0245D874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245D878 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D878 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245D878 */ if (_t7) goto L_0245D87C; else goto L_0245D88C;
|
|
L_0245D87C: ; // 0x245d87c
|
|
/* 0245D87C */ return;
|
|
L_0245D880: ; // 0x245d880
|
|
/* 0245D880 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0245D880 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0245D884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245D888 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D888 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245D888 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245D888 */ goto L_0245D88C;
|
|
L_0245D88C: ; // 0x245d88c
|
|
/* 0245D88C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0245D890 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0245D890 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D894 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D894 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245D894 */ if (_t13) goto L_0245D898; else goto L_0245D8A0;
|
|
L_0245D898: ; // 0x245d898
|
|
/* 0245D898 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D89C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0245D8A0: ; // 0x245d8a0
|
|
/* 0245D8A0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0245D8A0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0245D8A4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0245D8A4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0245D8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245D8AC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0245D8AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D8B0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0245D8B4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D8B4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245D8B4 */ if (_t18) goto L_0245D8CC; else goto L_0245D8B8;
|
|
L_0245D8B8: ; // 0x245d8b8
|
|
/* 0245D8B8 */ /* nop */
|
|
/* 0245D8BC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0245D8BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245D8C0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D8C4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0245D8C8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0245D8C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0245D8CC: ; // 0x245d8cc
|
|
/* 0245D8CC */ cpu->ctr = cpu->r[11];
|
|
/* 0245D8D0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245D8D4 @ 0x245d8d4
|
|
void Gambit_fn_0245D8D4(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_0245D8D4: ; // 0x245d8d4
|
|
/* 0245D8D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245D8D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0245D8D8 */ /* nop */
|
|
/* 0245D8DC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0245D8DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D8E0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0245D8E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0245D8E8 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0245D8E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245D8EC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D8EC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245D8EC */ if (_t4) goto L_0245D8F0; else goto L_0245D908;
|
|
L_0245D8F0: ; // 0x245d8f0
|
|
/* 0245D8F0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D8F4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0245D8F8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0245D8F8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0245D8FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245D900 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D900 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245D900 */ if (_t7) goto L_0245D904; else goto L_0245D914;
|
|
L_0245D904: ; // 0x245d904
|
|
/* 0245D904 */ return;
|
|
L_0245D908: ; // 0x245d908
|
|
/* 0245D908 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0245D908 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0245D90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245D910 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D910 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245D910 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245D910 */ goto L_0245D914;
|
|
L_0245D914: ; // 0x245d914
|
|
/* 0245D914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0245D918 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0245D918 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D91C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D91C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245D91C */ if (_t13) goto L_0245D920; else goto L_0245D928;
|
|
L_0245D920: ; // 0x245d920
|
|
/* 0245D920 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D924 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0245D928: ; // 0x245d928
|
|
/* 0245D928 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0245D928 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0245D92C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0245D92C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0245D930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245D934 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0245D934 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245D938 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0245D93C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D93C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245D93C */ if (_t18) goto L_0245D954; else goto L_0245D940;
|
|
L_0245D940: ; // 0x245d940
|
|
/* 0245D940 */ /* nop */
|
|
/* 0245D944 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0245D944 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245D948 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D94C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0245D950 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0245D950 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0245D954: ; // 0x245d954
|
|
/* 0245D954 */ cpu->ctr = cpu->r[11];
|
|
/* 0245D958 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245D95C @ 0x245d95c
|
|
void Gambit_fn_0245D95C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245D95C: ; // 0x245d95c
|
|
/* 0245D95C */ cpu->r[0] = cpu->lr;
|
|
/* 0245D960 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D960 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D960 */ cpu->r[1] = _t0;
|
|
/* 0245D964 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D964 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D968 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D96C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D96C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D970 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245D970 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245D974 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245D978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245D97C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0245D97C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0245D980 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D980 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D980 */ if (_t6) goto L_0245D9A8; else goto L_0245D984;
|
|
L_0245D984: ; // 0x245d984
|
|
/* 0245D984 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245D984 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0245D988 */ /* nop */
|
|
/* 0245D98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0245D990 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D990 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245D990 */ if (_t9) goto L_0245D994; else goto L_0245D9A8;
|
|
L_0245D994: ; // 0x245d994
|
|
/* 0245D994 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0245D994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D998 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0245D998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D99C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D9A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245D9A8: ; // 0x245d9a8
|
|
/* 0245D9A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9AC */ Gambit_fn_0245D8D4(cpu);
|
|
/* 0245D9B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9B4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0245D9B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D9B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D9BC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D9C0 */ cpu->lr = cpu->r[0];
|
|
/* 0245D9C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D9C8 */ return;
|
|
}
|
|
|
|
// fn_0245D960 @ 0x245d960
|
|
void Gambit_fn_0245D960(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245D960: ; // 0x245d960
|
|
/* 0245D960 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D960 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D960 */ cpu->r[1] = _t0;
|
|
/* 0245D964 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D964 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D968 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D96C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D96C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D970 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245D970 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245D974 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245D978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245D97C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0245D97C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0245D980 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D980 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D980 */ if (_t6) goto L_0245D9A8; else goto L_0245D984;
|
|
L_0245D984: ; // 0x245d984
|
|
/* 0245D984 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245D984 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0245D988 */ /* nop */
|
|
/* 0245D98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0245D990 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D990 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245D990 */ if (_t9) goto L_0245D994; else goto L_0245D9A8;
|
|
L_0245D994: ; // 0x245d994
|
|
/* 0245D994 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0245D994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D998 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0245D998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D99C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D9A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245D9A8: ; // 0x245d9a8
|
|
/* 0245D9A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9AC */ Gambit_fn_0245D8D4(cpu);
|
|
/* 0245D9B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9B4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0245D9B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D9B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D9BC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D9C0 */ cpu->lr = cpu->r[0];
|
|
/* 0245D9C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D9C8 */ return;
|
|
}
|
|
|
|
// fn_0245D9CC @ 0x245d9cc
|
|
void Gambit_fn_0245D9CC(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_0245D9CC: ; // 0x245d9cc
|
|
/* 0245D9CC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245D9CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0245D9D0 */ /* nop */
|
|
/* 0245D9D4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0245D9D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245D9D8 */ cpu->r[7] = cpu->r[0];
|
|
/* 0245D9DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0245D9E0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0245D9E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245D9E4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245D9E4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245D9E4 */ if (_t4) goto L_0245D9E8; else goto L_0245DA00;
|
|
L_0245D9E8: ; // 0x245d9e8
|
|
/* 0245D9E8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245D9EC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0245D9F0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0245D9F0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0245D9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245D9F8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D9F8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245D9F8 */ if (_t7) goto L_0245D9FC; else goto L_0245DA0C;
|
|
L_0245D9FC: ; // 0x245d9fc
|
|
/* 0245D9FC */ return;
|
|
L_0245DA00: ; // 0x245da00
|
|
/* 0245DA00 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0245DA00 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0245DA04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245DA08 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DA08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245DA08 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245DA08 */ goto L_0245DA0C;
|
|
L_0245DA0C: ; // 0x245da0c
|
|
/* 0245DA0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0245DA10 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0245DA10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245DA14 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DA14 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245DA14 */ if (_t13) goto L_0245DA18; else goto L_0245DA20;
|
|
L_0245DA18: ; // 0x245da18
|
|
/* 0245DA18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245DA1C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0245DA20: ; // 0x245da20
|
|
/* 0245DA20 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0245DA20 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0245DA24 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0245DA24 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0245DA28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0245DA2C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0245DA2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245DA30 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0245DA34 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DA34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245DA34 */ if (_t18) goto L_0245DA4C; else goto L_0245DA38;
|
|
L_0245DA38: ; // 0x245da38
|
|
/* 0245DA38 */ /* nop */
|
|
/* 0245DA3C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0245DA3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245DA40 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245DA44 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0245DA48 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0245DA48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0245DA4C: ; // 0x245da4c
|
|
/* 0245DA4C */ cpu->ctr = cpu->r[11];
|
|
/* 0245DA50 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245DA54 @ 0x245da54
|
|
void Gambit_fn_0245DA54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0245DA54: ; // 0x245da54
|
|
/* 0245DA54 */ cpu->r[0] = cpu->lr;
|
|
/* 0245DA58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245DA58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245DA58 */ cpu->r[1] = _t0;
|
|
/* 0245DA5C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DA5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0245DA60 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DA60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0245DA64 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245DA68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DA68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245DA6C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0245DA6C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0245DA70 */ /* nop */
|
|
/* 0245DA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0245DA78 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245DA7C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DA7C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245DA7C */ if (_t6) goto L_0245DA80; else goto L_0245DA94;
|
|
L_0245DA80: ; // 0x245da80
|
|
/* 0245DA80 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0245DA80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245DA84 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0245DA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245DA88 */ cpu->ctr = cpu->r[0];
|
|
/* 0245DA8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DA90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245DA94: ; // 0x245da94
|
|
/* 0245DA94 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DA98 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245DA9C */ Gambit_fn_0245D9CC(cpu);
|
|
/* 0245DAA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DAA4 */ /* nop */
|
|
/* 0245DAA8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245DAAC */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DAB0 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245DAB4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245DAB8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DAB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245DABC */ cpu->lr = cpu->r[0];
|
|
/* 0245DAC0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DAC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245DAC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245DAC8 */ return;
|
|
}
|
|
|
|
// fn_0245DA58 @ 0x245da58
|
|
void Gambit_fn_0245DA58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0245DA58: ; // 0x245da58
|
|
/* 0245DA58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245DA58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245DA58 */ cpu->r[1] = _t0;
|
|
/* 0245DA5C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DA5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0245DA60 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DA60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0245DA64 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245DA68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DA68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245DA6C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0245DA6C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0245DA70 */ /* nop */
|
|
/* 0245DA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0245DA78 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245DA7C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DA7C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245DA7C */ if (_t6) goto L_0245DA80; else goto L_0245DA94;
|
|
L_0245DA80: ; // 0x245da80
|
|
/* 0245DA80 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0245DA80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245DA84 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0245DA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245DA88 */ cpu->ctr = cpu->r[0];
|
|
/* 0245DA8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DA90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245DA94: ; // 0x245da94
|
|
/* 0245DA94 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DA98 */ cpu->r[4] = cpu->r[31];
|
|
/* 0245DA9C */ Gambit_fn_0245D9CC(cpu);
|
|
/* 0245DAA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DAA4 */ /* nop */
|
|
/* 0245DAA8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245DAAC */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DAB0 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245DAB4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245DAB8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DAB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245DABC */ cpu->lr = cpu->r[0];
|
|
/* 0245DAC0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DAC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245DAC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245DAC8 */ return;
|
|
}
|
|
|
|
// fn_0245DACC @ 0x245dacc
|
|
void Gambit_fn_0245DACC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245DACC: ; // 0x245dacc
|
|
/* 0245DACC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0245DAD0 */ goto L_0245EB90;
|
|
L_0245EB90: ; // 0x245eb90
|
|
/* 0245EB90 */ cpu->r[0] = cpu->lr;
|
|
/* 0245EB94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245EB94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245EB94 */ cpu->r[1] = _t0;
|
|
/* 0245EB98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245EB9C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EB9C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245EBA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245EBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0245EBA4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245EBA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EBA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245EBAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EBAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245EBAC */ if (_t5) goto L_0245EBF0; else goto L_0245EBB0;
|
|
L_0245EBB0: ; // 0x245ebb0
|
|
/* 0245EBB0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245EBB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EBB8 */ cpu->r[11] = cpu->r[11] + 0x00002814u;
|
|
/* 0245EBBC */ cpu->r[0] = cpu->r[0] + 0x00002804u;
|
|
/* 0245EBC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245EBC4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0245EBC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245EBC8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EBCC */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245EBCC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0245EBD0 */ cpu->r[0] = cpu->r[0] + 0x00002824u;
|
|
/* 0245EBD4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245EBD8 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 0245EBD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245EBDC */ Gambit_fn_02068798(cpu);
|
|
/* 0245EBE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EBE4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EBE4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245EBE4 */ if (_t10) goto L_0245EBF0; else goto L_0245EBE8;
|
|
L_0245EBE8: ; // 0x245ebe8
|
|
/* 0245EBE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245EBEC */ Gambit_fn_02801BB0(cpu);
|
|
L_0245EBF0: ; // 0x245ebf0
|
|
/* 0245EBF0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EBF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245EBF4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EBF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245EBF8 */ cpu->lr = cpu->r[0];
|
|
/* 0245EBFC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EBFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245EC00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245EC04 */ return;
|
|
}
|
|
|
|
// fn_0245DAD4 @ 0x245dad4
|
|
void Gambit_fn_0245DAD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_0245DAD4: ; // 0x245dad4
|
|
/* 0245DAD4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0245DAD8 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_0245DADC @ 0x245dadc
|
|
void Gambit_fn_0245DADC(CPUState* cpu) {
|
|
L_0245DADC: ; // 0x245dadc
|
|
/* 0245DADC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0245DAE0 */ goto L_0245EC08;
|
|
L_0245EC08: ; // 0x245ec08
|
|
/* 0245EC08 */ return;
|
|
}
|
|
|
|
// fn_0245DAE4 @ 0x245dae4
|
|
void Gambit_fn_0245DAE4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245DAE4: ; // 0x245dae4
|
|
/* 0245DAE4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0245DAE8 */ goto L_0245EC0C;
|
|
L_0245EC0C: ; // 0x245ec0c
|
|
/* 0245EC0C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0245EC0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245EC10 */ return;
|
|
}
|
|
|
|
// fn_0245DAEC @ 0x245daec
|
|
void Gambit_fn_0245DAEC(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;
|
|
|
|
L_0245DAEC: ; // 0x245daec
|
|
/* 0245DAEC */ cpu->r[0] = cpu->lr;
|
|
/* 0245DAF0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0245DAF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245DAF0 */ cpu->r[1] = _t0;
|
|
/* 0245DAF4 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0245DAF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0245DAF8 */ /* nop */
|
|
/* 0245DAFC */ cpu->r[29] = cpu->r[3];
|
|
/* 0245DAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245DB00 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB00 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0245DB00 */ if (_t3) goto L_0245DB04; else goto L_0245DB14;
|
|
L_0245DB04: ; // 0x245db04
|
|
/* 0245DB04 */ cpu->r[3] = 0x00000214u;
|
|
/* 0245DB08 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245DB0C */ cpu->r[29] = cpu->r[3];
|
|
/* 0245DB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245DB10 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245DB10 */ if (_t5) goto L_0245E4B8; else goto L_0245DB14;
|
|
L_0245DB14: ; // 0x245db14
|
|
/* 0245DB14 */ cpu->r[25] = 0x100A0000u;
|
|
/* 0245DB18 */ cpu->r[3] = cpu->r[29];
|
|
/* 0245DB1C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245DB20 */ cpu->r[25] = cpu->r[25] + 0x000024C0u;
|
|
/* 0245DB24 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DB28 */ cpu->r[0] = cpu->r[0] + 0x00002590u;
|
|
/* 0245DB2C */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DB2C */ rbrew_write32(cpu->mem, _t6, cpu->r[25]);
|
|
/* 0245DB30 */ cpu->r[5] = 0x00000003u;
|
|
/* 0245DB34 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DB34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0245DB38 */ Gambit_fn_02068860(cpu);
|
|
/* 0245DB3C */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245DB40 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245DB44 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245DB48 */ cpu->r[7] = cpu->r[7] + 0x0000268Cu;
|
|
/* 0245DB4C */ cpu->r[0] = cpu->r[0] + 0x00002804u;
|
|
/* 0245DB50 */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 0245DB50 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0245DB54 */ cpu->r[9] = cpu->r[9] + 0x00002814u;
|
|
/* 0245DB58 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245DB5C */ _t9 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0245DB5C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0245DB60 */ cpu->r[27] = cpu->r[29] + 0x000001DCu;
|
|
/* 0245DB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245DB64 */ cpu->r[10] = cpu->r[10] + 0x00002824u;
|
|
/* 0245DB68 */ _t10 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245DB68 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0245DB6C */ cpu->r[31] = cpu->r[27];
|
|
/* 0245DB70 */ cpu->r[28] = 0x00000000u;
|
|
/* 0245DB74 */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 0245DB74 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0245DB78 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB78 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245DB78 */ if (_t13) goto L_0245DB7C; else goto L_0245DB8C;
|
|
L_0245DB7C: ; // 0x245db7c
|
|
/* 0245DB7C */ cpu->r[3] = 0x00000038u;
|
|
/* 0245DB80 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245DB84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245DB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245DB88 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB88 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245DB88 */ if (_t15) goto L_0245DBBC; else goto L_0245DB8C;
|
|
L_0245DB8C: ; // 0x245db8c
|
|
/* 0245DB8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0245DB90 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0245DB94 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245DB98 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 0245DB98 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0245DB9C */ cpu->r[11] = cpu->r[11] + 0x00002390u;
|
|
/* 0245DBA0 */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 0245DBA0 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0245DBA4 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 0245DBA4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0245DBA8 */ _t19 = cpu->r[31] + 0x00000024u;
|
|
/* 0245DBA8 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0245DBAC */ _t20 = cpu->r[31] + 0x00000028u;
|
|
/* 0245DBAC */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 0245DBB0 */ _t21 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0245DBB0 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0245DBB4 */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245DBB4 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 0245DBB8 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 0245DBB8 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
L_0245DBBC: ; // 0x245dbbc
|
|
/* 0245DBBC */ cpu->r[0] = 0x00000009u;
|
|
/* 0245DBC0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DBC4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0245DBC8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DBCC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DBD0 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DBD0 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[0]);
|
|
/* 0245DBD4 */ Gambit_fn_0245ED70(cpu);
|
|
/* 0245DBD8 */ cpu->r[24] = 0x02460000u;
|
|
/* 0245DBDC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245DBE0 */ cpu->r[24] = cpu->r[24] + 0xFFFFEC1Cu;
|
|
/* 0245DBE4 */ cpu->r[12] = cpu->r[12] + 0x00002560u;
|
|
/* 0245DBE8 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DBEC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DBEC */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 0245DBF0 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DBF0 */ rbrew_write32(cpu->mem, _t26, cpu->r[25]);
|
|
/* 0245DBF4 */ _t27 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DBF4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0245DBF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DBFC */ _t28 = cpu->r[23] + 0x00000000u;
|
|
/* 0245DBFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0245DC00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DC04 */ cpu->r[26] = 0x10110000u;
|
|
/* 0245DC08 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DC08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245DC0C */ _t30 = cpu->r[26] + 0x00007399u;
|
|
/* 0245DC0C */ cpu->r[26] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0245DC10 */ _t31 = cpu->r[6] + 0x00000000u;
|
|
/* 0245DC10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0245DC14 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DC18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DC1C */ cpu->r[8] = 0x00080000u;
|
|
/* 0245DC20 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DC20 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0245DC20 */ if (_t33) goto L_0245DC48; else goto L_0245DC24;
|
|
L_0245DC24: ; // 0x245dc24
|
|
/* 0245DC24 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0245DC2C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0245DC30 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DC30 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0245DC30 */ if (_t35) goto L_0245DC44; else goto L_0245DC34;
|
|
L_0245DC34: ; // 0x245dc34
|
|
/* 0245DC34 */ _t36 = cpu->r[6] + 0x00000000u;
|
|
/* 0245DC34 */ cpu->r[4] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0245DC38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[26]);
|
|
/* 0245DC3C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DC3C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245DC3C */ if (_t38) goto L_0245DC40; else goto L_0245DC24;
|
|
L_0245DC40: ; // 0x245dc40
|
|
/* 0245DC40 */ goto L_0245DC48;
|
|
L_0245DC44: ; // 0x245dc44
|
|
/* 0245DC44 */ cpu->r[31] = 0x00000000u;
|
|
L_0245DC48: ; // 0x245dc48
|
|
/* 0245DC48 */ _t39 = cpu->r[23] + 0x00000008u;
|
|
/* 0245DC48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0245DC4C */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DC4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0245DC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 0245DC54 */ _t41 = cpu->r[5] + 0x00000014u;
|
|
/* 0245DC54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0245DC58 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DC58 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0245DC58 */ if (_t43) goto L_0245DC60; else goto L_0245DC5C;
|
|
L_0245DC5C: ; // 0x245dc5c
|
|
/* 0245DC5C */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0245DC60: ; // 0x245dc60
|
|
/* 0245DC60 */ cpu->ctr = cpu->r[7];
|
|
/* 0245DC64 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DC68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DC6C */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DC6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0245DC70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DC74 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DC78 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DC7C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DC80 */ _t45 = cpu->r[30] + cpu->r[31];
|
|
/* 0245DC80 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[26]);
|
|
/* 0245DC84 */ cpu->r[7] = 0x00000000u;
|
|
/* 0245DC88 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DC88 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[28]);
|
|
/* 0245DC8C */ cpu->r[10] = 0x02460000u;
|
|
/* 0245DC90 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DC90 */ rbrew_write32(cpu->mem, _t47, cpu->r[28]);
|
|
/* 0245DC94 */ _t48 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DC94 */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[28]);
|
|
/* 0245DC98 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 0245DC9C */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DC9C */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[7]);
|
|
/* 0245DCA0 */ cpu->r[10] = cpu->r[10] + 0xFFFFED64u;
|
|
/* 0245DCA4 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DCA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0245DCA8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DCAC */ _t51 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DCAC */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[6]);
|
|
/* 0245DCB0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DCB4 */ _t52 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DCB4 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[28]);
|
|
/* 0245DCB8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DCBC */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DCBC */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[28]);
|
|
/* 0245DCC0 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DCC4 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DCC4 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[28]);
|
|
/* 0245DCC8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DCCC */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DCCC */ rbrew_write32(cpu->mem, _t55, cpu->r[10]);
|
|
/* 0245DCD0 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DCD4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245DCD8 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DCD8 */ rbrew_write32(cpu->mem, _t56, cpu->r[25]);
|
|
/* 0245DCDC */ cpu->r[7] = cpu->r[7] + 0x000025A8u;
|
|
/* 0245DCE0 */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DCE0 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 0245DCE4 */ _t58 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DCE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0245DCE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 0245DCEC */ _t59 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DCEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0245DCF0 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DCF0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245DCF0 */ if (_t61) goto L_0245DCF4; else goto L_0245DCF8;
|
|
L_0245DCF4: ; // 0x245dcf4
|
|
/* 0245DCF4 */ cpu->r[30] = cpu->r[30] + 0x00000024u;
|
|
L_0245DCF8: ; // 0x245dcf8
|
|
/* 0245DCF8 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DCFC */ _t62 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DCFC */ cpu->r[23] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0245DD00 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DD08 */ _t63 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0245DD0C */ _t64 = cpu->r[12] + 0x00000000u;
|
|
/* 0245DD0C */ cpu->r[11] = rbrew_read8(cpu->mem, _t64);
|
|
/* 0245DD10 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DD14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0245DD18 */ cpu->r[4] = 0x00080000u;
|
|
/* 0245DD1C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DD1C */ _t66 = _t65 & 0x00000001u;
|
|
/* 0245DD1C */ if (_t66) goto L_0245DD44; else goto L_0245DD20;
|
|
L_0245DD20: ; // 0x245dd20
|
|
/* 0245DD20 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 0245DD28 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0245DD2C */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DD2C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0245DD2C */ if (_t68) goto L_0245DD40; else goto L_0245DD30;
|
|
L_0245DD30: ; // 0x245dd30
|
|
/* 0245DD30 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0245DD30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t69);
|
|
/* 0245DD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DD38 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DD38 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0245DD38 */ if (_t71) goto L_0245DD3C; else goto L_0245DD20;
|
|
L_0245DD3C: ; // 0x245dd3c
|
|
/* 0245DD3C */ goto L_0245DD44;
|
|
L_0245DD40: ; // 0x245dd40
|
|
/* 0245DD40 */ cpu->r[31] = 0x00000000u;
|
|
L_0245DD44: ; // 0x245dd44
|
|
/* 0245DD44 */ _t72 = cpu->r[30] + 0x00000008u;
|
|
/* 0245DD44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0245DD48 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DD48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0245DD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 0245DD50 */ _t74 = cpu->r[5] + 0x00000014u;
|
|
/* 0245DD50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0245DD54 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DD54 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0245DD54 */ if (_t76) goto L_0245DD5C; else goto L_0245DD58;
|
|
L_0245DD58: ; // 0x245dd58
|
|
/* 0245DD58 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_0245DD5C: ; // 0x245dd5c
|
|
/* 0245DD5C */ cpu->ctr = cpu->r[7];
|
|
/* 0245DD60 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DD68 */ _t77 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD68 */ cpu->r[4] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0245DD6C */ cpu->r[3] = cpu->r[23];
|
|
/* 0245DD70 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DD74 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DD78 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DD7C */ _t78 = cpu->r[23] + cpu->r[31];
|
|
/* 0245DD7C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[26]);
|
|
/* 0245DD80 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245DD84 */ _t79 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DD84 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[28]);
|
|
/* 0245DD88 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0245DD8C */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DD8C */ rbrew_write16(cpu->mem, _t80, (uint16_t)cpu->r[28]);
|
|
/* 0245DD90 */ cpu->r[9] = 0x02460000u;
|
|
/* 0245DD94 */ _t81 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DD94 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[10]);
|
|
/* 0245DD98 */ cpu->r[9] = cpu->r[9] + 0xFFFFE7A0u;
|
|
/* 0245DD9C */ _t82 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DD9C */ rbrew_write32(cpu->mem, _t82, cpu->r[28]);
|
|
/* 0245DDA0 */ _t83 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DDA0 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[28]);
|
|
/* 0245DDA4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DDA8 */ _t84 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DDA8 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[0]);
|
|
/* 0245DDAC */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DDB0 */ _t85 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DDB0 */ rbrew_write32(cpu->mem, _t85, cpu->r[28]);
|
|
/* 0245DDB4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DDB8 */ _t86 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DDB8 */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[28]);
|
|
/* 0245DDBC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DDC0 */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DDC0 */ rbrew_write32(cpu->mem, _t87, cpu->r[9]);
|
|
/* 0245DDC4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DDC8 */ _t88 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DDC8 */ rbrew_write16(cpu->mem, _t88, (uint16_t)cpu->r[28]);
|
|
/* 0245DDCC */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DDD0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245DDD4 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DDD4 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0245DDD8 */ cpu->r[11] = cpu->r[11] + 0x00002530u;
|
|
/* 0245DDDC */ _t90 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DDDC */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 0245DDE0 */ _t91 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DDE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0245DDE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 0245DDE8 */ _t92 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DDE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0245DDEC */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DDEC */ _t94 = _t93 & 0x00000001u;
|
|
/* 0245DDEC */ if (_t94) goto L_0245DDF0; else goto L_0245DDF4;
|
|
L_0245DDF0: ; // 0x245ddf0
|
|
/* 0245DDF0 */ cpu->r[30] = cpu->r[30] + 0x00000048u;
|
|
L_0245DDF4: ; // 0x245ddf4
|
|
/* 0245DDF4 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DDF8 */ _t95 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DDF8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0245DDFC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DE04 */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0245DE08 */ _t97 = cpu->r[8] + 0x00000000u;
|
|
/* 0245DE08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t97);
|
|
/* 0245DE0C */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DE10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DE14 */ cpu->r[10] = 0x00080000u;
|
|
/* 0245DE18 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DE18 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0245DE18 */ if (_t99) goto L_0245DE40; else goto L_0245DE1C;
|
|
L_0245DE1C: ; // 0x245de1c
|
|
/* 0245DE1C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0245DE24 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0245DE28 */ _t100 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DE28 */ _t101 = _t100 & 0x00000001u;
|
|
/* 0245DE28 */ if (_t101) goto L_0245DE3C; else goto L_0245DE2C;
|
|
L_0245DE2C: ; // 0x245de2c
|
|
/* 0245DE2C */ _t102 = cpu->r[8] + 0x00000000u;
|
|
/* 0245DE2C */ cpu->r[7] = rbrew_read8(cpu->mem, _t102);
|
|
/* 0245DE30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[26]);
|
|
/* 0245DE34 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DE34 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0245DE34 */ if (_t104) goto L_0245DE38; else goto L_0245DE1C;
|
|
L_0245DE38: ; // 0x245de38
|
|
/* 0245DE38 */ goto L_0245DE40;
|
|
L_0245DE3C: ; // 0x245de3c
|
|
/* 0245DE3C */ cpu->r[31] = 0x00000000u;
|
|
L_0245DE40: ; // 0x245de40
|
|
/* 0245DE40 */ _t105 = cpu->r[30] + 0x00000008u;
|
|
/* 0245DE40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0245DE44 */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DE44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0245DE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0245DE4C */ _t107 = cpu->r[9] + 0x00000014u;
|
|
/* 0245DE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0245DE50 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DE50 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0245DE50 */ if (_t109) goto L_0245DE58; else goto L_0245DE54;
|
|
L_0245DE54: ; // 0x245de54
|
|
/* 0245DE54 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0245DE58: ; // 0x245de58
|
|
/* 0245DE58 */ cpu->ctr = cpu->r[0];
|
|
/* 0245DE5C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DE64 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0245DE68 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245DE6C */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DE70 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DE74 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DE78 */ _t111 = cpu->r[23] + cpu->r[31];
|
|
/* 0245DE78 */ rbrew_write8(cpu->mem, _t111, (uint8_t)cpu->r[26]);
|
|
/* 0245DE7C */ cpu->r[12] = 0x00000002u;
|
|
/* 0245DE80 */ _t112 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DE80 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[28]);
|
|
/* 0245DE84 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0245DE88 */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DE88 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 0245DE8C */ cpu->r[11] = 0x02460000u;
|
|
/* 0245DE90 */ _t114 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DE90 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[0]);
|
|
/* 0245DE94 */ cpu->r[11] = cpu->r[11] + 0xFFFFE860u;
|
|
/* 0245DE98 */ _t115 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DE98 */ rbrew_write32(cpu->mem, _t115, cpu->r[28]);
|
|
/* 0245DE9C */ _t116 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DE9C */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[28]);
|
|
/* 0245DEA0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DEA4 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DEA4 */ rbrew_write8(cpu->mem, _t117, (uint8_t)cpu->r[12]);
|
|
/* 0245DEA8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DEAC */ _t118 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DEAC */ rbrew_write32(cpu->mem, _t118, cpu->r[28]);
|
|
/* 0245DEB0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DEB4 */ _t119 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DEB4 */ rbrew_write16(cpu->mem, _t119, (uint16_t)cpu->r[28]);
|
|
/* 0245DEB8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DEBC */ _t120 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DEBC */ rbrew_write32(cpu->mem, _t120, cpu->r[11]);
|
|
/* 0245DEC0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DEC4 */ _t121 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DEC4 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[28]);
|
|
/* 0245DEC8 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DECC */ cpu->r[5] = 0x100A0000u;
|
|
/* 0245DED0 */ _t122 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DED0 */ rbrew_write32(cpu->mem, _t122, cpu->r[25]);
|
|
/* 0245DED4 */ cpu->r[5] = cpu->r[5] + 0x00002570u;
|
|
/* 0245DED8 */ _t123 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DED8 */ rbrew_write32(cpu->mem, _t123, cpu->r[5]);
|
|
/* 0245DEDC */ _t124 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DEDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0245DEE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000003u);
|
|
/* 0245DEE4 */ _t125 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DEE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0245DEE8 */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DEE8 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0245DEE8 */ if (_t127) goto L_0245DEEC; else goto L_0245DEF0;
|
|
L_0245DEEC: ; // 0x245deec
|
|
/* 0245DEEC */ cpu->r[30] = cpu->r[30] + 0x0000006Cu;
|
|
L_0245DEF0: ; // 0x245def0
|
|
/* 0245DEF0 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DEF4 */ _t128 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DEF4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0245DEF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DEFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DF00 */ _t129 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DF00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0245DF04 */ _t130 = cpu->r[4] + 0x00000000u;
|
|
/* 0245DF04 */ cpu->r[11] = rbrew_read8(cpu->mem, _t130);
|
|
/* 0245DF08 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DF0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0245DF10 */ cpu->r[6] = 0x00080000u;
|
|
/* 0245DF14 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DF14 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0245DF14 */ if (_t132) goto L_0245DF3C; else goto L_0245DF18;
|
|
L_0245DF18: ; // 0x245df18
|
|
/* 0245DF18 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0245DF20 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 0245DF24 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DF24 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0245DF24 */ if (_t134) goto L_0245DF38; else goto L_0245DF28;
|
|
L_0245DF28: ; // 0x245df28
|
|
/* 0245DF28 */ _t135 = cpu->r[4] + 0x00000000u;
|
|
/* 0245DF28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t135);
|
|
/* 0245DF2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DF30 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DF30 */ _t137 = _t136 & 0x00000001u;
|
|
/* 0245DF30 */ if (_t137) goto L_0245DF34; else goto L_0245DF18;
|
|
L_0245DF34: ; // 0x245df34
|
|
/* 0245DF34 */ goto L_0245DF3C;
|
|
L_0245DF38: ; // 0x245df38
|
|
/* 0245DF38 */ cpu->r[31] = 0x00000000u;
|
|
L_0245DF3C: ; // 0x245df3c
|
|
/* 0245DF3C */ _t138 = cpu->r[30] + 0x00000008u;
|
|
/* 0245DF3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0245DF40 */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DF40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0245DF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 0245DF48 */ _t140 = cpu->r[5] + 0x00000014u;
|
|
/* 0245DF48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0245DF4C */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DF4C */ _t142 = _t141 & 0x00000001u;
|
|
/* 0245DF4C */ if (_t142) goto L_0245DF54; else goto L_0245DF50;
|
|
L_0245DF50: ; // 0x245df50
|
|
/* 0245DF50 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0245DF54: ; // 0x245df54
|
|
/* 0245DF54 */ cpu->ctr = cpu->r[7];
|
|
/* 0245DF58 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DF5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DF60 */ _t143 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DF60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0245DF64 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245DF68 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DF6C */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DF70 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DF74 */ _t144 = cpu->r[23] + cpu->r[31];
|
|
/* 0245DF74 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[26]);
|
|
/* 0245DF78 */ cpu->r[10] = 0x00000003u;
|
|
/* 0245DF7C */ _t145 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DF7C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[28]);
|
|
/* 0245DF80 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0245DF84 */ _t146 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DF84 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 0245DF88 */ cpu->r[0] = 0x02460000u;
|
|
/* 0245DF8C */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DF8C */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[11]);
|
|
/* 0245DF90 */ cpu->r[0] = cpu->r[0] + 0xFFFFED68u;
|
|
/* 0245DF94 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DF94 */ rbrew_write32(cpu->mem, _t148, cpu->r[28]);
|
|
/* 0245DF98 */ _t149 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DF98 */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[28]);
|
|
/* 0245DF9C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DFA0 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DFA0 */ rbrew_write8(cpu->mem, _t150, (uint8_t)cpu->r[10]);
|
|
/* 0245DFA4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DFA8 */ _t151 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DFA8 */ rbrew_write32(cpu->mem, _t151, cpu->r[28]);
|
|
/* 0245DFAC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DFB0 */ _t152 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DFB0 */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[28]);
|
|
/* 0245DFB4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DFB8 */ _t153 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DFB8 */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 0245DFBC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DFC0 */ _t154 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DFC0 */ rbrew_write16(cpu->mem, _t154, (uint16_t)cpu->r[28]);
|
|
/* 0245DFC4 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DFC8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245DFCC */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DFCC */ rbrew_write32(cpu->mem, _t155, cpu->r[25]);
|
|
/* 0245DFD0 */ cpu->r[10] = cpu->r[10] + 0x000025B8u;
|
|
/* 0245DFD4 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DFD4 */ rbrew_write32(cpu->mem, _t156, cpu->r[10]);
|
|
/* 0245DFD8 */ _t157 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DFD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0245DFDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 0245DFE0 */ _t158 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DFE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0245DFE4 */ _t159 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DFE4 */ _t160 = _t159 & 0x00000001u;
|
|
/* 0245DFE4 */ if (_t160) goto L_0245DFE8; else goto L_0245DFEC;
|
|
L_0245DFE8: ; // 0x245dfe8
|
|
/* 0245DFE8 */ cpu->r[30] = cpu->r[30] + 0x00000090u;
|
|
L_0245DFEC: ; // 0x245dfec
|
|
/* 0245DFEC */ cpu->ctr = cpu->r[24];
|
|
/* 0245DFF0 */ _t161 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DFF0 */ cpu->r[23] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0245DFF4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DFF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DFFC */ _t162 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DFFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0245E000 */ _t163 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E000 */ cpu->r[12] = rbrew_read8(cpu->mem, _t163);
|
|
/* 0245E004 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E008 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]);
|
|
/* 0245E00C */ cpu->r[10] = 0x00080000u;
|
|
/* 0245E010 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E010 */ _t165 = _t164 & 0x00000001u;
|
|
/* 0245E010 */ if (_t165) goto L_0245E038; else goto L_0245E014;
|
|
L_0245E014: ; // 0x245e014
|
|
/* 0245E014 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0245E01C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0245E020 */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E020 */ _t167 = _t166 & 0x00000001u;
|
|
/* 0245E020 */ if (_t167) goto L_0245E034; else goto L_0245E024;
|
|
L_0245E024: ; // 0x245e024
|
|
/* 0245E024 */ _t168 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E024 */ cpu->r[0] = rbrew_read8(cpu->mem, _t168);
|
|
/* 0245E028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E02C */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E02C */ _t170 = _t169 & 0x00000001u;
|
|
/* 0245E02C */ if (_t170) goto L_0245E030; else goto L_0245E014;
|
|
L_0245E030: ; // 0x245e030
|
|
/* 0245E030 */ goto L_0245E038;
|
|
L_0245E034: ; // 0x245e034
|
|
/* 0245E034 */ cpu->r[31] = 0x00000000u;
|
|
L_0245E038: ; // 0x245e038
|
|
/* 0245E038 */ _t171 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E038 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0245E03C */ _t172 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E03C */ cpu->r[4] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0245E040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0245E044 */ _t173 = cpu->r[4] + 0x00000014u;
|
|
/* 0245E044 */ cpu->r[5] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0245E048 */ _t174 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E048 */ _t175 = _t174 & 0x00000001u;
|
|
/* 0245E048 */ if (_t175) goto L_0245E050; else goto L_0245E04C;
|
|
L_0245E04C: ; // 0x245e04c
|
|
/* 0245E04C */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0245E050: ; // 0x245e050
|
|
/* 0245E050 */ cpu->ctr = cpu->r[5];
|
|
/* 0245E054 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E05C */ _t176 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E05C */ cpu->r[4] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0245E060 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E064 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E068 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E06C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E070 */ _t177 = cpu->r[23] + cpu->r[31];
|
|
/* 0245E070 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[26]);
|
|
/* 0245E074 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0245E078 */ _t178 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E078 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[28]);
|
|
/* 0245E07C */ cpu->r[6] = 0x02460000u;
|
|
/* 0245E080 */ _t179 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E080 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[28]);
|
|
/* 0245E084 */ cpu->r[6] = cpu->r[6] + 0xFFFFE914u;
|
|
/* 0245E088 */ _t180 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E088 */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[9]);
|
|
/* 0245E08C */ cpu->r[8] = 0x00000004u;
|
|
/* 0245E090 */ _t181 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E090 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[28]);
|
|
/* 0245E094 */ _t182 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E094 */ rbrew_write32(cpu->mem, _t182, cpu->r[6]);
|
|
/* 0245E098 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E09C */ _t183 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E09C */ rbrew_write32(cpu->mem, _t183, cpu->r[28]);
|
|
/* 0245E0A0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E0A4 */ _t184 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E0A4 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[28]);
|
|
/* 0245E0A8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E0AC */ _t185 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E0AC */ rbrew_write32(cpu->mem, _t185, cpu->r[28]);
|
|
/* 0245E0B0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E0B4 */ _t186 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E0B4 */ rbrew_write8(cpu->mem, _t186, (uint8_t)cpu->r[8]);
|
|
/* 0245E0B8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E0BC */ _t187 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E0BC */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 0245E0C0 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E0C4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245E0C8 */ _t188 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E0C8 */ rbrew_write32(cpu->mem, _t188, cpu->r[25]);
|
|
/* 0245E0CC */ cpu->r[7] = cpu->r[7] + 0x00002540u;
|
|
/* 0245E0D0 */ _t189 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E0D0 */ rbrew_write32(cpu->mem, _t189, cpu->r[7]);
|
|
/* 0245E0D4 */ _t190 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E0D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0245E0D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 0245E0DC */ _t191 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E0DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0245E0E0 */ _t192 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E0E0 */ _t193 = _t192 & 0x00000001u;
|
|
/* 0245E0E0 */ if (_t193) goto L_0245E0E4; else goto L_0245E0E8;
|
|
L_0245E0E4: ; // 0x245e0e4
|
|
/* 0245E0E4 */ cpu->r[30] = cpu->r[30] + 0x000000B4u;
|
|
L_0245E0E8: ; // 0x245e0e8
|
|
/* 0245E0E8 */ cpu->ctr = cpu->r[24];
|
|
/* 0245E0EC */ _t194 = cpu->r[30] + 0x00000000u;
|
|
/* 0245E0EC */ cpu->r[23] = rbrew_read32(cpu->mem, _t194);
|
|
/* 0245E0F0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E0F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E0F8 */ _t195 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E0F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t195);
|
|
/* 0245E0FC */ _t196 = cpu->r[5] + 0x00000000u;
|
|
/* 0245E0FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t196);
|
|
/* 0245E100 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E104 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E108 */ cpu->r[6] = 0x00080000u;
|
|
/* 0245E10C */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E10C */ _t198 = _t197 & 0x00000001u;
|
|
/* 0245E10C */ if (_t198) goto L_0245E134; else goto L_0245E110;
|
|
L_0245E110: ; // 0x245e110
|
|
/* 0245E110 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0245E118 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0245E11C */ _t199 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E11C */ _t200 = _t199 & 0x00000001u;
|
|
/* 0245E11C */ if (_t200) goto L_0245E130; else goto L_0245E120;
|
|
L_0245E120: ; // 0x245e120
|
|
/* 0245E120 */ _t201 = cpu->r[5] + 0x00000000u;
|
|
/* 0245E120 */ cpu->r[10] = rbrew_read8(cpu->mem, _t201);
|
|
/* 0245E124 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[26]);
|
|
/* 0245E128 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E128 */ _t203 = _t202 & 0x00000001u;
|
|
/* 0245E128 */ if (_t203) goto L_0245E12C; else goto L_0245E110;
|
|
L_0245E12C: ; // 0x245e12c
|
|
/* 0245E12C */ goto L_0245E134;
|
|
L_0245E130: ; // 0x245e130
|
|
/* 0245E130 */ cpu->r[31] = 0x00000000u;
|
|
L_0245E134: ; // 0x245e134
|
|
/* 0245E134 */ _t204 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E134 */ cpu->r[12] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0245E138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 0245E13C */ _t205 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E13C */ cpu->r[11] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0245E140 */ _t206 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E140 */ _t207 = _t206 & 0x00000001u;
|
|
/* 0245E140 */ if (_t207) goto L_0245E148; else goto L_0245E144;
|
|
L_0245E144: ; // 0x245e144
|
|
/* 0245E144 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0245E148: ; // 0x245e148
|
|
/* 0245E148 */ _t208 = cpu->r[11] + 0x00000014u;
|
|
/* 0245E148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
/* 0245E14C */ cpu->ctr = cpu->r[12];
|
|
/* 0245E150 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E154 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E158 */ _t209 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E158 */ cpu->r[4] = rbrew_read32(cpu->mem, _t209);
|
|
/* 0245E15C */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E160 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E164 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E168 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E16C */ _t210 = cpu->r[23] + cpu->r[31];
|
|
/* 0245E16C */ rbrew_write8(cpu->mem, _t210, (uint8_t)cpu->r[26]);
|
|
/* 0245E170 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0245E174 */ _t211 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E174 */ rbrew_write16(cpu->mem, _t211, (uint16_t)cpu->r[28]);
|
|
/* 0245E178 */ cpu->r[5] = 0x00000005u;
|
|
/* 0245E17C */ _t212 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E17C */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[7]);
|
|
/* 0245E180 */ cpu->r[0] = 0x02460000u;
|
|
/* 0245E184 */ _t213 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E184 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[28]);
|
|
/* 0245E188 */ _t214 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E188 */ rbrew_write8(cpu->mem, _t214, (uint8_t)cpu->r[5]);
|
|
/* 0245E18C */ cpu->r[0] = cpu->r[0] + 0xFFFFE998u;
|
|
/* 0245E190 */ _t215 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E190 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[28]);
|
|
/* 0245E194 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E198 */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E198 */ rbrew_write32(cpu->mem, _t216, cpu->r[28]);
|
|
/* 0245E19C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E1A0 */ _t217 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E1A0 */ rbrew_write16(cpu->mem, _t217, (uint16_t)cpu->r[28]);
|
|
/* 0245E1A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E1A8 */ _t218 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E1A8 */ rbrew_write32(cpu->mem, _t218, cpu->r[0]);
|
|
/* 0245E1AC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E1B0 */ _t219 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E1B0 */ rbrew_write32(cpu->mem, _t219, cpu->r[28]);
|
|
/* 0245E1B4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E1B8 */ _t220 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E1B8 */ rbrew_write16(cpu->mem, _t220, (uint16_t)cpu->r[28]);
|
|
/* 0245E1BC */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E1C0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245E1C4 */ _t221 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E1C4 */ rbrew_write32(cpu->mem, _t221, cpu->r[25]);
|
|
/* 0245E1C8 */ cpu->r[4] = cpu->r[4] + 0x00002580u;
|
|
/* 0245E1CC */ _t222 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E1CC */ rbrew_write32(cpu->mem, _t222, cpu->r[4]);
|
|
/* 0245E1D0 */ _t223 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E1D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t223);
|
|
/* 0245E1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000006u);
|
|
/* 0245E1D8 */ _t224 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E1D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t224);
|
|
/* 0245E1DC */ _t225 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E1DC */ _t226 = _t225 & 0x00000001u;
|
|
/* 0245E1DC */ if (_t226) goto L_0245E1E0; else goto L_0245E1E4;
|
|
L_0245E1E0: ; // 0x245e1e0
|
|
/* 0245E1E0 */ cpu->r[30] = cpu->r[30] + 0x000000D8u;
|
|
L_0245E1E4: ; // 0x245e1e4
|
|
/* 0245E1E4 */ cpu->ctr = cpu->r[24];
|
|
/* 0245E1E8 */ _t227 = cpu->r[30] + 0x00000000u;
|
|
/* 0245E1E8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t227);
|
|
/* 0245E1EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E1F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E1F4 */ _t228 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E1F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t228);
|
|
/* 0245E1F8 */ _t229 = cpu->r[12] + 0x00000000u;
|
|
/* 0245E1F8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t229);
|
|
/* 0245E1FC */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E200 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[26]);
|
|
/* 0245E204 */ cpu->r[0] = 0x00080000u;
|
|
/* 0245E208 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E208 */ _t231 = _t230 & 0x00000001u;
|
|
/* 0245E208 */ if (_t231) goto L_0245E230; else goto L_0245E20C;
|
|
L_0245E20C: ; // 0x245e20c
|
|
/* 0245E20C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0245E214 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0245E218 */ _t232 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E218 */ _t233 = _t232 & 0x00000001u;
|
|
/* 0245E218 */ if (_t233) goto L_0245E22C; else goto L_0245E21C;
|
|
L_0245E21C: ; // 0x245e21c
|
|
/* 0245E21C */ _t234 = cpu->r[12] + 0x00000000u;
|
|
/* 0245E21C */ cpu->r[7] = rbrew_read8(cpu->mem, _t234);
|
|
/* 0245E220 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[26]);
|
|
/* 0245E224 */ _t235 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E224 */ _t236 = _t235 & 0x00000001u;
|
|
/* 0245E224 */ if (_t236) goto L_0245E228; else goto L_0245E20C;
|
|
L_0245E228: ; // 0x245e228
|
|
/* 0245E228 */ goto L_0245E230;
|
|
L_0245E22C: ; // 0x245e22c
|
|
/* 0245E22C */ cpu->r[31] = 0x00000000u;
|
|
L_0245E230: ; // 0x245e230
|
|
/* 0245E230 */ _t237 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E230 */ cpu->r[4] = rbrew_read32(cpu->mem, _t237);
|
|
/* 0245E234 */ _t238 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E234 */ cpu->r[8] = rbrew_read32(cpu->mem, _t238);
|
|
/* 0245E238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 0245E23C */ _t239 = cpu->r[8] + 0x00000014u;
|
|
/* 0245E23C */ cpu->r[9] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0245E240 */ _t240 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E240 */ _t241 = _t240 & 0x00000001u;
|
|
/* 0245E240 */ if (_t241) goto L_0245E248; else goto L_0245E244;
|
|
L_0245E244: ; // 0x245e244
|
|
/* 0245E244 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_0245E248: ; // 0x245e248
|
|
/* 0245E248 */ cpu->ctr = cpu->r[9];
|
|
/* 0245E24C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E254 */ _t242 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E254 */ cpu->r[4] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0245E258 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E25C */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E260 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E264 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E268 */ _t243 = cpu->r[23] + cpu->r[31];
|
|
/* 0245E268 */ rbrew_write8(cpu->mem, _t243, (uint8_t)cpu->r[26]);
|
|
/* 0245E26C */ cpu->r[12] = 0x00000006u;
|
|
/* 0245E270 */ _t244 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E270 */ rbrew_write16(cpu->mem, _t244, (uint16_t)cpu->r[28]);
|
|
/* 0245E274 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0245E278 */ _t245 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E278 */ rbrew_write8(cpu->mem, _t245, (uint8_t)cpu->r[12]);
|
|
/* 0245E27C */ cpu->r[0] = 0x02460000u;
|
|
/* 0245E280 */ _t246 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E280 */ rbrew_write16(cpu->mem, _t246, (uint16_t)cpu->r[28]);
|
|
/* 0245E284 */ cpu->r[0] = cpu->r[0] + 0xFFFFED6Cu;
|
|
/* 0245E288 */ _t247 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E288 */ rbrew_write16(cpu->mem, _t247, (uint16_t)cpu->r[28]);
|
|
/* 0245E28C */ _t248 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E28C */ rbrew_write16(cpu->mem, _t248, (uint16_t)cpu->r[4]);
|
|
/* 0245E290 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E294 */ _t249 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E294 */ rbrew_write32(cpu->mem, _t249, cpu->r[0]);
|
|
/* 0245E298 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E29C */ _t250 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E29C */ rbrew_write32(cpu->mem, _t250, cpu->r[28]);
|
|
/* 0245E2A0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E2A4 */ _t251 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E2A4 */ rbrew_write16(cpu->mem, _t251, (uint16_t)cpu->r[28]);
|
|
/* 0245E2A8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E2AC */ _t252 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E2AC */ rbrew_write16(cpu->mem, _t252, (uint16_t)cpu->r[28]);
|
|
/* 0245E2B0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E2B4 */ _t253 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E2B4 */ rbrew_write32(cpu->mem, _t253, cpu->r[28]);
|
|
/* 0245E2B8 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E2BC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245E2C0 */ _t254 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E2C0 */ rbrew_write32(cpu->mem, _t254, cpu->r[25]);
|
|
/* 0245E2C4 */ cpu->r[11] = cpu->r[11] + 0x000025CCu;
|
|
/* 0245E2C8 */ _t255 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E2C8 */ rbrew_write32(cpu->mem, _t255, cpu->r[11]);
|
|
/* 0245E2CC */ _t256 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E2CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t256);
|
|
/* 0245E2D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000007u);
|
|
/* 0245E2D4 */ _t257 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E2D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t257);
|
|
/* 0245E2D8 */ _t258 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E2D8 */ _t259 = _t258 & 0x00000001u;
|
|
/* 0245E2D8 */ if (_t259) goto L_0245E2DC; else goto L_0245E2E0;
|
|
L_0245E2DC: ; // 0x245e2dc
|
|
/* 0245E2DC */ cpu->r[31] = cpu->r[31] + 0x000000FCu;
|
|
L_0245E2E0: ; // 0x245e2e0
|
|
/* 0245E2E0 */ cpu->ctr = cpu->r[24];
|
|
/* 0245E2E4 */ _t260 = cpu->r[31] + 0x00000000u;
|
|
/* 0245E2E4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t260);
|
|
/* 0245E2E8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E2EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E2F0 */ _t261 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E2F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t261);
|
|
/* 0245E2F4 */ _t262 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E2F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t262);
|
|
/* 0245E2F8 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245E2FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E300 */ cpu->r[0] = 0x00080000u;
|
|
/* 0245E304 */ _t263 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E304 */ _t264 = _t263 & 0x00000001u;
|
|
/* 0245E304 */ if (_t264) goto L_0245E32C; else goto L_0245E308;
|
|
L_0245E308: ; // 0x245e308
|
|
/* 0245E308 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0245E30C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0245E310 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0245E314 */ _t265 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E314 */ _t266 = _t265 & 0x00000001u;
|
|
/* 0245E314 */ if (_t266) goto L_0245E328; else goto L_0245E318;
|
|
L_0245E318: ; // 0x245e318
|
|
/* 0245E318 */ _t267 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E318 */ cpu->r[4] = rbrew_read8(cpu->mem, _t267);
|
|
/* 0245E31C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[26]);
|
|
/* 0245E320 */ _t268 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E320 */ _t269 = _t268 & 0x00000001u;
|
|
/* 0245E320 */ if (_t269) goto L_0245E324; else goto L_0245E308;
|
|
L_0245E324: ; // 0x245e324
|
|
/* 0245E324 */ goto L_0245E32C;
|
|
L_0245E328: ; // 0x245e328
|
|
/* 0245E328 */ cpu->r[30] = 0x00000000u;
|
|
L_0245E32C: ; // 0x245e32c
|
|
/* 0245E32C */ _t270 = cpu->r[31] + 0x00000008u;
|
|
/* 0245E32C */ cpu->r[6] = rbrew_read32(cpu->mem, _t270);
|
|
/* 0245E330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0245E334 */ _t271 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E334 */ cpu->r[5] = rbrew_read32(cpu->mem, _t271);
|
|
/* 0245E338 */ _t272 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E338 */ _t273 = _t272 & 0x00000001u;
|
|
/* 0245E338 */ if (_t273) goto L_0245E340; else goto L_0245E33C;
|
|
L_0245E33C: ; // 0x245e33c
|
|
/* 0245E33C */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0245E340: ; // 0x245e340
|
|
/* 0245E340 */ _t274 = cpu->r[5] + 0x00000014u;
|
|
/* 0245E340 */ cpu->r[6] = rbrew_read32(cpu->mem, _t274);
|
|
/* 0245E344 */ cpu->ctr = cpu->r[6];
|
|
/* 0245E348 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E34C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E350 */ _t275 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E350 */ cpu->r[4] = rbrew_read32(cpu->mem, _t275);
|
|
/* 0245E354 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E358 */ cpu->r[5] = cpu->r[30];
|
|
/* 0245E35C */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E360 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E364 */ _t276 = cpu->r[23] + cpu->r[30];
|
|
/* 0245E364 */ rbrew_write8(cpu->mem, _t276, (uint8_t)cpu->r[26]);
|
|
/* 0245E368 */ cpu->r[9] = 0x00000007u;
|
|
/* 0245E36C */ _t277 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E36C */ rbrew_write16(cpu->mem, _t277, (uint16_t)cpu->r[28]);
|
|
/* 0245E370 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0245E374 */ _t278 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E374 */ rbrew_write8(cpu->mem, _t278, (uint8_t)cpu->r[9]);
|
|
/* 0245E378 */ cpu->r[7] = 0x02460000u;
|
|
/* 0245E37C */ _t279 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E37C */ rbrew_write32(cpu->mem, _t279, cpu->r[28]);
|
|
/* 0245E380 */ _t280 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E380 */ rbrew_write16(cpu->mem, _t280, (uint16_t)cpu->r[11]);
|
|
/* 0245E384 */ cpu->r[7] = cpu->r[7] + 0xFFFFEA64u;
|
|
/* 0245E388 */ _t281 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E388 */ rbrew_write16(cpu->mem, _t281, (uint16_t)cpu->r[28]);
|
|
/* 0245E38C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E390 */ _t282 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E390 */ rbrew_write32(cpu->mem, _t282, cpu->r[28]);
|
|
/* 0245E394 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E398 */ _t283 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E398 */ rbrew_write32(cpu->mem, _t283, cpu->r[7]);
|
|
/* 0245E39C */ _t284 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E39C */ rbrew_write16(cpu->mem, _t284, (uint16_t)cpu->r[28]);
|
|
/* 0245E3A0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E3A4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E3A8 */ _t285 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E3A8 */ rbrew_write16(cpu->mem, _t285, (uint16_t)cpu->r[28]);
|
|
/* 0245E3AC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E3B0 */ _t286 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E3B0 */ rbrew_write16(cpu->mem, _t286, (uint16_t)cpu->r[28]);
|
|
/* 0245E3B4 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E3B8 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245E3BC */ _t287 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E3BC */ rbrew_write32(cpu->mem, _t287, cpu->r[25]);
|
|
/* 0245E3C0 */ cpu->r[8] = cpu->r[8] + 0x00002550u;
|
|
/* 0245E3C4 */ _t288 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E3C4 */ rbrew_write32(cpu->mem, _t288, cpu->r[8]);
|
|
/* 0245E3C8 */ _t289 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E3C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t289);
|
|
/* 0245E3CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000008u);
|
|
/* 0245E3D0 */ _t290 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E3D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t290);
|
|
/* 0245E3D4 */ _t291 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E3D4 */ _t292 = _t291 & 0x00000001u;
|
|
/* 0245E3D4 */ if (_t292) goto L_0245E3D8; else goto L_0245E3DC;
|
|
L_0245E3D8: ; // 0x245e3d8
|
|
/* 0245E3D8 */ cpu->r[30] = cpu->r[30] + 0x00000120u;
|
|
L_0245E3DC: ; // 0x245e3dc
|
|
/* 0245E3DC */ cpu->ctr = cpu->r[24];
|
|
/* 0245E3E0 */ _t293 = cpu->r[30] + 0x00000000u;
|
|
/* 0245E3E0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t293);
|
|
/* 0245E3E4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E3E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E3EC */ _t294 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E3EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t294);
|
|
/* 0245E3F0 */ _t295 = cpu->r[6] + 0x00000000u;
|
|
/* 0245E3F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t295);
|
|
/* 0245E3F4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E3F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E3FC */ cpu->r[8] = 0x00080000u;
|
|
/* 0245E400 */ _t296 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E400 */ _t297 = _t296 & 0x00000001u;
|
|
/* 0245E400 */ if (_t297) goto L_0245E428; else goto L_0245E404;
|
|
L_0245E404: ; // 0x245e404
|
|
/* 0245E404 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0245E40C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0245E410 */ _t298 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E410 */ _t299 = _t298 & 0x00000001u;
|
|
/* 0245E410 */ if (_t299) goto L_0245E424; else goto L_0245E414;
|
|
L_0245E414: ; // 0x245e414
|
|
/* 0245E414 */ _t300 = cpu->r[6] + 0x00000000u;
|
|
/* 0245E414 */ cpu->r[11] = rbrew_read8(cpu->mem, _t300);
|
|
/* 0245E418 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0245E41C */ _t301 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E41C */ _t302 = _t301 & 0x00000001u;
|
|
/* 0245E41C */ if (_t302) goto L_0245E420; else goto L_0245E404;
|
|
L_0245E420: ; // 0x245e420
|
|
/* 0245E420 */ goto L_0245E428;
|
|
L_0245E424: ; // 0x245e424
|
|
/* 0245E424 */ cpu->r[31] = 0x00000000u;
|
|
L_0245E428: ; // 0x245e428
|
|
/* 0245E428 */ _t303 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E428 */ cpu->r[8] = rbrew_read32(cpu->mem, _t303);
|
|
/* 0245E42C */ _t304 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E42C */ cpu->r[12] = rbrew_read32(cpu->mem, _t304);
|
|
/* 0245E430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0245E434 */ _t305 = cpu->r[12] + 0x00000014u;
|
|
/* 0245E434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t305);
|
|
/* 0245E438 */ _t306 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E438 */ _t307 = _t306 & 0x00000001u;
|
|
/* 0245E438 */ if (_t307) goto L_0245E440; else goto L_0245E43C;
|
|
L_0245E43C: ; // 0x245e43c
|
|
/* 0245E43C */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0245E440: ; // 0x245e440
|
|
/* 0245E440 */ cpu->ctr = cpu->r[0];
|
|
/* 0245E444 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E448 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E44C */ _t308 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E44C */ cpu->r[4] = rbrew_read32(cpu->mem, _t308);
|
|
/* 0245E450 */ cpu->r[3] = cpu->r[25];
|
|
/* 0245E454 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E458 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E45C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E460 */ _t309 = cpu->r[25] + cpu->r[31];
|
|
/* 0245E460 */ rbrew_write8(cpu->mem, _t309, (uint8_t)cpu->r[26]);
|
|
/* 0245E464 */ cpu->r[7] = 0x00000008u;
|
|
/* 0245E468 */ _t310 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E468 */ rbrew_write32(cpu->mem, _t310, cpu->r[28]);
|
|
/* 0245E46C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0245E470 */ _t311 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E470 */ rbrew_write16(cpu->mem, _t311, (uint16_t)cpu->r[28]);
|
|
/* 0245E474 */ cpu->r[4] = 0x02460000u;
|
|
/* 0245E478 */ _t312 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E478 */ rbrew_write16(cpu->mem, _t312, (uint16_t)cpu->r[0]);
|
|
/* 0245E47C */ cpu->r[4] = cpu->r[4] + 0xFFFFEAF0u;
|
|
/* 0245E480 */ _t313 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E480 */ rbrew_write8(cpu->mem, _t313, (uint8_t)cpu->r[7]);
|
|
/* 0245E484 */ _t314 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E484 */ rbrew_write32(cpu->mem, _t314, cpu->r[4]);
|
|
/* 0245E488 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E48C */ _t315 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E48C */ rbrew_write16(cpu->mem, _t315, (uint16_t)cpu->r[28]);
|
|
/* 0245E490 */ _t316 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E490 */ rbrew_write16(cpu->mem, _t316, (uint16_t)cpu->r[28]);
|
|
/* 0245E494 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E498 */ _t317 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E498 */ rbrew_write16(cpu->mem, _t317, (uint16_t)cpu->r[28]);
|
|
/* 0245E49C */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E4A0 */ _t318 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E4A0 */ rbrew_write16(cpu->mem, _t318, (uint16_t)cpu->r[28]);
|
|
/* 0245E4A4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E4A8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E4AC */ _t319 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E4AC */ rbrew_write32(cpu->mem, _t319, cpu->r[28]);
|
|
/* 0245E4B0 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E4B4 */ _t320 = cpu->r[29] + 0x000001B8u;
|
|
/* 0245E4B4 */ rbrew_write32(cpu->mem, _t320, cpu->r[27]);
|
|
L_0245E4B8: ; // 0x245e4b8
|
|
/* 0245E4B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0245E4BC */ /* nop */
|
|
/* 0245E4C0 */ _t321 = cpu->r[1] + 0x00000054u;
|
|
/* 0245E4C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t321);
|
|
/* 0245E4C4 */ cpu->lr = cpu->r[0];
|
|
/* 0245E4C8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0245E4CC */ return;
|
|
}
|
|
|
|
// fn_0245DAF0 @ 0x245daf0
|
|
void Gambit_fn_0245DAF0(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;
|
|
|
|
L_0245DAF0: ; // 0x245daf0
|
|
/* 0245DAF0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0245DAF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245DAF0 */ cpu->r[1] = _t0;
|
|
/* 0245DAF4 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0245DAF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0245DAF8 */ /* nop */
|
|
/* 0245DAFC */ cpu->r[29] = cpu->r[3];
|
|
/* 0245DAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245DB00 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB00 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0245DB00 */ if (_t3) goto L_0245DB04; else goto L_0245DB14;
|
|
L_0245DB04: ; // 0x245db04
|
|
/* 0245DB04 */ cpu->r[3] = 0x00000214u;
|
|
/* 0245DB08 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245DB0C */ cpu->r[29] = cpu->r[3];
|
|
/* 0245DB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245DB10 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245DB10 */ if (_t5) goto L_0245E4B8; else goto L_0245DB14;
|
|
L_0245DB14: ; // 0x245db14
|
|
/* 0245DB14 */ cpu->r[25] = 0x100A0000u;
|
|
/* 0245DB18 */ cpu->r[3] = cpu->r[29];
|
|
/* 0245DB1C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245DB20 */ cpu->r[25] = cpu->r[25] + 0x000024C0u;
|
|
/* 0245DB24 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DB28 */ cpu->r[0] = cpu->r[0] + 0x00002590u;
|
|
/* 0245DB2C */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DB2C */ rbrew_write32(cpu->mem, _t6, cpu->r[25]);
|
|
/* 0245DB30 */ cpu->r[5] = 0x00000003u;
|
|
/* 0245DB34 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DB34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0245DB38 */ Gambit_fn_02068860(cpu);
|
|
/* 0245DB3C */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245DB40 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245DB44 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245DB48 */ cpu->r[7] = cpu->r[7] + 0x0000268Cu;
|
|
/* 0245DB4C */ cpu->r[0] = cpu->r[0] + 0x00002804u;
|
|
/* 0245DB50 */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 0245DB50 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0245DB54 */ cpu->r[9] = cpu->r[9] + 0x00002814u;
|
|
/* 0245DB58 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245DB5C */ _t9 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0245DB5C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0245DB60 */ cpu->r[27] = cpu->r[29] + 0x000001DCu;
|
|
/* 0245DB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245DB64 */ cpu->r[10] = cpu->r[10] + 0x00002824u;
|
|
/* 0245DB68 */ _t10 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245DB68 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0245DB6C */ cpu->r[31] = cpu->r[27];
|
|
/* 0245DB70 */ cpu->r[28] = 0x00000000u;
|
|
/* 0245DB74 */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 0245DB74 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0245DB78 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB78 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245DB78 */ if (_t13) goto L_0245DB7C; else goto L_0245DB8C;
|
|
L_0245DB7C: ; // 0x245db7c
|
|
/* 0245DB7C */ cpu->r[3] = 0x00000038u;
|
|
/* 0245DB80 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245DB84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245DB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245DB88 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DB88 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245DB88 */ if (_t15) goto L_0245DBBC; else goto L_0245DB8C;
|
|
L_0245DB8C: ; // 0x245db8c
|
|
/* 0245DB8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0245DB90 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0245DB94 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245DB98 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 0245DB98 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0245DB9C */ cpu->r[11] = cpu->r[11] + 0x00002390u;
|
|
/* 0245DBA0 */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 0245DBA0 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0245DBA4 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 0245DBA4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0245DBA8 */ _t19 = cpu->r[31] + 0x00000024u;
|
|
/* 0245DBA8 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0245DBAC */ _t20 = cpu->r[31] + 0x00000028u;
|
|
/* 0245DBAC */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 0245DBB0 */ _t21 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0245DBB0 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0245DBB4 */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245DBB4 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 0245DBB8 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 0245DBB8 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
L_0245DBBC: ; // 0x245dbbc
|
|
/* 0245DBBC */ cpu->r[0] = 0x00000009u;
|
|
/* 0245DBC0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DBC4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0245DBC8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DBCC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DBD0 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DBD0 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[0]);
|
|
/* 0245DBD4 */ Gambit_fn_0245ED70(cpu);
|
|
/* 0245DBD8 */ cpu->r[24] = 0x02460000u;
|
|
/* 0245DBDC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245DBE0 */ cpu->r[24] = cpu->r[24] + 0xFFFFEC1Cu;
|
|
/* 0245DBE4 */ cpu->r[12] = cpu->r[12] + 0x00002560u;
|
|
/* 0245DBE8 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DBEC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DBEC */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 0245DBF0 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DBF0 */ rbrew_write32(cpu->mem, _t26, cpu->r[25]);
|
|
/* 0245DBF4 */ _t27 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DBF4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0245DBF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DBFC */ _t28 = cpu->r[23] + 0x00000000u;
|
|
/* 0245DBFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0245DC00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DC04 */ cpu->r[26] = 0x10110000u;
|
|
/* 0245DC08 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DC08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245DC0C */ _t30 = cpu->r[26] + 0x00007399u;
|
|
/* 0245DC0C */ cpu->r[26] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0245DC10 */ _t31 = cpu->r[6] + 0x00000000u;
|
|
/* 0245DC10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0245DC14 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DC18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DC1C */ cpu->r[8] = 0x00080000u;
|
|
/* 0245DC20 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DC20 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0245DC20 */ if (_t33) goto L_0245DC48; else goto L_0245DC24;
|
|
L_0245DC24: ; // 0x245dc24
|
|
/* 0245DC24 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0245DC2C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0245DC30 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DC30 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0245DC30 */ if (_t35) goto L_0245DC44; else goto L_0245DC34;
|
|
L_0245DC34: ; // 0x245dc34
|
|
/* 0245DC34 */ _t36 = cpu->r[6] + 0x00000000u;
|
|
/* 0245DC34 */ cpu->r[4] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0245DC38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[26]);
|
|
/* 0245DC3C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DC3C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245DC3C */ if (_t38) goto L_0245DC40; else goto L_0245DC24;
|
|
L_0245DC40: ; // 0x245dc40
|
|
/* 0245DC40 */ goto L_0245DC48;
|
|
L_0245DC44: ; // 0x245dc44
|
|
/* 0245DC44 */ cpu->r[31] = 0x00000000u;
|
|
L_0245DC48: ; // 0x245dc48
|
|
/* 0245DC48 */ _t39 = cpu->r[23] + 0x00000008u;
|
|
/* 0245DC48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0245DC4C */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DC4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0245DC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 0245DC54 */ _t41 = cpu->r[5] + 0x00000014u;
|
|
/* 0245DC54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0245DC58 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DC58 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0245DC58 */ if (_t43) goto L_0245DC60; else goto L_0245DC5C;
|
|
L_0245DC5C: ; // 0x245dc5c
|
|
/* 0245DC5C */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0245DC60: ; // 0x245dc60
|
|
/* 0245DC60 */ cpu->ctr = cpu->r[7];
|
|
/* 0245DC64 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DC68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DC6C */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DC6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0245DC70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245DC74 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DC78 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DC7C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DC80 */ _t45 = cpu->r[30] + cpu->r[31];
|
|
/* 0245DC80 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[26]);
|
|
/* 0245DC84 */ cpu->r[7] = 0x00000000u;
|
|
/* 0245DC88 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DC88 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[28]);
|
|
/* 0245DC8C */ cpu->r[10] = 0x02460000u;
|
|
/* 0245DC90 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DC90 */ rbrew_write32(cpu->mem, _t47, cpu->r[28]);
|
|
/* 0245DC94 */ _t48 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DC94 */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[28]);
|
|
/* 0245DC98 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 0245DC9C */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DC9C */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[7]);
|
|
/* 0245DCA0 */ cpu->r[10] = cpu->r[10] + 0xFFFFED64u;
|
|
/* 0245DCA4 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DCA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0245DCA8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DCAC */ _t51 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DCAC */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[6]);
|
|
/* 0245DCB0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DCB4 */ _t52 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DCB4 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[28]);
|
|
/* 0245DCB8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DCBC */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DCBC */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[28]);
|
|
/* 0245DCC0 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DCC4 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DCC4 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[28]);
|
|
/* 0245DCC8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DCCC */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DCCC */ rbrew_write32(cpu->mem, _t55, cpu->r[10]);
|
|
/* 0245DCD0 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DCD4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245DCD8 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DCD8 */ rbrew_write32(cpu->mem, _t56, cpu->r[25]);
|
|
/* 0245DCDC */ cpu->r[7] = cpu->r[7] + 0x000025A8u;
|
|
/* 0245DCE0 */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DCE0 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 0245DCE4 */ _t58 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DCE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0245DCE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 0245DCEC */ _t59 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DCEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0245DCF0 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DCF0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245DCF0 */ if (_t61) goto L_0245DCF4; else goto L_0245DCF8;
|
|
L_0245DCF4: ; // 0x245dcf4
|
|
/* 0245DCF4 */ cpu->r[30] = cpu->r[30] + 0x00000024u;
|
|
L_0245DCF8: ; // 0x245dcf8
|
|
/* 0245DCF8 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DCFC */ _t62 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DCFC */ cpu->r[23] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0245DD00 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DD08 */ _t63 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0245DD0C */ _t64 = cpu->r[12] + 0x00000000u;
|
|
/* 0245DD0C */ cpu->r[11] = rbrew_read8(cpu->mem, _t64);
|
|
/* 0245DD10 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DD14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0245DD18 */ cpu->r[4] = 0x00080000u;
|
|
/* 0245DD1C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DD1C */ _t66 = _t65 & 0x00000001u;
|
|
/* 0245DD1C */ if (_t66) goto L_0245DD44; else goto L_0245DD20;
|
|
L_0245DD20: ; // 0x245dd20
|
|
/* 0245DD20 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 0245DD28 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0245DD2C */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DD2C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0245DD2C */ if (_t68) goto L_0245DD40; else goto L_0245DD30;
|
|
L_0245DD30: ; // 0x245dd30
|
|
/* 0245DD30 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0245DD30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t69);
|
|
/* 0245DD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DD38 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DD38 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0245DD38 */ if (_t71) goto L_0245DD3C; else goto L_0245DD20;
|
|
L_0245DD3C: ; // 0x245dd3c
|
|
/* 0245DD3C */ goto L_0245DD44;
|
|
L_0245DD40: ; // 0x245dd40
|
|
/* 0245DD40 */ cpu->r[31] = 0x00000000u;
|
|
L_0245DD44: ; // 0x245dd44
|
|
/* 0245DD44 */ _t72 = cpu->r[30] + 0x00000008u;
|
|
/* 0245DD44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0245DD48 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DD48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0245DD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 0245DD50 */ _t74 = cpu->r[5] + 0x00000014u;
|
|
/* 0245DD50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0245DD54 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DD54 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0245DD54 */ if (_t76) goto L_0245DD5C; else goto L_0245DD58;
|
|
L_0245DD58: ; // 0x245dd58
|
|
/* 0245DD58 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_0245DD5C: ; // 0x245dd5c
|
|
/* 0245DD5C */ cpu->ctr = cpu->r[7];
|
|
/* 0245DD60 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DD68 */ _t77 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DD68 */ cpu->r[4] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0245DD6C */ cpu->r[3] = cpu->r[23];
|
|
/* 0245DD70 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DD74 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DD78 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DD7C */ _t78 = cpu->r[23] + cpu->r[31];
|
|
/* 0245DD7C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[26]);
|
|
/* 0245DD80 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245DD84 */ _t79 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DD84 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[28]);
|
|
/* 0245DD88 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0245DD8C */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DD8C */ rbrew_write16(cpu->mem, _t80, (uint16_t)cpu->r[28]);
|
|
/* 0245DD90 */ cpu->r[9] = 0x02460000u;
|
|
/* 0245DD94 */ _t81 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DD94 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[10]);
|
|
/* 0245DD98 */ cpu->r[9] = cpu->r[9] + 0xFFFFE7A0u;
|
|
/* 0245DD9C */ _t82 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DD9C */ rbrew_write32(cpu->mem, _t82, cpu->r[28]);
|
|
/* 0245DDA0 */ _t83 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DDA0 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[28]);
|
|
/* 0245DDA4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DDA8 */ _t84 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DDA8 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[0]);
|
|
/* 0245DDAC */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DDB0 */ _t85 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DDB0 */ rbrew_write32(cpu->mem, _t85, cpu->r[28]);
|
|
/* 0245DDB4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DDB8 */ _t86 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DDB8 */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[28]);
|
|
/* 0245DDBC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DDC0 */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DDC0 */ rbrew_write32(cpu->mem, _t87, cpu->r[9]);
|
|
/* 0245DDC4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DDC8 */ _t88 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DDC8 */ rbrew_write16(cpu->mem, _t88, (uint16_t)cpu->r[28]);
|
|
/* 0245DDCC */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DDD0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245DDD4 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DDD4 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0245DDD8 */ cpu->r[11] = cpu->r[11] + 0x00002530u;
|
|
/* 0245DDDC */ _t90 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DDDC */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 0245DDE0 */ _t91 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DDE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0245DDE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 0245DDE8 */ _t92 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DDE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0245DDEC */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DDEC */ _t94 = _t93 & 0x00000001u;
|
|
/* 0245DDEC */ if (_t94) goto L_0245DDF0; else goto L_0245DDF4;
|
|
L_0245DDF0: ; // 0x245ddf0
|
|
/* 0245DDF0 */ cpu->r[30] = cpu->r[30] + 0x00000048u;
|
|
L_0245DDF4: ; // 0x245ddf4
|
|
/* 0245DDF4 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DDF8 */ _t95 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DDF8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0245DDFC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DE04 */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0245DE08 */ _t97 = cpu->r[8] + 0x00000000u;
|
|
/* 0245DE08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t97);
|
|
/* 0245DE0C */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DE10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DE14 */ cpu->r[10] = 0x00080000u;
|
|
/* 0245DE18 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DE18 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0245DE18 */ if (_t99) goto L_0245DE40; else goto L_0245DE1C;
|
|
L_0245DE1C: ; // 0x245de1c
|
|
/* 0245DE1C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0245DE24 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0245DE28 */ _t100 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DE28 */ _t101 = _t100 & 0x00000001u;
|
|
/* 0245DE28 */ if (_t101) goto L_0245DE3C; else goto L_0245DE2C;
|
|
L_0245DE2C: ; // 0x245de2c
|
|
/* 0245DE2C */ _t102 = cpu->r[8] + 0x00000000u;
|
|
/* 0245DE2C */ cpu->r[7] = rbrew_read8(cpu->mem, _t102);
|
|
/* 0245DE30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[26]);
|
|
/* 0245DE34 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DE34 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0245DE34 */ if (_t104) goto L_0245DE38; else goto L_0245DE1C;
|
|
L_0245DE38: ; // 0x245de38
|
|
/* 0245DE38 */ goto L_0245DE40;
|
|
L_0245DE3C: ; // 0x245de3c
|
|
/* 0245DE3C */ cpu->r[31] = 0x00000000u;
|
|
L_0245DE40: ; // 0x245de40
|
|
/* 0245DE40 */ _t105 = cpu->r[30] + 0x00000008u;
|
|
/* 0245DE40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0245DE44 */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DE44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0245DE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0245DE4C */ _t107 = cpu->r[9] + 0x00000014u;
|
|
/* 0245DE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0245DE50 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DE50 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0245DE50 */ if (_t109) goto L_0245DE58; else goto L_0245DE54;
|
|
L_0245DE54: ; // 0x245de54
|
|
/* 0245DE54 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0245DE58: ; // 0x245de58
|
|
/* 0245DE58 */ cpu->ctr = cpu->r[0];
|
|
/* 0245DE5C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DE64 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DE64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0245DE68 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245DE6C */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DE70 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DE74 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DE78 */ _t111 = cpu->r[23] + cpu->r[31];
|
|
/* 0245DE78 */ rbrew_write8(cpu->mem, _t111, (uint8_t)cpu->r[26]);
|
|
/* 0245DE7C */ cpu->r[12] = 0x00000002u;
|
|
/* 0245DE80 */ _t112 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DE80 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[28]);
|
|
/* 0245DE84 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0245DE88 */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DE88 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 0245DE8C */ cpu->r[11] = 0x02460000u;
|
|
/* 0245DE90 */ _t114 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DE90 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[0]);
|
|
/* 0245DE94 */ cpu->r[11] = cpu->r[11] + 0xFFFFE860u;
|
|
/* 0245DE98 */ _t115 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DE98 */ rbrew_write32(cpu->mem, _t115, cpu->r[28]);
|
|
/* 0245DE9C */ _t116 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DE9C */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[28]);
|
|
/* 0245DEA0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DEA4 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DEA4 */ rbrew_write8(cpu->mem, _t117, (uint8_t)cpu->r[12]);
|
|
/* 0245DEA8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DEAC */ _t118 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DEAC */ rbrew_write32(cpu->mem, _t118, cpu->r[28]);
|
|
/* 0245DEB0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DEB4 */ _t119 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DEB4 */ rbrew_write16(cpu->mem, _t119, (uint16_t)cpu->r[28]);
|
|
/* 0245DEB8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DEBC */ _t120 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DEBC */ rbrew_write32(cpu->mem, _t120, cpu->r[11]);
|
|
/* 0245DEC0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DEC4 */ _t121 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DEC4 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[28]);
|
|
/* 0245DEC8 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DECC */ cpu->r[5] = 0x100A0000u;
|
|
/* 0245DED0 */ _t122 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DED0 */ rbrew_write32(cpu->mem, _t122, cpu->r[25]);
|
|
/* 0245DED4 */ cpu->r[5] = cpu->r[5] + 0x00002570u;
|
|
/* 0245DED8 */ _t123 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DED8 */ rbrew_write32(cpu->mem, _t123, cpu->r[5]);
|
|
/* 0245DEDC */ _t124 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DEDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0245DEE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000003u);
|
|
/* 0245DEE4 */ _t125 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DEE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0245DEE8 */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DEE8 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0245DEE8 */ if (_t127) goto L_0245DEEC; else goto L_0245DEF0;
|
|
L_0245DEEC: ; // 0x245deec
|
|
/* 0245DEEC */ cpu->r[30] = cpu->r[30] + 0x0000006Cu;
|
|
L_0245DEF0: ; // 0x245def0
|
|
/* 0245DEF0 */ cpu->ctr = cpu->r[24];
|
|
/* 0245DEF4 */ _t128 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DEF4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0245DEF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DEFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DF00 */ _t129 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DF00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0245DF04 */ _t130 = cpu->r[4] + 0x00000000u;
|
|
/* 0245DF04 */ cpu->r[11] = rbrew_read8(cpu->mem, _t130);
|
|
/* 0245DF08 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245DF0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0245DF10 */ cpu->r[6] = 0x00080000u;
|
|
/* 0245DF14 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DF14 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0245DF14 */ if (_t132) goto L_0245DF3C; else goto L_0245DF18;
|
|
L_0245DF18: ; // 0x245df18
|
|
/* 0245DF18 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245DF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0245DF20 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 0245DF24 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DF24 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0245DF24 */ if (_t134) goto L_0245DF38; else goto L_0245DF28;
|
|
L_0245DF28: ; // 0x245df28
|
|
/* 0245DF28 */ _t135 = cpu->r[4] + 0x00000000u;
|
|
/* 0245DF28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t135);
|
|
/* 0245DF2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245DF30 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245DF30 */ _t137 = _t136 & 0x00000001u;
|
|
/* 0245DF30 */ if (_t137) goto L_0245DF34; else goto L_0245DF18;
|
|
L_0245DF34: ; // 0x245df34
|
|
/* 0245DF34 */ goto L_0245DF3C;
|
|
L_0245DF38: ; // 0x245df38
|
|
/* 0245DF38 */ cpu->r[31] = 0x00000000u;
|
|
L_0245DF3C: ; // 0x245df3c
|
|
/* 0245DF3C */ _t138 = cpu->r[30] + 0x00000008u;
|
|
/* 0245DF3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0245DF40 */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DF40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0245DF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 0245DF48 */ _t140 = cpu->r[5] + 0x00000014u;
|
|
/* 0245DF48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0245DF4C */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245DF4C */ _t142 = _t141 & 0x00000001u;
|
|
/* 0245DF4C */ if (_t142) goto L_0245DF54; else goto L_0245DF50;
|
|
L_0245DF50: ; // 0x245df50
|
|
/* 0245DF50 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0245DF54: ; // 0x245df54
|
|
/* 0245DF54 */ cpu->ctr = cpu->r[7];
|
|
/* 0245DF58 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DF5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DF60 */ _t143 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DF60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0245DF64 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245DF68 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245DF6C */ cpu->r[6] = 0x00000000u;
|
|
/* 0245DF70 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245DF74 */ _t144 = cpu->r[23] + cpu->r[31];
|
|
/* 0245DF74 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[26]);
|
|
/* 0245DF78 */ cpu->r[10] = 0x00000003u;
|
|
/* 0245DF7C */ _t145 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245DF7C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[28]);
|
|
/* 0245DF80 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0245DF84 */ _t146 = cpu->r[1] + 0x00000024u;
|
|
/* 0245DF84 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 0245DF88 */ cpu->r[0] = 0x02460000u;
|
|
/* 0245DF8C */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 0245DF8C */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[11]);
|
|
/* 0245DF90 */ cpu->r[0] = cpu->r[0] + 0xFFFFED68u;
|
|
/* 0245DF94 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 0245DF94 */ rbrew_write32(cpu->mem, _t148, cpu->r[28]);
|
|
/* 0245DF98 */ _t149 = cpu->r[1] + 0x00000014u;
|
|
/* 0245DF98 */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[28]);
|
|
/* 0245DF9C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245DFA0 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 0245DFA0 */ rbrew_write8(cpu->mem, _t150, (uint8_t)cpu->r[10]);
|
|
/* 0245DFA4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245DFA8 */ _t151 = cpu->r[1] + 0x00000028u;
|
|
/* 0245DFA8 */ rbrew_write32(cpu->mem, _t151, cpu->r[28]);
|
|
/* 0245DFAC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245DFB0 */ _t152 = cpu->r[1] + 0x00000026u;
|
|
/* 0245DFB0 */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[28]);
|
|
/* 0245DFB4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DFB8 */ _t153 = cpu->r[1] + 0x00000018u;
|
|
/* 0245DFB8 */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 0245DFBC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245DFC0 */ _t154 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245DFC0 */ rbrew_write16(cpu->mem, _t154, (uint16_t)cpu->r[28]);
|
|
/* 0245DFC4 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245DFC8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245DFCC */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 0245DFCC */ rbrew_write32(cpu->mem, _t155, cpu->r[25]);
|
|
/* 0245DFD0 */ cpu->r[10] = cpu->r[10] + 0x000025B8u;
|
|
/* 0245DFD4 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DFD4 */ rbrew_write32(cpu->mem, _t156, cpu->r[10]);
|
|
/* 0245DFD8 */ _t157 = cpu->r[27] + 0x00000014u;
|
|
/* 0245DFD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0245DFDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 0245DFE0 */ _t158 = cpu->r[27] + 0x00000018u;
|
|
/* 0245DFE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0245DFE4 */ _t159 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245DFE4 */ _t160 = _t159 & 0x00000001u;
|
|
/* 0245DFE4 */ if (_t160) goto L_0245DFE8; else goto L_0245DFEC;
|
|
L_0245DFE8: ; // 0x245dfe8
|
|
/* 0245DFE8 */ cpu->r[30] = cpu->r[30] + 0x00000090u;
|
|
L_0245DFEC: ; // 0x245dfec
|
|
/* 0245DFEC */ cpu->ctr = cpu->r[24];
|
|
/* 0245DFF0 */ _t161 = cpu->r[30] + 0x00000000u;
|
|
/* 0245DFF0 */ cpu->r[23] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0245DFF4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DFF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245DFFC */ _t162 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245DFFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0245E000 */ _t163 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E000 */ cpu->r[12] = rbrew_read8(cpu->mem, _t163);
|
|
/* 0245E004 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E008 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]);
|
|
/* 0245E00C */ cpu->r[10] = 0x00080000u;
|
|
/* 0245E010 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E010 */ _t165 = _t164 & 0x00000001u;
|
|
/* 0245E010 */ if (_t165) goto L_0245E038; else goto L_0245E014;
|
|
L_0245E014: ; // 0x245e014
|
|
/* 0245E014 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0245E01C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0245E020 */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E020 */ _t167 = _t166 & 0x00000001u;
|
|
/* 0245E020 */ if (_t167) goto L_0245E034; else goto L_0245E024;
|
|
L_0245E024: ; // 0x245e024
|
|
/* 0245E024 */ _t168 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E024 */ cpu->r[0] = rbrew_read8(cpu->mem, _t168);
|
|
/* 0245E028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E02C */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E02C */ _t170 = _t169 & 0x00000001u;
|
|
/* 0245E02C */ if (_t170) goto L_0245E030; else goto L_0245E014;
|
|
L_0245E030: ; // 0x245e030
|
|
/* 0245E030 */ goto L_0245E038;
|
|
L_0245E034: ; // 0x245e034
|
|
/* 0245E034 */ cpu->r[31] = 0x00000000u;
|
|
L_0245E038: ; // 0x245e038
|
|
/* 0245E038 */ _t171 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E038 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0245E03C */ _t172 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E03C */ cpu->r[4] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0245E040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0245E044 */ _t173 = cpu->r[4] + 0x00000014u;
|
|
/* 0245E044 */ cpu->r[5] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0245E048 */ _t174 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E048 */ _t175 = _t174 & 0x00000001u;
|
|
/* 0245E048 */ if (_t175) goto L_0245E050; else goto L_0245E04C;
|
|
L_0245E04C: ; // 0x245e04c
|
|
/* 0245E04C */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0245E050: ; // 0x245e050
|
|
/* 0245E050 */ cpu->ctr = cpu->r[5];
|
|
/* 0245E054 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E05C */ _t176 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E05C */ cpu->r[4] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0245E060 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E064 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E068 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E06C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E070 */ _t177 = cpu->r[23] + cpu->r[31];
|
|
/* 0245E070 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[26]);
|
|
/* 0245E074 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0245E078 */ _t178 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E078 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[28]);
|
|
/* 0245E07C */ cpu->r[6] = 0x02460000u;
|
|
/* 0245E080 */ _t179 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E080 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[28]);
|
|
/* 0245E084 */ cpu->r[6] = cpu->r[6] + 0xFFFFE914u;
|
|
/* 0245E088 */ _t180 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E088 */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[9]);
|
|
/* 0245E08C */ cpu->r[8] = 0x00000004u;
|
|
/* 0245E090 */ _t181 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E090 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[28]);
|
|
/* 0245E094 */ _t182 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E094 */ rbrew_write32(cpu->mem, _t182, cpu->r[6]);
|
|
/* 0245E098 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E09C */ _t183 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E09C */ rbrew_write32(cpu->mem, _t183, cpu->r[28]);
|
|
/* 0245E0A0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E0A4 */ _t184 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E0A4 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[28]);
|
|
/* 0245E0A8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E0AC */ _t185 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E0AC */ rbrew_write32(cpu->mem, _t185, cpu->r[28]);
|
|
/* 0245E0B0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E0B4 */ _t186 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E0B4 */ rbrew_write8(cpu->mem, _t186, (uint8_t)cpu->r[8]);
|
|
/* 0245E0B8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E0BC */ _t187 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E0BC */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 0245E0C0 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E0C4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245E0C8 */ _t188 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E0C8 */ rbrew_write32(cpu->mem, _t188, cpu->r[25]);
|
|
/* 0245E0CC */ cpu->r[7] = cpu->r[7] + 0x00002540u;
|
|
/* 0245E0D0 */ _t189 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E0D0 */ rbrew_write32(cpu->mem, _t189, cpu->r[7]);
|
|
/* 0245E0D4 */ _t190 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E0D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0245E0D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 0245E0DC */ _t191 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E0DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0245E0E0 */ _t192 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E0E0 */ _t193 = _t192 & 0x00000001u;
|
|
/* 0245E0E0 */ if (_t193) goto L_0245E0E4; else goto L_0245E0E8;
|
|
L_0245E0E4: ; // 0x245e0e4
|
|
/* 0245E0E4 */ cpu->r[30] = cpu->r[30] + 0x000000B4u;
|
|
L_0245E0E8: ; // 0x245e0e8
|
|
/* 0245E0E8 */ cpu->ctr = cpu->r[24];
|
|
/* 0245E0EC */ _t194 = cpu->r[30] + 0x00000000u;
|
|
/* 0245E0EC */ cpu->r[23] = rbrew_read32(cpu->mem, _t194);
|
|
/* 0245E0F0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E0F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E0F8 */ _t195 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E0F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t195);
|
|
/* 0245E0FC */ _t196 = cpu->r[5] + 0x00000000u;
|
|
/* 0245E0FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t196);
|
|
/* 0245E100 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E104 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E108 */ cpu->r[6] = 0x00080000u;
|
|
/* 0245E10C */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E10C */ _t198 = _t197 & 0x00000001u;
|
|
/* 0245E10C */ if (_t198) goto L_0245E134; else goto L_0245E110;
|
|
L_0245E110: ; // 0x245e110
|
|
/* 0245E110 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0245E118 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0245E11C */ _t199 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E11C */ _t200 = _t199 & 0x00000001u;
|
|
/* 0245E11C */ if (_t200) goto L_0245E130; else goto L_0245E120;
|
|
L_0245E120: ; // 0x245e120
|
|
/* 0245E120 */ _t201 = cpu->r[5] + 0x00000000u;
|
|
/* 0245E120 */ cpu->r[10] = rbrew_read8(cpu->mem, _t201);
|
|
/* 0245E124 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[26]);
|
|
/* 0245E128 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E128 */ _t203 = _t202 & 0x00000001u;
|
|
/* 0245E128 */ if (_t203) goto L_0245E12C; else goto L_0245E110;
|
|
L_0245E12C: ; // 0x245e12c
|
|
/* 0245E12C */ goto L_0245E134;
|
|
L_0245E130: ; // 0x245e130
|
|
/* 0245E130 */ cpu->r[31] = 0x00000000u;
|
|
L_0245E134: ; // 0x245e134
|
|
/* 0245E134 */ _t204 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E134 */ cpu->r[12] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0245E138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 0245E13C */ _t205 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E13C */ cpu->r[11] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0245E140 */ _t206 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E140 */ _t207 = _t206 & 0x00000001u;
|
|
/* 0245E140 */ if (_t207) goto L_0245E148; else goto L_0245E144;
|
|
L_0245E144: ; // 0x245e144
|
|
/* 0245E144 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0245E148: ; // 0x245e148
|
|
/* 0245E148 */ _t208 = cpu->r[11] + 0x00000014u;
|
|
/* 0245E148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
/* 0245E14C */ cpu->ctr = cpu->r[12];
|
|
/* 0245E150 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E154 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E158 */ _t209 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E158 */ cpu->r[4] = rbrew_read32(cpu->mem, _t209);
|
|
/* 0245E15C */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E160 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E164 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E168 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E16C */ _t210 = cpu->r[23] + cpu->r[31];
|
|
/* 0245E16C */ rbrew_write8(cpu->mem, _t210, (uint8_t)cpu->r[26]);
|
|
/* 0245E170 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0245E174 */ _t211 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E174 */ rbrew_write16(cpu->mem, _t211, (uint16_t)cpu->r[28]);
|
|
/* 0245E178 */ cpu->r[5] = 0x00000005u;
|
|
/* 0245E17C */ _t212 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E17C */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[7]);
|
|
/* 0245E180 */ cpu->r[0] = 0x02460000u;
|
|
/* 0245E184 */ _t213 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E184 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[28]);
|
|
/* 0245E188 */ _t214 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E188 */ rbrew_write8(cpu->mem, _t214, (uint8_t)cpu->r[5]);
|
|
/* 0245E18C */ cpu->r[0] = cpu->r[0] + 0xFFFFE998u;
|
|
/* 0245E190 */ _t215 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E190 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[28]);
|
|
/* 0245E194 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E198 */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E198 */ rbrew_write32(cpu->mem, _t216, cpu->r[28]);
|
|
/* 0245E19C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E1A0 */ _t217 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E1A0 */ rbrew_write16(cpu->mem, _t217, (uint16_t)cpu->r[28]);
|
|
/* 0245E1A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E1A8 */ _t218 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E1A8 */ rbrew_write32(cpu->mem, _t218, cpu->r[0]);
|
|
/* 0245E1AC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E1B0 */ _t219 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E1B0 */ rbrew_write32(cpu->mem, _t219, cpu->r[28]);
|
|
/* 0245E1B4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E1B8 */ _t220 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E1B8 */ rbrew_write16(cpu->mem, _t220, (uint16_t)cpu->r[28]);
|
|
/* 0245E1BC */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E1C0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245E1C4 */ _t221 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E1C4 */ rbrew_write32(cpu->mem, _t221, cpu->r[25]);
|
|
/* 0245E1C8 */ cpu->r[4] = cpu->r[4] + 0x00002580u;
|
|
/* 0245E1CC */ _t222 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E1CC */ rbrew_write32(cpu->mem, _t222, cpu->r[4]);
|
|
/* 0245E1D0 */ _t223 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E1D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t223);
|
|
/* 0245E1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000006u);
|
|
/* 0245E1D8 */ _t224 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E1D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t224);
|
|
/* 0245E1DC */ _t225 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E1DC */ _t226 = _t225 & 0x00000001u;
|
|
/* 0245E1DC */ if (_t226) goto L_0245E1E0; else goto L_0245E1E4;
|
|
L_0245E1E0: ; // 0x245e1e0
|
|
/* 0245E1E0 */ cpu->r[30] = cpu->r[30] + 0x000000D8u;
|
|
L_0245E1E4: ; // 0x245e1e4
|
|
/* 0245E1E4 */ cpu->ctr = cpu->r[24];
|
|
/* 0245E1E8 */ _t227 = cpu->r[30] + 0x00000000u;
|
|
/* 0245E1E8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t227);
|
|
/* 0245E1EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E1F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E1F4 */ _t228 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E1F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t228);
|
|
/* 0245E1F8 */ _t229 = cpu->r[12] + 0x00000000u;
|
|
/* 0245E1F8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t229);
|
|
/* 0245E1FC */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E200 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[26]);
|
|
/* 0245E204 */ cpu->r[0] = 0x00080000u;
|
|
/* 0245E208 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E208 */ _t231 = _t230 & 0x00000001u;
|
|
/* 0245E208 */ if (_t231) goto L_0245E230; else goto L_0245E20C;
|
|
L_0245E20C: ; // 0x245e20c
|
|
/* 0245E20C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0245E214 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0245E218 */ _t232 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E218 */ _t233 = _t232 & 0x00000001u;
|
|
/* 0245E218 */ if (_t233) goto L_0245E22C; else goto L_0245E21C;
|
|
L_0245E21C: ; // 0x245e21c
|
|
/* 0245E21C */ _t234 = cpu->r[12] + 0x00000000u;
|
|
/* 0245E21C */ cpu->r[7] = rbrew_read8(cpu->mem, _t234);
|
|
/* 0245E220 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[26]);
|
|
/* 0245E224 */ _t235 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E224 */ _t236 = _t235 & 0x00000001u;
|
|
/* 0245E224 */ if (_t236) goto L_0245E228; else goto L_0245E20C;
|
|
L_0245E228: ; // 0x245e228
|
|
/* 0245E228 */ goto L_0245E230;
|
|
L_0245E22C: ; // 0x245e22c
|
|
/* 0245E22C */ cpu->r[31] = 0x00000000u;
|
|
L_0245E230: ; // 0x245e230
|
|
/* 0245E230 */ _t237 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E230 */ cpu->r[4] = rbrew_read32(cpu->mem, _t237);
|
|
/* 0245E234 */ _t238 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E234 */ cpu->r[8] = rbrew_read32(cpu->mem, _t238);
|
|
/* 0245E238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 0245E23C */ _t239 = cpu->r[8] + 0x00000014u;
|
|
/* 0245E23C */ cpu->r[9] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0245E240 */ _t240 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E240 */ _t241 = _t240 & 0x00000001u;
|
|
/* 0245E240 */ if (_t241) goto L_0245E248; else goto L_0245E244;
|
|
L_0245E244: ; // 0x245e244
|
|
/* 0245E244 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_0245E248: ; // 0x245e248
|
|
/* 0245E248 */ cpu->ctr = cpu->r[9];
|
|
/* 0245E24C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E254 */ _t242 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E254 */ cpu->r[4] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0245E258 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E25C */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E260 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E264 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E268 */ _t243 = cpu->r[23] + cpu->r[31];
|
|
/* 0245E268 */ rbrew_write8(cpu->mem, _t243, (uint8_t)cpu->r[26]);
|
|
/* 0245E26C */ cpu->r[12] = 0x00000006u;
|
|
/* 0245E270 */ _t244 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E270 */ rbrew_write16(cpu->mem, _t244, (uint16_t)cpu->r[28]);
|
|
/* 0245E274 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0245E278 */ _t245 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E278 */ rbrew_write8(cpu->mem, _t245, (uint8_t)cpu->r[12]);
|
|
/* 0245E27C */ cpu->r[0] = 0x02460000u;
|
|
/* 0245E280 */ _t246 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E280 */ rbrew_write16(cpu->mem, _t246, (uint16_t)cpu->r[28]);
|
|
/* 0245E284 */ cpu->r[0] = cpu->r[0] + 0xFFFFED6Cu;
|
|
/* 0245E288 */ _t247 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E288 */ rbrew_write16(cpu->mem, _t247, (uint16_t)cpu->r[28]);
|
|
/* 0245E28C */ _t248 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E28C */ rbrew_write16(cpu->mem, _t248, (uint16_t)cpu->r[4]);
|
|
/* 0245E290 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E294 */ _t249 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E294 */ rbrew_write32(cpu->mem, _t249, cpu->r[0]);
|
|
/* 0245E298 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E29C */ _t250 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E29C */ rbrew_write32(cpu->mem, _t250, cpu->r[28]);
|
|
/* 0245E2A0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E2A4 */ _t251 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E2A4 */ rbrew_write16(cpu->mem, _t251, (uint16_t)cpu->r[28]);
|
|
/* 0245E2A8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E2AC */ _t252 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E2AC */ rbrew_write16(cpu->mem, _t252, (uint16_t)cpu->r[28]);
|
|
/* 0245E2B0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E2B4 */ _t253 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E2B4 */ rbrew_write32(cpu->mem, _t253, cpu->r[28]);
|
|
/* 0245E2B8 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E2BC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245E2C0 */ _t254 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E2C0 */ rbrew_write32(cpu->mem, _t254, cpu->r[25]);
|
|
/* 0245E2C4 */ cpu->r[11] = cpu->r[11] + 0x000025CCu;
|
|
/* 0245E2C8 */ _t255 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E2C8 */ rbrew_write32(cpu->mem, _t255, cpu->r[11]);
|
|
/* 0245E2CC */ _t256 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E2CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t256);
|
|
/* 0245E2D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000007u);
|
|
/* 0245E2D4 */ _t257 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E2D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t257);
|
|
/* 0245E2D8 */ _t258 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E2D8 */ _t259 = _t258 & 0x00000001u;
|
|
/* 0245E2D8 */ if (_t259) goto L_0245E2DC; else goto L_0245E2E0;
|
|
L_0245E2DC: ; // 0x245e2dc
|
|
/* 0245E2DC */ cpu->r[31] = cpu->r[31] + 0x000000FCu;
|
|
L_0245E2E0: ; // 0x245e2e0
|
|
/* 0245E2E0 */ cpu->ctr = cpu->r[24];
|
|
/* 0245E2E4 */ _t260 = cpu->r[31] + 0x00000000u;
|
|
/* 0245E2E4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t260);
|
|
/* 0245E2E8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E2EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E2F0 */ _t261 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E2F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t261);
|
|
/* 0245E2F4 */ _t262 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E2F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t262);
|
|
/* 0245E2F8 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245E2FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E300 */ cpu->r[0] = 0x00080000u;
|
|
/* 0245E304 */ _t263 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E304 */ _t264 = _t263 & 0x00000001u;
|
|
/* 0245E304 */ if (_t264) goto L_0245E32C; else goto L_0245E308;
|
|
L_0245E308: ; // 0x245e308
|
|
/* 0245E308 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0245E30C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0245E310 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0245E314 */ _t265 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E314 */ _t266 = _t265 & 0x00000001u;
|
|
/* 0245E314 */ if (_t266) goto L_0245E328; else goto L_0245E318;
|
|
L_0245E318: ; // 0x245e318
|
|
/* 0245E318 */ _t267 = cpu->r[9] + 0x00000000u;
|
|
/* 0245E318 */ cpu->r[4] = rbrew_read8(cpu->mem, _t267);
|
|
/* 0245E31C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[26]);
|
|
/* 0245E320 */ _t268 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E320 */ _t269 = _t268 & 0x00000001u;
|
|
/* 0245E320 */ if (_t269) goto L_0245E324; else goto L_0245E308;
|
|
L_0245E324: ; // 0x245e324
|
|
/* 0245E324 */ goto L_0245E32C;
|
|
L_0245E328: ; // 0x245e328
|
|
/* 0245E328 */ cpu->r[30] = 0x00000000u;
|
|
L_0245E32C: ; // 0x245e32c
|
|
/* 0245E32C */ _t270 = cpu->r[31] + 0x00000008u;
|
|
/* 0245E32C */ cpu->r[6] = rbrew_read32(cpu->mem, _t270);
|
|
/* 0245E330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0245E334 */ _t271 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E334 */ cpu->r[5] = rbrew_read32(cpu->mem, _t271);
|
|
/* 0245E338 */ _t272 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E338 */ _t273 = _t272 & 0x00000001u;
|
|
/* 0245E338 */ if (_t273) goto L_0245E340; else goto L_0245E33C;
|
|
L_0245E33C: ; // 0x245e33c
|
|
/* 0245E33C */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0245E340: ; // 0x245e340
|
|
/* 0245E340 */ _t274 = cpu->r[5] + 0x00000014u;
|
|
/* 0245E340 */ cpu->r[6] = rbrew_read32(cpu->mem, _t274);
|
|
/* 0245E344 */ cpu->ctr = cpu->r[6];
|
|
/* 0245E348 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E34C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E350 */ _t275 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E350 */ cpu->r[4] = rbrew_read32(cpu->mem, _t275);
|
|
/* 0245E354 */ cpu->r[3] = cpu->r[23];
|
|
/* 0245E358 */ cpu->r[5] = cpu->r[30];
|
|
/* 0245E35C */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E360 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E364 */ _t276 = cpu->r[23] + cpu->r[30];
|
|
/* 0245E364 */ rbrew_write8(cpu->mem, _t276, (uint8_t)cpu->r[26]);
|
|
/* 0245E368 */ cpu->r[9] = 0x00000007u;
|
|
/* 0245E36C */ _t277 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E36C */ rbrew_write16(cpu->mem, _t277, (uint16_t)cpu->r[28]);
|
|
/* 0245E370 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0245E374 */ _t278 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E374 */ rbrew_write8(cpu->mem, _t278, (uint8_t)cpu->r[9]);
|
|
/* 0245E378 */ cpu->r[7] = 0x02460000u;
|
|
/* 0245E37C */ _t279 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E37C */ rbrew_write32(cpu->mem, _t279, cpu->r[28]);
|
|
/* 0245E380 */ _t280 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E380 */ rbrew_write16(cpu->mem, _t280, (uint16_t)cpu->r[11]);
|
|
/* 0245E384 */ cpu->r[7] = cpu->r[7] + 0xFFFFEA64u;
|
|
/* 0245E388 */ _t281 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E388 */ rbrew_write16(cpu->mem, _t281, (uint16_t)cpu->r[28]);
|
|
/* 0245E38C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E390 */ _t282 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E390 */ rbrew_write32(cpu->mem, _t282, cpu->r[28]);
|
|
/* 0245E394 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E398 */ _t283 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E398 */ rbrew_write32(cpu->mem, _t283, cpu->r[7]);
|
|
/* 0245E39C */ _t284 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E39C */ rbrew_write16(cpu->mem, _t284, (uint16_t)cpu->r[28]);
|
|
/* 0245E3A0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E3A4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E3A8 */ _t285 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E3A8 */ rbrew_write16(cpu->mem, _t285, (uint16_t)cpu->r[28]);
|
|
/* 0245E3AC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E3B0 */ _t286 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E3B0 */ rbrew_write16(cpu->mem, _t286, (uint16_t)cpu->r[28]);
|
|
/* 0245E3B4 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E3B8 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245E3BC */ _t287 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E3BC */ rbrew_write32(cpu->mem, _t287, cpu->r[25]);
|
|
/* 0245E3C0 */ cpu->r[8] = cpu->r[8] + 0x00002550u;
|
|
/* 0245E3C4 */ _t288 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E3C4 */ rbrew_write32(cpu->mem, _t288, cpu->r[8]);
|
|
/* 0245E3C8 */ _t289 = cpu->r[27] + 0x00000014u;
|
|
/* 0245E3C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t289);
|
|
/* 0245E3CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000008u);
|
|
/* 0245E3D0 */ _t290 = cpu->r[27] + 0x00000018u;
|
|
/* 0245E3D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t290);
|
|
/* 0245E3D4 */ _t291 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E3D4 */ _t292 = _t291 & 0x00000001u;
|
|
/* 0245E3D4 */ if (_t292) goto L_0245E3D8; else goto L_0245E3DC;
|
|
L_0245E3D8: ; // 0x245e3d8
|
|
/* 0245E3D8 */ cpu->r[30] = cpu->r[30] + 0x00000120u;
|
|
L_0245E3DC: ; // 0x245e3dc
|
|
/* 0245E3DC */ cpu->ctr = cpu->r[24];
|
|
/* 0245E3E0 */ _t293 = cpu->r[30] + 0x00000000u;
|
|
/* 0245E3E0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t293);
|
|
/* 0245E3E4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E3E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E3EC */ _t294 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E3EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t294);
|
|
/* 0245E3F0 */ _t295 = cpu->r[6] + 0x00000000u;
|
|
/* 0245E3F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t295);
|
|
/* 0245E3F4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0245E3F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]);
|
|
/* 0245E3FC */ cpu->r[8] = 0x00080000u;
|
|
/* 0245E400 */ _t296 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E400 */ _t297 = _t296 & 0x00000001u;
|
|
/* 0245E400 */ if (_t297) goto L_0245E428; else goto L_0245E404;
|
|
L_0245E404: ; // 0x245e404
|
|
/* 0245E404 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0245E408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0245E40C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0245E410 */ _t298 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245E410 */ _t299 = _t298 & 0x00000001u;
|
|
/* 0245E410 */ if (_t299) goto L_0245E424; else goto L_0245E414;
|
|
L_0245E414: ; // 0x245e414
|
|
/* 0245E414 */ _t300 = cpu->r[6] + 0x00000000u;
|
|
/* 0245E414 */ cpu->r[11] = rbrew_read8(cpu->mem, _t300);
|
|
/* 0245E418 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0245E41C */ _t301 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E41C */ _t302 = _t301 & 0x00000001u;
|
|
/* 0245E41C */ if (_t302) goto L_0245E420; else goto L_0245E404;
|
|
L_0245E420: ; // 0x245e420
|
|
/* 0245E420 */ goto L_0245E428;
|
|
L_0245E424: ; // 0x245e424
|
|
/* 0245E424 */ cpu->r[31] = 0x00000000u;
|
|
L_0245E428: ; // 0x245e428
|
|
/* 0245E428 */ _t303 = cpu->r[30] + 0x00000008u;
|
|
/* 0245E428 */ cpu->r[8] = rbrew_read32(cpu->mem, _t303);
|
|
/* 0245E42C */ _t304 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E42C */ cpu->r[12] = rbrew_read32(cpu->mem, _t304);
|
|
/* 0245E430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0245E434 */ _t305 = cpu->r[12] + 0x00000014u;
|
|
/* 0245E434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t305);
|
|
/* 0245E438 */ _t306 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245E438 */ _t307 = _t306 & 0x00000001u;
|
|
/* 0245E438 */ if (_t307) goto L_0245E440; else goto L_0245E43C;
|
|
L_0245E43C: ; // 0x245e43c
|
|
/* 0245E43C */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0245E440: ; // 0x245e440
|
|
/* 0245E440 */ cpu->ctr = cpu->r[0];
|
|
/* 0245E444 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E448 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245E44C */ _t308 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E44C */ cpu->r[4] = rbrew_read32(cpu->mem, _t308);
|
|
/* 0245E450 */ cpu->r[3] = cpu->r[25];
|
|
/* 0245E454 */ cpu->r[5] = cpu->r[31];
|
|
/* 0245E458 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245E45C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0245E460 */ _t309 = cpu->r[25] + cpu->r[31];
|
|
/* 0245E460 */ rbrew_write8(cpu->mem, _t309, (uint8_t)cpu->r[26]);
|
|
/* 0245E464 */ cpu->r[7] = 0x00000008u;
|
|
/* 0245E468 */ _t310 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E468 */ rbrew_write32(cpu->mem, _t310, cpu->r[28]);
|
|
/* 0245E46C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0245E470 */ _t311 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E470 */ rbrew_write16(cpu->mem, _t311, (uint16_t)cpu->r[28]);
|
|
/* 0245E474 */ cpu->r[4] = 0x02460000u;
|
|
/* 0245E478 */ _t312 = cpu->r[1] + 0x00000016u;
|
|
/* 0245E478 */ rbrew_write16(cpu->mem, _t312, (uint16_t)cpu->r[0]);
|
|
/* 0245E47C */ cpu->r[4] = cpu->r[4] + 0xFFFFEAF0u;
|
|
/* 0245E480 */ _t313 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E480 */ rbrew_write8(cpu->mem, _t313, (uint8_t)cpu->r[7]);
|
|
/* 0245E484 */ _t314 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E484 */ rbrew_write32(cpu->mem, _t314, cpu->r[4]);
|
|
/* 0245E488 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E48C */ _t315 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E48C */ rbrew_write16(cpu->mem, _t315, (uint16_t)cpu->r[28]);
|
|
/* 0245E490 */ _t316 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E490 */ rbrew_write16(cpu->mem, _t316, (uint16_t)cpu->r[28]);
|
|
/* 0245E494 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0245E498 */ _t317 = cpu->r[1] + 0x00000026u;
|
|
/* 0245E498 */ rbrew_write16(cpu->mem, _t317, (uint16_t)cpu->r[28]);
|
|
/* 0245E49C */ cpu->r[3] = cpu->r[27];
|
|
/* 0245E4A0 */ _t318 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0245E4A0 */ rbrew_write16(cpu->mem, _t318, (uint16_t)cpu->r[28]);
|
|
/* 0245E4A4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E4A8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0245E4AC */ _t319 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E4AC */ rbrew_write32(cpu->mem, _t319, cpu->r[28]);
|
|
/* 0245E4B0 */ Gambit_fn_0245F020(cpu);
|
|
/* 0245E4B4 */ _t320 = cpu->r[29] + 0x000001B8u;
|
|
/* 0245E4B4 */ rbrew_write32(cpu->mem, _t320, cpu->r[27]);
|
|
L_0245E4B8: ; // 0x245e4b8
|
|
/* 0245E4B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0245E4BC */ /* nop */
|
|
/* 0245E4C0 */ _t321 = cpu->r[1] + 0x00000054u;
|
|
/* 0245E4C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t321);
|
|
/* 0245E4C4 */ cpu->lr = cpu->r[0];
|
|
/* 0245E4C8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0245E4CC */ return;
|
|
}
|
|
|
|
// fn_0245E4D0 @ 0x245e4d0
|
|
void Gambit_fn_0245E4D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0245E4D0: ; // 0x245e4d0
|
|
/* 0245E4D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0245E4D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E4D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E4D4 */ cpu->r[1] = _t0;
|
|
/* 0245E4D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E4D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E4DC */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E4E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245E4E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E4E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E4E8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245E4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E4EC */ Gambit_fn_0206C030(cpu);
|
|
/* 0245E4F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E4F4 */ Gambit_fn_0206A274(cpu);
|
|
/* 0245E4F8 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E4FC */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E500 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245E504 */ _t4 = cpu->r[31] + 0x000001ACu;
|
|
/* 0245E504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E508 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 0245E50C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245E510 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E510 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245E514 */ cpu->lr = cpu->r[0];
|
|
/* 0245E518 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E51C */ return;
|
|
}
|
|
|
|
// fn_0245E4D4 @ 0x245e4d4
|
|
void Gambit_fn_0245E4D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0245E4D4: ; // 0x245e4d4
|
|
/* 0245E4D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E4D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E4D4 */ cpu->r[1] = _t0;
|
|
/* 0245E4D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E4D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E4DC */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E4E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245E4E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E4E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E4E8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245E4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E4EC */ Gambit_fn_0206C030(cpu);
|
|
/* 0245E4F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E4F4 */ Gambit_fn_0206A274(cpu);
|
|
/* 0245E4F8 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E4FC */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E500 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245E504 */ _t4 = cpu->r[31] + 0x000001ACu;
|
|
/* 0245E504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E508 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 0245E50C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245E510 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E510 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245E514 */ cpu->lr = cpu->r[0];
|
|
/* 0245E518 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E51C */ return;
|
|
}
|
|
|
|
// fn_0245E520 @ 0x245e520
|
|
void Gambit_fn_0245E520(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245E520: ; // 0x245e520
|
|
/* 0245E520 */ cpu->r[0] = cpu->lr;
|
|
/* 0245E524 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E524 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E524 */ cpu->r[1] = _t0;
|
|
/* 0245E528 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E528 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E52C */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E530 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245E534 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E534 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E538 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245E538 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E53C */ Gambit_fn_0206C030(cpu);
|
|
/* 0245E540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245E544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245E544 */ if (_t5) goto L_0245E55C; else goto L_0245E548;
|
|
L_0245E548: ; // 0x245e548
|
|
/* 0245E548 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 0245E548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245E54C */ _t7 = cpu->r[12] + 0x00000174u;
|
|
/* 0245E54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245E550 */ cpu->ctr = cpu->r[0];
|
|
/* 0245E554 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E558 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245E55C: ; // 0x245e55c
|
|
/* 0245E55C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E560 */ cpu->r[4] = 0x00000008u;
|
|
/* 0245E564 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245E568 */ _t8 = cpu->r[31] + 0x000001ACu;
|
|
/* 0245E568 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245E56C */ Gambit_fn_027BB1DC(cpu);
|
|
/* 0245E570 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245E574 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E574 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245E578 */ cpu->lr = cpu->r[0];
|
|
/* 0245E57C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E580 */ return;
|
|
}
|
|
|
|
// fn_0245E524 @ 0x245e524
|
|
void Gambit_fn_0245E524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245E524: ; // 0x245e524
|
|
/* 0245E524 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E524 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E524 */ cpu->r[1] = _t0;
|
|
/* 0245E528 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E528 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E52C */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E530 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0245E534 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E534 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E538 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0245E538 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E53C */ Gambit_fn_0206C030(cpu);
|
|
/* 0245E540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245E544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245E544 */ if (_t5) goto L_0245E55C; else goto L_0245E548;
|
|
L_0245E548: ; // 0x245e548
|
|
/* 0245E548 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 0245E548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245E54C */ _t7 = cpu->r[12] + 0x00000174u;
|
|
/* 0245E54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245E550 */ cpu->ctr = cpu->r[0];
|
|
/* 0245E554 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E558 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245E55C: ; // 0x245e55c
|
|
/* 0245E55C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E560 */ cpu->r[4] = 0x00000008u;
|
|
/* 0245E564 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245E568 */ _t8 = cpu->r[31] + 0x000001ACu;
|
|
/* 0245E568 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245E56C */ Gambit_fn_027BB1DC(cpu);
|
|
/* 0245E570 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245E574 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E574 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245E578 */ cpu->lr = cpu->r[0];
|
|
/* 0245E57C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E580 */ return;
|
|
}
|
|
|
|
// fn_0245E584 @ 0x245e584
|
|
void Gambit_fn_0245E584(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0245E584: ; // 0x245e584
|
|
/* 0245E584 */ cpu->r[0] = cpu->lr;
|
|
/* 0245E588 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E588 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E588 */ cpu->r[1] = _t0;
|
|
/* 0245E58C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E58C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E590 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E594 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E598 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245E59C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E59C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E5A0 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245E5A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E5A8 */ Gambit_fn_0206A310(cpu);
|
|
/* 0245E5AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E5B0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E5B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E5B4 */ cpu->lr = cpu->r[0];
|
|
/* 0245E5B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E5BC */ return;
|
|
}
|
|
|
|
// fn_0245E588 @ 0x245e588
|
|
void Gambit_fn_0245E588(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0245E588: ; // 0x245e588
|
|
/* 0245E588 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E588 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E588 */ cpu->r[1] = _t0;
|
|
/* 0245E58C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E58C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E590 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E594 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E598 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245E59C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E59C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E5A0 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245E5A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E5A8 */ Gambit_fn_0206A310(cpu);
|
|
/* 0245E5AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E5B0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E5B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E5B4 */ cpu->lr = cpu->r[0];
|
|
/* 0245E5B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E5BC */ return;
|
|
}
|
|
|
|
// fn_0245E5DC @ 0x245e5dc
|
|
void Gambit_fn_0245E5DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0245E5DC: ; // 0x245e5dc
|
|
/* 0245E5DC */ _t0 = cpu->r[3] + 0x000001E8u;
|
|
/* 0245E5DC */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0245E5E0 */ /* nop */
|
|
/* 0245E5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 0245E5E8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245E5EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E5EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0245E5EC */ if (_t2) goto L_0245E5FC; else goto L_0245E5F0;
|
|
L_0245E5F0: ; // 0x245e5f0
|
|
/* 0245E5F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000006u);
|
|
/* 0245E5F4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E5F4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245E5F4 */ if (_t4) goto L_0245E5FC; else goto L_0245E5F8;
|
|
L_0245E5F8: ; // 0x245e5f8
|
|
/* 0245E5F8 */ cpu->r[0] = 0x00000000u;
|
|
L_0245E5FC: ; // 0x245e5fc
|
|
/* 0245E5FC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0245E600 */ return;
|
|
}
|
|
|
|
// fn_0245E604 @ 0x245e604
|
|
void Gambit_fn_0245E604(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0245E604: ; // 0x245e604
|
|
/* 0245E604 */ cpu->r[0] = cpu->lr;
|
|
/* 0245E608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E608 */ cpu->r[1] = _t0;
|
|
/* 0245E60C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E60C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E610 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E614 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E614 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E618 */ Gambit_fn_0206A1E0(cpu);
|
|
/* 0245E61C */ _t3 = cpu->r[31] + 0x000001EAu;
|
|
/* 0245E61C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245E620 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E624 */ /* nop */
|
|
/* 0245E628 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245E62C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E630 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245E634 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E638 */ cpu->lr = cpu->r[0];
|
|
/* 0245E63C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E63C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245E640 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E644 */ return;
|
|
}
|
|
|
|
// fn_0245E608 @ 0x245e608
|
|
void Gambit_fn_0245E608(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0245E608: ; // 0x245e608
|
|
/* 0245E608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245E608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E608 */ cpu->r[1] = _t0;
|
|
/* 0245E60C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E60C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E610 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E614 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E614 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E618 */ Gambit_fn_0206A1E0(cpu);
|
|
/* 0245E61C */ _t3 = cpu->r[31] + 0x000001EAu;
|
|
/* 0245E61C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245E620 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E624 */ /* nop */
|
|
/* 0245E628 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0245E62C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E630 */ Gambit_fn_0245D84C(cpu);
|
|
/* 0245E634 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E638 */ cpu->lr = cpu->r[0];
|
|
/* 0245E63C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E63C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245E640 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E644 */ return;
|
|
}
|
|
|
|
// fn_0245E648 @ 0x245e648
|
|
void Gambit_fn_0245E648(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_0245E648: ; // 0x245e648
|
|
/* 0245E648 */ cpu->r[0] = cpu->lr;
|
|
/* 0245E64C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0245E64C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E64C */ cpu->r[1] = _t0;
|
|
/* 0245E650 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E650 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0245E654 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E658 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E658 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0245E65C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245E65C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0245E660 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245E664 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 0245E664 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245E668 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245E66C */ cpu->r[30] = cpu->r[30] + 0x00002618u;
|
|
/* 0245E670 */ cpu->r[29] = cpu->r[29] + 0x000024C0u;
|
|
/* 0245E674 */ cpu->r[8] = cpu->r[8] + 0x000025E4u;
|
|
/* 0245E678 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E678 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0245E67C */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E67C */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0245E680 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E684 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E684 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0245E688 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E688 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0245E68C */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E690 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E690 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0245E694 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E698 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E69C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E69C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 0245E6A0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E6A4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E6A8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E6A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0245E6AC */ cpu->r[0] = cpu->r[0] + 0x000025E0u;
|
|
/* 0245E6B0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E6B0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0245E6B4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E6B8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E6B8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0245E6BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E6C0 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E6C0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0245E6C4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E6C8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E6C8 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 0245E6CC */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E6D0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E6D0 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0245E6D4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E6D8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245E6DC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E6DC */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 0245E6E0 */ cpu->r[11] = cpu->r[11] + 0x00002624u;
|
|
/* 0245E6E4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E6E4 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 0245E6E8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E6EC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E6EC */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0245E6F0 */ cpu->r[30] = cpu->r[30] + 0x000025F0u;
|
|
/* 0245E6F4 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E6F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 0245E6F8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E6FC */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E700 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E700 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 0245E704 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E708 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E70C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E70C */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 0245E710 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E714 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E714 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 0245E718 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E71C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E71C */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 0245E720 */ cpu->r[0] = cpu->r[0] + 0x00002600u;
|
|
/* 0245E724 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E724 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0245E728 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E72C */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E72C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0245E730 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E734 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E734 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0245E738 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E73C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E740 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E740 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0245E744 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E748 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E74C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E74C */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0245E750 */ cpu->r[0] = cpu->r[0] + 0x000025E8u;
|
|
/* 0245E754 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E754 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 0245E758 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E758 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0245E75C */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245E760 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E760 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 0245E764 */ cpu->r[9] = cpu->r[9] + 0x0000260Cu;
|
|
/* 0245E768 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E76C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E770 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E770 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 0245E774 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E778 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E77C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E77C */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0245E780 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E784 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E784 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0245E788 */ _t36 = cpu->r[1] + 0x00000034u;
|
|
/* 0245E788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0245E78C */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E78C */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0245E790 */ cpu->lr = cpu->r[0];
|
|
/* 0245E794 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245E794 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0245E798 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0245E79C */ return;
|
|
}
|
|
|
|
// fn_0245E64C @ 0x245e64c
|
|
void Gambit_fn_0245E64C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_0245E64C: ; // 0x245e64c
|
|
/* 0245E64C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0245E64C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E64C */ cpu->r[1] = _t0;
|
|
/* 0245E650 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E650 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0245E654 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E658 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E658 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0245E65C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245E65C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0245E660 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245E664 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 0245E664 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245E668 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245E66C */ cpu->r[30] = cpu->r[30] + 0x00002618u;
|
|
/* 0245E670 */ cpu->r[29] = cpu->r[29] + 0x000024C0u;
|
|
/* 0245E674 */ cpu->r[8] = cpu->r[8] + 0x000025E4u;
|
|
/* 0245E678 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E678 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0245E67C */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E67C */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0245E680 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E684 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E684 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0245E688 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E688 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0245E68C */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E690 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E690 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0245E694 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E698 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E69C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E69C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 0245E6A0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E6A4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E6A8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E6A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0245E6AC */ cpu->r[0] = cpu->r[0] + 0x000025E0u;
|
|
/* 0245E6B0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E6B0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0245E6B4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E6B8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E6B8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0245E6BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E6C0 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E6C0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0245E6C4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E6C8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E6C8 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 0245E6CC */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E6D0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E6D0 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0245E6D4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E6D8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245E6DC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E6DC */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 0245E6E0 */ cpu->r[11] = cpu->r[11] + 0x00002624u;
|
|
/* 0245E6E4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E6E4 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 0245E6E8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E6EC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E6EC */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0245E6F0 */ cpu->r[30] = cpu->r[30] + 0x000025F0u;
|
|
/* 0245E6F4 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E6F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 0245E6F8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E6FC */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E700 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E700 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 0245E704 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E708 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E70C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E70C */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 0245E710 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E714 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E714 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 0245E718 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E71C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E71C */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 0245E720 */ cpu->r[0] = cpu->r[0] + 0x00002600u;
|
|
/* 0245E724 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E724 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0245E728 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E72C */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E72C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0245E730 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E734 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E734 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0245E738 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E73C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E740 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E740 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0245E744 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E748 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E74C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E74C */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0245E750 */ cpu->r[0] = cpu->r[0] + 0x000025E8u;
|
|
/* 0245E754 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E754 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 0245E758 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E758 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0245E75C */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245E760 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E760 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 0245E764 */ cpu->r[9] = cpu->r[9] + 0x0000260Cu;
|
|
/* 0245E768 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E76C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E770 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E770 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 0245E774 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E778 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245E77C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E77C */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0245E780 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0245E784 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 0245E784 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0245E788 */ _t36 = cpu->r[1] + 0x00000034u;
|
|
/* 0245E788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0245E78C */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 0245E78C */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0245E790 */ cpu->lr = cpu->r[0];
|
|
/* 0245E794 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245E794 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0245E798 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0245E79C */ return;
|
|
}
|
|
|
|
// fn_0245E7A4 @ 0x245e7a4
|
|
void Gambit_fn_0245E7A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0245E7A4: ; // 0x245e7a4
|
|
/* 0245E7A4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245E7A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E7A4 */ cpu->r[1] = _t0;
|
|
/* 0245E7A8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E7A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E7AC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E7AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245E7B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E7B4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E7B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245E7B8 */ _t4 = cpu->r[31] + 0x000001E4u;
|
|
/* 0245E7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245E7C0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E7C0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245E7C0 */ if (_t6) goto L_0245E7C4; else goto L_0245E828;
|
|
L_0245E7C4: ; // 0x245e7c4
|
|
/* 0245E7C4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E7C8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E7CC */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245E7D0 */ cpu->r[30] = cpu->r[30] + 0x000024C0u;
|
|
/* 0245E7D4 */ cpu->r[0] = cpu->r[0] + 0x00002634u;
|
|
/* 0245E7D8 */ _t7 = cpu->r[10] + 0x00002630u;
|
|
/* 0245E7D8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0245E7DC */ cpu->r[4] = 0x00000000u;
|
|
/* 0245E7E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E7E4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E7E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0245E7E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E7EC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E7EC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0245E7F0 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245E7F4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E7F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E7FC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E7FC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0245E800 */ cpu->r[0] = cpu->r[0] + 0x00002638u;
|
|
/* 0245E804 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E808 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E80C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E80C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0245E810 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245E814 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0245E814 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245E818 */ _t13 = cpu->r[12] + 0x000000FCu;
|
|
/* 0245E818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245E81C */ cpu->ctr = cpu->r[0];
|
|
/* 0245E820 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E824 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245E828: ; // 0x245e828
|
|
/* 0245E828 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E82C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245E830 */ Gambit_fn_027EDF00(cpu);
|
|
/* 0245E834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245E838 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E838 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245E838 */ if (_t15) goto L_0245E848; else goto L_0245E83C;
|
|
L_0245E83C: ; // 0x245e83c
|
|
/* 0245E83C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E840 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245E844 */ Gambit_fn_0245DA54(cpu);
|
|
L_0245E848: ; // 0x245e848
|
|
/* 0245E848 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245E84C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E84C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245E850 */ cpu->lr = cpu->r[0];
|
|
/* 0245E854 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E854 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245E858 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E85C */ return;
|
|
}
|
|
|
|
// fn_0245E864 @ 0x245e864
|
|
void Gambit_fn_0245E864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0245E864: ; // 0x245e864
|
|
/* 0245E864 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245E864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E864 */ cpu->r[1] = _t0;
|
|
/* 0245E868 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E868 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E86C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E86C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245E870 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E874 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E874 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245E878 */ _t4 = cpu->r[31] + 0x000001E4u;
|
|
/* 0245E878 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245E87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245E880 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E880 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245E880 */ if (_t6) goto L_0245E884; else goto L_0245E8DC;
|
|
L_0245E884: ; // 0x245e884
|
|
/* 0245E884 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E888 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245E88C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E890 */ cpu->r[30] = cpu->r[30] + 0x000024C0u;
|
|
/* 0245E894 */ _t7 = cpu->r[9] + 0x00002630u;
|
|
/* 0245E894 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0245E898 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E89C */ cpu->r[0] = cpu->r[0] + 0x00002650u;
|
|
/* 0245E8A0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E8A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0245E8A4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E8A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E8AC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E8AC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0245E8B0 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245E8B4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E8B8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E8B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0245E8BC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245E8C0 */ cpu->r[0] = cpu->r[0] + 0x00002648u;
|
|
/* 0245E8C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E8C8 */ _t11 = cpu->r[12] + 0x00002644u;
|
|
/* 0245E8C8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0245E8CC */ cpu->r[4] = 0x00000002u;
|
|
/* 0245E8D0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E8D4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E8D4 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0245E8D8 */ Gambit_fn_027ED914(cpu);
|
|
L_0245E8DC: ; // 0x245e8dc
|
|
/* 0245E8DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E8E0 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E8E4 */ Gambit_fn_027EDF00(cpu);
|
|
/* 0245E8E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245E8EC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E8EC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0245E8EC */ if (_t14) goto L_0245E8FC; else goto L_0245E8F0;
|
|
L_0245E8F0: ; // 0x245e8f0
|
|
/* 0245E8F0 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E8F4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245E8F8 */ Gambit_fn_0245DA54(cpu);
|
|
L_0245E8FC: ; // 0x245e8fc
|
|
/* 0245E8FC */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E8FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245E900 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E900 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245E904 */ cpu->lr = cpu->r[0];
|
|
/* 0245E908 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E908 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245E90C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E910 */ return;
|
|
}
|
|
|
|
// fn_0245E918 @ 0x245e918
|
|
void Gambit_fn_0245E918(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0245E918: ; // 0x245e918
|
|
/* 0245E918 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245E918 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E918 */ cpu->r[1] = _t0;
|
|
/* 0245E91C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E91C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245E920 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E924 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E924 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245E928 */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 0245E928 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245E92C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245E930 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E930 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245E930 */ if (_t5) goto L_0245E934; else goto L_0245E964;
|
|
L_0245E934: ; // 0x245e934
|
|
/* 0245E934 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245E938 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E93C */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245E940 */ cpu->r[12] = cpu->r[12] + 0x000024C0u;
|
|
/* 0245E944 */ cpu->r[0] = cpu->r[0] + 0x0000265Cu;
|
|
/* 0245E948 */ _t6 = cpu->r[10] + 0x00002630u;
|
|
/* 0245E948 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0245E94C */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E950 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E954 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E954 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0245E958 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E95C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E95C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245E960 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0245E964: ; // 0x245e964
|
|
/* 0245E964 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E968 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E96C */ Gambit_fn_027EDF00(cpu);
|
|
/* 0245E970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245E974 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E974 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245E974 */ if (_t10) goto L_0245E984; else goto L_0245E978;
|
|
L_0245E978: ; // 0x245e978
|
|
/* 0245E978 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245E97C */ cpu->r[4] = 0x00000005u;
|
|
/* 0245E980 */ Gambit_fn_0245DA54(cpu);
|
|
L_0245E984: ; // 0x245e984
|
|
/* 0245E984 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245E984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245E988 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E988 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245E98C */ cpu->lr = cpu->r[0];
|
|
/* 0245E990 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245E994 */ return;
|
|
}
|
|
|
|
// fn_0245E99C @ 0x245e99c
|
|
void Gambit_fn_0245E99C(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_0245E99C: ; // 0x245e99c
|
|
/* 0245E99C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0245E99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245E99C */ cpu->r[1] = _t0;
|
|
/* 0245E9A0 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0245E9A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0245E9A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245E9A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0245E9A8 */ /* nop */
|
|
/* 0245E9AC */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 0245E9AC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0245E9B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245E9B4 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0245E9B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0245E9B8 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245E9B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0245E9BC */ _t6 = cpu->r[31] + 0x000001E4u;
|
|
/* 0245E9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245E9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245E9C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245E9C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245E9C4 */ if (_t8) goto L_0245E9C8; else goto L_0245EA20;
|
|
L_0245E9C8: ; // 0x245e9c8
|
|
/* 0245E9C8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245E9CC */ cpu->r[30] = 0x100A0000u;
|
|
/* 0245E9D0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245E9D4 */ _t9 = cpu->r[11] + 0x00002630u;
|
|
/* 0245E9D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0245E9D8 */ cpu->r[30] = cpu->r[30] + 0x000024C0u;
|
|
/* 0245E9DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0245E9E0 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245E9E4 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245E9E8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245E9E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0245E9EC */ cpu->r[0] = cpu->r[0] + 0x00002670u;
|
|
/* 0245E9F0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245E9F4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0245E9F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0245E9F8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245E9FC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245EA00 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245EA04 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EA04 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0245EA08 */ cpu->r[12] = cpu->r[12] + 0x00002668u;
|
|
/* 0245EA0C */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EA10 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245EA14 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245EA18 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EA18 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0245EA1C */ Gambit_fn_027ED914(cpu);
|
|
L_0245EA20: ; // 0x245ea20
|
|
/* 0245EA20 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EA24 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245EA28 */ Gambit_fn_027EDF00(cpu);
|
|
/* 0245EA2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EA30 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EA30 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245EA30 */ if (_t15) goto L_0245EA40; else goto L_0245EA34;
|
|
L_0245EA34: ; // 0x245ea34
|
|
/* 0245EA34 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245EA38 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245EA3C */ Gambit_fn_0245DA54(cpu);
|
|
L_0245EA40: ; // 0x245ea40
|
|
/* 0245EA40 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 0245EA40 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0245EA44 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EA44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245EA48 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 0245EA48 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t18);
|
|
/* 0245EA4C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0245EA4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245EA50 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245EA50 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0245EA50 */ if (_t21) goto L_0245EA54; // else: addr-0 trap, fall-through
|
|
L_0245EA54: ; // 0x245ea54
|
|
/* 0245EA54 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245EA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245EA58 */ cpu->lr = cpu->r[0];
|
|
/* 0245EA5C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0245EA60 */ return;
|
|
}
|
|
|
|
// fn_0245EA68 @ 0x245ea68
|
|
void Gambit_fn_0245EA68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245EA68: ; // 0x245ea68
|
|
/* 0245EA68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245EA68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245EA68 */ cpu->r[1] = _t0;
|
|
/* 0245EA6C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EA6C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245EA70 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245EA74 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245EA74 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245EA78 */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 0245EA78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245EA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245EA80 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EA80 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245EA80 */ if (_t5) goto L_0245EA84; else goto L_0245EAB4;
|
|
L_0245EA84: ; // 0x245ea84
|
|
/* 0245EA84 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245EA88 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EA8C */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245EA90 */ cpu->r[12] = cpu->r[12] + 0x000024C0u;
|
|
/* 0245EA94 */ cpu->r[0] = cpu->r[0] + 0x0000267Cu;
|
|
/* 0245EA98 */ _t6 = cpu->r[11] + 0x00002630u;
|
|
/* 0245EA98 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0245EA9C */ cpu->r[4] = 0x00000001u;
|
|
/* 0245EAA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EAA4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EAA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0245EAA8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245EAAC */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EAAC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245EAB0 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0245EAB4: ; // 0x245eab4
|
|
/* 0245EAB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EAB8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245EABC */ Gambit_fn_027EDF00(cpu);
|
|
/* 0245EAC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EAC4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EAC4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245EAC4 */ if (_t10) goto L_0245EADC; else goto L_0245EAC8;
|
|
L_0245EAC8: ; // 0x245eac8
|
|
/* 0245EAC8 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0245EACC */ cpu->r[4] = 0x00000008u;
|
|
/* 0245EAD0 */ Gambit_fn_0245DA54(cpu);
|
|
/* 0245EAD4 */ _t11 = cpu->r[31] + 0x000001ACu;
|
|
/* 0245EAD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245EAD8 */ Gambit_fn_027BB1DC(cpu);
|
|
L_0245EADC: ; // 0x245eadc
|
|
/* 0245EADC */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245EADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245EAE0 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EAE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245EAE4 */ cpu->lr = cpu->r[0];
|
|
/* 0245EAE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245EAEC */ return;
|
|
}
|
|
|
|
// fn_0245EAF4 @ 0x245eaf4
|
|
void Gambit_fn_0245EAF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0245EAF4: ; // 0x245eaf4
|
|
/* 0245EAF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245EAF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245EAF4 */ cpu->r[1] = _t0;
|
|
/* 0245EAF8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EAF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245EAFC */ cpu->r[31] = cpu->r[3];
|
|
/* 0245EB00 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245EB00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245EB04 */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 0245EB04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245EB08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0245EB0C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EB0C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245EB0C */ if (_t5) goto L_0245EB10; else goto L_0245EB40;
|
|
L_0245EB10: ; // 0x245eb10
|
|
/* 0245EB10 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245EB14 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EB18 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245EB1C */ cpu->r[11] = cpu->r[11] + 0x000024C0u;
|
|
/* 0245EB20 */ cpu->r[0] = cpu->r[0] + 0x00002688u;
|
|
/* 0245EB24 */ _t6 = cpu->r[10] + 0x00002630u;
|
|
/* 0245EB24 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0245EB28 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245EB2C */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EB30 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EB30 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0245EB34 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245EB38 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EB38 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245EB3C */ Gambit_fn_027ED1E4(cpu);
|
|
L_0245EB40: ; // 0x245eb40
|
|
/* 0245EB40 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EB44 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245EB48 */ Gambit_fn_027EDF00(cpu);
|
|
/* 0245EB4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EB50 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EB50 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245EB50 */ if (_t10) goto L_0245EB68; else goto L_0245EB54;
|
|
L_0245EB54: ; // 0x245eb54
|
|
/* 0245EB54 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0245EB54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245EB58 */ _t12 = cpu->r[12] + 0x00000094u;
|
|
/* 0245EB58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245EB5C */ cpu->ctr = cpu->r[0];
|
|
/* 0245EB60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245EB64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245EB68: ; // 0x245eb68
|
|
/* 0245EB68 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245EB68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245EB6C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EB6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245EB70 */ cpu->lr = cpu->r[0];
|
|
/* 0245EB74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245EB78 */ return;
|
|
}
|
|
|
|
// fn_0245EB7C @ 0x245eb7c
|
|
void Gambit_fn_0245EB7C(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_0245EB7C: ; // 0x245eb7c
|
|
/* 0245EB7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EB80 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EB80 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0245EB80 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EB80 */ goto L_0245EB84;
|
|
L_0245EB84: ; // 0x245eb84
|
|
/* 0245EB84 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EB88 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EB88 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0245EB88 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EB88 */ goto L_0245EB8C;
|
|
L_0245EB8C: ; // 0x245eb8c
|
|
/* 0245EB8C */ 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_0245EB90 @ 0x245eb90
|
|
void Gambit_fn_0245EB90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245EB90: ; // 0x245eb90
|
|
/* 0245EB90 */ cpu->r[0] = cpu->lr;
|
|
/* 0245EB94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245EB94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245EB94 */ cpu->r[1] = _t0;
|
|
/* 0245EB98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245EB9C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EB9C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245EBA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245EBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0245EBA4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245EBA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EBA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245EBAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EBAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245EBAC */ if (_t5) goto L_0245EBF0; else goto L_0245EBB0;
|
|
L_0245EBB0: ; // 0x245ebb0
|
|
/* 0245EBB0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245EBB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EBB8 */ cpu->r[11] = cpu->r[11] + 0x00002814u;
|
|
/* 0245EBBC */ cpu->r[0] = cpu->r[0] + 0x00002804u;
|
|
/* 0245EBC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245EBC4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0245EBC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245EBC8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EBCC */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245EBCC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0245EBD0 */ cpu->r[0] = cpu->r[0] + 0x00002824u;
|
|
/* 0245EBD4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245EBD8 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 0245EBD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245EBDC */ Gambit_fn_02068798(cpu);
|
|
/* 0245EBE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EBE4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EBE4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245EBE4 */ if (_t10) goto L_0245EBF0; else goto L_0245EBE8;
|
|
L_0245EBE8: ; // 0x245ebe8
|
|
/* 0245EBE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245EBEC */ Gambit_fn_02801BB0(cpu);
|
|
L_0245EBF0: ; // 0x245ebf0
|
|
/* 0245EBF0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EBF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245EBF4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EBF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245EBF8 */ cpu->lr = cpu->r[0];
|
|
/* 0245EBFC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EBFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245EC00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245EC04 */ return;
|
|
}
|
|
|
|
// fn_0245EB94 @ 0x245eb94
|
|
void Gambit_fn_0245EB94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245EB94: ; // 0x245eb94
|
|
/* 0245EB94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245EB94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245EB94 */ cpu->r[1] = _t0;
|
|
/* 0245EB98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245EB9C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EB9C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245EBA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245EBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0245EBA4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245EBA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EBA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245EBAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EBAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245EBAC */ if (_t5) goto L_0245EBF0; else goto L_0245EBB0;
|
|
L_0245EBB0: ; // 0x245ebb0
|
|
/* 0245EBB0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245EBB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EBB8 */ cpu->r[11] = cpu->r[11] + 0x00002814u;
|
|
/* 0245EBBC */ cpu->r[0] = cpu->r[0] + 0x00002804u;
|
|
/* 0245EBC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245EBC4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0245EBC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245EBC8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EBCC */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245EBCC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0245EBD0 */ cpu->r[0] = cpu->r[0] + 0x00002824u;
|
|
/* 0245EBD4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245EBD8 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 0245EBD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245EBDC */ Gambit_fn_02068798(cpu);
|
|
/* 0245EBE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EBE4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EBE4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245EBE4 */ if (_t10) goto L_0245EBF0; else goto L_0245EBE8;
|
|
L_0245EBE8: ; // 0x245ebe8
|
|
/* 0245EBE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0245EBEC */ Gambit_fn_02801BB0(cpu);
|
|
L_0245EBF0: ; // 0x245ebf0
|
|
/* 0245EBF0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245EBF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245EBF4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245EBF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245EBF8 */ cpu->lr = cpu->r[0];
|
|
/* 0245EBFC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245EBFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245EC00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245EC04 */ return;
|
|
}
|
|
|
|
// fn_0245EC08 @ 0x245ec08
|
|
void Gambit_fn_0245EC08(CPUState* cpu) {
|
|
L_0245EC08: ; // 0x245ec08
|
|
/* 0245EC08 */ return;
|
|
}
|
|
|
|
// fn_0245EC0C @ 0x245ec0c
|
|
void Gambit_fn_0245EC0C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245EC0C: ; // 0x245ec0c
|
|
/* 0245EC0C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0245EC0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245EC10 */ return;
|
|
}
|
|
|
|
// fn_0245EC14 @ 0x245ec14
|
|
void Gambit_fn_0245EC14(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245EC14: ; // 0x245ec14
|
|
/* 0245EC14 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0245EC14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245EC18 */ return;
|
|
}
|
|
|
|
// fn_0245EC1C @ 0x245ec1c
|
|
void Gambit_fn_0245EC1C(CPUState* cpu) {
|
|
L_0245EC1C: ; // 0x245ec1c
|
|
/* 0245EC1C */ return;
|
|
}
|
|
|
|
// fn_0245EC20 @ 0x245ec20
|
|
void Gambit_fn_0245EC20(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_0245EC20: ; // 0x245ec20
|
|
/* 0245EC20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EC24 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EC24 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0245EC24 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EC24 */ goto L_0245EC28;
|
|
L_0245EC28: ; // 0x245ec28
|
|
/* 0245EC28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EC2C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EC2C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0245EC2C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EC2C */ goto L_0245EC30;
|
|
L_0245EC30: ; // 0x245ec30
|
|
/* 0245EC30 */ 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_0245EC34 @ 0x245ec34
|
|
void Gambit_fn_0245EC34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0245EC34: ; // 0x245ec34
|
|
/* 0245EC34 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0245EC34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245EC38 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0245EC38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245EC3C */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0245EC40 */ cpu->r[11] = 0x10110000u;
|
|
/* 0245EC44 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0245EC44 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0245EC48 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0245EC48 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0245EC4C */ return;
|
|
}
|
|
|
|
// fn_0245EC50 @ 0x245ec50
|
|
void Gambit_fn_0245EC50(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_0245EC50: ; // 0x245ec50
|
|
/* 0245EC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EC54 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EC54 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0245EC54 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EC54 */ goto L_0245EC58;
|
|
L_0245EC58: ; // 0x245ec58
|
|
/* 0245EC58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EC58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EC5C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EC5C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0245EC5C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EC5C */ goto L_0245EC60;
|
|
L_0245EC60: ; // 0x245ec60
|
|
/* 0245EC60 */ 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_0245EC64 @ 0x245ec64
|
|
void Gambit_fn_0245EC64(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_0245EC64: ; // 0x245ec64
|
|
/* 0245EC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EC68 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EC68 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0245EC68 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EC68 */ goto L_0245EC6C;
|
|
L_0245EC6C: ; // 0x245ec6c
|
|
/* 0245EC6C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245EC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245EC70 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EC70 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0245EC70 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245EC70 */ goto L_0245EC74;
|
|
L_0245EC74: ; // 0x245ec74
|
|
/* 0245EC74 */ 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_0245EC78 @ 0x245ec78
|
|
void Gambit_fn_0245EC78(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0245EC78: ; // 0x245ec78
|
|
/* 0245EC78 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0245EC78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245EC7C */ return;
|
|
}
|
|
|
|
// fn_0245EC80 @ 0x245ec80
|
|
void Gambit_fn_0245EC80(CPUState* cpu) {
|
|
L_0245EC80: ; // 0x245ec80
|
|
/* 0245EC80 */ return;
|
|
}
|
|
|
|
// fn_0245EC84 @ 0x245ec84
|
|
void Gambit_fn_0245EC84(CPUState* cpu) {
|
|
L_0245EC84: ; // 0x245ec84
|
|
/* 0245EC84 */ return;
|
|
}
|
|
|
|
// fn_0245EC88 @ 0x245ec88
|
|
void Gambit_fn_0245EC88(CPUState* cpu) {
|
|
L_0245EC88: ; // 0x245ec88
|
|
/* 0245EC88 */ return;
|
|
}
|
|
|
|
// fn_0245EC8C @ 0x245ec8c
|
|
void Gambit_fn_0245EC8C(CPUState* cpu) {
|
|
L_0245EC8C: ; // 0x245ec8c
|
|
/* 0245EC8C */ return;
|
|
}
|
|
|
|
// fn_0245EC90 @ 0x245ec90
|
|
void Gambit_fn_0245EC90(CPUState* cpu) {
|
|
L_0245EC90: ; // 0x245ec90
|
|
/* 0245EC90 */ return;
|
|
}
|
|
|
|
// fn_0245EC94 @ 0x245ec94
|
|
void Gambit_fn_0245EC94(CPUState* cpu) {
|
|
L_0245EC94: ; // 0x245ec94
|
|
/* 0245EC94 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245EC98 */ return;
|
|
}
|
|
|
|
// fn_0245EC9C @ 0x245ec9c
|
|
void Gambit_fn_0245EC9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0245EC9C: ; // 0x245ec9c
|
|
/* 0245EC9C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0245EC9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245ECA0 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0245ECA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245ECA4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245ECA8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0245ECAC @ 0x245ecac
|
|
void Gambit_fn_0245ECAC(CPUState* cpu) {
|
|
L_0245ECAC: ; // 0x245ecac
|
|
/* 0245ECAC */ return;
|
|
}
|
|
|
|
// fn_0245ECB0 @ 0x245ecb0
|
|
void Gambit_fn_0245ECB0(CPUState* cpu) {
|
|
L_0245ECB0: ; // 0x245ecb0
|
|
/* 0245ECB0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0245ECB4 */ return;
|
|
}
|
|
|
|
// fn_0245ECB8 @ 0x245ecb8
|
|
void Gambit_fn_0245ECB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0245ECB8: ; // 0x245ecb8
|
|
/* 0245ECB8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0245ECBC */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 0245ECBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245ECBC */ cpu->r[9] = _t0;
|
|
/* 0245ECC0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0245ECC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245ECC8 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 0245ECCC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245ECCC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0245ECCC */ if (_t2) goto L_0245ECD0; else goto L_0245ECE4;
|
|
L_0245ECD0: ; // 0x245ecd0
|
|
/* 0245ECD0 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245ECD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245ECD8 */ cpu->r[7] = cpu->r[7] + 0x00002520u;
|
|
/* 0245ECDC */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0245ECDC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245ECE0 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0245ECE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0245ECE4: ; // 0x245ece4
|
|
/* 0245ECE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0245ECE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245ECE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245ECE8 */ if (_t6) goto L_0245ECEC; else goto L_0245ECF4;
|
|
L_0245ECEC: ; // 0x245ecec
|
|
/* 0245ECEC */ cpu->r[3] = 0x00000001u;
|
|
/* 0245ECF0 */ return;
|
|
L_0245ECF4: ; // 0x245ecf4
|
|
/* 0245ECF4 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0245ECF8 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0245ECF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245ECF8 */ cpu->r[7] = _t7;
|
|
/* 0245ECFC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0245ED00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0245ED04 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0245ED08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245ED08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245ED08 */ if (_t9) goto L_0245ED0C; else goto L_0245ED20;
|
|
L_0245ED0C: ; // 0x245ed0c
|
|
/* 0245ED0C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245ED10 */ cpu->r[9] = 0x00000001u;
|
|
/* 0245ED14 */ cpu->r[0] = cpu->r[0] + 0x000024B0u;
|
|
/* 0245ED18 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0245ED18 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0245ED1C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0245ED1C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0245ED20: ; // 0x245ed20
|
|
/* 0245ED20 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0245ED24 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0245ED28 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0245ED2C */ return;
|
|
}
|
|
|
|
// fn_0245ED30 @ 0x245ed30
|
|
void Gambit_fn_0245ED30(CPUState* cpu) {
|
|
L_0245ED30: ; // 0x245ed30
|
|
/* 0245ED30 */ return;
|
|
}
|
|
|
|
// fn_0245ED34 @ 0x245ed34
|
|
void Gambit_fn_0245ED34(CPUState* cpu) {
|
|
L_0245ED34: ; // 0x245ed34
|
|
/* 0245ED34 */ return;
|
|
}
|
|
|
|
// fn_0245ED38 @ 0x245ed38
|
|
void Gambit_fn_0245ED38(CPUState* cpu) {
|
|
L_0245ED38: ; // 0x245ed38
|
|
/* 0245ED38 */ return;
|
|
}
|
|
|
|
// fn_0245ED3C @ 0x245ed3c
|
|
void Gambit_fn_0245ED3C(CPUState* cpu) {
|
|
L_0245ED3C: ; // 0x245ed3c
|
|
/* 0245ED3C */ cpu->r[3] = 0x00000000u;
|
|
/* 0245ED40 */ return;
|
|
}
|
|
|
|
// fn_0245ED44 @ 0x245ed44
|
|
void Gambit_fn_0245ED44(CPUState* cpu) {
|
|
L_0245ED44: ; // 0x245ed44
|
|
/* 0245ED44 */ cpu->r[3] = 0x00000000u;
|
|
/* 0245ED48 */ return;
|
|
}
|
|
|
|
// fn_0245ED4C @ 0x245ed4c
|
|
void Gambit_fn_0245ED4C(CPUState* cpu) {
|
|
L_0245ED4C: ; // 0x245ed4c
|
|
/* 0245ED4C */ return;
|
|
}
|
|
|
|
// fn_0245ED50 @ 0x245ed50
|
|
void Gambit_fn_0245ED50(CPUState* cpu) {
|
|
L_0245ED50: ; // 0x245ed50
|
|
/* 0245ED50 */ return;
|
|
}
|
|
|
|
// fn_0245ED54 @ 0x245ed54
|
|
void Gambit_fn_0245ED54(CPUState* cpu) {
|
|
L_0245ED54: ; // 0x245ed54
|
|
/* 0245ED54 */ return;
|
|
}
|
|
|
|
// fn_0245ED58 @ 0x245ed58
|
|
void Gambit_fn_0245ED58(CPUState* cpu) {
|
|
L_0245ED58: ; // 0x245ed58
|
|
/* 0245ED58 */ return;
|
|
}
|
|
|
|
// fn_0245ED5C @ 0x245ed5c
|
|
void Gambit_fn_0245ED5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0245D95C: ; // 0x245d95c
|
|
/* 0245D95C */ cpu->r[0] = cpu->lr;
|
|
/* 0245D960 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245D960 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245D960 */ cpu->r[1] = _t0;
|
|
/* 0245D964 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D964 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245D968 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245D96C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D96C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245D970 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245D970 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0245D974 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245D978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245D97C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0245D97C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0245D980 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D980 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245D980 */ if (_t6) goto L_0245D9A8; else goto L_0245D984;
|
|
L_0245D984: ; // 0x245d984
|
|
/* 0245D984 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245D984 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0245D988 */ /* nop */
|
|
/* 0245D98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0245D990 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245D990 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245D990 */ if (_t9) goto L_0245D994; else goto L_0245D9A8;
|
|
L_0245D994: ; // 0x245d994
|
|
/* 0245D994 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0245D994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245D998 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0245D998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245D99C */ cpu->ctr = cpu->r[0];
|
|
/* 0245D9A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0245D9A8: ; // 0x245d9a8
|
|
/* 0245D9A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9AC */ Gambit_fn_0245D8D4(cpu);
|
|
/* 0245D9B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245D9B4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0245D9B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245D9B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245D9BC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245D9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245D9C0 */ cpu->lr = cpu->r[0];
|
|
/* 0245D9C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245D9C8 */ return;
|
|
L_0245ED5C: ; // 0x245ed5c
|
|
/* 0245ED5C */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 0245ED60 */ goto L_0245D95C;
|
|
}
|
|
|
|
// fn_0245ED70 @ 0x245ed70
|
|
void Gambit_fn_0245ED70(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_0245ED70: ; // 0x245ed70
|
|
/* 0245ED70 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0245ED70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245ED70 */ cpu->r[1] = _t0;
|
|
/* 0245ED74 */ /* nop */
|
|
/* 0245ED78 */ cpu->r[0] = cpu->lr;
|
|
/* 0245ED7C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0245ED7C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0245ED80 */ cpu->r[29] = cpu->r[6];
|
|
/* 0245ED84 */ cpu->r[28] = cpu->r[3];
|
|
/* 0245ED88 */ cpu->r[30] = cpu->r[5];
|
|
/* 0245ED8C */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 0245ED8C */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0245ED90 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0245ED94 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0245ED94 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 0245ED98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245ED9C */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0245ED9C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0245EDA0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EDA0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245EDA0 */ if (_t6) goto L_0245EDE4; else goto L_0245EDA4;
|
|
L_0245EDA4: ; // 0x245eda4
|
|
/* 0245EDA4 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0245EDA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245EDA8 */ Gambit_fn_02826F20(cpu);
|
|
/* 0245EDAC */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245EDAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245EDB0 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0245EDB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245EDB4 */ cpu->ctr = cpu->r[0];
|
|
/* 0245EDB8 */ cpu->r[5] = 0x00000004u;
|
|
/* 0245EDBC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245EDC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245EDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245EDC8 */ cpu->r[0] = cpu->r[27];
|
|
/* 0245EDCC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EDCC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0245EDCC */ if (_t11) goto L_0245EDD4; else goto L_0245EDD0;
|
|
L_0245EDD0: ; // 0x245edd0
|
|
/* 0245EDD0 */ cpu->r[0] = 0x00000001u;
|
|
L_0245EDD4: ; // 0x245edd4
|
|
/* 0245EDD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EDD8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EDD8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245EDD8 */ if (_t13) goto L_0245EDE4; else goto L_0245EDDC;
|
|
L_0245EDDC: ; // 0x245eddc
|
|
/* 0245EDDC */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 0245EDDC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0245EDE0 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0245EDE0 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_0245EDE4: ; // 0x245ede4
|
|
/* 0245EDE4 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 0245EDE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245EDE8 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245EDEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0245EDF0 */ cpu->r[12] = cpu->r[0];
|
|
/* 0245EDF4 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EDF4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245EDF4 */ if (_t18) goto L_0245EDF8; else goto L_0245EE1C;
|
|
L_0245EDF8: ; // 0x245edf8
|
|
/* 0245EDF8 */ cpu->ctr = cpu->r[7];
|
|
/* 0245EDFC */ cpu->r[10] = 0x00000000u;
|
|
L_0245EE00: ; // 0x245ee00
|
|
/* 0245EE00 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 0245EE00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245EE04 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 0245EE04 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0245EE08 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0245EE0C */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 0245EE0C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0245EE10 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0245EE14 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0245EE14 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0245EE18 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0245EE18 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0245EE18 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0245EE18 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0245EE18 */ if (_t25) goto L_0245EE00; else goto L_0245EE1C;
|
|
L_0245EE1C: ; // 0x245ee1c
|
|
/* 0245EE1C */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0245EE1C */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0245EE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245EE24 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EE24 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0245EE24 */ if (_t28) goto L_0245EE68; else goto L_0245EE28;
|
|
L_0245EE28: ; // 0x245ee28
|
|
/* 0245EE28 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0245EE28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245EE2C */ Gambit_fn_02826F20(cpu);
|
|
/* 0245EE30 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245EE30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0245EE34 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0245EE34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0245EE38 */ cpu->ctr = cpu->r[0];
|
|
/* 0245EE3C */ cpu->r[5] = 0x00000004u;
|
|
/* 0245EE40 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245EE44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245EE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245EE4C */ cpu->r[11] = cpu->r[27];
|
|
/* 0245EE50 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EE50 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0245EE50 */ if (_t33) goto L_0245EE58; else goto L_0245EE54;
|
|
L_0245EE54: ; // 0x245ee54
|
|
/* 0245EE54 */ cpu->r[11] = 0x00000001u;
|
|
L_0245EE58: ; // 0x245ee58
|
|
/* 0245EE58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EE5C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EE5C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0245EE5C */ if (_t35) goto L_0245EE68; else goto L_0245EE60;
|
|
L_0245EE60: ; // 0x245ee60
|
|
/* 0245EE60 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0245EE60 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0245EE64 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0245EE64 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0245EE68: ; // 0x245ee68
|
|
/* 0245EE68 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0245EE68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0245EE6C */ cpu->r[0] = 0x00000000u;
|
|
/* 0245EE70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0245EE74 */ cpu->r[12] = cpu->r[0];
|
|
/* 0245EE78 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EE78 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0245EE78 */ if (_t40) goto L_0245EE7C; else goto L_0245EEA0;
|
|
L_0245EE7C: ; // 0x245ee7c
|
|
/* 0245EE7C */ cpu->ctr = cpu->r[6];
|
|
/* 0245EE80 */ cpu->r[9] = 0x00000000u;
|
|
L_0245EE84: ; // 0x245ee84
|
|
/* 0245EE84 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0245EE84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0245EE88 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 0245EE88 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 0245EE8C */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0245EE90 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0245EE90 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0245EE94 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 0245EE98 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 0245EE98 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 0245EE9C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0245EE9C */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0245EE9C */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 0245EE9C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0245EE9C */ if (_t47) goto L_0245EE84; else goto L_0245EEA0;
|
|
L_0245EEA0: ; // 0x245eea0
|
|
/* 0245EEA0 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0245EEA0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0245EEA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245EEA8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EEA8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0245EEA8 */ if (_t50) goto L_0245EEEC; else goto L_0245EEAC;
|
|
L_0245EEAC: ; // 0x245eeac
|
|
/* 0245EEAC */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0245EEAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0245EEB0 */ Gambit_fn_02826F20(cpu);
|
|
/* 0245EEB4 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245EEB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0245EEB8 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 0245EEB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0245EEBC */ cpu->ctr = cpu->r[0];
|
|
/* 0245EEC0 */ cpu->r[5] = 0x00000004u;
|
|
/* 0245EEC4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245EEC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245EECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245EED0 */ cpu->r[10] = cpu->r[27];
|
|
/* 0245EED4 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EED4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0245EED4 */ if (_t55) goto L_0245EEDC; else goto L_0245EED8;
|
|
L_0245EED8: ; // 0x245eed8
|
|
/* 0245EED8 */ cpu->r[10] = 0x00000001u;
|
|
L_0245EEDC: ; // 0x245eedc
|
|
/* 0245EEDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245EEE0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EEE0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0245EEE0 */ if (_t57) goto L_0245EEEC; else goto L_0245EEE4;
|
|
L_0245EEE4: ; // 0x245eee4
|
|
/* 0245EEE4 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 0245EEE4 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0245EEE8 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0245EEE8 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0245EEEC: ; // 0x245eeec
|
|
/* 0245EEEC */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0245EEEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0245EEF0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245EEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245EEF8 */ cpu->r[5] = cpu->r[0];
|
|
/* 0245EEFC */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EEFC */ _t62 = _t61 & 0x00000001u;
|
|
/* 0245EEFC */ if (_t62) goto L_0245EF00; else goto L_0245EF24;
|
|
L_0245EF00: ; // 0x245ef00
|
|
/* 0245EF00 */ cpu->ctr = cpu->r[12];
|
|
/* 0245EF04 */ cpu->r[8] = 0x00000000u;
|
|
L_0245EF08: ; // 0x245ef08
|
|
/* 0245EF08 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0245EF08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0245EF0C */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0245EF0C */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 0245EF10 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0245EF14 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0245EF14 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0245EF18 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0245EF1C */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0245EF1C */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 0245EF20 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0245EF20 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0245EF20 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 0245EF20 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0245EF20 */ if (_t69) goto L_0245EF08; else goto L_0245EF24;
|
|
L_0245EF24: ; // 0x245ef24
|
|
/* 0245EF24 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0245EF24 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0245EF28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0245EF2C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EF2C */ _t72 = _t71 & 0x00000001u;
|
|
/* 0245EF2C */ if (_t72) goto L_0245F008; else goto L_0245EF30;
|
|
L_0245EF30: ; // 0x245ef30
|
|
/* 0245EF30 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0245EF30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0245EF34 */ Gambit_fn_02826F20(cpu);
|
|
/* 0245EF38 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0245EF38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0245EF3C */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 0245EF3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0245EF40 */ cpu->ctr = cpu->r[12];
|
|
/* 0245EF44 */ cpu->r[5] = 0x00000004u;
|
|
/* 0245EF48 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 0245EF4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0245EF50 */ cpu->r[24] = cpu->r[3];
|
|
/* 0245EF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0245EF58 */ cpu->r[30] = cpu->r[25];
|
|
/* 0245EF5C */ cpu->r[7] = 0x00000000u;
|
|
/* 0245EF60 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245EF60 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0245EF60 */ if (_t77) goto L_0245EF68; else goto L_0245EF64;
|
|
L_0245EF64: ; // 0x245ef64
|
|
/* 0245EF64 */ cpu->r[30] = 0x00000001u;
|
|
L_0245EF68: ; // 0x245ef68
|
|
/* 0245EF68 */ cpu->r[31] = 0x10110000u;
|
|
/* 0245EF6C */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 0245EF70 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 0245EF70 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0245EF74 */ cpu->r[23] = 0x00000018u;
|
|
L_0245EF78: ; // 0x245ef78
|
|
/* 0245EF78 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0245EF78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245EF7C */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EF7C */ _t80 = _t79 & 0x00000001u;
|
|
/* 0245EF7C */ if (_t80) goto L_0245EFEC; else goto L_0245EF80;
|
|
L_0245EF80: ; // 0x245ef80
|
|
/* 0245EF80 */ cpu->r[26] = cpu->r[27];
|
|
/* 0245EF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0245EF84 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EF84 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0245EF84 */ if (_t82) goto L_0245EF88; else goto L_0245EF98;
|
|
L_0245EF88: ; // 0x245ef88
|
|
/* 0245EF88 */ cpu->r[3] = 0x00000024u;
|
|
/* 0245EF8C */ Gambit_fn_02801A78(cpu);
|
|
/* 0245EF90 */ cpu->r[26] = cpu->r[3];
|
|
/* 0245EF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0245EF94 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EF94 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0245EF94 */ if (_t84) goto L_0245EFE0; else goto L_0245EF98;
|
|
L_0245EF98: ; // 0x245ef98
|
|
/* 0245EF98 */ cpu->r[11] = cpu->r[26];
|
|
/* 0245EF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245EF9C */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EF9C */ _t86 = _t85 & 0x00000001u;
|
|
/* 0245EF9C */ if (_t86) goto L_0245EFA0; else goto L_0245EFB0;
|
|
L_0245EFA0: ; // 0x245efa0
|
|
/* 0245EFA0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0245EFA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245EFA8 */ cpu->r[11] = cpu->r[3];
|
|
/* 0245EFA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245EFAC */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EFAC */ _t88 = _t87 & 0x00000001u;
|
|
/* 0245EFAC */ if (_t88) goto L_0245EFCC; else goto L_0245EFB0;
|
|
L_0245EFB0: ; // 0x245efb0
|
|
/* 0245EFB0 */ cpu->r[5] = 0x100A0000u;
|
|
/* 0245EFB4 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 0245EFB4 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0245EFB8 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0245EFBC */ cpu->r[5] = cpu->r[5] + 0x000024D8u;
|
|
/* 0245EFC0 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0245EFC0 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 0245EFC4 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 0245EFC4 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 0245EFC8 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 0245EFC8 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0245EFCC: ; // 0x245efcc
|
|
/* 0245EFCC */ cpu->r[6] = 0x100A0000u;
|
|
/* 0245EFD0 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0245EFD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0245EFD4 */ cpu->r[6] = cpu->r[6] + 0x000024F0u;
|
|
/* 0245EFD8 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 0245EFD8 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0245EFDC */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0245EFDC */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0245EFE0: ; // 0x245efe0
|
|
/* 0245EFE0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245EFE4 */ cpu->r[0] = cpu->r[0] + 0x00002508u;
|
|
/* 0245EFE8 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0245EFE8 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0245EFEC: ; // 0x245efec
|
|
/* 0245EFEC */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0245EFEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0245EFF0 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 0245EFF4 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EFF4 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0245EFF4 */ if (_t98) goto L_0245EFF8; else goto L_0245EF78;
|
|
L_0245EFF8: ; // 0x245eff8
|
|
/* 0245EFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0245EFFC */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245EFFC */ _t100 = _t99 & 0x00000001u;
|
|
/* 0245EFFC */ if (_t100) goto L_0245F008; else goto L_0245F000;
|
|
L_0245F000: ; // 0x245f000
|
|
/* 0245F000 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 0245F000 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 0245F004 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 0245F004 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0245F008: ; // 0x245f008
|
|
/* 0245F008 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0245F008 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0245F00C */ /* nop */
|
|
/* 0245F010 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0245F014 */ cpu->lr = cpu->r[0];
|
|
/* 0245F018 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0245F01C */ return;
|
|
}
|
|
|
|
// fn_0245F020 @ 0x245f020
|
|
void Gambit_fn_0245F020(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_0245F020: ; // 0x245f020
|
|
/* 0245F020 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 0245F020 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0245F024 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0245F024 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0245F028 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0245F028 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245F02C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0245F030 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 0245F030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245F034 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F034 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245F034 */ if (_t5) goto L_0245F038; else goto L_0245F040;
|
|
L_0245F038: ; // 0x245f038
|
|
/* 0245F038 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245F03C */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_0245F040: ; // 0x245f040
|
|
/* 0245F040 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 0245F040 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245F044 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0245F044 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245F048 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0245F048 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0245F04C */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0245F04C */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0245F050 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 0245F050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245F054 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0245F058 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0245F058 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F05C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F05C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245F05C */ if (_t13) goto L_0245F060; else goto L_0245F068;
|
|
L_0245F060: ; // 0x245f060
|
|
/* 0245F060 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245F064 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0245F068: ; // 0x245f068
|
|
/* 0245F068 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0245F068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245F06C */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0245F06C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0245F070 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 0245F070 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245F074 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0245F074 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0245F078 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0245F078 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245F07C */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 0245F07C */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0245F080 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 0245F080 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245F084 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 0245F088 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 0245F088 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245F08C */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F08C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0245F08C */ if (_t23) goto L_0245F090; else goto L_0245F098;
|
|
L_0245F090: ; // 0x245f090
|
|
/* 0245F090 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0245F094 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0245F098: ; // 0x245f098
|
|
/* 0245F098 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 0245F098 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0245F09C */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 0245F09C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0245F0A0 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0245F0A0 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0245F0A4 */ return;
|
|
}
|
|
|
|
// fn_0245F0A8 @ 0x245f0a8
|
|
void Gambit_fn_0245F0A8(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;
|
|
|
|
L_0245F0A8: ; // 0x245f0a8
|
|
/* 0245F0A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F0AC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0245F0AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F0AC */ cpu->r[1] = _t0;
|
|
/* 0245F0B0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F0B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F0B4 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F0B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245F0B8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0245F0BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F0BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245F0C0 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F0C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0245F0C4 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F0C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245F0C8 */ cpu->r[29] = cpu->r[5];
|
|
/* 0245F0CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F0CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245F0CC */ if (_t6) goto L_0245F0D0; else goto L_0245F0E0;
|
|
L_0245F0D0: ; // 0x245f0d0
|
|
/* 0245F0D0 */ cpu->r[3] = 0x00000058u;
|
|
/* 0245F0D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245F0D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F0D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245F0DC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F0DC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245F0DC */ if (_t8) goto L_0245F2DC; else goto L_0245F0E0;
|
|
L_0245F0E0: ; // 0x245f0e0
|
|
/* 0245F0E0 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F0E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0245F0E4 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245F0E8 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245F0E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 0245F0EC */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245F0F0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0245F0F0 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 0245F0F4 */ cpu->r[10] = cpu->r[10] + 0x00002924u;
|
|
/* 0245F0F8 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0245F0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F0FC */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0245F0FC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0245F100 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F100 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0245F100 */ if (_t14) goto L_0245F104; else goto L_0245F114;
|
|
L_0245F104: ; // 0x245f104
|
|
/* 0245F104 */ cpu->r[3] = 0x00000004u;
|
|
/* 0245F108 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245F10C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F110 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F110 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0245F110 */ if (_t16) goto L_0245F118; else goto L_0245F114;
|
|
L_0245F114: ; // 0x245f114
|
|
/* 0245F114 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 0245F114 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_0245F118: ; // 0x245f118
|
|
/* 0245F118 */ _t18 = cpu->r[31] + 0x00000048u;
|
|
/* 0245F118 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0245F11C */ cpu->r[9] = 0x00000003u;
|
|
/* 0245F120 */ _t19 = cpu->r[31] + 0x00000044u;
|
|
/* 0245F120 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 0245F124 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F128 */ _t20 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F128 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[30]);
|
|
/* 0245F12C */ _t21 = cpu->r[31] + 0x00000034u;
|
|
/* 0245F12C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0245F130 */ _t22 = cpu->r[11] + 0x00002964u;
|
|
/* 0245F130 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0245F134 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0245F138 */ _t23 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0245F138 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[30]);
|
|
/* 0245F13C */ _t24 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0245F13C */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 0245F140 */ _t25 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0245F140 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 0245F144 */ _t26 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F144 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0245F148 */ _t27 = cpu->r[31] + 0x00000026u;
|
|
/* 0245F148 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[30]);
|
|
/* 0245F14C */ _t28 = cpu->r[31] + 0x00000040u;
|
|
/* 0245F14C */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 0245F150 */ _t29 = cpu->r[31] + 0x00000038u;
|
|
/* 0245F150 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 0245F154 */ _t30 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F154 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]);
|
|
/* 0245F158 */ _t31 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F158 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[30]);
|
|
/* 0245F15C */ _t32 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F15C */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 0245F160 */ _t33 = cpu->r[31] + 0x00000028u;
|
|
/* 0245F160 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 0245F164 */ _t34 = cpu->r[31] + 0x00000030u;
|
|
/* 0245F164 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 0245F168 */ cpu->r[3] = cpu->r[31] + 0x0000004Du;
|
|
/* 0245F168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F16C */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 0245F16C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 0245F170 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F170 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0245F170 */ if (_t37) goto L_0245F174; else goto L_0245F184;
|
|
L_0245F174: ; // 0x245f174
|
|
/* 0245F174 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245F178 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245F17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F180 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F180 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0245F180 */ if (_t39) goto L_0245F188; else goto L_0245F184;
|
|
L_0245F184: ; // 0x245f184
|
|
/* 0245F184 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0245F184 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[30]);
|
|
L_0245F188: ; // 0x245f188
|
|
/* 0245F188 */ _t41 = cpu->r[31] + 0x00000050u;
|
|
/* 0245F188 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 0245F18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245F190 */ _t42 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0245F194 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F194 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0245F194 */ if (_t44) goto L_0245F198; else goto L_0245F1B0;
|
|
L_0245F198: ; // 0x245f198
|
|
/* 0245F198 */ cpu->r[0] = cpu->r[0] | 0x00000003u;
|
|
/* 0245F19C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Cu);
|
|
/* 0245F1A0 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0245F1A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x00000019u);
|
|
/* 0245F1A8 */ _t45 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F1A8 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 0245F1AC */ goto L_0245F238;
|
|
L_0245F1B0: ; // 0x245f1b0
|
|
/* 0245F1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000001u);
|
|
/* 0245F1B4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1B4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0245F1B4 */ if (_t47) goto L_0245F1B8; else goto L_0245F1D4;
|
|
L_0245F1B8: ; // 0x245f1b8
|
|
/* 0245F1B8 */ cpu->r[0] = cpu->r[0] | 0x00000007u;
|
|
/* 0245F1BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Du, 0x0000001Bu);
|
|
/* 0245F1C0 */ cpu->r[0] = cpu->r[0] | 0x00000030u;
|
|
/* 0245F1C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F1C8 */ _t48 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F1C8 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0245F1CC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1CC */ _t50 = _t49 & 0x00000001u;
|
|
/* 0245F1CC */ if (_t50) goto L_0245F294; else goto L_0245F1D0;
|
|
L_0245F1D0: ; // 0x245f1d0
|
|
/* 0245F1D0 */ goto L_0245F240;
|
|
L_0245F1D4: ; // 0x245f1d4
|
|
/* 0245F1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 0245F1D8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1D8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0245F1D8 */ if (_t52) goto L_0245F1DC; else goto L_0245F1FC;
|
|
L_0245F1DC: ; // 0x245f1dc
|
|
/* 0245F1DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Du);
|
|
/* 0245F1E0 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0245F1E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Du, 0x0000001Bu);
|
|
/* 0245F1E8 */ cpu->r[0] = cpu->r[0] | 0x00000030u;
|
|
/* 0245F1EC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F1F0 */ _t53 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F1F0 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 0245F1F4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1F4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0245F1F4 */ if (_t55) goto L_0245F294; else goto L_0245F1F8;
|
|
L_0245F1F8: ; // 0x245f1f8
|
|
/* 0245F1F8 */ goto L_0245F240;
|
|
L_0245F1FC: ; // 0x245f1fc
|
|
/* 0245F1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000003u);
|
|
/* 0245F200 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F200 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0245F200 */ if (_t57) goto L_0245F204; else goto L_0245F210;
|
|
L_0245F204: ; // 0x245f204
|
|
/* 0245F204 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0245F208 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Bu);
|
|
/* 0245F20C */ goto L_0245F230;
|
|
L_0245F210: ; // 0x245f210
|
|
/* 0245F210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000004u);
|
|
/* 0245F214 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F214 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0245F214 */ if (_t59) goto L_0245F224; else goto L_0245F218;
|
|
L_0245F218: ; // 0x245f218
|
|
/* 0245F218 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F21C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F21C */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245F21C */ if (_t61) goto L_0245F294; else goto L_0245F220;
|
|
L_0245F220: ; // 0x245f220
|
|
/* 0245F220 */ goto L_0245F240;
|
|
L_0245F224: ; // 0x245f224
|
|
/* 0245F224 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0245F228 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 0245F22C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Bu);
|
|
L_0245F230: ; // 0x245f230
|
|
/* 0245F230 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x00000019u);
|
|
/* 0245F234 */ _t62 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F234 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
L_0245F238: ; // 0x245f238
|
|
/* 0245F238 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F23C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F23C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0245F23C */ if (_t64) goto L_0245F294; else goto L_0245F240;
|
|
L_0245F240: ; // 0x245f240
|
|
/* 0245F240 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F244 */ Gambit_fn_02173CCC(cpu);
|
|
/* 0245F248 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F24C */ Gambit_fn_02174394(cpu);
|
|
/* 0245F250 */ cpu->r[11] = cpu->r[3];
|
|
/* 0245F250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F254 */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F254 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0245F254 */ if (_t66) goto L_0245F258; else goto L_0245F274;
|
|
L_0245F258: ; // 0x245f258
|
|
/* 0245F258 */ cpu->r[11] = 0x00000000u;
|
|
/* 0245F25C */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F260 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F264 */ _t67 = cpu->r[31] + 0x00000044u;
|
|
/* 0245F264 */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 0245F268 */ Gambit_fn_02173D6C(cpu);
|
|
/* 0245F26C */ _t68 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F26C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0245F270 */ goto L_0245F294;
|
|
L_0245F274: ; // 0x245f274
|
|
/* 0245F274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000270Fu);
|
|
/* 0245F278 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F278 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0245F278 */ if (_t70) goto L_0245F27C; else goto L_0245F280;
|
|
L_0245F27C: ; // 0x245f27c
|
|
/* 0245F27C */ cpu->r[11] = 0x0000270Fu;
|
|
L_0245F280: ; // 0x245f280
|
|
/* 0245F280 */ _t71 = cpu->r[31] + 0x00000044u;
|
|
/* 0245F280 */ rbrew_write32(cpu->mem, _t71, cpu->r[11]);
|
|
/* 0245F284 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F288 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F28C */ Gambit_fn_02173D6C(cpu);
|
|
/* 0245F290 */ _t72 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F290 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
L_0245F294: ; // 0x245f294
|
|
/* 0245F294 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F298 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F298 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0245F298 */ if (_t74) goto L_0245F2BC; else goto L_0245F29C;
|
|
L_0245F29C: ; // 0x245f29c
|
|
/* 0245F29C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0245F2A0 */ Gambit_fn_02173CCC(cpu);
|
|
/* 0245F2A4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0245F2A8 */ Gambit_fn_02174300(cpu);
|
|
/* 0245F2AC */ _t75 = cpu->r[31] + 0x00000050u;
|
|
/* 0245F2AC */ rbrew_write32(cpu->mem, _t75, cpu->r[3]);
|
|
/* 0245F2B0 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0245F2B4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F2B8 */ Gambit_fn_02173D6C(cpu);
|
|
L_0245F2BC: ; // 0x245f2bc
|
|
/* 0245F2BC */ cpu->r[9] = 0x00000003u;
|
|
/* 0245F2C0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0245F2C4 */ cpu->r[12] = cpu->r[31] + 0x00000054u;
|
|
/* 0245F2C8 */ cpu->ctr = cpu->r[9];
|
|
/* 0245F2CC */ cpu->r[10] = cpu->r[11];
|
|
L_0245F2D0: ; // 0x245f2d0
|
|
/* 0245F2D0 */ _t76 = cpu->r[12] + cpu->r[11];
|
|
/* 0245F2D0 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[10]);
|
|
/* 0245F2D4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0245F2D8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0245F2D8 */ _t77 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0245F2D8 */ _t78 = _t77 >> (0x00000002u & 31u);
|
|
/* 0245F2D8 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0245F2D8 */ if (_t79) goto L_0245F2D0; else goto L_0245F2DC;
|
|
L_0245F2DC: ; // 0x245f2dc
|
|
/* 0245F2DC */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F2DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0245F2E0 */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F2E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0245F2E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245F2E8 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F2E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0245F2EC */ cpu->lr = cpu->r[0];
|
|
/* 0245F2F0 */ _t83 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F2F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0245F2F4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0245F2F8 */ return;
|
|
}
|
|
|
|
// fn_0245F0AC @ 0x245f0ac
|
|
void Gambit_fn_0245F0AC(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;
|
|
|
|
L_0245F0AC: ; // 0x245f0ac
|
|
/* 0245F0AC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0245F0AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F0AC */ cpu->r[1] = _t0;
|
|
/* 0245F0B0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F0B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F0B4 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F0B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0245F0B8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0245F0BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F0BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245F0C0 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F0C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0245F0C4 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F0C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245F0C8 */ cpu->r[29] = cpu->r[5];
|
|
/* 0245F0CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F0CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245F0CC */ if (_t6) goto L_0245F0D0; else goto L_0245F0E0;
|
|
L_0245F0D0: ; // 0x245f0d0
|
|
/* 0245F0D0 */ cpu->r[3] = 0x00000058u;
|
|
/* 0245F0D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245F0D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F0D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245F0DC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F0DC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245F0DC */ if (_t8) goto L_0245F2DC; else goto L_0245F0E0;
|
|
L_0245F0E0: ; // 0x245f0e0
|
|
/* 0245F0E0 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F0E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0245F0E4 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245F0E8 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0245F0E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 0245F0EC */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245F0F0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0245F0F0 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 0245F0F4 */ cpu->r[10] = cpu->r[10] + 0x00002924u;
|
|
/* 0245F0F8 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0245F0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F0FC */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0245F0FC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0245F100 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F100 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0245F100 */ if (_t14) goto L_0245F104; else goto L_0245F114;
|
|
L_0245F104: ; // 0x245f104
|
|
/* 0245F104 */ cpu->r[3] = 0x00000004u;
|
|
/* 0245F108 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245F10C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F110 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F110 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0245F110 */ if (_t16) goto L_0245F118; else goto L_0245F114;
|
|
L_0245F114: ; // 0x245f114
|
|
/* 0245F114 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 0245F114 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_0245F118: ; // 0x245f118
|
|
/* 0245F118 */ _t18 = cpu->r[31] + 0x00000048u;
|
|
/* 0245F118 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0245F11C */ cpu->r[9] = 0x00000003u;
|
|
/* 0245F120 */ _t19 = cpu->r[31] + 0x00000044u;
|
|
/* 0245F120 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 0245F124 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F128 */ _t20 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F128 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[30]);
|
|
/* 0245F12C */ _t21 = cpu->r[31] + 0x00000034u;
|
|
/* 0245F12C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0245F130 */ _t22 = cpu->r[11] + 0x00002964u;
|
|
/* 0245F130 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0245F134 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0245F138 */ _t23 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0245F138 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[30]);
|
|
/* 0245F13C */ _t24 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0245F13C */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 0245F140 */ _t25 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0245F140 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 0245F144 */ _t26 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F144 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0245F148 */ _t27 = cpu->r[31] + 0x00000026u;
|
|
/* 0245F148 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[30]);
|
|
/* 0245F14C */ _t28 = cpu->r[31] + 0x00000040u;
|
|
/* 0245F14C */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 0245F150 */ _t29 = cpu->r[31] + 0x00000038u;
|
|
/* 0245F150 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 0245F154 */ _t30 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F154 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]);
|
|
/* 0245F158 */ _t31 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F158 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[30]);
|
|
/* 0245F15C */ _t32 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F15C */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 0245F160 */ _t33 = cpu->r[31] + 0x00000028u;
|
|
/* 0245F160 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 0245F164 */ _t34 = cpu->r[31] + 0x00000030u;
|
|
/* 0245F164 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 0245F168 */ cpu->r[3] = cpu->r[31] + 0x0000004Du;
|
|
/* 0245F168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F16C */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 0245F16C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 0245F170 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F170 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0245F170 */ if (_t37) goto L_0245F174; else goto L_0245F184;
|
|
L_0245F174: ; // 0x245f174
|
|
/* 0245F174 */ cpu->r[3] = 0x00000001u;
|
|
/* 0245F178 */ Gambit_fn_02801A78(cpu);
|
|
/* 0245F17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F180 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F180 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0245F180 */ if (_t39) goto L_0245F188; else goto L_0245F184;
|
|
L_0245F184: ; // 0x245f184
|
|
/* 0245F184 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0245F184 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[30]);
|
|
L_0245F188: ; // 0x245f188
|
|
/* 0245F188 */ _t41 = cpu->r[31] + 0x00000050u;
|
|
/* 0245F188 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 0245F18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245F190 */ _t42 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0245F194 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F194 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0245F194 */ if (_t44) goto L_0245F198; else goto L_0245F1B0;
|
|
L_0245F198: ; // 0x245f198
|
|
/* 0245F198 */ cpu->r[0] = cpu->r[0] | 0x00000003u;
|
|
/* 0245F19C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Cu);
|
|
/* 0245F1A0 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0245F1A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x00000019u);
|
|
/* 0245F1A8 */ _t45 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F1A8 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 0245F1AC */ goto L_0245F238;
|
|
L_0245F1B0: ; // 0x245f1b0
|
|
/* 0245F1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000001u);
|
|
/* 0245F1B4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1B4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0245F1B4 */ if (_t47) goto L_0245F1B8; else goto L_0245F1D4;
|
|
L_0245F1B8: ; // 0x245f1b8
|
|
/* 0245F1B8 */ cpu->r[0] = cpu->r[0] | 0x00000007u;
|
|
/* 0245F1BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Du, 0x0000001Bu);
|
|
/* 0245F1C0 */ cpu->r[0] = cpu->r[0] | 0x00000030u;
|
|
/* 0245F1C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F1C8 */ _t48 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F1C8 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0245F1CC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1CC */ _t50 = _t49 & 0x00000001u;
|
|
/* 0245F1CC */ if (_t50) goto L_0245F294; else goto L_0245F1D0;
|
|
L_0245F1D0: ; // 0x245f1d0
|
|
/* 0245F1D0 */ goto L_0245F240;
|
|
L_0245F1D4: ; // 0x245f1d4
|
|
/* 0245F1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 0245F1D8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1D8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0245F1D8 */ if (_t52) goto L_0245F1DC; else goto L_0245F1FC;
|
|
L_0245F1DC: ; // 0x245f1dc
|
|
/* 0245F1DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Du);
|
|
/* 0245F1E0 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0245F1E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Du, 0x0000001Bu);
|
|
/* 0245F1E8 */ cpu->r[0] = cpu->r[0] | 0x00000030u;
|
|
/* 0245F1EC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F1F0 */ _t53 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F1F0 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 0245F1F4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F1F4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0245F1F4 */ if (_t55) goto L_0245F294; else goto L_0245F1F8;
|
|
L_0245F1F8: ; // 0x245f1f8
|
|
/* 0245F1F8 */ goto L_0245F240;
|
|
L_0245F1FC: ; // 0x245f1fc
|
|
/* 0245F1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000003u);
|
|
/* 0245F200 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F200 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0245F200 */ if (_t57) goto L_0245F204; else goto L_0245F210;
|
|
L_0245F204: ; // 0x245f204
|
|
/* 0245F204 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0245F208 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Bu);
|
|
/* 0245F20C */ goto L_0245F230;
|
|
L_0245F210: ; // 0x245f210
|
|
/* 0245F210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000004u);
|
|
/* 0245F214 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F214 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0245F214 */ if (_t59) goto L_0245F224; else goto L_0245F218;
|
|
L_0245F218: ; // 0x245f218
|
|
/* 0245F218 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F21C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F21C */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245F21C */ if (_t61) goto L_0245F294; else goto L_0245F220;
|
|
L_0245F220: ; // 0x245f220
|
|
/* 0245F220 */ goto L_0245F240;
|
|
L_0245F224: ; // 0x245f224
|
|
/* 0245F224 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0245F228 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 0245F22C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Bu);
|
|
L_0245F230: ; // 0x245f230
|
|
/* 0245F230 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x00000019u);
|
|
/* 0245F234 */ _t62 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F234 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
L_0245F238: ; // 0x245f238
|
|
/* 0245F238 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F23C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F23C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0245F23C */ if (_t64) goto L_0245F294; else goto L_0245F240;
|
|
L_0245F240: ; // 0x245f240
|
|
/* 0245F240 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F244 */ Gambit_fn_02173CCC(cpu);
|
|
/* 0245F248 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F24C */ Gambit_fn_02174394(cpu);
|
|
/* 0245F250 */ cpu->r[11] = cpu->r[3];
|
|
/* 0245F250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F254 */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F254 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0245F254 */ if (_t66) goto L_0245F258; else goto L_0245F274;
|
|
L_0245F258: ; // 0x245f258
|
|
/* 0245F258 */ cpu->r[11] = 0x00000000u;
|
|
/* 0245F25C */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F260 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F264 */ _t67 = cpu->r[31] + 0x00000044u;
|
|
/* 0245F264 */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 0245F268 */ Gambit_fn_02173D6C(cpu);
|
|
/* 0245F26C */ _t68 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F26C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0245F270 */ goto L_0245F294;
|
|
L_0245F274: ; // 0x245f274
|
|
/* 0245F274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000270Fu);
|
|
/* 0245F278 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F278 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0245F278 */ if (_t70) goto L_0245F27C; else goto L_0245F280;
|
|
L_0245F27C: ; // 0x245f27c
|
|
/* 0245F27C */ cpu->r[11] = 0x0000270Fu;
|
|
L_0245F280: ; // 0x245f280
|
|
/* 0245F280 */ _t71 = cpu->r[31] + 0x00000044u;
|
|
/* 0245F280 */ rbrew_write32(cpu->mem, _t71, cpu->r[11]);
|
|
/* 0245F284 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F288 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F28C */ Gambit_fn_02173D6C(cpu);
|
|
/* 0245F290 */ _t72 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F290 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
L_0245F294: ; // 0x245f294
|
|
/* 0245F294 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F298 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F298 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0245F298 */ if (_t74) goto L_0245F2BC; else goto L_0245F29C;
|
|
L_0245F29C: ; // 0x245f29c
|
|
/* 0245F29C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0245F2A0 */ Gambit_fn_02173CCC(cpu);
|
|
/* 0245F2A4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0245F2A8 */ Gambit_fn_02174300(cpu);
|
|
/* 0245F2AC */ _t75 = cpu->r[31] + 0x00000050u;
|
|
/* 0245F2AC */ rbrew_write32(cpu->mem, _t75, cpu->r[3]);
|
|
/* 0245F2B0 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0245F2B4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F2B8 */ Gambit_fn_02173D6C(cpu);
|
|
L_0245F2BC: ; // 0x245f2bc
|
|
/* 0245F2BC */ cpu->r[9] = 0x00000003u;
|
|
/* 0245F2C0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0245F2C4 */ cpu->r[12] = cpu->r[31] + 0x00000054u;
|
|
/* 0245F2C8 */ cpu->ctr = cpu->r[9];
|
|
/* 0245F2CC */ cpu->r[10] = cpu->r[11];
|
|
L_0245F2D0: ; // 0x245f2d0
|
|
/* 0245F2D0 */ _t76 = cpu->r[12] + cpu->r[11];
|
|
/* 0245F2D0 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[10]);
|
|
/* 0245F2D4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0245F2D8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0245F2D8 */ _t77 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0245F2D8 */ _t78 = _t77 >> (0x00000002u & 31u);
|
|
/* 0245F2D8 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0245F2D8 */ if (_t79) goto L_0245F2D0; else goto L_0245F2DC;
|
|
L_0245F2DC: ; // 0x245f2dc
|
|
/* 0245F2DC */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F2DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0245F2E0 */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F2E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0245F2E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0245F2E8 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F2E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0245F2EC */ cpu->lr = cpu->r[0];
|
|
/* 0245F2F0 */ _t83 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F2F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0245F2F4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0245F2F8 */ return;
|
|
}
|
|
|
|
// fn_0245F300 @ 0x245f300
|
|
void Gambit_fn_0245F300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0245F300: ; // 0x245f300
|
|
/* 0245F300 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245F300 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F300 */ cpu->r[1] = _t0;
|
|
/* 0245F304 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F304 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F308 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F30C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F30C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245F310 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245F314 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F318 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F318 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245F318 */ if (_t5) goto L_0245F344; else goto L_0245F31C;
|
|
L_0245F31C: ; // 0x245f31c
|
|
/* 0245F31C */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F31C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245F320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F324 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F324 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245F324 */ if (_t8) goto L_0245F344; else goto L_0245F328;
|
|
L_0245F328: ; // 0x245f328
|
|
/* 0245F328 */ cpu->r[6] = 0x00060000u;
|
|
/* 0245F32C */ cpu->r[6] = cpu->r[6] + 0xFFFF8764u;
|
|
/* 0245F330 */ Gambit_fn_020D4A50(cpu);
|
|
/* 0245F334 */ _t9 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F334 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245F338 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F33C */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F33C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[4]);
|
|
/* 0245F340 */ Gambit_fn_020D4CF4(cpu);
|
|
L_0245F344: ; // 0x245f344
|
|
/* 0245F344 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F348 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245F34C */ cpu->lr = cpu->r[0];
|
|
/* 0245F350 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F354 */ return;
|
|
}
|
|
|
|
// fn_0245F35C @ 0x245f35c
|
|
void Gambit_fn_0245F35C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_0245F35C: ; // 0x245f35c
|
|
/* 0245F35C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245F35C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F35C */ cpu->r[1] = _t0;
|
|
/* 0245F360 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F360 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F364 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F368 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F368 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0245F36C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F36C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0245F370 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F370 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245F374 */ cpu->r[29] = cpu->r[4];
|
|
/* 0245F378 */ _t5 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F378 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245F37C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F37C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F380 */ cpu->r[30] = cpu->r[5];
|
|
/* 0245F384 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F384 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245F384 */ if (_t7) goto L_0245F3D4; else goto L_0245F388;
|
|
L_0245F388: ; // 0x245f388
|
|
/* 0245F388 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F388 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245F38C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F390 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F390 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245F390 */ if (_t10) goto L_0245F3D4; else goto L_0245F394;
|
|
L_0245F394: ; // 0x245f394
|
|
/* 0245F394 */ cpu->r[4] = cpu->r[29];
|
|
/* 0245F398 */ Gambit_fn_020D4A94(cpu);
|
|
/* 0245F39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0245F3A0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F3A4 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F3A4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t11);
|
|
/* 0245F3A8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F3A8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245F3A8 */ if (_t13) goto L_0245F3B8; else goto L_0245F3AC;
|
|
L_0245F3AC: ; // 0x245f3ac
|
|
/* 0245F3AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245F3B0 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F3B0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F3B0 */ if (_t15) goto L_0245F3B8; else goto L_0245F3B4;
|
|
L_0245F3B4: ; // 0x245f3b4
|
|
/* 0245F3B4 */ cpu->r[0] = 0x00000001u;
|
|
L_0245F3B8: ; // 0x245f3b8
|
|
/* 0245F3B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0245F3BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0245F3C0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F3C0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0245F3C0 */ if (_t17) goto L_0245F3D4; else goto L_0245F3C4;
|
|
L_0245F3C4: ; // 0x245f3c4
|
|
/* 0245F3C4 */ _t18 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F3C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245F3C8 */ cpu->r[4] = cpu->r[0];
|
|
/* 0245F3CC */ _t19 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F3CC */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 0245F3D0 */ Gambit_fn_020D4D68(cpu);
|
|
L_0245F3D4: ; // 0x245f3d4
|
|
/* 0245F3D4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F3D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245F3D8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F3D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245F3DC */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F3DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245F3E0 */ cpu->lr = cpu->r[0];
|
|
/* 0245F3E4 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F3E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245F3E8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F3EC */ return;
|
|
}
|
|
|
|
// fn_0245F3F4 @ 0x245f3f4
|
|
void Gambit_fn_0245F3F4(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;
|
|
|
|
L_0245F3F4: ; // 0x245f3f4
|
|
/* 0245F3F4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0245F3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F3F4 */ cpu->r[1] = _t0;
|
|
/* 0245F3F8 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0245F3F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0245F3FC */ /* nop */
|
|
/* 0245F400 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0245F400 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0245F404 */ /* nop */
|
|
/* 0245F408 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0245F408 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0245F40C */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 0245F40C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0245F410 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 0245F410 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0245F414 */ _t6 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0245F414 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245F418 */ _t7 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F418 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0245F41C */ _t8 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F41C */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0245F420 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245F424 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F424 */ rbrew_write32(cpu->mem, _t9, cpu->r[28]);
|
|
/* 0245F428 */ _t10 = cpu->r[30] + 0x00000010u;
|
|
/* 0245F428 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245F42C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F430 */ cpu->f[30] = cpu->f[1];
|
|
/* 0245F434 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F434 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0245F434 */ if (_t12) goto L_0245F694; else goto L_0245F438;
|
|
L_0245F438: ; // 0x245f438
|
|
/* 0245F438 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245F43C */ cpu->r[31] = 0x100A0000u;
|
|
/* 0245F440 */ _t13 = cpu->r[8] + 0x00002968u;
|
|
/* 0245F440 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0245F444 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F448 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245F44C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F450 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0245F454 */ cpu->r[31] = cpu->r[31] + 0x000028B4u;
|
|
/* 0245F458 */ cpu->r[28] = cpu->r[28] + 0x00002994u;
|
|
/* 0245F45C */ cpu->r[0] = cpu->r[0] + 0x00002980u;
|
|
/* 0245F460 */ cpu->r[29] = cpu->r[29] + 0x00002970u;
|
|
/* 0245F464 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F464 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F464 */ if (_t15) goto L_0245F598; else goto L_0245F468;
|
|
L_0245F468: ; // 0x245f468
|
|
/* 0245F468 */ _t16 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F468 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0245F46C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245F470 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F470 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245F470 */ if (_t18) goto L_0245F4B4; else goto L_0245F474;
|
|
L_0245F474: ; // 0x245f474
|
|
/* 0245F474 */ _t19 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F474 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245F478 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F47C */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F480 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F480 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 0245F484 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F488 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F488 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 0245F48C */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F490 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F494 */ _t22 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245F498 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F49C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F49C */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 0245F4A0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F4A4 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F4A4 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 0245F4A8 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F4AC */ _t25 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F4AC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[30]);
|
|
/* 0245F4B0 */ goto L_0245F694;
|
|
L_0245F4B4: ; // 0x245f4b4
|
|
/* 0245F4B4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F4B4 */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 0245F4B8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F4BC */ _t27 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F4BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0245F4C0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4C4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F4C8 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4C8 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0245F4CC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F4D0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F4D4 */ _t29 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F4D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245F4D8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F4DC */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F4DC */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 0245F4E0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4E4 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4E4 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 0245F4E8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F4EC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F4F0 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4F0 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 0245F4F4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4F8 */ _t33 = cpu->r[12] + 0x0000296Cu;
|
|
/* 0245F4F8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0245F4FC */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F500 */ _t34 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0245F504 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F504 */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 0245F508 */ Gambit_fn_027ED380(cpu);
|
|
/* 0245F50C */ _t36 = cpu->r[30] + 0x00000026u;
|
|
/* 0245F50C */ cpu->r[6] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0245F510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0245F514 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F514 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245F514 */ if (_t38) goto L_0245F518; else goto L_0245F544;
|
|
L_0245F518: ; // 0x245f518
|
|
/* 0245F518 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245F51C */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F51C */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 0245F520 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F524 */ cpu->r[7] = cpu->r[7] + 0x0000298Cu;
|
|
/* 0245F528 */ _t40 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F528 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0245F52C */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0245F530 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F534 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F534 */ rbrew_write32(cpu->mem, _t41, cpu->r[7]);
|
|
/* 0245F538 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F53C */ cpu->r[9] = 0x00000001u;
|
|
/* 0245F540 */ _t42 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F540 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[9]);
|
|
L_0245F544: ; // 0x245f544
|
|
/* 0245F544 */ _t43 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F544 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0245F548 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F54C */ _t44 = cpu->r[9] + 0x000001ACu;
|
|
/* 0245F54C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0245F550 */ cpu->r[4] = cpu->r[4] + 0x00007A54u;
|
|
/* 0245F554 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F558 */ _t45 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F558 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0245F55C */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F560 */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F564 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F564 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 0245F568 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F56C */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F56C */ rbrew_write32(cpu->mem, _t47, cpu->r[31]);
|
|
/* 0245F570 */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F574 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F578 */ _t48 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0245F57C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F580 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F580 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 0245F584 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F588 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F588 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 0245F58C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F590 */ _t51 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F590 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[30]);
|
|
/* 0245F594 */ goto L_0245F694;
|
|
L_0245F598: ; // 0x245f598
|
|
/* 0245F598 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F598 */ rbrew_write32(cpu->mem, _t52, cpu->r[31]);
|
|
/* 0245F59C */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F5A0 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5A0 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 0245F5A4 */ cpu->r[10] = 0x00000000u;
|
|
/* 0245F5A8 */ _t54 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F5A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0245F5AC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5B0 */ _t55 = cpu->r[30] + 0x00000024u;
|
|
/* 0245F5B0 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[10]);
|
|
/* 0245F5B4 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F5B8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F5BC */ _t56 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F5BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0245F5C0 */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F5C0 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 0245F5C4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5C8 */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5C8 */ rbrew_write32(cpu->mem, _t58, cpu->r[29]);
|
|
/* 0245F5CC */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F5D0 */ _t59 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F5D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0245F5D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0245F5D8 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F5D8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245F5D8 */ if (_t61) goto L_0245F620; else goto L_0245F5DC;
|
|
L_0245F5DC: ; // 0x245f5dc
|
|
/* 0245F5DC */ _t62 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F5DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0245F5E0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F5E4 */ _t63 = cpu->r[7] + 0x000001ACu;
|
|
/* 0245F5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0245F5E8 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 0245F5EC */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F5F0 */ _t64 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F5F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0245F5F4 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245F5F8 */ _t65 = cpu->r[7] + 0x000001ACu;
|
|
/* 0245F5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0245F5FC */ cpu->r[4] = cpu->r[4] + 0x000029A0u;
|
|
/* 0245F600 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0245F604 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F604 */ rbrew_write32(cpu->mem, _t66, cpu->r[31]);
|
|
/* 0245F608 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F60C */ _t67 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F60C */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0245F610 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0245F614 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F618 */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F618 */ rbrew_write32(cpu->mem, _t68, cpu->r[28]);
|
|
/* 0245F61C */ Gambit_fn_027ED380(cpu);
|
|
L_0245F620: ; // 0x245f620
|
|
/* 0245F620 */ _t69 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F620 */ cpu->r[11] = rbrew_read8(cpu->mem, _t69);
|
|
/* 0245F624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F628 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F628 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0245F628 */ if (_t71) goto L_0245F658; else goto L_0245F62C;
|
|
L_0245F62C: ; // 0x245f62c
|
|
/* 0245F62C */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F630 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F630 */ rbrew_write32(cpu->mem, _t72, cpu->r[31]);
|
|
/* 0245F634 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F638 */ cpu->r[12] = cpu->r[12] + 0x00002978u;
|
|
/* 0245F63C */ _t73 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F63C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0245F640 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 0245F644 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F648 */ _t74 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F648 */ rbrew_write32(cpu->mem, _t74, cpu->r[12]);
|
|
/* 0245F64C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F650 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F654 */ _t75 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F654 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[0]);
|
|
L_0245F658: ; // 0x245f658
|
|
/* 0245F658 */ _t76 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F658 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0245F65C */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F660 */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F664 */ _t77 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F664 */ rbrew_write32(cpu->mem, _t77, cpu->r[29]);
|
|
/* 0245F668 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F66C */ _t78 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F66C */ rbrew_write32(cpu->mem, _t78, cpu->r[31]);
|
|
/* 0245F670 */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F674 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F678 */ _t79 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F678 */ cpu->r[3] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0245F67C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F680 */ _t80 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F680 */ rbrew_write32(cpu->mem, _t80, cpu->r[31]);
|
|
/* 0245F684 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F688 */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F688 */ rbrew_write32(cpu->mem, _t81, cpu->r[29]);
|
|
/* 0245F68C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F690 */ _t82 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F690 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[30]);
|
|
L_0245F694: ; // 0x245f694
|
|
/* 0245F694 */ _t83 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F694 */ cpu->r[28] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0245F698 */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F698 */ cpu->r[29] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0245F69C */ _t85 = cpu->r[1] + 0x00000060u;
|
|
/* 0245F69C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0245F6A0 */ _t86 = cpu->r[1] + 0x00000050u;
|
|
/* 0245F6A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0245F6A4 */ _t87 = cpu->r[1] + 0x00000058u;
|
|
/* 0245F6A4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 0245F6A8 */ _t88 = cpu->r[1] + 0x00000048u;
|
|
/* 0245F6A8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 0245F6AC */ _t89 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F6AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0245F6B0 */ _t90 = cpu->r[1] + 0x00000040u;
|
|
/* 0245F6B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0245F6B4 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F6B4 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0245F6B4 */ if (_t92) goto L_0245F6B8; // else: addr-0 trap, fall-through
|
|
L_0245F6B8: ; // 0x245f6b8
|
|
/* 0245F6B8 */ _t93 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0245F6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0245F6BC */ cpu->lr = cpu->r[0];
|
|
/* 0245F6C0 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0245F6C4 */ return;
|
|
}
|
|
|
|
// fn_0245F6CC @ 0x245f6cc
|
|
void Gambit_fn_0245F6CC(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_0245F6CC: ; // 0x245f6cc
|
|
/* 0245F6CC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0245F6CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F6CC */ cpu->r[1] = _t0;
|
|
/* 0245F6D0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F6D0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0245F6D4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F6D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0245F6D8 */ /* nop */
|
|
/* 0245F6DC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F6DC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0245F6E0 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F6E0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0245F6E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F6E8 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F6E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0245F6EC */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F6EC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245F6F0 */ _t7 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F6F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245F6F4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F6F8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F6F8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245F6F8 */ if (_t9) goto L_0245F800; else goto L_0245F6FC;
|
|
L_0245F6FC: ; // 0x245f6fc
|
|
/* 0245F6FC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F700 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F704 */ _t10 = cpu->r[11] + 0x00002964u;
|
|
/* 0245F704 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0245F708 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F70C */ cpu->r[0] = cpu->r[0] + 0x000029C0u;
|
|
/* 0245F710 */ cpu->r[29] = cpu->r[29] + 0x000028B4u;
|
|
/* 0245F714 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245F718 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F718 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0245F71C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F720 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F720 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0245F724 */ cpu->r[4] = cpu->r[30];
|
|
/* 0245F728 */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F728 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245F72C */ _t14 = cpu->r[31] + 0x00000020u;
|
|
/* 0245F72C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[1]);
|
|
/* 0245F730 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F734 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F738 */ _t15 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F738 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[30]);
|
|
/* 0245F73C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F740 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F740 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0245F744 */ cpu->r[0] = cpu->r[0] + 0x000029BCu;
|
|
/* 0245F748 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F748 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245F74C */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F750 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F750 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0245F754 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F758 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245F75C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F75C */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0245F760 */ cpu->r[8] = cpu->r[8] + 0x000029ACu;
|
|
/* 0245F764 */ _t20 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F764 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245F768 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F76C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F770 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F770 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 0245F774 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F778 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245F77C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F780 */ _t22 = cpu->r[9] + 0x00002968u;
|
|
/* 0245F780 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0245F784 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0245F788 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F788 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 0245F78C */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F790 */ _t24 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F790 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0245F794 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F798 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F79C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F79C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0245F7A0 */ Gambit_fn_027ED380(cpu);
|
|
/* 0245F7A4 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F7A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0245F7A8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F7AC */ _t27 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245F7AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0245F7B0 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 0245F7B4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F7B8 */ _t28 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0245F7BC */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245F7C0 */ _t29 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245F7C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245F7C4 */ cpu->r[4] = cpu->r[4] + 0x000029D4u;
|
|
/* 0245F7C8 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0245F7CC */ _t30 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F7CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0245F7D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F7D4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F7D4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0245F7D4 */ if (_t32) goto L_0245F800; else goto L_0245F7D8;
|
|
L_0245F7D8: ; // 0x245f7d8
|
|
/* 0245F7D8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F7DC */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F7DC */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0245F7E0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F7E4 */ cpu->r[0] = cpu->r[0] + 0x000029B4u;
|
|
/* 0245F7E8 */ _t34 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F7E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0245F7EC */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F7F0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F7F4 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F7F4 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0245F7F8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F7FC */ _t36 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F7FC */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[30]);
|
|
L_0245F800: ; // 0x245f800
|
|
/* 0245F800 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F800 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0245F804 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F804 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0245F808 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F808 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0245F80C */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F80C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 0245F810 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0245F814 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F814 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0245F814 */ if (_t43) goto L_0245F818; // else: addr-0 trap, fall-through
|
|
L_0245F818: ; // 0x245f818
|
|
/* 0245F818 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0245F81C */ cpu->lr = cpu->r[0];
|
|
/* 0245F820 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0245F824 */ return;
|
|
}
|
|
|
|
// fn_0245F82C @ 0x245f82c
|
|
void Gambit_fn_0245F82C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0245F82C: ; // 0x245f82c
|
|
/* 0245F82C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245F82C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F82C */ cpu->r[1] = _t0;
|
|
/* 0245F830 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F830 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F834 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F838 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F838 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245F83C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F83C */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245F840 */ cpu->r[11] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F844 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F844 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245F844 */ if (_t5) goto L_0245F894; else goto L_0245F848;
|
|
L_0245F848: ; // 0x245f848
|
|
/* 0245F848 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F84C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F850 */ _t6 = cpu->r[12] + 0x00002968u;
|
|
/* 0245F850 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0245F854 */ cpu->r[0] = cpu->r[0] + 0x000028B4u;
|
|
/* 0245F858 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245F85C */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245F860 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F860 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245F864 */ cpu->r[10] = cpu->r[10] + 0x000029E0u;
|
|
/* 0245F868 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F86C */ cpu->r[4] = 0x00000004u;
|
|
/* 0245F870 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F870 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0245F874 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F878 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245F87C */ _t10 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F87C */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245F880 */ _t11 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F880 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0245F884 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F888 */ _t12 = cpu->r[8] + 0x000001ACu;
|
|
/* 0245F888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245F88C */ cpu->r[4] = cpu->r[4] + 0x00007A5Cu;
|
|
/* 0245F890 */ Gambit_fn_027B70F0(cpu);
|
|
L_0245F894: ; // 0x245f894
|
|
/* 0245F894 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245F898 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F898 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245F89C */ cpu->lr = cpu->r[0];
|
|
/* 0245F8A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F8A4 */ return;
|
|
}
|
|
|
|
// fn_0245F8A8 @ 0x245f8a8
|
|
void Gambit_fn_0245F8A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0245F8A8: ; // 0x245f8a8
|
|
/* 0245F8A8 */ _t0 = cpu->r[3] + 0x00000010u;
|
|
/* 0245F8A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245F8AC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F8AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F8B0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F8B4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F8B4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0245F8B4 */ if (_t2) goto L_0245F8D4; else goto L_0245F8B8;
|
|
L_0245F8B8: ; // 0x245f8b8
|
|
/* 0245F8B8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F8BC */ _t3 = cpu->r[3] + 0x00000020u;
|
|
/* 0245F8BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0245F8C0 */ _t4 = cpu->r[12] + 0x00002968u;
|
|
/* 0245F8C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0245F8C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0245F8C8 */ /* nop */
|
|
/* 0245F8CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F8D0 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
L_0245F8D4: ; // 0x245f8d4
|
|
/* 0245F8D4 */ cpu->r[3] = cpu->r[0];
|
|
/* 0245F8D8 */ return;
|
|
}
|
|
|
|
// fn_0245F8DC @ 0x245f8dc
|
|
void Gambit_fn_0245F8DC(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;
|
|
|
|
L_0245F8DC: ; // 0x245f8dc
|
|
/* 0245F8DC */ cpu->r[0] = cpu->lr;
|
|
/* 0245F8E0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0245F8E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F8E0 */ cpu->r[1] = _t0;
|
|
/* 0245F8E4 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F8E4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0245F8E8 */ /* nop */
|
|
/* 0245F8EC */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F8EC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0245F8F0 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F8F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245F8F4 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F8F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 0245F8F8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F8F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0245F8FC */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F8FC */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0245F900 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F900 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0245F904 */ cpu->r[29] = cpu->r[3];
|
|
/* 0245F908 */ _t8 = cpu->r[29] + 0x00000010u;
|
|
/* 0245F908 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245F90C */ cpu->r[30] = cpu->r[4];
|
|
/* 0245F910 */ cpu->r[10] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245F914 */ cpu->r[31] = cpu->r[5];
|
|
/* 0245F918 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F918 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245F918 */ if (_t10) goto L_0245FC3C; else goto L_0245F91C;
|
|
L_0245F91C: ; // 0x245f91c
|
|
/* 0245F91C */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245F920 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245F924 */ _t11 = cpu->r[29] + 0x00000028u;
|
|
/* 0245F924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F928 */ cpu->r[28] = cpu->r[28] + 0x000028B4u;
|
|
/* 0245F92C */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F930 */ _t12 = cpu->r[29] + 0x00000024u;
|
|
/* 0245F930 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[6]);
|
|
/* 0245F934 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0245F938 */ _t13 = cpu->r[12] + 0x00002968u;
|
|
/* 0245F938 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0245F93C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F93C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F93C */ if (_t15) goto L_0245F940; else goto L_0245F94C;
|
|
L_0245F940: ; // 0x245f940
|
|
/* 0245F940 */ _t16 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0245F940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245F944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0245F948 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F948 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245F948 */ if (_t18) goto L_0245FBC4; else goto L_0245F94C;
|
|
L_0245F94C: ; // 0x245f94c
|
|
/* 0245F94C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000004u);
|
|
/* 0245F950 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F954 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F954 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0245F954 */ if (_t20) goto L_0245FB38; else goto L_0245F958;
|
|
L_0245F958: ; // 0x245f958
|
|
/* 0245F958 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F958 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0245F958 */ if (_t22) goto L_0245F9B8; else goto L_0245F95C;
|
|
L_0245F95C: ; // 0x245f95c
|
|
/* 0245F95C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000007u);
|
|
/* 0245F960 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F960 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0245F960 */ if (_t24) goto L_0245F964; else goto L_0245FADC;
|
|
L_0245F964: ; // 0x245f964
|
|
/* 0245F964 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F968 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245F96C */ _t25 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245F96C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0245F970 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245F974 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F974 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 0245F978 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F97C */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F97C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 0245F980 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F980 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 0245F984 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245F988 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F988 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 0245F98C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245F990 */ _t30 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245F990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0245F994 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245F998 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F998 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0245F99C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F9A0 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245F9A4 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F9A8 */ _t32 = cpu->r[29] + 0x00000020u;
|
|
/* 0245F9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0245F9AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245F9B0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F9B0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0245F9B0 */ if (_t34) goto L_0245F9B4; else goto L_0245FBBC;
|
|
L_0245F9B4: ; // 0x245f9b4
|
|
/* 0245F9B4 */ goto L_0245FB90;
|
|
L_0245F9B8: ; // 0x245f9b8
|
|
/* 0245F9B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0245F9BC */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F9BC */ _t36 = _t35 & 0x00000001u;
|
|
/* 0245F9BC */ if (_t36) goto L_0245F9C0; else goto L_0245FA24;
|
|
L_0245F9C0: ; // 0x245f9c0
|
|
/* 0245F9C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000000Au);
|
|
/* 0245F9C4 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F9C4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245F9C4 */ if (_t38) goto L_0245FB40; else goto L_0245F9C8;
|
|
L_0245F9C8: ; // 0x245f9c8
|
|
/* 0245F9C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000015u);
|
|
/* 0245F9CC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F9CC */ _t40 = _t39 & 0x00000001u;
|
|
/* 0245F9CC */ if (_t40) goto L_0245F9D0; else goto L_0245FA80;
|
|
L_0245F9D0: ; // 0x245f9d0
|
|
/* 0245F9D0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F9D4 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245F9D8 */ _t41 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245F9D8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0245F9DC */ cpu->r[7] = 0x43300000u;
|
|
/* 0245F9E0 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F9E0 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0245F9E4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F9E8 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F9E8 */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 0245F9EC */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F9EC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 0245F9F0 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245F9F4 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F9F4 */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 0245F9F8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245F9FC */ _t46 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245F9FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0245FA00 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FA04 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA04 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0245FA08 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA0C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FA10 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FA14 */ _t48 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0245FA18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FA1C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FA1C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0245FA1C */ if (_t50) goto L_0245FA20; else goto L_0245FBBC;
|
|
L_0245FA20: ; // 0x245fa20
|
|
/* 0245FA20 */ goto L_0245FB90;
|
|
L_0245FA24: ; // 0x245fa24
|
|
/* 0245FA24 */ cpu->r[9] = cpu->r[31] + 0x100A0000u;
|
|
/* 0245FA28 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FA2C */ _t51 = cpu->r[9] + 0x00002A00u;
|
|
/* 0245FA2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 0245FA30 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FA34 */ _t52 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FA34 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 0245FA38 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FA3C */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA3C */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 0245FA40 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FA44 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FA44 */ rbrew_write32(cpu->mem, _t54, cpu->r[9]);
|
|
/* 0245FA48 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA48 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 0245FA4C */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FA50 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FA50 */ rbrew_write32(cpu->mem, _t56, cpu->r[28]);
|
|
/* 0245FA54 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FA58 */ _t57 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FA58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0245FA5C */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FA60 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA60 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0245FA64 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA68 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FA6C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FA70 */ _t59 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FA70 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0245FA74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FA78 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FA78 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245FA78 */ if (_t61) goto L_0245FA7C; else goto L_0245FBBC;
|
|
L_0245FA7C: ; // 0x245fa7c
|
|
/* 0245FA7C */ goto L_0245FB90;
|
|
L_0245FA80: ; // 0x245fa80
|
|
/* 0245FA80 */ cpu->r[10] = cpu->r[31] + 0x100A0000u;
|
|
/* 0245FA84 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FA88 */ _t62 = cpu->r[10] + 0x00002A06u;
|
|
/* 0245FA88 */ cpu->r[0] = rbrew_read8(cpu->mem, _t62);
|
|
/* 0245FA8C */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FA90 */ _t63 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FA90 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 0245FA94 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FA98 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA98 */ rbrew_write32(cpu->mem, _t64, cpu->r[7]);
|
|
/* 0245FA9C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FAA0 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FAA0 */ rbrew_write32(cpu->mem, _t65, cpu->r[9]);
|
|
/* 0245FAA4 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FAA4 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0245FAA8 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FAAC */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FAAC */ rbrew_write32(cpu->mem, _t67, cpu->r[28]);
|
|
/* 0245FAB0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FAB4 */ _t68 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FAB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0245FAB8 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FABC */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FABC */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 0245FAC0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FAC4 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FAC8 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FACC */ _t70 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FACC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0245FAD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FAD4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FAD4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0245FAD4 */ if (_t72) goto L_0245FAD8; else goto L_0245FBBC;
|
|
L_0245FAD8: ; // 0x245fad8
|
|
/* 0245FAD8 */ goto L_0245FB90;
|
|
L_0245FADC: ; // 0x245fadc
|
|
/* 0245FADC */ cpu->r[11] = cpu->r[30] + 0x100A0000u;
|
|
/* 0245FAE0 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FAE4 */ _t73 = cpu->r[11] + 0x00002A07u;
|
|
/* 0245FAE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t73);
|
|
/* 0245FAE8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FAEC */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FAEC */ rbrew_write32(cpu->mem, _t74, cpu->r[7]);
|
|
/* 0245FAF0 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FAF4 */ _t75 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FAF4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0245FAF8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FAFC */ _t76 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FAFC */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 0245FB00 */ _t77 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB00 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 0245FB04 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FB08 */ _t78 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FB08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0245FB0C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FB10 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FB10 */ rbrew_write32(cpu->mem, _t79, cpu->r[28]);
|
|
/* 0245FB14 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FB18 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB18 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0245FB1C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FB20 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB24 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FB28 */ _t81 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FB28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0245FB2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FB30 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB30 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0245FB30 */ if (_t83) goto L_0245FB34; else goto L_0245FBBC;
|
|
L_0245FB34: ; // 0x245fb34
|
|
/* 0245FB34 */ goto L_0245FB90;
|
|
L_0245FB38: ; // 0x245fb38
|
|
/* 0245FB38 */ cpu->r[12] = cpu->r[30] + 0x100A0000u;
|
|
/* 0245FB3C */ _t84 = cpu->r[12] + 0x000029FCu;
|
|
/* 0245FB3C */ cpu->r[0] = rbrew_read8(cpu->mem, _t84);
|
|
L_0245FB40: ; // 0x245fb40
|
|
/* 0245FB40 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FB44 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FB48 */ _t85 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FB48 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t85);
|
|
/* 0245FB4C */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FB50 */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FB50 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0245FB54 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FB58 */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB58 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0245FB5C */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB5C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 0245FB60 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FB64 */ _t89 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FB64 */ rbrew_write32(cpu->mem, _t89, cpu->r[28]);
|
|
/* 0245FB68 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FB6C */ _t90 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FB6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0245FB70 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FB74 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB74 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 0245FB78 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB7C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FB80 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FB84 */ _t92 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FB84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0245FB88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FB8C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB8C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0245FB8C */ if (_t94) goto L_0245FB90; else goto L_0245FBBC;
|
|
L_0245FB90: ; // 0x245fb90
|
|
/* 0245FB90 */ _t95 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0245FB90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0245FB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000004u);
|
|
/* 0245FB98 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB98 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0245FB98 */ if (_t97) goto L_0245FBBC; else goto L_0245FB9C;
|
|
L_0245FB9C: ; // 0x245fb9c
|
|
/* 0245FB9C */ _t98 = cpu->r[29] + 0x00000028u;
|
|
/* 0245FB9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0245FBA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0245FBA4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FBA4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0245FBA4 */ if (_t100) goto L_0245FBBC; else goto L_0245FBA8;
|
|
L_0245FBA8: ; // 0x245fba8
|
|
/* 0245FBA8 */ _t101 = cpu->r[29] + 0x00000008u;
|
|
/* 0245FBA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0245FBAC */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245FBB0 */ _t102 = cpu->r[8] + 0x000001ACu;
|
|
/* 0245FBB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0245FBB4 */ cpu->r[4] = cpu->r[4] + 0x00007A54u;
|
|
/* 0245FBB8 */ Gambit_fn_027B70F0(cpu);
|
|
L_0245FBBC: ; // 0x245fbbc
|
|
/* 0245FBBC */ _t103 = cpu->r[29] + 0x00000028u;
|
|
/* 0245FBBC */ rbrew_write32(cpu->mem, _t103, cpu->r[30]);
|
|
/* 0245FBC0 */ _t104 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0245FBC0 */ rbrew_write32(cpu->mem, _t104, cpu->r[31]);
|
|
L_0245FBC4: ; // 0x245fbc4
|
|
/* 0245FBC4 */ _t105 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FBC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0245FBC8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0245FBCC */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FBCC */ _t107 = _t106 & 0x00000001u;
|
|
/* 0245FBCC */ if (_t107) goto L_0245FBD0; else goto L_0245FC3C;
|
|
L_0245FBD0: ; // 0x245fbd0
|
|
/* 0245FBD0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FBD4 */ _t108 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FBD4 */ rbrew_write32(cpu->mem, _t108, cpu->r[28]);
|
|
/* 0245FBD8 */ cpu->r[11] = cpu->r[11] + 0x000029F8u;
|
|
/* 0245FBDC */ _t109 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FBDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0245FBE0 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245FBE4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FBE8 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FBE8 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 0245FBEC */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FBF0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245FBF4 */ _t111 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FBF4 */ rbrew_write32(cpu->mem, _t111, cpu->r[28]);
|
|
/* 0245FBF8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245FBFC */ cpu->r[12] = cpu->r[12] + 0x000029F0u;
|
|
/* 0245FC00 */ _t112 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FC00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0245FC04 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC08 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245FC0C */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC0C */ rbrew_write32(cpu->mem, _t113, cpu->r[12]);
|
|
/* 0245FC10 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245FC14 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245FC18 */ _t114 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FC18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0245FC1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC20 */ _t115 = cpu->r[8] + 0x0000296Cu;
|
|
/* 0245FC20 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0245FC24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FC28 */ _t116 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FC28 */ rbrew_write32(cpu->mem, _t116, cpu->r[28]);
|
|
/* 0245FC2C */ cpu->r[0] = cpu->r[0] + 0x00002A1Cu;
|
|
/* 0245FC30 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245FC34 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC34 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 0245FC38 */ Gambit_fn_027ED380(cpu);
|
|
L_0245FC3C: ; // 0x245fc3c
|
|
/* 0245FC3C */ _t118 = cpu->r[1] + 0x00000020u;
|
|
/* 0245FC3C */ cpu->r[28] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0245FC40 */ _t119 = cpu->r[1] + 0x00000024u;
|
|
/* 0245FC40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0245FC44 */ _t120 = cpu->r[1] + 0x00000038u;
|
|
/* 0245FC44 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0245FC48 */ _t121 = cpu->r[1] + 0x00000028u;
|
|
/* 0245FC48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0245FC4C */ _t122 = cpu->r[1] + 0x00000030u;
|
|
/* 0245FC4C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 0245FC50 */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245FC50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0245FC54 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FC54 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0245FC54 */ if (_t125) goto L_0245FC58; // else: addr-0 trap, fall-through
|
|
L_0245FC58: ; // 0x245fc58
|
|
/* 0245FC58 */ _t126 = cpu->r[1] + 0x00000044u;
|
|
/* 0245FC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0245FC5C */ cpu->lr = cpu->r[0];
|
|
/* 0245FC60 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0245FC64 */ return;
|
|
}
|
|
|
|
// fn_0245F8E0 @ 0x245f8e0
|
|
void Gambit_fn_0245F8E0(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;
|
|
|
|
L_0245F8E0: ; // 0x245f8e0
|
|
/* 0245F8E0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0245F8E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F8E0 */ cpu->r[1] = _t0;
|
|
/* 0245F8E4 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F8E4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0245F8E8 */ /* nop */
|
|
/* 0245F8EC */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F8EC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0245F8F0 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F8F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245F8F4 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F8F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 0245F8F8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F8F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0245F8FC */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F8FC */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0245F900 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F900 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0245F904 */ cpu->r[29] = cpu->r[3];
|
|
/* 0245F908 */ _t8 = cpu->r[29] + 0x00000010u;
|
|
/* 0245F908 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245F90C */ cpu->r[30] = cpu->r[4];
|
|
/* 0245F910 */ cpu->r[10] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245F914 */ cpu->r[31] = cpu->r[5];
|
|
/* 0245F918 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F918 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245F918 */ if (_t10) goto L_0245FC3C; else goto L_0245F91C;
|
|
L_0245F91C: ; // 0x245f91c
|
|
/* 0245F91C */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245F920 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245F924 */ _t11 = cpu->r[29] + 0x00000028u;
|
|
/* 0245F924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F928 */ cpu->r[28] = cpu->r[28] + 0x000028B4u;
|
|
/* 0245F92C */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F930 */ _t12 = cpu->r[29] + 0x00000024u;
|
|
/* 0245F930 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[6]);
|
|
/* 0245F934 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0245F938 */ _t13 = cpu->r[12] + 0x00002968u;
|
|
/* 0245F938 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0245F93C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F93C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F93C */ if (_t15) goto L_0245F940; else goto L_0245F94C;
|
|
L_0245F940: ; // 0x245f940
|
|
/* 0245F940 */ _t16 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0245F940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245F944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0245F948 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F948 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245F948 */ if (_t18) goto L_0245FBC4; else goto L_0245F94C;
|
|
L_0245F94C: ; // 0x245f94c
|
|
/* 0245F94C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000004u);
|
|
/* 0245F950 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F954 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F954 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0245F954 */ if (_t20) goto L_0245FB38; else goto L_0245F958;
|
|
L_0245F958: ; // 0x245f958
|
|
/* 0245F958 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F958 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0245F958 */ if (_t22) goto L_0245F9B8; else goto L_0245F95C;
|
|
L_0245F95C: ; // 0x245f95c
|
|
/* 0245F95C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000007u);
|
|
/* 0245F960 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F960 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0245F960 */ if (_t24) goto L_0245F964; else goto L_0245FADC;
|
|
L_0245F964: ; // 0x245f964
|
|
/* 0245F964 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F968 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245F96C */ _t25 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245F96C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0245F970 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245F974 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F974 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 0245F978 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F97C */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F97C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 0245F980 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F980 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 0245F984 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245F988 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F988 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 0245F98C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245F990 */ _t30 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245F990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0245F994 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245F998 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F998 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0245F99C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F9A0 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245F9A4 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F9A8 */ _t32 = cpu->r[29] + 0x00000020u;
|
|
/* 0245F9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0245F9AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245F9B0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F9B0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0245F9B0 */ if (_t34) goto L_0245F9B4; else goto L_0245FBBC;
|
|
L_0245F9B4: ; // 0x245f9b4
|
|
/* 0245F9B4 */ goto L_0245FB90;
|
|
L_0245F9B8: ; // 0x245f9b8
|
|
/* 0245F9B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0245F9BC */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F9BC */ _t36 = _t35 & 0x00000001u;
|
|
/* 0245F9BC */ if (_t36) goto L_0245F9C0; else goto L_0245FA24;
|
|
L_0245F9C0: ; // 0x245f9c0
|
|
/* 0245F9C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000000Au);
|
|
/* 0245F9C4 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F9C4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245F9C4 */ if (_t38) goto L_0245FB40; else goto L_0245F9C8;
|
|
L_0245F9C8: ; // 0x245f9c8
|
|
/* 0245F9C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000015u);
|
|
/* 0245F9CC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F9CC */ _t40 = _t39 & 0x00000001u;
|
|
/* 0245F9CC */ if (_t40) goto L_0245F9D0; else goto L_0245FA80;
|
|
L_0245F9D0: ; // 0x245f9d0
|
|
/* 0245F9D0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F9D4 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245F9D8 */ _t41 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245F9D8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0245F9DC */ cpu->r[7] = 0x43300000u;
|
|
/* 0245F9E0 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F9E0 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0245F9E4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F9E8 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F9E8 */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 0245F9EC */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F9EC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 0245F9F0 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245F9F4 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F9F4 */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 0245F9F8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245F9FC */ _t46 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245F9FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0245FA00 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FA04 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA04 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0245FA08 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA0C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FA10 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FA14 */ _t48 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0245FA18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FA1C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FA1C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0245FA1C */ if (_t50) goto L_0245FA20; else goto L_0245FBBC;
|
|
L_0245FA20: ; // 0x245fa20
|
|
/* 0245FA20 */ goto L_0245FB90;
|
|
L_0245FA24: ; // 0x245fa24
|
|
/* 0245FA24 */ cpu->r[9] = cpu->r[31] + 0x100A0000u;
|
|
/* 0245FA28 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FA2C */ _t51 = cpu->r[9] + 0x00002A00u;
|
|
/* 0245FA2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 0245FA30 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FA34 */ _t52 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FA34 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 0245FA38 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FA3C */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA3C */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 0245FA40 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FA44 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FA44 */ rbrew_write32(cpu->mem, _t54, cpu->r[9]);
|
|
/* 0245FA48 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA48 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 0245FA4C */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FA50 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FA50 */ rbrew_write32(cpu->mem, _t56, cpu->r[28]);
|
|
/* 0245FA54 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FA58 */ _t57 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FA58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0245FA5C */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FA60 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA60 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0245FA64 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA68 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FA6C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FA70 */ _t59 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FA70 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0245FA74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FA78 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FA78 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245FA78 */ if (_t61) goto L_0245FA7C; else goto L_0245FBBC;
|
|
L_0245FA7C: ; // 0x245fa7c
|
|
/* 0245FA7C */ goto L_0245FB90;
|
|
L_0245FA80: ; // 0x245fa80
|
|
/* 0245FA80 */ cpu->r[10] = cpu->r[31] + 0x100A0000u;
|
|
/* 0245FA84 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FA88 */ _t62 = cpu->r[10] + 0x00002A06u;
|
|
/* 0245FA88 */ cpu->r[0] = rbrew_read8(cpu->mem, _t62);
|
|
/* 0245FA8C */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FA90 */ _t63 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FA90 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 0245FA94 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FA98 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA98 */ rbrew_write32(cpu->mem, _t64, cpu->r[7]);
|
|
/* 0245FA9C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FAA0 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FAA0 */ rbrew_write32(cpu->mem, _t65, cpu->r[9]);
|
|
/* 0245FAA4 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FAA4 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0245FAA8 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FAAC */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FAAC */ rbrew_write32(cpu->mem, _t67, cpu->r[28]);
|
|
/* 0245FAB0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FAB4 */ _t68 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FAB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0245FAB8 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FABC */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FABC */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 0245FAC0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FAC4 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FAC8 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FACC */ _t70 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FACC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0245FAD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FAD4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FAD4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0245FAD4 */ if (_t72) goto L_0245FAD8; else goto L_0245FBBC;
|
|
L_0245FAD8: ; // 0x245fad8
|
|
/* 0245FAD8 */ goto L_0245FB90;
|
|
L_0245FADC: ; // 0x245fadc
|
|
/* 0245FADC */ cpu->r[11] = cpu->r[30] + 0x100A0000u;
|
|
/* 0245FAE0 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FAE4 */ _t73 = cpu->r[11] + 0x00002A07u;
|
|
/* 0245FAE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t73);
|
|
/* 0245FAE8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FAEC */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FAEC */ rbrew_write32(cpu->mem, _t74, cpu->r[7]);
|
|
/* 0245FAF0 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FAF4 */ _t75 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FAF4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0245FAF8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FAFC */ _t76 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FAFC */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 0245FB00 */ _t77 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB00 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 0245FB04 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FB08 */ _t78 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FB08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0245FB0C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FB10 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FB10 */ rbrew_write32(cpu->mem, _t79, cpu->r[28]);
|
|
/* 0245FB14 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FB18 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB18 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0245FB1C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FB20 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB24 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FB28 */ _t81 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FB28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0245FB2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FB30 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB30 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0245FB30 */ if (_t83) goto L_0245FB34; else goto L_0245FBBC;
|
|
L_0245FB34: ; // 0x245fb34
|
|
/* 0245FB34 */ goto L_0245FB90;
|
|
L_0245FB38: ; // 0x245fb38
|
|
/* 0245FB38 */ cpu->r[12] = cpu->r[30] + 0x100A0000u;
|
|
/* 0245FB3C */ _t84 = cpu->r[12] + 0x000029FCu;
|
|
/* 0245FB3C */ cpu->r[0] = rbrew_read8(cpu->mem, _t84);
|
|
L_0245FB40: ; // 0x245fb40
|
|
/* 0245FB40 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FB44 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FB48 */ _t85 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FB48 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t85);
|
|
/* 0245FB4C */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FB50 */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FB50 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0245FB54 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FB58 */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB58 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0245FB5C */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB5C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 0245FB60 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FB64 */ _t89 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FB64 */ rbrew_write32(cpu->mem, _t89, cpu->r[28]);
|
|
/* 0245FB68 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FB6C */ _t90 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FB6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0245FB70 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FB74 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB74 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 0245FB78 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB7C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FB80 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FB84 */ _t92 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FB84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0245FB88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FB8C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB8C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0245FB8C */ if (_t94) goto L_0245FB90; else goto L_0245FBBC;
|
|
L_0245FB90: ; // 0x245fb90
|
|
/* 0245FB90 */ _t95 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0245FB90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0245FB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000004u);
|
|
/* 0245FB98 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB98 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0245FB98 */ if (_t97) goto L_0245FBBC; else goto L_0245FB9C;
|
|
L_0245FB9C: ; // 0x245fb9c
|
|
/* 0245FB9C */ _t98 = cpu->r[29] + 0x00000028u;
|
|
/* 0245FB9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0245FBA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0245FBA4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FBA4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0245FBA4 */ if (_t100) goto L_0245FBBC; else goto L_0245FBA8;
|
|
L_0245FBA8: ; // 0x245fba8
|
|
/* 0245FBA8 */ _t101 = cpu->r[29] + 0x00000008u;
|
|
/* 0245FBA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0245FBAC */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245FBB0 */ _t102 = cpu->r[8] + 0x000001ACu;
|
|
/* 0245FBB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0245FBB4 */ cpu->r[4] = cpu->r[4] + 0x00007A54u;
|
|
/* 0245FBB8 */ Gambit_fn_027B70F0(cpu);
|
|
L_0245FBBC: ; // 0x245fbbc
|
|
/* 0245FBBC */ _t103 = cpu->r[29] + 0x00000028u;
|
|
/* 0245FBBC */ rbrew_write32(cpu->mem, _t103, cpu->r[30]);
|
|
/* 0245FBC0 */ _t104 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0245FBC0 */ rbrew_write32(cpu->mem, _t104, cpu->r[31]);
|
|
L_0245FBC4: ; // 0x245fbc4
|
|
/* 0245FBC4 */ _t105 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FBC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0245FBC8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0245FBCC */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FBCC */ _t107 = _t106 & 0x00000001u;
|
|
/* 0245FBCC */ if (_t107) goto L_0245FBD0; else goto L_0245FC3C;
|
|
L_0245FBD0: ; // 0x245fbd0
|
|
/* 0245FBD0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FBD4 */ _t108 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FBD4 */ rbrew_write32(cpu->mem, _t108, cpu->r[28]);
|
|
/* 0245FBD8 */ cpu->r[11] = cpu->r[11] + 0x000029F8u;
|
|
/* 0245FBDC */ _t109 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FBDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0245FBE0 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245FBE4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FBE8 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FBE8 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 0245FBEC */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FBF0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245FBF4 */ _t111 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FBF4 */ rbrew_write32(cpu->mem, _t111, cpu->r[28]);
|
|
/* 0245FBF8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245FBFC */ cpu->r[12] = cpu->r[12] + 0x000029F0u;
|
|
/* 0245FC00 */ _t112 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FC00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0245FC04 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC08 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245FC0C */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC0C */ rbrew_write32(cpu->mem, _t113, cpu->r[12]);
|
|
/* 0245FC10 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245FC14 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245FC18 */ _t114 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FC18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0245FC1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC20 */ _t115 = cpu->r[8] + 0x0000296Cu;
|
|
/* 0245FC20 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0245FC24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FC28 */ _t116 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FC28 */ rbrew_write32(cpu->mem, _t116, cpu->r[28]);
|
|
/* 0245FC2C */ cpu->r[0] = cpu->r[0] + 0x00002A1Cu;
|
|
/* 0245FC30 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245FC34 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC34 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 0245FC38 */ Gambit_fn_027ED380(cpu);
|
|
L_0245FC3C: ; // 0x245fc3c
|
|
/* 0245FC3C */ _t118 = cpu->r[1] + 0x00000020u;
|
|
/* 0245FC3C */ cpu->r[28] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0245FC40 */ _t119 = cpu->r[1] + 0x00000024u;
|
|
/* 0245FC40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0245FC44 */ _t120 = cpu->r[1] + 0x00000038u;
|
|
/* 0245FC44 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0245FC48 */ _t121 = cpu->r[1] + 0x00000028u;
|
|
/* 0245FC48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0245FC4C */ _t122 = cpu->r[1] + 0x00000030u;
|
|
/* 0245FC4C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 0245FC50 */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245FC50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0245FC54 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FC54 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0245FC54 */ if (_t125) goto L_0245FC58; // else: addr-0 trap, fall-through
|
|
L_0245FC58: ; // 0x245fc58
|
|
/* 0245FC58 */ _t126 = cpu->r[1] + 0x00000044u;
|
|
/* 0245FC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0245FC5C */ cpu->lr = cpu->r[0];
|
|
/* 0245FC60 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0245FC64 */ return;
|
|
}
|
|
|
|
// fn_0245FC68 @ 0x245fc68
|
|
void Gambit_fn_0245FC68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0245FC68: ; // 0x245fc68
|
|
/* 0245FC68 */ _t0 = cpu->r[3] + 0x00000010u;
|
|
/* 0245FC68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0245FC6C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FC70 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FC70 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0245FC70 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FC70 */ goto L_0245FC74;
|
|
L_0245FC74: ; // 0x245fc74
|
|
/* 0245FC74 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0245FC78 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245FC7C */ _t3 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0245FC7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245FC80 */ _t4 = cpu->r[3] + 0x00000024u;
|
|
/* 0245FC80 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0245FC84 */ _t5 = cpu->r[3] + 0x00000028u;
|
|
/* 0245FC84 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0245FC88 */ return;
|
|
}
|
|
|
|
// fn_0245FC8C @ 0x245fc8c
|
|
void Gambit_fn_0245FC8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0245FC8C: ; // 0x245fc8c
|
|
/* 0245FC8C */ cpu->r[0] = cpu->lr;
|
|
/* 0245FC90 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245FC90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245FC90 */ cpu->r[1] = _t0;
|
|
/* 0245FC94 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FC94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245FC98 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245FC9C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FC9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245FCA0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245FCA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245FCA4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FCA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FCA8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FCA8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245FCA8 */ if (_t5) goto L_0245FCF4; else goto L_0245FCAC;
|
|
L_0245FCAC: ; // 0x245fcac
|
|
/* 0245FCAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0245FCB0 */ _t6 = cpu->r[31] + 0x00000026u;
|
|
/* 0245FCB0 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[4]);
|
|
/* 0245FCB4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FCB4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245FCB4 */ if (_t8) goto L_0245FCF4; else goto L_0245FCB8;
|
|
L_0245FCB8: ; // 0x245fcb8
|
|
/* 0245FCB8 */ _t9 = cpu->r[31] + 0x00000025u;
|
|
/* 0245FCB8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0245FCBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0245FCC0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FCC0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0245FCC0 */ if (_t11) goto L_0245FCF4; else goto L_0245FCC4;
|
|
L_0245FCC4: ; // 0x245fcc4
|
|
/* 0245FCC4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245FCC8 */ _t12 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245FCC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245FCCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FCD0 */ cpu->r[9] = cpu->r[9] + 0x000028B4u;
|
|
/* 0245FCD4 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245FCD8 */ cpu->r[11] = cpu->r[11] + 0x00002A28u;
|
|
/* 0245FCDC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FCDC */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0245FCE0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FCE4 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FCE4 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 0245FCE8 */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FCEC */ cpu->r[0] = 0x00000000u;
|
|
/* 0245FCF0 */ _t15 = cpu->r[31] + 0x00000025u;
|
|
/* 0245FCF0 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
L_0245FCF4: ; // 0x245fcf4
|
|
/* 0245FCF4 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FCF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245FCF8 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FCF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245FCFC */ cpu->lr = cpu->r[0];
|
|
/* 0245FD00 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FD04 */ return;
|
|
}
|
|
|
|
// fn_0245FC90 @ 0x245fc90
|
|
void Gambit_fn_0245FC90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0245FC90: ; // 0x245fc90
|
|
/* 0245FC90 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245FC90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245FC90 */ cpu->r[1] = _t0;
|
|
/* 0245FC94 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FC94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245FC98 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245FC9C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FC9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245FCA0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245FCA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245FCA4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FCA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FCA8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FCA8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245FCA8 */ if (_t5) goto L_0245FCF4; else goto L_0245FCAC;
|
|
L_0245FCAC: ; // 0x245fcac
|
|
/* 0245FCAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0245FCB0 */ _t6 = cpu->r[31] + 0x00000026u;
|
|
/* 0245FCB0 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[4]);
|
|
/* 0245FCB4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FCB4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245FCB4 */ if (_t8) goto L_0245FCF4; else goto L_0245FCB8;
|
|
L_0245FCB8: ; // 0x245fcb8
|
|
/* 0245FCB8 */ _t9 = cpu->r[31] + 0x00000025u;
|
|
/* 0245FCB8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0245FCBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0245FCC0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FCC0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0245FCC0 */ if (_t11) goto L_0245FCF4; else goto L_0245FCC4;
|
|
L_0245FCC4: ; // 0x245fcc4
|
|
/* 0245FCC4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245FCC8 */ _t12 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245FCC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245FCCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FCD0 */ cpu->r[9] = cpu->r[9] + 0x000028B4u;
|
|
/* 0245FCD4 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245FCD8 */ cpu->r[11] = cpu->r[11] + 0x00002A28u;
|
|
/* 0245FCDC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FCDC */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0245FCE0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FCE4 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FCE4 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 0245FCE8 */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FCEC */ cpu->r[0] = 0x00000000u;
|
|
/* 0245FCF0 */ _t15 = cpu->r[31] + 0x00000025u;
|
|
/* 0245FCF0 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
L_0245FCF4: ; // 0x245fcf4
|
|
/* 0245FCF4 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FCF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245FCF8 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FCF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245FCFC */ cpu->lr = cpu->r[0];
|
|
/* 0245FD00 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FD04 */ return;
|
|
}
|
|
|
|
// fn_0245FD08 @ 0x245fd08
|
|
void Gambit_fn_0245FD08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_0245FD08: ; // 0x245fd08
|
|
/* 0245FD08 */ cpu->r[0] = cpu->lr;
|
|
/* 0245FD0C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0245FD0C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0245FD10 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FD14 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245FD14 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0245FD14 */ cpu->r[1] = _t1;
|
|
/* 0245FD18 */ _t2 = cpu->r[11] + 0x00002968u;
|
|
/* 0245FD18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0245FD1C */ _t3 = cpu->r[3] + 0x00000020u;
|
|
/* 0245FD1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0245FD20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0245FD24 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FD24 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245FD24 */ if (_t5) goto L_0245FD28; else goto L_0245FD88;
|
|
L_0245FD28: ; // 0x245fd28
|
|
/* 0245FD28 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245FD2C */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 0245FD2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245FD30 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FD34 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FD34 */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 0245FD38 */ cpu->r[0] = cpu->r[0] + 0x00002944u;
|
|
/* 0245FD3C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FD3C */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0245FD40 */ cpu->r[5] = 0x100A0000u;
|
|
/* 0245FD44 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FD44 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0245FD48 */ _t10 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245FD48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245FD4C */ cpu->r[5] = cpu->r[5] + 0x00002A30u;
|
|
/* 0245FD50 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FD54 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0245FD58 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FD58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245FD5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FD60 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FD60 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245FD60 */ if (_t13) goto L_0245FD88; else goto L_0245FD64;
|
|
L_0245FD64: ; // 0x245fd64
|
|
/* 0245FD64 */ _t14 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0245FD64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245FD68 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245FD6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0245FD70 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FD70 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0245FD70 */ if (_t17) goto L_0245FD74; else goto L_0245FD88;
|
|
L_0245FD74: ; // 0x245fd74
|
|
/* 0245FD74 */ _t18 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0245FD74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245FD78 */ cpu->r[11] = 0x0000003Cu;
|
|
/* 0245FD7C */ _t19 = cpu->r[12] + 0x00000120u;
|
|
/* 0245FD7C */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0245FD80 */ cpu->r[0] = cpu->r[0] | 0x00100000u;
|
|
/* 0245FD84 */ _t20 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0245FD84 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
L_0245FD88: ; // 0x245fd88
|
|
/* 0245FD88 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FD88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245FD8C */ cpu->lr = cpu->r[0];
|
|
/* 0245FD90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FD94 */ return;
|
|
}
|
|
|
|
// fn_0245FD14 @ 0x245fd14
|
|
void Gambit_fn_0245FD14(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_0245FD14: ; // 0x245fd14
|
|
/* 0245FD14 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245FD14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245FD14 */ cpu->r[1] = _t0;
|
|
/* 0245FD18 */ _t1 = cpu->r[11] + 0x00002968u;
|
|
/* 0245FD18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0245FD1C */ _t2 = cpu->r[3] + 0x00000020u;
|
|
/* 0245FD1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0245FD20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0245FD24 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FD24 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245FD24 */ if (_t4) goto L_0245FD28; else goto L_0245FD88;
|
|
L_0245FD28: ; // 0x245fd28
|
|
/* 0245FD28 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245FD2C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0245FD2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245FD30 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FD34 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FD34 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 0245FD38 */ cpu->r[0] = cpu->r[0] + 0x00002944u;
|
|
/* 0245FD3C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FD3C */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 0245FD40 */ cpu->r[5] = 0x100A0000u;
|
|
/* 0245FD44 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FD44 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245FD48 */ _t9 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245FD48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245FD4C */ cpu->r[5] = cpu->r[5] + 0x00002A30u;
|
|
/* 0245FD50 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FD54 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0245FD58 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FD58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245FD5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FD60 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FD60 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0245FD60 */ if (_t12) goto L_0245FD88; else goto L_0245FD64;
|
|
L_0245FD64: ; // 0x245fd64
|
|
/* 0245FD64 */ _t13 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0245FD64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245FD68 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245FD6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0245FD70 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FD70 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0245FD70 */ if (_t16) goto L_0245FD74; else goto L_0245FD88;
|
|
L_0245FD74: ; // 0x245fd74
|
|
/* 0245FD74 */ _t17 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0245FD74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245FD78 */ cpu->r[11] = 0x0000003Cu;
|
|
/* 0245FD7C */ _t18 = cpu->r[12] + 0x00000120u;
|
|
/* 0245FD7C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0245FD80 */ cpu->r[0] = cpu->r[0] | 0x00100000u;
|
|
/* 0245FD84 */ _t19 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0245FD84 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_0245FD88: ; // 0x245fd88
|
|
/* 0245FD88 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FD88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245FD8C */ cpu->lr = cpu->r[0];
|
|
/* 0245FD90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FD94 */ return;
|
|
}
|
|
|
|
// fn_0245FD98 @ 0x245fd98
|
|
void Gambit_fn_0245FD98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_0245FD98: ; // 0x245fd98
|
|
/* 0245FD98 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0245FD98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245FD98 */ cpu->r[1] = _t0;
|
|
/* 0245FD9C */ /* nop */
|
|
/* 0245FDA0 */ cpu->r[0] = cpu->lr;
|
|
/* 0245FDA4 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0245FDA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0245FDA8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0245FDAC */ _t2 = cpu->r[29] + 0x00000010u;
|
|
/* 0245FDAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245FDB0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FDB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245FDB4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245FDB8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FDB8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245FDB8 */ if (_t4) goto L_0245FEDC; else goto L_0245FDBC;
|
|
L_0245FDBC: ; // 0x245fdbc
|
|
/* 0245FDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245FDC0 */ cpu->r[7] = cpu->r[31];
|
|
/* 0245FDC4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FDC4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245FDC4 */ if (_t6) goto L_0245FDC8; else goto L_0245FDE0;
|
|
L_0245FDC8: ; // 0x245fdc8
|
|
/* 0245FDC8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0245FDCC */ cpu->r[8] = cpu->r[31];
|
|
/* 0245FDD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245FDD4 */ _t7 = cpu->r[29] + 0x00000034u;
|
|
/* 0245FDD4 */ rbrew_write32(cpu->mem, _t7, cpu->r[7]);
|
|
/* 0245FDD8 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FDD8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245FDD8 */ if (_t9) goto L_0245FDFC; else goto L_0245FDDC;
|
|
L_0245FDDC: ; // 0x245fddc
|
|
/* 0245FDDC */ goto L_0245FE40;
|
|
L_0245FDE0: ; // 0x245fde0
|
|
/* 0245FDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0245FDE4 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245FDE4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0245FDE4 */ if (_t11) goto L_0245FDE8; else goto L_0245FDEC;
|
|
L_0245FDE8: ; // 0x245fde8
|
|
/* 0245FDE8 */ cpu->r[7] = 0x00000003u;
|
|
L_0245FDEC: ; // 0x245fdec
|
|
/* 0245FDEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245FDF0 */ cpu->r[8] = cpu->r[31];
|
|
/* 0245FDF4 */ _t12 = cpu->r[29] + 0x00000034u;
|
|
/* 0245FDF4 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 0245FDF8 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FDF8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0245FDF8 */ if (_t14) goto L_0245FDFC; else goto L_0245FE40;
|
|
L_0245FDFC: ; // 0x245fdfc
|
|
/* 0245FDFC */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE00 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245FE04 */ cpu->r[12] = 0x10110000u;
|
|
/* 0245FE08 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FE08 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0245FE0C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FE10 */ cpu->r[10] = 0x00000020u;
|
|
/* 0245FE14 */ _t16 = cpu->r[29] + 0x00000038u;
|
|
/* 0245FE14 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 0245FE18 */ _t17 = cpu->r[12] + 0x00007399u;
|
|
/* 0245FE18 */ cpu->r[12] = rbrew_read8(cpu->mem, _t17);
|
|
/* 0245FE1C */ cpu->r[0] = cpu->r[0] + 0x000028FCu;
|
|
/* 0245FE20 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FE20 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0245FE24 */ cpu->r[27] = 0x00000003u;
|
|
/* 0245FE28 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FE28 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0245FE2C */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245FE30 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE30 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[12]);
|
|
/* 0245FE34 */ cpu->r[28] = cpu->r[28] + 0x00002A3Cu;
|
|
/* 0245FE38 */ _t21 = cpu->r[1] + 0x00000033u;
|
|
/* 0245FE38 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[12]);
|
|
/* 0245FE3C */ goto L_0245FE8C;
|
|
L_0245FE40: ; // 0x245fe40
|
|
/* 0245FE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 0245FE44 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245FE44 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0245FE44 */ if (_t23) goto L_0245FE48; else goto L_0245FE4C;
|
|
L_0245FE48: ; // 0x245fe48
|
|
/* 0245FE48 */ cpu->r[8] = 0x00000003u;
|
|
L_0245FE4C: ; // 0x245fe4c
|
|
/* 0245FE4C */ cpu->r[10] = 0x00000020u;
|
|
/* 0245FE50 */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE54 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FE54 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 0245FE58 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FE58 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0245FE5C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FE60 */ cpu->r[12] = 0x10110000u;
|
|
/* 0245FE64 */ _t26 = cpu->r[29] + 0x00000038u;
|
|
/* 0245FE64 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 0245FE68 */ cpu->r[0] = cpu->r[0] + 0x000028FCu;
|
|
/* 0245FE6C */ _t27 = cpu->r[12] + 0x00007399u;
|
|
/* 0245FE6C */ cpu->r[12] = rbrew_read8(cpu->mem, _t27);
|
|
/* 0245FE70 */ cpu->r[27] = 0x00000003u;
|
|
/* 0245FE74 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FE74 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0245FE78 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245FE7C */ _t29 = cpu->r[1] + 0x00000033u;
|
|
/* 0245FE7C */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[12]);
|
|
/* 0245FE80 */ cpu->r[28] = cpu->r[28] + 0x00002A3Cu;
|
|
/* 0245FE84 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245FE88 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE88 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[12]);
|
|
L_0245FE8C: ; // 0x245fe8c
|
|
/* 0245FE8C */ cpu->r[5] = cpu->r[30];
|
|
/* 0245FE90 */ cpu->r[4] = cpu->r[28];
|
|
/* 0245FE94 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FE98 */ _t31 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0245FE98 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0245FE98 */ if (_t32) goto L_0245FE9C; // else: addr-0 trap, fall-through
|
|
L_0245FE9C: ; // 0x245fe9c
|
|
/* 0245FE9C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0245FEA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[31]);
|
|
/* 0245FEA4 */ cpu->r[4] = cpu->r[30] + 0x00000001u;
|
|
/* 0245FEA8 */ _t33 = cpu->r[29] + 0x00000030u;
|
|
/* 0245FEA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0245FEAC */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FEAC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0245FEAC */ if (_t35) goto L_0245FEB0; else goto L_0245FEC8;
|
|
L_0245FEB0: ; // 0x245feb0
|
|
/* 0245FEB0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FEB4 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245FEB8 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0245FEB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245FEBC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0245FEC0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FEC0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0245FEC0 */ if (_t37) goto L_0245FEC4; else goto L_0245FE8C;
|
|
L_0245FEC4: ; // 0x245fec4
|
|
/* 0245FEC4 */ goto L_0245FEDC;
|
|
L_0245FEC8: ; // 0x245fec8
|
|
/* 0245FEC8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FECC */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FED0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0245FED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245FED4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0245FED8 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FED8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0245FED8 */ if (_t39) goto L_0245FEDC; else goto L_0245FE8C;
|
|
L_0245FEDC: ; // 0x245fedc
|
|
/* 0245FEDC */ /* nop */
|
|
/* 0245FEE0 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0245FEE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0245FEE4 */ cpu->lr = cpu->r[0];
|
|
/* 0245FEE8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0245FEEC */ return;
|
|
}
|
|
|
|
// fn_0245FF4C @ 0x245ff4c
|
|
void Gambit_fn_0245FF4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0245FF4C: ; // 0x245ff4c
|
|
/* 0245FF4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245FF4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245FF4C */ cpu->r[1] = _t0;
|
|
/* 0245FF50 */ cpu->r[0] = cpu->r[0] + 0x00002A4Cu;
|
|
/* 0245FF54 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FF54 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0245FF54 */ if (_t2) goto L_0245FF7C; else goto L_0245FF58;
|
|
L_0245FF58: ; // 0x245ff58
|
|
/* 0245FF58 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FF58 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245FF5C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FF60 */ _t4 = cpu->r[3] + 0x00000030u;
|
|
/* 0245FF60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245FF64 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FF64 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0245FF68 */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FF6C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FF6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245FF70 */ cpu->lr = cpu->r[0];
|
|
/* 0245FF74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FF78 */ return;
|
|
L_0245FF7C: ; // 0x245ff7c
|
|
/* 0245FF7C */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FF7C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0245FF80 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FF84 */ _t8 = cpu->r[3] + 0x00000030u;
|
|
/* 0245FF84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245FF88 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FF88 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0245FF8C */ Gambit_fn_027ED798(cpu);
|
|
/* 0245FF90 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FF90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245FF94 */ cpu->lr = cpu->r[0];
|
|
/* 0245FF98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FF9C */ return;
|
|
}
|
|
|
|
// fn_02460048 @ 0x2460048
|
|
void Gambit_fn_02460048(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_02460048: ; // 0x2460048
|
|
/* 02460048 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02460048 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02460048 */ cpu->r[1] = _t0;
|
|
/* 0246004C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0246004C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02460050 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460054 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460054 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02460058 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02460058 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246005C */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0246005C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02460060 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460060 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02460060 */ if (_t5) goto L_024600E0; else goto L_02460064;
|
|
L_02460064: ; // 0x2460064
|
|
/* 02460064 */ cpu->r[0] = 0x00000001u;
|
|
/* 02460068 */ /* nop */
|
|
/* 0246006C */ _t6 = cpu->r[31] + 0x0000004Du;
|
|
/* 0246006C */ cpu->r[9] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02460070 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02460074 */ cpu->r[10] = cpu->r[9] & cpu->r[12];
|
|
/* 02460074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02460078 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460078 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02460078 */ if (_t8) goto L_0246007C; else goto L_0246009C;
|
|
L_0246007C: ; // 0x246007c
|
|
/* 0246007C */ cpu->r[11] = cpu->r[9] | cpu->r[12];
|
|
/* 02460080 */ cpu->r[12] = cpu->r[31] + 0x00000054u;
|
|
/* 02460084 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000003u);
|
|
/* 02460088 */ _t9 = cpu->r[31] + 0x0000004Du;
|
|
/* 02460088 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[11]);
|
|
/* 0246008C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246008C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0246008C */ if (_t11) goto L_02460090; else goto L_02460094;
|
|
L_02460090: ; // 0x2460090
|
|
/* 02460090 */ cpu->r[12] = cpu->r[12] + cpu->r[4];
|
|
L_02460094: ; // 0x2460094
|
|
/* 02460094 */ cpu->r[0] = 0x00000001u;
|
|
/* 02460098 */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 02460098 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
L_0246009C: ; // 0x246009c
|
|
/* 0246009C */ _t13 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0246009C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024600A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024600A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024600A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024600A4 */ if (_t15) goto L_024600A8; else goto L_024600E0;
|
|
L_024600A8: ; // 0x24600a8
|
|
/* 024600A8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024600AC */ _t16 = cpu->r[31] + 0x00000048u;
|
|
/* 024600AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024600B0 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024600B4 */ cpu->r[11] = cpu->r[11] + 0x000028B4u;
|
|
/* 024600B8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024600BC */ _t17 = cpu->r[9] + 0x00002968u;
|
|
/* 024600BC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024600C0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024600C4 */ cpu->r[0] = cpu->r[0] + 0x00002A4Fu;
|
|
/* 024600C8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024600C8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 024600CC */ cpu->r[4] = 0x00000006u;
|
|
/* 024600D0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 024600D0 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024600D4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024600D8 */ cpu->r[10] = 0x00000001u;
|
|
/* 024600DC */ _t20 = cpu->r[31] + 0x0000004Cu;
|
|
/* 024600DC */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[10]);
|
|
L_024600E0: ; // 0x24600e0
|
|
/* 024600E0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024600E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024600E4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024600E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024600E8 */ cpu->lr = cpu->r[0];
|
|
/* 024600EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024600F0 */ return;
|
|
}
|
|
|
|
// fn_024600F8 @ 0x24600f8
|
|
void Gambit_fn_024600F8(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_024600F8: ; // 0x24600f8
|
|
/* 024600F8 */ _t0 = cpu->r[1] + 0xFFFFFB60u;
|
|
/* 024600F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024600F8 */ cpu->r[1] = _t0;
|
|
/* 024600FC */ _t1 = cpu->r[1] + 0x00000494u;
|
|
/* 024600FC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02460100 */ _t2 = cpu->r[1] + 0x00000498u;
|
|
/* 02460100 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02460104 */ _t3 = cpu->r[1] + 0x0000049Cu;
|
|
/* 02460104 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02460108 */ cpu->r[30] = cpu->r[3];
|
|
/* 0246010C */ _t4 = cpu->r[1] + 0x000004A4u;
|
|
/* 0246010C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02460110 */ _t5 = cpu->r[30] + 0x00000010u;
|
|
/* 02460110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02460114 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02460118 */ cpu->r[31] = cpu->r[4];
|
|
/* 0246011C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246011C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246011C */ if (_t7) goto L_0246015C; else goto L_02460120;
|
|
L_02460120: ; // 0x2460120
|
|
/* 02460120 */ Gambit_fn_027E3F5C(cpu);
|
|
/* 02460124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460128 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460128 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02460128 */ if (_t9) goto L_0246012C; else goto L_0246015C;
|
|
L_0246012C: ; // 0x246012c
|
|
/* 0246012C */ _t10 = cpu->r[30] + 0x0000004Cu;
|
|
/* 0246012C */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02460130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460134 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460134 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02460134 */ if (_t12) goto L_0246015C; else goto L_02460138;
|
|
L_02460138: ; // 0x2460138
|
|
/* 02460138 */ _t13 = cpu->r[30] + 0x00000050u;
|
|
/* 02460138 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246013C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 02460140 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460140 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02460140 */ if (_t15) goto L_0246015C; else goto L_02460144;
|
|
L_02460144: ; // 0x2460144
|
|
/* 02460144 */ cpu->r[8] = 0x00000001u;
|
|
/* 02460148 */ /* nop */
|
|
/* 0246014C */ _t16 = cpu->r[30] + 0x0000004Du;
|
|
/* 0246014C */ cpu->r[10] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02460150 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02460154 */ cpu->r[0] = cpu->r[10] & cpu->r[0];
|
|
/* 02460154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460158 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460158 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02460158 */ if (_t18) goto L_0246015C; else goto L_0246017C;
|
|
L_0246015C: ; // 0x246015c
|
|
/* 0246015C */ _t19 = cpu->r[1] + 0x00000494u;
|
|
/* 0246015C */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02460160 */ _t20 = cpu->r[1] + 0x000004A4u;
|
|
/* 02460160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02460164 */ _t21 = cpu->r[1] + 0x00000498u;
|
|
/* 02460164 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02460168 */ cpu->lr = cpu->r[0];
|
|
/* 0246016C */ _t22 = cpu->r[1] + 0x0000049Cu;
|
|
/* 0246016C */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02460170 */ cpu->r[1] = cpu->r[1] + 0x000004A0u;
|
|
/* 02460174 */ cpu->r[3] = 0x00000000u;
|
|
/* 02460178 */ return;
|
|
L_0246017C: ; // 0x246017c
|
|
/* 0246017C */ cpu->r[12] = 0x10110000u;
|
|
/* 02460180 */ cpu->r[11] = cpu->r[1] + 0x00000014u;
|
|
/* 02460184 */ _t23 = cpu->r[12] + 0x00007399u;
|
|
/* 02460184 */ cpu->r[12] = rbrew_read8(cpu->mem, _t23);
|
|
/* 02460188 */ cpu->r[0] = 0x00000020u;
|
|
/* 0246018C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0246018C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02460190 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02460194 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02460194 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02460198 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0246019C */ cpu->r[8] = cpu->r[8] + 0x000028FCu;
|
|
/* 024601A0 */ _t26 = cpu->r[1] + 0x00000033u;
|
|
/* 024601A0 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[12]);
|
|
/* 024601A4 */ cpu->r[4] = cpu->r[29] + 0x00002A54u;
|
|
/* 024601A8 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024601A8 */ rbrew_write32(cpu->mem, _t27, cpu->r[8]);
|
|
/* 024601AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024601B0 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 024601B0 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[12]);
|
|
/* 024601B4 */ _t29 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024601B4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024601B4 */ if (_t30) goto L_024601B8; // else: addr-0 trap, fall-through
|
|
L_024601B8: ; // 0x24601b8
|
|
/* 024601B8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024601BC */ _t31 = cpu->r[30] + 0x00000048u;
|
|
/* 024601BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024601C0 */ _t32 = cpu->r[30] + 0x00000050u;
|
|
/* 024601C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024601C4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024601C8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024601CC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024601D0 */ cpu->r[4] = cpu->r[29] + 0x00002A54u;
|
|
/* 024601D4 */ cpu->r[5] = cpu->r[31];
|
|
/* 024601D8 */ _t33 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024601D8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024601D8 */ if (_t34) goto L_024601DC; // else: addr-0 trap, fall-through
|
|
L_024601DC: ; // 0x24601dc
|
|
/* 024601DC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024601E0 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024601E4 */ _t35 = cpu->r[30] + 0x00000048u;
|
|
/* 024601E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024601E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024601EC */ _t36 = cpu->r[9] + 0x00002968u;
|
|
/* 024601EC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 024601F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024601F4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024601F8 */ _t37 = cpu->r[30] + 0x00000048u;
|
|
/* 024601F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024601FC */ cpu->r[4] = 0x101E0000u;
|
|
/* 02460200 */ _t38 = cpu->r[12] + 0x000001ACu;
|
|
/* 02460200 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02460204 */ cpu->r[4] = cpu->r[4] + 0x00007A6Cu;
|
|
/* 02460208 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0246020C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460210 */ _t39 = cpu->r[30] + 0x00000050u;
|
|
/* 02460210 */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 02460214 */ Gambit_fn_021749B0(cpu);
|
|
/* 02460218 */ _t40 = cpu->r[30] + 0x00000050u;
|
|
/* 02460218 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0246021C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460220 */ Gambit_fn_02174DD4(cpu);
|
|
/* 02460224 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460228 */ Gambit_fn_02174A38(cpu);
|
|
/* 0246022C */ cpu->r[4] = 0x00000002u;
|
|
/* 02460230 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460234 */ Gambit_fn_02174A24(cpu);
|
|
/* 02460238 */ _t41 = cpu->r[1] + 0x00000494u;
|
|
/* 02460238 */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0246023C */ _t42 = cpu->r[1] + 0x000004A4u;
|
|
/* 0246023C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02460240 */ _t43 = cpu->r[1] + 0x00000498u;
|
|
/* 02460240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02460244 */ cpu->lr = cpu->r[0];
|
|
/* 02460248 */ _t44 = cpu->r[1] + 0x0000049Cu;
|
|
/* 02460248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0246024C */ cpu->r[1] = cpu->r[1] + 0x000004A0u;
|
|
/* 02460250 */ cpu->r[3] = 0x00000001u;
|
|
/* 02460254 */ return;
|
|
}
|
|
|
|
// fn_02460258 @ 0x2460258
|
|
void Gambit_fn_02460258(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_02460258: ; // 0x2460258
|
|
/* 02460258 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 02460258 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02460258 */ cpu->r[1] = _t0;
|
|
/* 0246025C */ /* nop */
|
|
/* 02460260 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 02460260 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02460264 */ cpu->r[0] = cpu->lr;
|
|
/* 02460268 */ _t2 = cpu->r[1] + 0x000000A4u;
|
|
/* 02460268 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246026C */ /* nop */
|
|
/* 02460270 */ cpu->r[25] = cpu->r[3];
|
|
/* 02460274 */ _t3 = cpu->r[1] + 0x00000098u;
|
|
/* 02460274 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02460278 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0246027C */ _t4 = cpu->r[25] + 0x00000050u;
|
|
/* 0246027C */ cpu->r[27] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02460280 */ Gambit_fn_02173CCC(cpu);
|
|
/* 02460284 */ _t5 = cpu->r[25] + 0x00000050u;
|
|
/* 02460284 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02460288 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0246028C */ Gambit_fn_02174330(cpu);
|
|
/* 02460290 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02460294 */ cpu->r[6] = cpu->r[3];
|
|
/* 02460294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02460298 */ cpu->r[11] = 0x10110000u;
|
|
/* 0246029C */ cpu->r[31] = cpu->r[31] + 0x000028FCu;
|
|
/* 024602A0 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024602A0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024602A0 */ if (_t7) goto L_02460310; else goto L_024602A4;
|
|
L_024602A4: ; // 0x24602a4
|
|
/* 024602A4 */ _t8 = cpu->r[11] + 0x00007399u;
|
|
/* 024602A4 */ cpu->r[29] = rbrew_read8(cpu->mem, _t8);
|
|
/* 024602A8 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 024602AC */ cpu->r[12] = cpu->r[1] + 0x00000050u;
|
|
/* 024602B0 */ _t9 = cpu->r[1] + 0x00000050u;
|
|
/* 024602B0 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[29]);
|
|
/* 024602B4 */ cpu->r[5] = cpu->r[27];
|
|
/* 024602B8 */ _t10 = cpu->r[1] + 0x0000006Fu;
|
|
/* 024602B8 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[29]);
|
|
/* 024602BC */ cpu->r[4] = 0x100A0000u;
|
|
/* 024602C0 */ _t11 = cpu->r[1] + 0x00000044u;
|
|
/* 024602C0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 024602C4 */ cpu->r[0] = 0x00000020u;
|
|
/* 024602C8 */ _t12 = cpu->r[1] + 0x00000048u;
|
|
/* 024602C8 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 024602CC */ cpu->r[4] = cpu->r[4] + 0x00002A74u;
|
|
/* 024602D0 */ _t13 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024602D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024602D4 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024602D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024602D4 */ if (_t15) goto L_024602D8; // else: addr-0 trap, fall-through
|
|
L_024602D8: ; // 0x24602d8
|
|
/* 024602D8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024602DC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024602E0 */ _t16 = cpu->r[12] + 0x00001344u;
|
|
/* 024602E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024602E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024602E8 */ _t17 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024602E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024602EC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 024602F0 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 024602F4 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 024602F4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024602F8 */ Gambit_fn_02022278(cpu);
|
|
/* 024602FC */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 024602FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02460300 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460304 */ cpu->r[4] = 0x00000002u;
|
|
/* 02460308 */ Gambit_fn_02173D6C(cpu);
|
|
/* 0246030C */ goto L_02460404;
|
|
L_02460310: ; // 0x2460310
|
|
/* 02460310 */ _t20 = cpu->r[11] + 0x00007399u;
|
|
/* 02460310 */ cpu->r[29] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02460314 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02460318 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 0246031C */ _t21 = cpu->r[11] + 0x00002968u;
|
|
/* 0246031C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02460320 */ cpu->r[26] = 0x00000000u;
|
|
/* 02460324 */ _t22 = cpu->r[1] + 0x00000033u;
|
|
/* 02460324 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[29]);
|
|
/* 02460328 */ cpu->r[28] = 0x00000003u;
|
|
/* 0246032C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246032C */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 02460330 */ cpu->r[0] = 0x00000020u;
|
|
/* 02460334 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02460334 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[29]);
|
|
/* 02460338 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02460338 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0246033C */ cpu->r[30] = 0x100A0000u;
|
|
/* 02460340 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02460340 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
L_02460344: ; // 0x2460344
|
|
/* 02460344 */ _t27 = cpu->r[25] + 0x00000050u;
|
|
/* 02460344 */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02460348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0246034C */ cpu->r[4] = cpu->r[30] + 0x00002A64u;
|
|
/* 02460350 */ _t28 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02460350 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02460350 */ if (_t29) goto L_02460354; // else: addr-0 trap, fall-through
|
|
L_02460354: ; // 0x2460354
|
|
/* 02460354 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02460358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0246035C */ _t30 = cpu->r[25] + 0x00000048u;
|
|
/* 0246035C */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02460360 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460360 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02460360 */ if (_t32) goto L_02460364; else goto L_02460384;
|
|
L_02460364: ; // 0x2460364
|
|
/* 02460364 */ cpu->f[1] = cpu->f[31];
|
|
/* 02460368 */ cpu->r[4] = cpu->r[27];
|
|
/* 0246036C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02460370 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02460374 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02460374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02460378 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0246037C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246037C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0246037C */ if (_t34) goto L_02460380; else goto L_02460344;
|
|
L_02460380: ; // 0x2460380
|
|
/* 02460380 */ goto L_0246039C;
|
|
L_02460384: ; // 0x2460384
|
|
/* 02460384 */ _t35 = cpu->r[25] + 0x00000050u;
|
|
/* 02460384 */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02460388 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246038C */ Gambit_fn_027ED798(cpu);
|
|
/* 02460390 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02460390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02460394 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02460398 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460398 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02460398 */ if (_t37) goto L_0246039C; else goto L_02460344;
|
|
L_0246039C: ; // 0x246039c
|
|
/* 0246039C */ _t38 = cpu->r[1] + 0x0000006Fu;
|
|
/* 0246039C */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[29]);
|
|
/* 024603A0 */ cpu->r[12] = cpu->r[1] + 0x00000050u;
|
|
/* 024603A4 */ cpu->r[0] = 0x00000020u;
|
|
/* 024603A8 */ _t39 = cpu->r[1] + 0x00000050u;
|
|
/* 024603A8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[29]);
|
|
/* 024603AC */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 024603B0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024603B4 */ _t40 = cpu->r[1] + 0x00000044u;
|
|
/* 024603B4 */ rbrew_write32(cpu->mem, _t40, cpu->r[12]);
|
|
/* 024603B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 024603BC */ cpu->r[4] = cpu->r[4] + 0x00002A74u;
|
|
/* 024603C0 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024603C0 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 024603C4 */ cpu->r[5] = cpu->r[6];
|
|
/* 024603C8 */ _t42 = cpu->r[1] + 0x00000048u;
|
|
/* 024603C8 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]);
|
|
/* 024603CC */ _t43 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024603CC */ _t44 = _t43 & 0x00000001u;
|
|
/* 024603CC */ if (_t44) goto L_024603D0; // else: addr-0 trap, fall-through
|
|
L_024603D0: ; // 0x24603d0
|
|
/* 024603D0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024603D4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024603D8 */ _t45 = cpu->r[12] + 0x00001344u;
|
|
/* 024603D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024603DC */ cpu->r[0] = 0x00000001u;
|
|
/* 024603E0 */ _t46 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024603E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024603E4 */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 024603E8 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 024603EC */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 024603EC */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 024603F0 */ Gambit_fn_02022278(cpu);
|
|
/* 024603F4 */ _t48 = cpu->r[3] + 0x00000004u;
|
|
/* 024603F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024603F8 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 024603FC */ cpu->r[4] = 0x00000002u;
|
|
/* 02460400 */ Gambit_fn_02173D6C(cpu);
|
|
L_02460404: ; // 0x2460404
|
|
/* 02460404 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460408 */ /* nop */
|
|
/* 0246040C */ _t49 = cpu->r[1] + 0x00000098u;
|
|
/* 0246040C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02460410 */ _t50 = cpu->r[1] + 0x00000090u;
|
|
/* 02460410 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t50);
|
|
/* 02460414 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02460414 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02460414 */ if (_t52) goto L_02460418; // else: addr-0 trap, fall-through
|
|
L_02460418: ; // 0x2460418
|
|
/* 02460418 */ _t53 = cpu->r[1] + 0x000000A4u;
|
|
/* 02460418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0246041C */ cpu->lr = cpu->r[0];
|
|
/* 02460420 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 02460424 */ return;
|
|
}
|
|
|
|
// fn_0246042C @ 0x246042c
|
|
void Gambit_fn_0246042C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_0246042C: ; // 0x246042c
|
|
/* 0246042C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0246042C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246042C */ cpu->r[1] = _t0;
|
|
/* 02460430 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 02460430 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02460434 */ /* nop */
|
|
/* 02460438 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 02460438 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0246043C */ cpu->r[10] = 0x00000020u;
|
|
/* 02460440 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02460440 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02460444 */ _t4 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02460444 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02460448 */ _t5 = cpu->r[1] + 0x00000048u;
|
|
/* 02460448 */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 0246044C */ _t6 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0246044C */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02460450 */ cpu->r[12] = 0x10110000u;
|
|
/* 02460454 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 02460454 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02460458 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 0246045C */ _t8 = cpu->r[1] + 0x00000054u;
|
|
/* 0246045C */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02460460 */ _t9 = cpu->r[12] + 0x00007399u;
|
|
/* 02460460 */ cpu->r[12] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02460464 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460468 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460468 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0246046C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460470 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 02460470 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[12]);
|
|
/* 02460474 */ cpu->r[0] = cpu->r[0] + 0x000028FCu;
|
|
/* 02460478 */ _t12 = cpu->r[1] + 0x00000047u;
|
|
/* 02460478 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[12]);
|
|
/* 0246047C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02460480 */ _t13 = cpu->r[1] + 0x00000020u;
|
|
/* 02460480 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02460484 */ Gambit_fn_02173CCC(cpu);
|
|
/* 02460488 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0246048C */ cpu->r[28] = 0x00000003u;
|
|
/* 02460490 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02460494 */ _t14 = cpu->r[8] + 0x00002964u;
|
|
/* 02460494 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02460498 */ cpu->r[29] = 0x00000000u;
|
|
L_0246049C: ; // 0x246049c
|
|
/* 0246049C */ cpu->r[5] = cpu->r[29];
|
|
/* 024604A0 */ cpu->r[4] = cpu->r[30] + 0x00002A84u;
|
|
/* 024604A4 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024604A8 */ _t15 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024604A8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024604A8 */ if (_t16) goto L_024604AC; // else: addr-0 trap, fall-through
|
|
L_024604AC: ; // 0x24604ac
|
|
/* 024604AC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024604B0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024604B4 */ cpu->r[4] = cpu->r[29];
|
|
/* 024604B8 */ Gambit_fn_02174330(cpu);
|
|
/* 024604BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024604C0 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024604C0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024604C0 */ if (_t18) goto L_0246050C; else goto L_024604C4;
|
|
L_024604C4: ; // 0x24604c4
|
|
/* 024604C4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024604C8 */ cpu->r[4] = cpu->r[29];
|
|
/* 024604CC */ Gambit_fn_02174330(cpu);
|
|
/* 024604D0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024604D4 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u;
|
|
/* 024604D8 */ _t19 = cpu->r[12] + 0x000029E8u;
|
|
/* 024604D8 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 024604DC */ cpu->r[9] = 0x43300000u;
|
|
/* 024604E0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024604E0 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 024604E4 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 024604E4 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 024604E8 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 024604E8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 024604EC */ cpu->f[0] = cpu->f[12] - cpu->f[13];
|
|
/* 024604F0 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 024604F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 024604F8 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024604F8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024604F8 */ if (_t24) goto L_0246050C; else goto L_024604FC;
|
|
L_024604FC: ; // 0x24604fc
|
|
/* 024604FC */ _t25 = cpu->r[31] + 0x00000048u;
|
|
/* 024604FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02460500 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460504 */ cpu->r[4] = cpu->r[29] + 0x00000003u;
|
|
/* 02460508 */ Gambit_fn_027ED914(cpu);
|
|
L_0246050C: ; // 0x246050c
|
|
/* 0246050C */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0246050C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02460510 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02460514 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460514 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02460514 */ if (_t27) goto L_02460518; else goto L_0246049C;
|
|
L_02460518: ; // 0x2460518
|
|
/* 02460518 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0246051C */ cpu->r[4] = 0x00000002u;
|
|
/* 02460520 */ Gambit_fn_02173D6C(cpu);
|
|
/* 02460524 */ _t28 = cpu->r[1] + 0x00000048u;
|
|
/* 02460524 */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02460528 */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02460528 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0246052C */ _t30 = cpu->r[1] + 0x00000060u;
|
|
/* 0246052C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02460530 */ _t31 = cpu->r[1] + 0x00000050u;
|
|
/* 02460530 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02460534 */ _t32 = cpu->r[1] + 0x00000058u;
|
|
/* 02460534 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 02460538 */ _t33 = cpu->r[1] + 0x00000054u;
|
|
/* 02460538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0246053C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246053C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0246053C */ if (_t35) goto L_02460540; // else: addr-0 trap, fall-through
|
|
L_02460540: ; // 0x2460540
|
|
/* 02460540 */ _t36 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02460540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02460544 */ cpu->lr = cpu->r[0];
|
|
/* 02460548 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0246054C */ return;
|
|
}
|
|
|
|
// fn_02460550 @ 0x2460550
|
|
void Gambit_fn_02460550(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02460550: ; // 0x2460550
|
|
/* 02460550 */ _t0 = cpu->r[1] + 0xFFFFFB40u;
|
|
/* 02460550 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02460550 */ cpu->r[1] = _t0;
|
|
/* 02460554 */ /* nop */
|
|
/* 02460558 */ cpu->r[0] = cpu->lr;
|
|
/* 0246055C */ _t1 = cpu->r[1] + 0x000004C4u;
|
|
/* 0246055C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02460560 */ cpu->r[26] = 0x00000001u;
|
|
/* 02460564 */ cpu->r[24] = 0x00000002u;
|
|
/* 02460568 */ cpu->r[30] = cpu->r[1] + 0x00000014u;
|
|
/* 0246056C */ cpu->r[31] = 0x10110000u;
|
|
/* 02460570 */ cpu->r[23] = cpu->r[3];
|
|
/* 02460574 */ _t2 = cpu->r[23] + 0x0000004Du;
|
|
/* 02460574 */ cpu->r[7] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02460578 */ cpu->r[25] = 0x00000020u;
|
|
/* 0246057C */ cpu->r[27] = 0x100A0000u;
|
|
/* 02460580 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02460584 */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Fu, 0x0000001Cu);
|
|
/* 02460588 */ cpu->r[27] = cpu->r[27] + 0x000028B4u;
|
|
/* 0246058C */ _t3 = cpu->r[23] + 0x0000004Du;
|
|
/* 0246058C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[7]);
|
|
/* 02460590 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02460594 */ _t4 = cpu->r[31] + 0x00007399u;
|
|
/* 02460594 */ cpu->r[31] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02460598 */ cpu->r[29] = cpu->r[29] + 0x000028FCu;
|
|
L_0246059C: ; // 0x246059c
|
|
/* 0246059C */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 0246059C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[31]);
|
|
/* 024605A0 */ cpu->r[4] = cpu->r[28] + 0x00002A94u;
|
|
/* 024605A4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024605A4 */ rbrew_write32(cpu->mem, _t6, cpu->r[25]);
|
|
/* 024605A8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024605AC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024605AC */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 024605B0 */ cpu->r[5] = cpu->r[26];
|
|
/* 024605B4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024605B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024605B8 */ _t9 = cpu->r[30] + 0x0000001Fu;
|
|
/* 024605B8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]);
|
|
/* 024605BC */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024605BC */ _t11 = _t10 & 0x00000001u;
|
|
/* 024605BC */ if (_t11) goto L_024605C0; // else: addr-0 trap, fall-through
|
|
L_024605C0: ; // 0x24605c0
|
|
/* 024605C0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024605C4 */ cpu->r[4] = cpu->r[26];
|
|
/* 024605C8 */ _t12 = cpu->r[23] + 0x00000048u;
|
|
/* 024605C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024605CC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024605D0 */ Gambit_fn_027ED798(cpu);
|
|
/* 024605D4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 024605D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 024605D8 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 024605DC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024605DC */ _t14 = _t13 & 0x00000001u;
|
|
/* 024605DC */ if (_t14) goto L_024605E0; else goto L_0246059C;
|
|
L_024605E0: ; // 0x24605e0
|
|
/* 024605E0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024605E4 */ _t15 = cpu->r[1] + 0x00000038u;
|
|
/* 024605E4 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 024605E8 */ cpu->r[0] = cpu->r[0] + 0x00002A90u;
|
|
/* 024605EC */ _t16 = cpu->r[23] + 0x00000048u;
|
|
/* 024605EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024605F0 */ cpu->r[4] = 0x00000006u;
|
|
/* 024605F4 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 024605F8 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 024605F8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 024605FC */ Gambit_fn_027ED798(cpu);
|
|
/* 02460600 */ cpu->r[6] = 0x00000000u;
|
|
/* 02460604 */ cpu->r[0] = 0x00000003u;
|
|
/* 02460608 */ cpu->r[12] = cpu->r[23] + 0x00000054u;
|
|
/* 0246060C */ cpu->r[10] = cpu->r[6];
|
|
/* 02460610 */ cpu->ctr = cpu->r[0];
|
|
/* 02460614 */ cpu->r[0] = cpu->r[10];
|
|
/* 02460618 */ _t18 = cpu->r[23] + 0x0000004Cu;
|
|
/* 02460618 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[6]);
|
|
L_0246061C: ; // 0x246061c
|
|
/* 0246061C */ _t19 = cpu->r[12] + cpu->r[10];
|
|
/* 0246061C */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 02460620 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02460624 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02460624 */ _t20 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02460624 */ _t21 = _t20 >> (0x00000002u & 31u);
|
|
/* 02460624 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02460624 */ if (_t22) goto L_0246061C; else goto L_02460628;
|
|
L_02460628: ; // 0x2460628
|
|
/* 02460628 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0246062C */ _t23 = cpu->r[23] + 0x00000050u;
|
|
/* 0246062C */ rbrew_write32(cpu->mem, _t23, cpu->r[6]);
|
|
/* 02460630 */ Gambit_fn_021749B0(cpu);
|
|
/* 02460634 */ _t24 = cpu->r[23] + 0x00000050u;
|
|
/* 02460634 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02460638 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0246063C */ Gambit_fn_02174DD4(cpu);
|
|
/* 02460640 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02460644 */ Gambit_fn_02174A38(cpu);
|
|
/* 02460648 */ cpu->r[4] = 0x00000002u;
|
|
/* 0246064C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02460650 */ Gambit_fn_02174A24(cpu);
|
|
/* 02460654 */ /* nop */
|
|
/* 02460658 */ _t25 = cpu->r[1] + 0x000004C4u;
|
|
/* 02460658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0246065C */ cpu->lr = cpu->r[0];
|
|
/* 02460660 */ cpu->r[1] = cpu->r[1] + 0x000004C0u;
|
|
/* 02460664 */ return;
|
|
}
|
|
|
|
// fn_02460668 @ 0x2460668
|
|
void Gambit_fn_02460668(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;
|
|
|
|
L_02460668: ; // 0x2460668
|
|
/* 02460668 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 02460668 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02460668 */ cpu->r[1] = _t0;
|
|
/* 0246066C */ /* nop */
|
|
/* 02460670 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 02460670 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 02460674 */ /* nop */
|
|
/* 02460678 */ cpu->r[0] = cpu->lr;
|
|
/* 0246067C */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 0246067C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02460680 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 02460680 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02460684 */ /* nop */
|
|
/* 02460688 */ _t4 = cpu->r[1] + 0x00000078u;
|
|
/* 02460688 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0246068C */ _t5 = cpu->r[1] + 0x00000080u;
|
|
/* 0246068C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02460690 */ _t6 = cpu->r[1] + 0x00000094u;
|
|
/* 02460690 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02460694 */ /* nop */
|
|
/* 02460698 */ _t7 = cpu->r[1] + 0x00000088u;
|
|
/* 02460698 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0246069C */ cpu->r[6] = 0x100A0000u;
|
|
/* 024606A0 */ _t8 = cpu->r[6] + 0x00002968u;
|
|
/* 024606A0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024606A4 */ cpu->r[26] = cpu->r[3];
|
|
/* 024606A8 */ _t9 = cpu->r[26] + 0x00000010u;
|
|
/* 024606A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024606AC */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024606AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024606B0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024606B0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024606B0 */ if (_t11) goto L_02460708; else goto L_024606B4;
|
|
L_024606B4: ; // 0x24606b4
|
|
/* 024606B4 */ _t12 = cpu->r[26] + 0x00000025u;
|
|
/* 024606B4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t12);
|
|
/* 024606B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024606BC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024606BC */ _t14 = _t13 & 0x00000001u;
|
|
/* 024606BC */ if (_t14) goto L_02460708; else goto L_024606C0;
|
|
L_024606C0: ; // 0x24606c0
|
|
/* 024606C0 */ _t15 = cpu->r[26] + 0x0000001Cu;
|
|
/* 024606C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024606C4 */ cpu->r[4] = 0x00000005u;
|
|
/* 024606C8 */ Gambit_fn_027EDF00(cpu);
|
|
/* 024606CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024606D0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024606D0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024606D0 */ if (_t17) goto L_02460708; else goto L_024606D4;
|
|
L_024606D4: ; // 0x24606d4
|
|
/* 024606D4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024606D8 */ _t18 = cpu->r[26] + 0x0000001Cu;
|
|
/* 024606D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024606DC */ cpu->f[1] = cpu->f[31];
|
|
/* 024606E0 */ cpu->r[9] = cpu->r[9] + 0x000028B4u;
|
|
/* 024606E4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024606E8 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 024606EC */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 024606EC */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 024606F0 */ cpu->r[0] = cpu->r[0] + 0x00002AA4u;
|
|
/* 024606F4 */ cpu->r[4] = 0x00000005u;
|
|
/* 024606F8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 024606F8 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 024606FC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02460700 */ cpu->r[12] = 0x00000000u;
|
|
/* 02460704 */ _t21 = cpu->r[26] + 0x00000025u;
|
|
/* 02460704 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[12]);
|
|
L_02460708: ; // 0x2460708
|
|
/* 02460708 */ cpu->r[31] = 0x10110000u;
|
|
/* 0246070C */ cpu->r[24] = 0x00000001u;
|
|
/* 02460710 */ cpu->r[25] = 0x100A0000u;
|
|
/* 02460714 */ _t22 = cpu->r[31] + 0x00007399u;
|
|
/* 02460714 */ cpu->r[31] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02460718 */ cpu->f[30] = cpu->f[31];
|
|
/* 0246071C */ cpu->r[23] = cpu->r[26] + 0x00000054u;
|
|
/* 02460720 */ cpu->r[29] = cpu->r[1] + 0x00000014u;
|
|
/* 02460724 */ cpu->r[30] = cpu->r[31];
|
|
/* 02460728 */ cpu->r[25] = cpu->r[25] + 0x000028FCu;
|
|
/* 0246072C */ goto L_02460738;
|
|
L_02460730: ; // 0x2460730
|
|
/* 02460730 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], 0x00000003u);
|
|
/* 02460734 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02460734 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02460734 */ if (_t24) goto L_02460738; else goto L_0246074C;
|
|
L_02460738: ; // 0x2460738
|
|
/* 02460738 */ cpu->r[5] = cpu->r[23] + cpu->r[24];
|
|
/* 0246073C */ cpu->f[29] = cpu->f[30];
|
|
/* 02460740 */ cpu->r[27] = 0x00000000u;
|
|
/* 02460744 */ cpu->r[28] = 0x00000020u;
|
|
/* 02460748 */ goto L_02460750;
|
|
L_0246074C: ; // 0x246074c
|
|
/* 0246074C */ cpu->r[5] = cpu->r[23];
|
|
L_02460750: ; // 0x2460750
|
|
/* 02460750 */ _t25 = cpu->r[5] + 0x00000000u;
|
|
/* 02460750 */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02460754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460758 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460758 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02460758 */ if (_t27) goto L_024607C4; else goto L_0246075C;
|
|
L_0246075C: ; // 0x246075c
|
|
/* 0246075C */ _t28 = cpu->r[26] + 0x00000048u;
|
|
/* 0246075C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02460760 */ cpu->r[4] = 0x00000006u;
|
|
/* 02460764 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02460768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246076C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246076C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0246076C */ if (_t30) goto L_024607C4; else goto L_02460770;
|
|
L_02460770: ; // 0x2460770
|
|
/* 02460770 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02460770 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 02460774 */ cpu->r[5] = cpu->r[24];
|
|
/* 02460778 */ _t32 = cpu->r[29] + 0x00000000u;
|
|
/* 02460778 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[30]);
|
|
/* 0246077C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02460780 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02460780 */ rbrew_write32(cpu->mem, _t33, cpu->r[28]);
|
|
/* 02460784 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02460788 */ _t34 = cpu->r[29] + 0x0000001Fu;
|
|
/* 02460788 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[30]);
|
|
/* 0246078C */ cpu->r[4] = cpu->r[4] + 0x00002AACu;
|
|
/* 02460790 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460790 */ rbrew_write32(cpu->mem, _t35, cpu->r[25]);
|
|
/* 02460794 */ _t36 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02460794 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02460794 */ if (_t37) goto L_02460798; // else: addr-0 trap, fall-through
|
|
L_02460798: ; // 0x2460798
|
|
/* 02460798 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0246079C */ cpu->f[1] = cpu->f[29];
|
|
/* 024607A0 */ _t38 = cpu->r[26] + 0x00000048u;
|
|
/* 024607A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024607A4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024607A8 */ cpu->r[4] = cpu->r[24];
|
|
/* 024607AC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024607B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], 0x00000003u);
|
|
/* 024607B4 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024607B4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024607B4 */ if (_t40) goto L_024607B8; else goto L_024607C0;
|
|
L_024607B8: ; // 0x24607b8
|
|
/* 024607B8 */ _t41 = cpu->r[23] + cpu->r[24];
|
|
/* 024607B8 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[27]);
|
|
/* 024607BC */ goto L_024607C4;
|
|
L_024607C0: ; // 0x24607c0
|
|
/* 024607C0 */ _t42 = cpu->r[23] + 0x00000000u;
|
|
/* 024607C0 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[27]);
|
|
L_024607C4: ; // 0x24607c4
|
|
/* 024607C4 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 024607C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000003u);
|
|
/* 024607CC */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024607CC */ _t44 = _t43 & 0x00000001u;
|
|
/* 024607CC */ if (_t44) goto L_02460730; else goto L_024607D0;
|
|
L_024607D0: ; // 0x24607d0
|
|
/* 024607D0 */ _t45 = cpu->r[26] + 0x00000010u;
|
|
/* 024607D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024607D4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024607D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024607D8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024607D8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024607D8 */ if (_t47) goto L_02460938; else goto L_024607DC;
|
|
L_024607DC: ; // 0x24607dc
|
|
/* 024607DC */ cpu->r[30] = 0x00000003u;
|
|
/* 024607E0 */ cpu->r[29] = 0x00000000u;
|
|
L_024607E4: ; // 0x24607e4
|
|
/* 024607E4 */ _t48 = cpu->r[26] + 0x00000030u;
|
|
/* 024607E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024607E8 */ cpu->r[4] = cpu->r[29] + 0x00000001u;
|
|
/* 024607EC */ Gambit_fn_027EDF00(cpu);
|
|
/* 024607F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024607F4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024607F4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024607F4 */ if (_t50) goto L_02460938; else goto L_024607F8;
|
|
L_024607F8: ; // 0x24607f8
|
|
/* 024607F8 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 024607F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024607FC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02460800 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460800 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02460800 */ if (_t52) goto L_02460804; else goto L_024607E4;
|
|
L_02460804: ; // 0x2460804
|
|
/* 02460804 */ _t53 = cpu->r[26] + 0x00000038u;
|
|
/* 02460804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02460808 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0246080C */ _t54 = cpu->r[26] + 0x00000034u;
|
|
/* 0246080C */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02460810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 02460814 */ cpu->r[4] = cpu->r[4] + 0x00002AB8u;
|
|
/* 02460818 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02460818 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02460818 */ if (_t56) goto L_0246089C; else goto L_0246081C;
|
|
L_0246081C: ; // 0x246081c
|
|
/* 0246081C */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246081C */ _t58 = _t57 & 0x00000001u;
|
|
/* 0246081C */ if (_t58) goto L_02460820; else goto L_02460938;
|
|
L_02460820: ; // 0x2460820
|
|
/* 02460820 */ _t59 = cpu->r[1] + 0x00000033u;
|
|
/* 02460820 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[31]);
|
|
/* 02460824 */ cpu->r[9] = 0x00000020u;
|
|
/* 02460828 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460828 */ rbrew_write32(cpu->mem, _t60, cpu->r[25]);
|
|
/* 0246082C */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 02460830 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02460830 */ rbrew_write32(cpu->mem, _t61, cpu->r[9]);
|
|
/* 02460834 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02460834 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[31]);
|
|
/* 02460838 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 0246083C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02460840 */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 02460840 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 02460844 */ _t64 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02460844 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02460844 */ if (_t65) goto L_02460848; // else: addr-0 trap, fall-through
|
|
L_02460848: ; // 0x2460848
|
|
/* 02460848 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0246084C */ cpu->f[1] = cpu->f[31];
|
|
/* 02460850 */ _t66 = cpu->r[26] + 0x00000030u;
|
|
/* 02460850 */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02460854 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02460858 */ _t67 = cpu->r[26] + 0x00000034u;
|
|
/* 02460858 */ cpu->r[4] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0246085C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02460860 */ _t68 = cpu->r[26] + 0x00000034u;
|
|
/* 02460860 */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02460864 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02460868 */ _t69 = cpu->r[26] + 0x00000034u;
|
|
/* 02460868 */ rbrew_write32(cpu->mem, _t69, cpu->r[10]);
|
|
/* 0246086C */ /* nop */
|
|
/* 02460870 */ _t70 = cpu->r[1] + 0x00000068u;
|
|
/* 02460870 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02460874 */ _t71 = cpu->r[1] + 0x00000078u;
|
|
/* 02460874 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02460878 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 02460878 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 0246087C */ _t73 = cpu->r[1] + 0x00000088u;
|
|
/* 0246087C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02460880 */ _t74 = cpu->r[1] + 0x00000070u;
|
|
/* 02460880 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 02460884 */ _t75 = cpu->r[1] + 0x00000080u;
|
|
/* 02460884 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 02460888 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02460888 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02460888 */ if (_t77) goto L_0246088C; // else: addr-0 trap, fall-through
|
|
L_0246088C: ; // 0x246088c
|
|
/* 0246088C */ _t78 = cpu->r[1] + 0x00000094u;
|
|
/* 0246088C */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02460890 */ cpu->lr = cpu->r[0];
|
|
/* 02460894 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02460898 */ return;
|
|
L_0246089C: ; // 0x246089c
|
|
/* 0246089C */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0246089C */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[31]);
|
|
/* 024608A0 */ cpu->r[0] = 0x00000020u;
|
|
/* 024608A4 */ _t80 = cpu->r[1] + 0x00000033u;
|
|
/* 024608A4 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[31]);
|
|
/* 024608A8 */ cpu->r[11] = cpu->r[1] + 0x00000014u;
|
|
/* 024608AC */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 024608AC */ rbrew_write32(cpu->mem, _t81, cpu->r[0]);
|
|
/* 024608B0 */ _t82 = cpu->r[1] + 0x00000008u;
|
|
/* 024608B0 */ rbrew_write32(cpu->mem, _t82, cpu->r[11]);
|
|
/* 024608B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024608B8 */ _t83 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024608B8 */ rbrew_write32(cpu->mem, _t83, cpu->r[25]);
|
|
/* 024608BC */ _t84 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024608BC */ _t85 = _t84 & 0x00000001u;
|
|
/* 024608BC */ if (_t85) goto L_024608C0; // else: addr-0 trap, fall-through
|
|
L_024608C0: ; // 0x24608c0
|
|
/* 024608C0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024608C4 */ _t86 = cpu->r[26] + 0x00000034u;
|
|
/* 024608C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t86);
|
|
/* 024608C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024608CC */ _t87 = cpu->r[26] + 0x00000030u;
|
|
/* 024608CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024608D0 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 024608D4 */ Gambit_fn_027ED624(cpu);
|
|
/* 024608D8 */ _t88 = cpu->r[26] + 0x00000034u;
|
|
/* 024608D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t88);
|
|
/* 024608DC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024608E0 */ _t89 = cpu->r[26] + 0x00000030u;
|
|
/* 024608E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 024608E4 */ cpu->r[4] = cpu->r[5] + 0x00000001u;
|
|
/* 024608E8 */ _t90 = cpu->r[12] + 0x00002AA0u;
|
|
/* 024608E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 024608EC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024608F0 */ Gambit_fn_027ED380(cpu);
|
|
/* 024608F4 */ _t91 = cpu->r[26] + 0x00000034u;
|
|
/* 024608F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 024608F8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 024608FC */ cpu->r[9] = cpu->r[9] + 0x00007A74u;
|
|
/* 02460900 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02460904 */ cpu->r[31] = cpu->r[9] + cpu->r[0];
|
|
/* 02460908 */ _t92 = cpu->r[31] + 0x00000004u;
|
|
/* 02460908 */ cpu->r[10] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0246090C */ _t93 = cpu->r[10] + 0x00000014u;
|
|
/* 0246090C */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02460910 */ cpu->ctr = cpu->r[0];
|
|
/* 02460914 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460918 */ _t94 = cpu->r[26] + 0x00000008u;
|
|
/* 02460918 */ cpu->r[30] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0246091C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460920 */ _t95 = cpu->r[31] + 0x00000000u;
|
|
/* 02460920 */ cpu->r[4] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02460924 */ _t96 = cpu->r[30] + 0x000001ACu;
|
|
/* 02460924 */ cpu->r[3] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02460928 */ Gambit_fn_027B7210(cpu);
|
|
/* 0246092C */ _t97 = cpu->r[26] + 0x00000034u;
|
|
/* 0246092C */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02460930 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02460934 */ _t98 = cpu->r[26] + 0x00000034u;
|
|
/* 02460934 */ rbrew_write32(cpu->mem, _t98, cpu->r[12]);
|
|
L_02460938: ; // 0x2460938
|
|
/* 02460938 */ /* nop */
|
|
/* 0246093C */ _t99 = cpu->r[1] + 0x00000068u;
|
|
/* 0246093C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02460940 */ _t100 = cpu->r[1] + 0x00000078u;
|
|
/* 02460940 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02460944 */ _t101 = cpu->r[1] + 0x00000060u;
|
|
/* 02460944 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t101);
|
|
/* 02460948 */ _t102 = cpu->r[1] + 0x00000088u;
|
|
/* 02460948 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0246094C */ _t103 = cpu->r[1] + 0x00000070u;
|
|
/* 0246094C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t103);
|
|
/* 02460950 */ _t104 = cpu->r[1] + 0x00000080u;
|
|
/* 02460950 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t104);
|
|
/* 02460954 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02460954 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02460954 */ if (_t106) goto L_02460958; // else: addr-0 trap, fall-through
|
|
L_02460958: ; // 0x2460958
|
|
/* 02460958 */ _t107 = cpu->r[1] + 0x00000094u;
|
|
/* 02460958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0246095C */ cpu->lr = cpu->r[0];
|
|
/* 02460960 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02460964 */ return;
|
|
}
|
|
|
|
// fn_02460968 @ 0x2460968
|
|
void Gambit_fn_02460968(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02460968: ; // 0x2460968
|
|
/* 02460968 */ cpu->r[0] = cpu->lr;
|
|
/* 0246096C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0246096C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246096C */ cpu->r[1] = _t0;
|
|
/* 02460970 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02460970 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02460974 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460978 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460978 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246097C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0246097C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02460980 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02460984 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460984 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02460984 */ if (_t5) goto L_024609BC; else goto L_02460988;
|
|
L_02460988: ; // 0x2460988
|
|
/* 02460988 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246098C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460990 */ _t6 = cpu->r[11] + 0x00002968u;
|
|
/* 02460990 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02460994 */ cpu->r[0] = cpu->r[0] + 0x000028B4u;
|
|
/* 02460998 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02460998 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246099C */ cpu->r[10] = 0x100A0000u;
|
|
/* 024609A0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024609A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024609A4 */ cpu->r[10] = cpu->r[10] + 0x00002AC8u;
|
|
/* 024609A8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024609AC */ cpu->r[4] = 0x00000001u;
|
|
/* 024609B0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 024609B0 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 024609B4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024609B8 */ _t10 = cpu->r[31] + 0x00000010u;
|
|
/* 024609B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
L_024609BC: ; // 0x24609bc
|
|
/* 024609BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024609BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024609C0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024609C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024609C0 */ if (_t12) goto L_024609D8; else goto L_024609C4;
|
|
L_024609C4: ; // 0x24609c4
|
|
/* 024609C4 */ _t13 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024609C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024609C8 */ Gambit_fn_020D64C8(cpu);
|
|
/* 024609CC */ _t14 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024609CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024609D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024609D4 */ Gambit_fn_020D61EC(cpu);
|
|
L_024609D8: ; // 0x24609d8
|
|
/* 024609D8 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024609D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024609DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024609DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024609E0 */ cpu->lr = cpu->r[0];
|
|
/* 024609E4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024609E8 */ return;
|
|
}
|
|
|
|
// fn_0246096C @ 0x246096c
|
|
void Gambit_fn_0246096C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0246096C: ; // 0x246096c
|
|
/* 0246096C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0246096C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246096C */ cpu->r[1] = _t0;
|
|
/* 02460970 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02460970 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02460974 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460978 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460978 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246097C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0246097C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02460980 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02460984 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460984 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02460984 */ if (_t5) goto L_024609BC; else goto L_02460988;
|
|
L_02460988: ; // 0x2460988
|
|
/* 02460988 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246098C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460990 */ _t6 = cpu->r[11] + 0x00002968u;
|
|
/* 02460990 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02460994 */ cpu->r[0] = cpu->r[0] + 0x000028B4u;
|
|
/* 02460998 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02460998 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246099C */ cpu->r[10] = 0x100A0000u;
|
|
/* 024609A0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024609A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024609A4 */ cpu->r[10] = cpu->r[10] + 0x00002AC8u;
|
|
/* 024609A8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024609AC */ cpu->r[4] = 0x00000001u;
|
|
/* 024609B0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 024609B0 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 024609B4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024609B8 */ _t10 = cpu->r[31] + 0x00000010u;
|
|
/* 024609B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
L_024609BC: ; // 0x24609bc
|
|
/* 024609BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024609BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024609C0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024609C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024609C0 */ if (_t12) goto L_024609D8; else goto L_024609C4;
|
|
L_024609C4: ; // 0x24609c4
|
|
/* 024609C4 */ _t13 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024609C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024609C8 */ Gambit_fn_020D64C8(cpu);
|
|
/* 024609CC */ _t14 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024609CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024609D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024609D4 */ Gambit_fn_020D61EC(cpu);
|
|
L_024609D8: ; // 0x24609d8
|
|
/* 024609D8 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024609D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024609DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024609DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024609E0 */ cpu->lr = cpu->r[0];
|
|
/* 024609E4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024609E8 */ return;
|
|
}
|
|
|
|
// fn_024609EC @ 0x24609ec
|
|
void Gambit_fn_024609EC(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;
|
|
|
|
L_024609EC: ; // 0x24609ec
|
|
/* 024609EC */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 024609EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024609EC */ cpu->r[1] = _t0;
|
|
/* 024609F0 */ /* nop */
|
|
/* 024609F4 */ cpu->r[0] = cpu->lr;
|
|
/* 024609F8 */ _t1 = cpu->r[1] + 0x00000064u;
|
|
/* 024609F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024609FC */ cpu->r[30] = cpu->r[3];
|
|
/* 02460A00 */ _t2 = cpu->r[30] + 0x00000010u;
|
|
/* 02460A00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02460A04 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02460A08 */ cpu->r[28] = 0x101D0000u;
|
|
/* 02460A0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460A10 */ cpu->r[29] = cpu->r[29] + 0x000028B4u;
|
|
/* 02460A14 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460A14 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02460A14 */ if (_t4) goto L_02460AA4; else goto L_02460A18;
|
|
L_02460A18: ; // 0x2460a18
|
|
/* 02460A18 */ _t5 = cpu->r[30] + 0x00000008u;
|
|
/* 02460A18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02460A1C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02460A20 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460A20 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02460A24 */ cpu->r[8] = cpu->r[8] + 0x00002B1Cu;
|
|
/* 02460A28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460A2C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02460A2C */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02460A30 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02460A34 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02460A38 */ _t8 = cpu->r[11] + 0xFFFFDBA0u;
|
|
/* 02460A38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02460A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02460A40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460A44 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460A44 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02460A44 */ if (_t10) goto L_02460A48; else goto L_02460A60;
|
|
L_02460A48: ; // 0x2460a48
|
|
/* 02460A48 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02460A4C */ cpu->r[10] = 0x00000001u;
|
|
/* 02460A50 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02460A54 */ cpu->r[11] = cpu->r[11] + 0x00002914u;
|
|
/* 02460A58 */ _t11 = cpu->r[8] + 0xFFFFDBA0u;
|
|
/* 02460A58 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02460A5C */ _t12 = cpu->r[28] + 0xFFFFED90u;
|
|
/* 02460A5C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
L_02460A60: ; // 0x2460a60
|
|
/* 02460A60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460A64 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460A64 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02460A64 */ if (_t14) goto L_02460A88; else goto L_02460A68;
|
|
L_02460A68: ; // 0x2460a68
|
|
/* 02460A68 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02460A68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02460A6C */ _t16 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02460A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02460A70 */ cpu->ctr = cpu->r[0];
|
|
/* 02460A74 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460A78 */ cpu->r[4] = cpu->r[28] + 0xFFFFED90u;
|
|
/* 02460A7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460A80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460A84 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460A84 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02460A84 */ if (_t18) goto L_02460A88; else goto L_02460A8C;
|
|
L_02460A88: ; // 0x2460a88
|
|
/* 02460A88 */ cpu->r[31] = 0x00000000u;
|
|
L_02460A8C: ; // 0x2460a8c
|
|
/* 02460A8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460A90 */ _t19 = cpu->r[30] + 0x00000014u;
|
|
/* 02460A90 */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 02460A94 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460A94 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02460A94 */ if (_t21) goto L_02460AA0; else goto L_02460A98;
|
|
L_02460A98: ; // 0x2460a98
|
|
/* 02460A98 */ cpu->r[5] = 0x00000001u;
|
|
/* 02460A9C */ _t22 = cpu->r[31] + 0x00000210u;
|
|
/* 02460A9C */ rbrew_write32(cpu->mem, _t22, cpu->r[5]);
|
|
L_02460AA0: ; // 0x2460aa0
|
|
/* 02460AA0 */ _t23 = cpu->r[30] + 0x00000010u;
|
|
/* 02460AA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23);
|
|
L_02460AA4: ; // 0x2460aa4
|
|
/* 02460AA4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460AA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02460AA8 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02460AAC */ cpu->r[26] = 0x101D0000u;
|
|
/* 02460AB0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460AB0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02460AB0 */ if (_t25) goto L_02460B28; else goto L_02460AB4;
|
|
L_02460AB4: ; // 0x2460ab4
|
|
/* 02460AB4 */ _t26 = cpu->r[30] + 0x00000008u;
|
|
/* 02460AB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02460AB8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02460ABC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02460ABC */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02460AC0 */ cpu->r[7] = cpu->r[7] + 0x00002AD4u;
|
|
/* 02460AC4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02460AC8 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02460AC8 */ rbrew_write32(cpu->mem, _t28, cpu->r[7]);
|
|
/* 02460ACC */ Gambit_fn_026D86B0(cpu);
|
|
/* 02460AD0 */ _t29 = cpu->r[27] + 0xFFFFED98u;
|
|
/* 02460AD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02460AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02460AD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460ADC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460ADC */ _t31 = _t30 & 0x00000001u;
|
|
/* 02460ADC */ if (_t31) goto L_02460AE0; else goto L_02460AF4;
|
|
L_02460AE0: ; // 0x2460ae0
|
|
/* 02460AE0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02460AE4 */ cpu->r[9] = 0x00000001u;
|
|
/* 02460AE8 */ cpu->r[10] = cpu->r[10] + 0x00002954u;
|
|
/* 02460AEC */ _t32 = cpu->r[27] + 0xFFFFED98u;
|
|
/* 02460AEC */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
/* 02460AF0 */ _t33 = cpu->r[26] + 0xFFFFEDE0u;
|
|
/* 02460AF0 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
L_02460AF4: ; // 0x2460af4
|
|
/* 02460AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460AF8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460AF8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02460AF8 */ if (_t35) goto L_02460B1C; else goto L_02460AFC;
|
|
L_02460AFC: ; // 0x2460afc
|
|
/* 02460AFC */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 02460AFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02460B00 */ _t37 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02460B00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02460B04 */ cpu->ctr = cpu->r[12];
|
|
/* 02460B08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460B0C */ cpu->r[4] = cpu->r[26] + 0xFFFFEDE0u;
|
|
/* 02460B10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460B18 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460B18 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02460B18 */ if (_t39) goto L_02460B1C; else goto L_02460B20;
|
|
L_02460B1C: ; // 0x2460b1c
|
|
/* 02460B1C */ cpu->r[31] = 0x00000000u;
|
|
L_02460B20: ; // 0x2460b20
|
|
/* 02460B20 */ _t40 = cpu->r[30] + 0x00000010u;
|
|
/* 02460B20 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02460B24 */ _t41 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02460B24 */ rbrew_write32(cpu->mem, _t41, cpu->r[31]);
|
|
L_02460B28: ; // 0x2460b28
|
|
/* 02460B28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460B2C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460B2C */ _t43 = _t42 & 0x00000001u;
|
|
/* 02460B2C */ if (_t43) goto L_02460BA4; else goto L_02460B30;
|
|
L_02460B30: ; // 0x2460b30
|
|
/* 02460B30 */ _t44 = cpu->r[30] + 0x00000008u;
|
|
/* 02460B30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02460B34 */ cpu->r[5] = 0x100A0000u;
|
|
/* 02460B38 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460B38 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 02460B3C */ cpu->r[5] = cpu->r[5] + 0x00002AE4u;
|
|
/* 02460B40 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02460B44 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 02460B44 */ rbrew_write32(cpu->mem, _t46, cpu->r[5]);
|
|
/* 02460B48 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02460B4C */ _t47 = cpu->r[27] + 0xFFFFED98u;
|
|
/* 02460B4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02460B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02460B54 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460B58 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460B58 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02460B58 */ if (_t49) goto L_02460B5C; else goto L_02460B70;
|
|
L_02460B5C: ; // 0x2460b5c
|
|
/* 02460B5C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02460B60 */ cpu->r[7] = 0x00000001u;
|
|
/* 02460B64 */ cpu->r[8] = cpu->r[8] + 0x00002954u;
|
|
/* 02460B68 */ _t50 = cpu->r[27] + 0xFFFFED98u;
|
|
/* 02460B68 */ rbrew_write32(cpu->mem, _t50, cpu->r[7]);
|
|
/* 02460B6C */ _t51 = cpu->r[26] + 0xFFFFEDE0u;
|
|
/* 02460B6C */ rbrew_write32(cpu->mem, _t51, cpu->r[8]);
|
|
L_02460B70: ; // 0x2460b70
|
|
/* 02460B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460B74 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460B74 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02460B74 */ if (_t53) goto L_02460B98; else goto L_02460B78;
|
|
L_02460B78: ; // 0x2460b78
|
|
/* 02460B78 */ _t54 = cpu->r[31] + 0x00000000u;
|
|
/* 02460B78 */ cpu->r[9] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02460B7C */ _t55 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02460B7C */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02460B80 */ cpu->ctr = cpu->r[10];
|
|
/* 02460B84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460B88 */ cpu->r[4] = cpu->r[26] + 0xFFFFEDE0u;
|
|
/* 02460B8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460B94 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460B94 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02460B94 */ if (_t57) goto L_02460B98; else goto L_02460B9C;
|
|
L_02460B98: ; // 0x2460b98
|
|
/* 02460B98 */ cpu->r[31] = 0x00000000u;
|
|
L_02460B9C: ; // 0x2460b9c
|
|
/* 02460B9C */ _t58 = cpu->r[30] + 0x00000010u;
|
|
/* 02460B9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02460BA0 */ _t59 = cpu->r[30] + 0x00000030u;
|
|
/* 02460BA0 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
L_02460BA4: ; // 0x2460ba4
|
|
/* 02460BA4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02460BA8 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460BA8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02460BA8 */ if (_t61) goto L_02460C34; else goto L_02460BAC;
|
|
L_02460BAC: ; // 0x2460bac
|
|
/* 02460BAC */ _t62 = cpu->r[30] + 0x00000008u;
|
|
/* 02460BAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02460BB0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02460BB4 */ _t63 = cpu->r[1] + 0x00000024u;
|
|
/* 02460BB4 */ rbrew_write32(cpu->mem, _t63, cpu->r[29]);
|
|
/* 02460BB8 */ cpu->r[12] = cpu->r[12] + 0x00002AF8u;
|
|
/* 02460BBC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02460BC0 */ _t64 = cpu->r[1] + 0x00000020u;
|
|
/* 02460BC0 */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 02460BC4 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02460BC8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02460BCC */ _t65 = cpu->r[10] + 0xFFFFDBA0u;
|
|
/* 02460BCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02460BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02460BD4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460BD8 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460BD8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02460BD8 */ if (_t67) goto L_02460BDC; else goto L_02460BF4;
|
|
L_02460BDC: ; // 0x2460bdc
|
|
/* 02460BDC */ cpu->r[5] = 0x100A0000u;
|
|
/* 02460BE0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02460BE4 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02460BE8 */ cpu->r[5] = cpu->r[5] + 0x00002914u;
|
|
/* 02460BEC */ _t68 = cpu->r[7] + 0xFFFFDBA0u;
|
|
/* 02460BEC */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 02460BF0 */ _t69 = cpu->r[28] + 0xFFFFED90u;
|
|
/* 02460BF0 */ rbrew_write32(cpu->mem, _t69, cpu->r[5]);
|
|
L_02460BF4: ; // 0x2460bf4
|
|
/* 02460BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460BF8 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460BF8 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02460BF8 */ if (_t71) goto L_02460C1C; else goto L_02460BFC;
|
|
L_02460BFC: ; // 0x2460bfc
|
|
/* 02460BFC */ _t72 = cpu->r[31] + 0x00000000u;
|
|
/* 02460BFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02460C00 */ _t73 = cpu->r[6] + 0x0000001Cu;
|
|
/* 02460C00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02460C04 */ cpu->ctr = cpu->r[7];
|
|
/* 02460C08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460C0C */ cpu->r[4] = cpu->r[28] + 0xFFFFED90u;
|
|
/* 02460C10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460C14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460C18 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460C18 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02460C18 */ if (_t75) goto L_02460C1C; else goto L_02460C20;
|
|
L_02460C1C: ; // 0x2460c1c
|
|
/* 02460C1C */ cpu->r[31] = 0x00000000u;
|
|
L_02460C20: ; // 0x2460c20
|
|
/* 02460C20 */ _t76 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02460C20 */ rbrew_write32(cpu->mem, _t76, cpu->r[31]);
|
|
/* 02460C24 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460C28 */ cpu->r[4] = 0x00000000u;
|
|
/* 02460C2C */ Gambit_fn_020D617C(cpu);
|
|
/* 02460C30 */ _t77 = cpu->r[30] + 0x00000010u;
|
|
/* 02460C30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t77);
|
|
L_02460C34: ; // 0x2460c34
|
|
/* 02460C34 */ cpu->r[8] = rbrew_rlwinm(cpu->r[5], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460C34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02460C38 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460C38 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02460C38 */ if (_t79) goto L_02460CB8; else goto L_02460C3C;
|
|
L_02460C3C: ; // 0x2460c3c
|
|
/* 02460C3C */ _t80 = cpu->r[30] + 0x00000008u;
|
|
/* 02460C3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02460C40 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02460C44 */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02460C44 */ rbrew_write32(cpu->mem, _t81, cpu->r[29]);
|
|
/* 02460C48 */ cpu->r[9] = cpu->r[9] + 0x00002B0Cu;
|
|
/* 02460C4C */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02460C50 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 02460C50 */ rbrew_write32(cpu->mem, _t82, cpu->r[9]);
|
|
/* 02460C54 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02460C58 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02460C5C */ _t83 = cpu->r[12] + 0xFFFFDBA0u;
|
|
/* 02460C5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02460C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02460C64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460C68 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460C68 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02460C68 */ if (_t85) goto L_02460C6C; else goto L_02460C84;
|
|
L_02460C6C: ; // 0x2460c6c
|
|
/* 02460C6C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02460C70 */ cpu->r[10] = 0x00000001u;
|
|
/* 02460C74 */ cpu->r[5] = 0x101D0000u;
|
|
/* 02460C78 */ cpu->r[11] = cpu->r[11] + 0x00002914u;
|
|
/* 02460C7C */ _t86 = cpu->r[5] + 0xFFFFDBA0u;
|
|
/* 02460C7C */ rbrew_write32(cpu->mem, _t86, cpu->r[10]);
|
|
/* 02460C80 */ _t87 = cpu->r[28] + 0xFFFFED90u;
|
|
/* 02460C80 */ rbrew_write32(cpu->mem, _t87, cpu->r[11]);
|
|
L_02460C84: ; // 0x2460c84
|
|
/* 02460C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460C88 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460C88 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02460C88 */ if (_t89) goto L_02460CAC; else goto L_02460C8C;
|
|
L_02460C8C: ; // 0x2460c8c
|
|
/* 02460C8C */ _t90 = cpu->r[31] + 0x00000000u;
|
|
/* 02460C8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02460C90 */ _t91 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02460C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02460C94 */ cpu->ctr = cpu->r[0];
|
|
/* 02460C98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460C9C */ cpu->r[4] = cpu->r[28] + 0xFFFFED90u;
|
|
/* 02460CA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460CA8 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460CA8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02460CA8 */ if (_t93) goto L_02460CAC; else goto L_02460CB0;
|
|
L_02460CAC: ; // 0x2460cac
|
|
/* 02460CAC */ cpu->r[31] = 0x00000000u;
|
|
L_02460CB0: ; // 0x2460cb0
|
|
/* 02460CB0 */ _t94 = cpu->r[30] + 0x00000010u;
|
|
/* 02460CB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02460CB4 */ _t95 = cpu->r[30] + 0x00000040u;
|
|
/* 02460CB4 */ rbrew_write32(cpu->mem, _t95, cpu->r[31]);
|
|
L_02460CB8: ; // 0x2460cb8
|
|
/* 02460CB8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02460CBC */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460CBC */ _t97 = _t96 & 0x00000001u;
|
|
/* 02460CBC */ if (_t97) goto L_02460DB0; else goto L_02460CC0;
|
|
L_02460CC0: ; // 0x2460cc0
|
|
/* 02460CC0 */ _t98 = cpu->r[30] + 0x00000008u;
|
|
/* 02460CC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02460CC4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02460CC8 */ _t99 = cpu->r[1] + 0x00000034u;
|
|
/* 02460CC8 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
/* 02460CCC */ cpu->r[7] = cpu->r[7] + 0x00002B28u;
|
|
/* 02460CD0 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02460CD4 */ _t100 = cpu->r[1] + 0x00000030u;
|
|
/* 02460CD4 */ rbrew_write32(cpu->mem, _t100, cpu->r[7]);
|
|
/* 02460CD8 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02460CDC */ _t101 = cpu->r[27] + 0xFFFFED98u;
|
|
/* 02460CDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02460CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02460CE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02460CE8 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460CE8 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02460CE8 */ if (_t103) goto L_02460CEC; else goto L_02460D00;
|
|
L_02460CEC: ; // 0x2460cec
|
|
/* 02460CEC */ cpu->r[10] = 0x100A0000u;
|
|
/* 02460CF0 */ cpu->r[9] = 0x00000001u;
|
|
/* 02460CF4 */ cpu->r[10] = cpu->r[10] + 0x00002954u;
|
|
/* 02460CF8 */ _t104 = cpu->r[27] + 0xFFFFED98u;
|
|
/* 02460CF8 */ rbrew_write32(cpu->mem, _t104, cpu->r[9]);
|
|
/* 02460CFC */ _t105 = cpu->r[26] + 0xFFFFEDE0u;
|
|
/* 02460CFC */ rbrew_write32(cpu->mem, _t105, cpu->r[10]);
|
|
L_02460D00: ; // 0x2460d00
|
|
/* 02460D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02460D04 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460D04 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02460D04 */ if (_t107) goto L_02460D28; else goto L_02460D08;
|
|
L_02460D08: ; // 0x2460d08
|
|
/* 02460D08 */ _t108 = cpu->r[31] + 0x00000000u;
|
|
/* 02460D08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02460D0C */ _t109 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02460D0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02460D10 */ cpu->ctr = cpu->r[6];
|
|
/* 02460D14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460D18 */ cpu->r[4] = cpu->r[26] + 0xFFFFEDE0u;
|
|
/* 02460D1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02460D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460D24 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460D24 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02460D24 */ if (_t111) goto L_02460D28; else goto L_02460D2C;
|
|
L_02460D28: ; // 0x2460d28
|
|
/* 02460D28 */ cpu->r[31] = 0x00000000u;
|
|
L_02460D2C: ; // 0x2460d2c
|
|
/* 02460D2C */ _t112 = cpu->r[30] + 0x00000048u;
|
|
/* 02460D2C */ rbrew_write32(cpu->mem, _t112, cpu->r[31]);
|
|
/* 02460D30 */ cpu->r[4] = 0x101E0000u;
|
|
/* 02460D34 */ _t113 = cpu->r[31] + 0x000001ACu;
|
|
/* 02460D34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02460D38 */ cpu->r[4] = cpu->r[4] + 0x00007A6Cu;
|
|
/* 02460D3C */ Gambit_fn_027B70B8(cpu);
|
|
/* 02460D40 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460D44 */ Gambit_fn_02173CCC(cpu);
|
|
/* 02460D48 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460D4C */ cpu->r[4] = 0x00000001u;
|
|
/* 02460D50 */ Gambit_fn_02174330(cpu);
|
|
/* 02460D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 02460D58 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460D58 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02460D58 */ if (_t115) goto L_02460D68; else goto L_02460D5C;
|
|
L_02460D5C: ; // 0x2460d5c
|
|
/* 02460D5C */ _t116 = cpu->r[30] + 0x0000004Du;
|
|
/* 02460D5C */ cpu->r[0] = rbrew_read8(cpu->mem, _t116);
|
|
/* 02460D60 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 02460D64 */ _t117 = cpu->r[30] + 0x0000004Du;
|
|
/* 02460D64 */ rbrew_write8(cpu->mem, _t117, (uint8_t)cpu->r[0]);
|
|
L_02460D68: ; // 0x2460d68
|
|
/* 02460D68 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460D6C */ cpu->r[4] = 0x00000002u;
|
|
/* 02460D70 */ Gambit_fn_02174330(cpu);
|
|
/* 02460D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 02460D78 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460D78 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02460D78 */ if (_t119) goto L_02460D7C; else goto L_02460D98;
|
|
L_02460D7C: ; // 0x2460d7c
|
|
/* 02460D7C */ _t120 = cpu->r[30] + 0x0000004Du;
|
|
/* 02460D7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t120);
|
|
/* 02460D80 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460D84 */ cpu->r[9] = cpu->r[0] | 0x00000001u;
|
|
/* 02460D88 */ cpu->r[4] = 0x00000002u;
|
|
/* 02460D8C */ _t121 = cpu->r[30] + 0x0000004Du;
|
|
/* 02460D8C */ rbrew_write8(cpu->mem, _t121, (uint8_t)cpu->r[9]);
|
|
/* 02460D90 */ Gambit_fn_02173D6C(cpu);
|
|
/* 02460D94 */ goto L_02460DB0;
|
|
L_02460D98: ; // 0x2460d98
|
|
/* 02460D98 */ _t122 = cpu->r[30] + 0x0000004Du;
|
|
/* 02460D98 */ cpu->r[7] = rbrew_read8(cpu->mem, _t122);
|
|
/* 02460D9C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460DA0 */ cpu->r[9] = cpu->r[7] | 0x00000005u;
|
|
/* 02460DA4 */ cpu->r[4] = 0x00000002u;
|
|
/* 02460DA8 */ _t123 = cpu->r[30] + 0x0000004Du;
|
|
/* 02460DA8 */ rbrew_write8(cpu->mem, _t123, (uint8_t)cpu->r[9]);
|
|
/* 02460DAC */ Gambit_fn_02173D6C(cpu);
|
|
L_02460DB0: ; // 0x2460db0
|
|
/* 02460DB0 */ /* nop */
|
|
/* 02460DB4 */ _t124 = cpu->r[1] + 0x00000064u;
|
|
/* 02460DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02460DB8 */ cpu->lr = cpu->r[0];
|
|
/* 02460DBC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02460DC0 */ return;
|
|
}
|
|
|
|
// fn_02460DC4 @ 0x2460dc4
|
|
void Gambit_fn_02460DC4(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;
|
|
|
|
L_02460DC4: ; // 0x2460dc4
|
|
/* 02460DC4 */ _t0 = cpu->r[1] + 0xFFFFFF18u;
|
|
/* 02460DC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02460DC4 */ cpu->r[1] = _t0;
|
|
/* 02460DC8 */ /* nop */
|
|
/* 02460DCC */ _t1 = cpu->r[1] + 0x000000D8u;
|
|
/* 02460DCC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02460DD0 */ /* nop */
|
|
/* 02460DD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02460DD8 */ _t2 = cpu->r[1] + 0x000000ECu;
|
|
/* 02460DD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02460DDC */ _t3 = cpu->r[1] + 0x000000E0u;
|
|
/* 02460DDC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02460DE0 */ cpu->r[29] = cpu->r[3];
|
|
/* 02460DE4 */ _t4 = cpu->r[29] + 0x00000010u;
|
|
/* 02460DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02460DE8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02460DEC */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02460DF0 */ cpu->r[31] = cpu->r[31] + 0x000028B4u;
|
|
/* 02460DF4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460DF4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02460DF4 */ if (_t6) goto L_0246101C; else goto L_02460DF8;
|
|
L_02460DF8: ; // 0x2460df8
|
|
/* 02460DF8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02460DF8 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02460DFC */ cpu->r[26] = 0x100A0000u;
|
|
/* 02460E00 */ _t8 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460E00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02460E04 */ cpu->r[26] = cpu->r[26] + 0x00002B4Cu;
|
|
/* 02460E08 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460E08 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02460E0C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02460E10 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02460E10 */ rbrew_write32(cpu->mem, _t10, cpu->r[26]);
|
|
/* 02460E14 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460E18 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 02460E18 */ rbrew_write32(cpu->mem, _t11, cpu->r[26]);
|
|
/* 02460E1C */ cpu->r[0] = cpu->r[0] + 0x00002B94u;
|
|
/* 02460E20 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460E20 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02460E24 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460E28 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02460E2C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02460E2C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02460E30 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460E34 */ cpu->r[27] = 0x100A0000u;
|
|
/* 02460E38 */ _t14 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460E38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02460E3C */ cpu->r[27] = cpu->r[27] + 0x00002B48u;
|
|
/* 02460E40 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02460E40 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02460E44 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460E48 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02460E48 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02460E4C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460E50 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02460E50 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 02460E54 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02460E58 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460E58 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02460E5C */ cpu->r[30] = cpu->r[30] + 0x00002BA0u;
|
|
/* 02460E60 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460E60 */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 02460E64 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460E68 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02460E68 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 02460E6C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460E70 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460E74 */ _t21 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460E74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02460E78 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460E78 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
/* 02460E7C */ cpu->r[0] = cpu->r[0] + 0x00002B54u;
|
|
/* 02460E80 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02460E80 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 02460E84 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460E88 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02460E88 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 02460E8C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460E90 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 02460E90 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02460E94 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02460E94 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02460E98 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460E9C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460E9C */ rbrew_write32(cpu->mem, _t27, cpu->r[31]);
|
|
/* 02460EA0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460EA4 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02460EA8 */ _t28 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460EA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02460EAC */ cpu->r[28] = cpu->r[28] + 0x00002B5Cu;
|
|
/* 02460EB0 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460EB0 */ rbrew_write32(cpu->mem, _t29, cpu->r[31]);
|
|
/* 02460EB4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02460EB8 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 02460EB8 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02460EBC */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02460EBC */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
/* 02460EC0 */ cpu->r[30] = cpu->r[30] + 0x00002B70u;
|
|
/* 02460EC4 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02460EC4 */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 02460EC8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460ECC */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02460ECC */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02460ED0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460ED4 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460ED8 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460ED8 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 02460EDC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460EE0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02460EE4 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460EE4 */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 02460EE8 */ cpu->r[10] = cpu->r[10] + 0x00002B38u;
|
|
/* 02460EEC */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460EEC */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 02460EF0 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460EF4 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02460EF4 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 02460EF8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460EFC */ _t38 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460EFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02460F00 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 02460F00 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 02460F04 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460F08 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 02460F08 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 02460F0C */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 02460F0C */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 02460F10 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460F14 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460F18 */ _t42 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460F18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02460F1C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02460F20 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460F20 */ rbrew_write32(cpu->mem, _t43, cpu->r[31]);
|
|
/* 02460F24 */ cpu->r[11] = cpu->r[11] + 0x00002B7Cu;
|
|
/* 02460F28 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02460F28 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]);
|
|
/* 02460F2C */ cpu->r[0] = cpu->r[0] + 0x00002B64u;
|
|
/* 02460F30 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 02460F30 */ rbrew_write32(cpu->mem, _t45, cpu->r[11]);
|
|
/* 02460F34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460F38 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 02460F38 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02460F3C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460F40 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02460F40 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02460F44 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460F48 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460F48 */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 02460F4C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460F50 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02460F54 */ _t49 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460F54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02460F58 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02460F5C */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460F5C */ rbrew_write32(cpu->mem, _t50, cpu->r[31]);
|
|
/* 02460F60 */ cpu->r[7] = cpu->r[7] + 0x00002B88u;
|
|
/* 02460F64 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460F64 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 02460F68 */ cpu->r[12] = cpu->r[12] + 0x00002BACu;
|
|
/* 02460F6C */ _t52 = cpu->r[1] + 0x00000018u;
|
|
/* 02460F6C */ rbrew_write32(cpu->mem, _t52, cpu->r[7]);
|
|
/* 02460F70 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460F74 */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 02460F74 */ rbrew_write32(cpu->mem, _t53, cpu->r[31]);
|
|
/* 02460F78 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460F7C */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 02460F7C */ rbrew_write32(cpu->mem, _t54, cpu->r[7]);
|
|
/* 02460F80 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460F84 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 02460F84 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 02460F88 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460F8C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460F90 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 02460F90 */ rbrew_write32(cpu->mem, _t56, cpu->r[31]);
|
|
/* 02460F94 */ cpu->r[0] = cpu->r[0] + 0x00002B40u;
|
|
/* 02460F98 */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02460F98 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 02460F9C */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 02460F9C */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 02460FA0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02460FA4 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02460FA4 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02460FA8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02460FAC */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460FAC */ rbrew_write32(cpu->mem, _t60, cpu->r[31]);
|
|
/* 02460FB0 */ cpu->r[0] = cpu->r[0] + 0x00002BBCu;
|
|
/* 02460FB4 */ _t61 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460FB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02460FB8 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02460FBC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02460FC0 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 02460FC0 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 02460FC4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02460FC8 */ _t63 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02460FCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02460FD0 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 02460FD0 */ rbrew_write32(cpu->mem, _t64, cpu->r[26]);
|
|
/* 02460FD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02460FD8 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460FD8 */ rbrew_write32(cpu->mem, _t65, cpu->r[31]);
|
|
/* 02460FDC */ Gambit_fn_027ED798(cpu);
|
|
/* 02460FE0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02460FE4 */ _t66 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460FE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02460FE8 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02460FE8 */ rbrew_write32(cpu->mem, _t67, cpu->r[31]);
|
|
/* 02460FEC */ cpu->r[4] = 0x00000003u;
|
|
/* 02460FF0 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 02460FF0 */ rbrew_write32(cpu->mem, _t68, cpu->r[27]);
|
|
/* 02460FF4 */ Gambit_fn_027ED798(cpu);
|
|
/* 02460FF8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02460FFC */ _t69 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02460FFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02461000 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 02461000 */ rbrew_write32(cpu->mem, _t70, cpu->r[28]);
|
|
/* 02461004 */ cpu->r[4] = 0x00000005u;
|
|
/* 02461008 */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461008 */ rbrew_write32(cpu->mem, _t71, cpu->r[31]);
|
|
/* 0246100C */ Gambit_fn_027ED798(cpu);
|
|
/* 02461010 */ cpu->r[7] = 0x00000000u;
|
|
/* 02461014 */ _t72 = cpu->r[29] + 0x00000010u;
|
|
/* 02461014 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02461018 */ _t73 = cpu->r[29] + 0x00000025u;
|
|
/* 02461018 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[7]);
|
|
L_0246101C: ; // 0x246101c
|
|
/* 0246101C */ cpu->r[26] = 0x100A0000u;
|
|
/* 02461020 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02461024 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02461028 */ cpu->r[26] = cpu->r[26] + 0x000028FCu;
|
|
/* 0246102C */ cpu->r[28] = cpu->r[28] + 0x00002BECu;
|
|
/* 02461030 */ cpu->r[27] = 0x10110000u;
|
|
/* 02461034 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461034 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02461034 */ if (_t75) goto L_02461100; else goto L_02461038;
|
|
L_02461038: ; // 0x2461038
|
|
/* 02461038 */ cpu->r[11] = cpu->r[1] + 0x0000006Cu;
|
|
/* 0246103C */ _t76 = cpu->r[27] + 0x00007399u;
|
|
/* 0246103C */ cpu->r[9] = rbrew_read8(cpu->mem, _t76);
|
|
/* 02461040 */ cpu->r[10] = 0x00000020u;
|
|
/* 02461044 */ _t77 = cpu->r[1] + 0x00000060u;
|
|
/* 02461044 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 02461048 */ _t78 = cpu->r[1] + 0x00000053u;
|
|
/* 02461048 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[9]);
|
|
/* 0246104C */ _t79 = cpu->r[1] + 0x00000068u;
|
|
/* 0246104C */ rbrew_write32(cpu->mem, _t79, cpu->r[10]);
|
|
/* 02461050 */ _t80 = cpu->r[1] + 0x00000034u;
|
|
/* 02461050 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[9]);
|
|
/* 02461054 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 02461054 */ rbrew_write32(cpu->mem, _t81, cpu->r[10]);
|
|
/* 02461058 */ _t82 = cpu->r[1] + 0x00000064u;
|
|
/* 02461058 */ rbrew_write32(cpu->mem, _t82, cpu->r[26]);
|
|
/* 0246105C */ cpu->r[23] = 0x00000003u;
|
|
/* 02461060 */ _t83 = cpu->r[1] + 0x0000008Bu;
|
|
/* 02461060 */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[9]);
|
|
/* 02461064 */ cpu->r[0] = cpu->r[1] + 0x00000034u;
|
|
/* 02461068 */ _t84 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02461068 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[9]);
|
|
/* 0246106C */ cpu->r[30] = 0x00000000u;
|
|
/* 02461070 */ _t85 = cpu->r[1] + 0x00000028u;
|
|
/* 02461070 */ rbrew_write32(cpu->mem, _t85, cpu->r[0]);
|
|
/* 02461074 */ cpu->r[24] = 0x100A0000u;
|
|
/* 02461078 */ cpu->r[25] = 0x100A0000u;
|
|
/* 0246107C */ _t86 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246107C */ rbrew_write32(cpu->mem, _t86, cpu->r[26]);
|
|
L_02461080: ; // 0x2461080
|
|
/* 02461080 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02461084 */ cpu->r[4] = cpu->r[25] + 0x00002BCCu;
|
|
/* 02461088 */ cpu->r[5] = cpu->r[30];
|
|
/* 0246108C */ _t87 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0246108C */ _t88 = _t87 & 0x00000001u;
|
|
/* 0246108C */ if (_t88) goto L_02461090; // else: addr-0 trap, fall-through
|
|
L_02461090: ; // 0x2461090
|
|
/* 02461090 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02461094 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02461098 */ cpu->r[4] = cpu->r[24] + 0x00002BDCu;
|
|
/* 0246109C */ cpu->r[5] = cpu->r[30];
|
|
/* 024610A0 */ _t89 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024610A0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 024610A0 */ if (_t90) goto L_024610A4; // else: addr-0 trap, fall-through
|
|
L_024610A4: ; // 0x24610a4
|
|
/* 024610A4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024610A8 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024610AC */ _t91 = cpu->r[29] + 0x00000030u;
|
|
/* 024610AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t91);
|
|
/* 024610B0 */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 024610B4 */ cpu->r[5] = cpu->r[4];
|
|
/* 024610B8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024610BC */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 024610BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 024610C0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024610C4 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024610C4 */ _t93 = _t92 & 0x00000001u;
|
|
/* 024610C4 */ if (_t93) goto L_024610C8; else goto L_02461080;
|
|
L_024610C8: ; // 0x24610c8
|
|
/* 024610C8 */ _t94 = cpu->r[1] + 0x000000A0u;
|
|
/* 024610C8 */ rbrew_write32(cpu->mem, _t94, cpu->r[31]);
|
|
/* 024610CC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024610D0 */ _t95 = cpu->r[1] + 0x0000009Cu;
|
|
/* 024610D0 */ rbrew_write32(cpu->mem, _t95, cpu->r[28]);
|
|
/* 024610D4 */ cpu->r[30] = cpu->r[30] + 0x00002B6Cu;
|
|
/* 024610D8 */ _t96 = cpu->r[29] + 0x00000030u;
|
|
/* 024610D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024610DC */ cpu->r[6] = cpu->r[1] + 0x0000009Cu;
|
|
/* 024610E0 */ _t97 = cpu->r[1] + 0x0000008Cu;
|
|
/* 024610E0 */ rbrew_write32(cpu->mem, _t97, cpu->r[30]);
|
|
/* 024610E4 */ cpu->r[4] = cpu->r[1] + 0x0000008Cu;
|
|
/* 024610E8 */ _t98 = cpu->r[1] + 0x00000094u;
|
|
/* 024610E8 */ rbrew_write32(cpu->mem, _t98, cpu->r[30]);
|
|
/* 024610EC */ cpu->r[5] = cpu->r[1] + 0x00000094u;
|
|
/* 024610F0 */ _t99 = cpu->r[1] + 0x00000098u;
|
|
/* 024610F0 */ rbrew_write32(cpu->mem, _t99, cpu->r[31]);
|
|
/* 024610F4 */ _t100 = cpu->r[1] + 0x00000090u;
|
|
/* 024610F4 */ rbrew_write32(cpu->mem, _t100, cpu->r[31]);
|
|
/* 024610F8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024610FC */ _t101 = cpu->r[29] + 0x00000010u;
|
|
/* 024610FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
L_02461100: ; // 0x2461100
|
|
/* 02461100 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02461104 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461104 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02461104 */ if (_t103) goto L_024613DC; else goto L_02461108;
|
|
L_02461108: ; // 0x2461108
|
|
/* 02461108 */ _t104 = cpu->r[29] + 0x00000048u;
|
|
/* 02461108 */ cpu->r[3] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0246110C */ cpu->r[30] = 0x100A0000u;
|
|
/* 02461110 */ _t105 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02461110 */ rbrew_write32(cpu->mem, _t105, cpu->r[28]);
|
|
/* 02461114 */ cpu->r[30] = cpu->r[30] + 0x00002B6Cu;
|
|
/* 02461118 */ _t106 = cpu->r[1] + 0x00000090u;
|
|
/* 02461118 */ rbrew_write32(cpu->mem, _t106, cpu->r[31]);
|
|
/* 0246111C */ cpu->r[6] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02461120 */ _t107 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02461120 */ rbrew_write32(cpu->mem, _t107, cpu->r[30]);
|
|
/* 02461124 */ cpu->r[5] = cpu->r[1] + 0x00000094u;
|
|
/* 02461128 */ _t108 = cpu->r[1] + 0x00000094u;
|
|
/* 02461128 */ rbrew_write32(cpu->mem, _t108, cpu->r[30]);
|
|
/* 0246112C */ cpu->r[4] = cpu->r[1] + 0x0000008Cu;
|
|
/* 02461130 */ _t109 = cpu->r[1] + 0x000000A0u;
|
|
/* 02461130 */ rbrew_write32(cpu->mem, _t109, cpu->r[31]);
|
|
/* 02461134 */ _t110 = cpu->r[1] + 0x00000098u;
|
|
/* 02461134 */ rbrew_write32(cpu->mem, _t110, cpu->r[31]);
|
|
/* 02461138 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0246113C */ _t111 = cpu->r[29] + 0x0000004Du;
|
|
/* 0246113C */ cpu->r[8] = rbrew_read8(cpu->mem, _t111);
|
|
/* 02461140 */ cpu->r[12] = rbrew_rlwinm(cpu->r[8], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461144 */ cpu->r[0] = cpu->r[12] ^ 0x00000001u;
|
|
/* 02461148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246114C */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246114C */ _t113 = _t112 & 0x00000001u;
|
|
/* 0246114C */ if (_t113) goto L_024611EC; else goto L_02461150;
|
|
L_02461150: ; // 0x2461150
|
|
/* 02461150 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461154 */ cpu->r[6] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02461158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0246115C */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246115C */ _t115 = _t114 & 0x00000001u;
|
|
/* 0246115C */ if (_t115) goto L_024611EC; else goto L_02461160;
|
|
L_02461160: ; // 0x2461160
|
|
/* 02461160 */ _t116 = cpu->r[1] + 0x000000A8u;
|
|
/* 02461160 */ rbrew_write32(cpu->mem, _t116, cpu->r[31]);
|
|
/* 02461164 */ cpu->r[4] = 0x00000006u;
|
|
/* 02461168 */ _t117 = cpu->r[29] + 0x00000048u;
|
|
/* 02461168 */ cpu->r[3] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0246116C */ cpu->r[5] = cpu->r[1] + 0x000000A4u;
|
|
/* 02461170 */ _t118 = cpu->r[1] + 0x000000A4u;
|
|
/* 02461170 */ rbrew_write32(cpu->mem, _t118, cpu->r[30]);
|
|
/* 02461174 */ Gambit_fn_027ED798(cpu);
|
|
/* 02461178 */ cpu->r[31] = 0x00000000u;
|
|
/* 0246117C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02461180 */ _t119 = cpu->r[29] + 0x0000004Cu;
|
|
/* 02461180 */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[31]);
|
|
/* 02461184 */ _t120 = cpu->r[27] + 0x00007399u;
|
|
/* 02461184 */ cpu->r[9] = rbrew_read8(cpu->mem, _t120);
|
|
/* 02461188 */ cpu->r[8] = 0x00000020u;
|
|
/* 0246118C */ _t121 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246118C */ rbrew_write32(cpu->mem, _t121, cpu->r[26]);
|
|
/* 02461190 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02461194 */ _t122 = cpu->r[1] + 0x00000068u;
|
|
/* 02461194 */ rbrew_write32(cpu->mem, _t122, cpu->r[8]);
|
|
/* 02461198 */ cpu->r[27] = 0x100A0000u;
|
|
/* 0246119C */ _t123 = cpu->r[1] + 0x0000008Bu;
|
|
/* 0246119C */ rbrew_write8(cpu->mem, _t123, (uint8_t)cpu->r[9]);
|
|
/* 024611A0 */ _t124 = cpu->r[1] + 0x00000034u;
|
|
/* 024611A0 */ rbrew_write8(cpu->mem, _t124, (uint8_t)cpu->r[9]);
|
|
/* 024611A4 */ cpu->r[0] = cpu->r[1] + 0x00000034u;
|
|
/* 024611A8 */ cpu->r[25] = 0x100A0000u;
|
|
/* 024611AC */ _t125 = cpu->r[1] + 0x00000028u;
|
|
/* 024611AC */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 024611B0 */ cpu->r[28] = 0x100A0000u;
|
|
/* 024611B4 */ _t126 = cpu->r[1] + 0x00000030u;
|
|
/* 024611B4 */ rbrew_write32(cpu->mem, _t126, cpu->r[8]);
|
|
/* 024611B8 */ cpu->r[28] = cpu->r[28] + 0x00002C2Cu;
|
|
/* 024611BC */ _t127 = cpu->r[1] + 0x00000053u;
|
|
/* 024611BC */ rbrew_write8(cpu->mem, _t127, (uint8_t)cpu->r[9]);
|
|
/* 024611C0 */ cpu->r[10] = cpu->r[1] + 0x0000006Cu;
|
|
/* 024611C4 */ _t128 = cpu->r[1] + 0x00000064u;
|
|
/* 024611C4 */ rbrew_write32(cpu->mem, _t128, cpu->r[26]);
|
|
/* 024611C8 */ cpu->r[25] = cpu->r[25] + 0x00002C08u;
|
|
/* 024611CC */ _t129 = cpu->r[1] + 0x00000060u;
|
|
/* 024611CC */ rbrew_write32(cpu->mem, _t129, cpu->r[10]);
|
|
/* 024611D0 */ cpu->r[30] = cpu->r[30] + 0x00002C20u;
|
|
/* 024611D4 */ cpu->r[27] = cpu->r[27] + 0x00002BF8u;
|
|
/* 024611D8 */ _t130 = cpu->r[7] + 0x00002964u;
|
|
/* 024611D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 024611DC */ cpu->r[24] = 0x00000003u;
|
|
/* 024611E0 */ cpu->r[23] = 0x00000001u;
|
|
/* 024611E4 */ _t131 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024611E4 */ rbrew_write8(cpu->mem, _t131, (uint8_t)cpu->r[9]);
|
|
/* 024611E8 */ goto L_02461274;
|
|
L_024611EC: ; // 0x24611ec
|
|
/* 024611EC */ _t132 = cpu->r[1] + 0x000000B0u;
|
|
/* 024611EC */ rbrew_write32(cpu->mem, _t132, cpu->r[31]);
|
|
/* 024611F0 */ cpu->r[4] = 0x00000006u;
|
|
/* 024611F4 */ _t133 = cpu->r[29] + 0x00000048u;
|
|
/* 024611F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t133);
|
|
/* 024611F8 */ cpu->r[5] = cpu->r[1] + 0x000000ACu;
|
|
/* 024611FC */ _t134 = cpu->r[1] + 0x000000ACu;
|
|
/* 024611FC */ rbrew_write32(cpu->mem, _t134, cpu->r[30]);
|
|
/* 02461200 */ Gambit_fn_027ED624(cpu);
|
|
/* 02461204 */ cpu->r[23] = 0x00000001u;
|
|
/* 02461208 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0246120C */ _t135 = cpu->r[29] + 0x0000004Cu;
|
|
/* 0246120C */ rbrew_write8(cpu->mem, _t135, (uint8_t)cpu->r[23]);
|
|
/* 02461210 */ _t136 = cpu->r[27] + 0x00007399u;
|
|
/* 02461210 */ cpu->r[9] = rbrew_read8(cpu->mem, _t136);
|
|
/* 02461214 */ cpu->r[8] = 0x00000020u;
|
|
/* 02461218 */ _t137 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02461218 */ rbrew_write32(cpu->mem, _t137, cpu->r[26]);
|
|
/* 0246121C */ cpu->r[30] = 0x100A0000u;
|
|
/* 02461220 */ _t138 = cpu->r[1] + 0x00000068u;
|
|
/* 02461220 */ rbrew_write32(cpu->mem, _t138, cpu->r[8]);
|
|
/* 02461224 */ cpu->r[27] = 0x100A0000u;
|
|
/* 02461228 */ _t139 = cpu->r[1] + 0x0000008Bu;
|
|
/* 02461228 */ rbrew_write8(cpu->mem, _t139, (uint8_t)cpu->r[9]);
|
|
/* 0246122C */ _t140 = cpu->r[1] + 0x00000034u;
|
|
/* 0246122C */ rbrew_write8(cpu->mem, _t140, (uint8_t)cpu->r[9]);
|
|
/* 02461230 */ cpu->r[0] = cpu->r[1] + 0x00000034u;
|
|
/* 02461234 */ cpu->r[25] = 0x100A0000u;
|
|
/* 02461238 */ _t141 = cpu->r[1] + 0x00000028u;
|
|
/* 02461238 */ rbrew_write32(cpu->mem, _t141, cpu->r[0]);
|
|
/* 0246123C */ cpu->r[28] = 0x100A0000u;
|
|
/* 02461240 */ _t142 = cpu->r[1] + 0x00000030u;
|
|
/* 02461240 */ rbrew_write32(cpu->mem, _t142, cpu->r[8]);
|
|
/* 02461244 */ cpu->r[28] = cpu->r[28] + 0x00002C2Cu;
|
|
/* 02461248 */ _t143 = cpu->r[1] + 0x00000053u;
|
|
/* 02461248 */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[9]);
|
|
/* 0246124C */ cpu->r[10] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02461250 */ _t144 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02461250 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[9]);
|
|
/* 02461254 */ cpu->r[25] = cpu->r[25] + 0x00002C08u;
|
|
/* 02461258 */ _t145 = cpu->r[1] + 0x00000060u;
|
|
/* 02461258 */ rbrew_write32(cpu->mem, _t145, cpu->r[10]);
|
|
/* 0246125C */ cpu->r[30] = cpu->r[30] + 0x00002C20u;
|
|
/* 02461260 */ cpu->r[27] = cpu->r[27] + 0x00002BF8u;
|
|
/* 02461264 */ _t146 = cpu->r[7] + 0x00002964u;
|
|
/* 02461264 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 02461268 */ cpu->r[24] = 0x00000003u;
|
|
/* 0246126C */ cpu->r[31] = 0x00000000u;
|
|
/* 02461270 */ _t147 = cpu->r[1] + 0x00000064u;
|
|
/* 02461270 */ rbrew_write32(cpu->mem, _t147, cpu->r[26]);
|
|
L_02461274: ; // 0x2461274
|
|
/* 02461274 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02461278 */ cpu->r[4] = cpu->r[27];
|
|
/* 0246127C */ cpu->r[5] = cpu->r[31];
|
|
/* 02461280 */ _t148 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02461280 */ _t149 = _t148 & 0x00000001u;
|
|
/* 02461280 */ if (_t149) goto L_02461284; // else: addr-0 trap, fall-through
|
|
L_02461284: ; // 0x2461284
|
|
/* 02461284 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02461288 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0246128C */ cpu->r[4] = cpu->r[25];
|
|
/* 02461290 */ cpu->r[5] = cpu->r[31];
|
|
/* 02461294 */ _t150 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02461294 */ _t151 = _t150 & 0x00000001u;
|
|
/* 02461294 */ if (_t151) goto L_02461298; // else: addr-0 trap, fall-through
|
|
L_02461298: ; // 0x2461298
|
|
/* 02461298 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0246129C */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024612A0 */ _t152 = cpu->r[29] + 0x00000048u;
|
|
/* 024612A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t152);
|
|
/* 024612A4 */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 024612A8 */ cpu->r[5] = cpu->r[4];
|
|
/* 024612AC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024612B0 */ _t153 = cpu->r[29] + 0x00000050u;
|
|
/* 024612B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t153);
|
|
/* 024612B4 */ _t154 = cpu->r[29] + 0x00000048u;
|
|
/* 024612B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t154);
|
|
/* 024612B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 024612BC */ cpu->r[4] = cpu->r[31];
|
|
/* 024612C0 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024612C0 */ _t156 = _t155 & 0x00000001u;
|
|
/* 024612C0 */ if (_t156) goto L_024612C4; else goto L_024612D8;
|
|
L_024612C4: ; // 0x24612c4
|
|
/* 024612C4 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 024612C8 */ Gambit_fn_027ED624(cpu);
|
|
/* 024612CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024612D0 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024612D0 */ _t158 = _t157 & 0x00000001u;
|
|
/* 024612D0 */ if (_t158) goto L_02461338; else goto L_024612D4;
|
|
L_024612D4: ; // 0x24612d4
|
|
/* 024612D4 */ goto L_024612E8;
|
|
L_024612D8: ; // 0x24612d8
|
|
/* 024612D8 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 024612DC */ Gambit_fn_027ED798(cpu);
|
|
/* 024612E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024612E4 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024612E4 */ _t160 = _t159 & 0x00000001u;
|
|
/* 024612E4 */ if (_t160) goto L_02461338; else goto L_024612E8;
|
|
L_024612E8: ; // 0x24612e8
|
|
/* 024612E8 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024612EC */ cpu->r[5] = cpu->r[31];
|
|
/* 024612F0 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 024612F4 */ cpu->r[4] = cpu->r[4] + 0x00002C14u;
|
|
/* 024612F8 */ _t161 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024612F8 */ _t162 = _t161 & 0x00000001u;
|
|
/* 024612F8 */ if (_t162) goto L_024612FC; // else: addr-0 trap, fall-through
|
|
L_024612FC: ; // 0x24612fc
|
|
/* 024612FC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02461300 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02461304 */ _t163 = cpu->r[29] + 0x00000048u;
|
|
/* 02461304 */ cpu->r[3] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02461308 */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 0246130C */ cpu->r[5] = cpu->r[4];
|
|
/* 02461310 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02461314 */ /* nop */
|
|
/* 02461318 */ _t164 = cpu->r[29] + 0x0000004Du;
|
|
/* 02461318 */ cpu->r[6] = rbrew_read8(cpu->mem, _t164);
|
|
/* 0246131C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02461320 */ cpu->r[5] = cpu->r[6] & cpu->r[0];
|
|
/* 02461320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02461324 */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461324 */ _t166 = _t165 & 0x00000001u;
|
|
/* 02461324 */ if (_t166) goto L_02461328; else goto L_02461338;
|
|
L_02461328: ; // 0x2461328
|
|
/* 02461328 */ _t167 = cpu->r[29] + 0x00000048u;
|
|
/* 02461328 */ cpu->r[3] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0246132C */ cpu->r[4] = cpu->r[31];
|
|
/* 02461330 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 02461334 */ Gambit_fn_027ED798(cpu);
|
|
L_02461338: ; // 0x2461338
|
|
/* 02461338 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0246133C */ cpu->r[4] = cpu->r[30];
|
|
/* 02461340 */ cpu->r[5] = cpu->r[31];
|
|
/* 02461344 */ _t168 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02461344 */ _t169 = _t168 & 0x00000001u;
|
|
/* 02461344 */ if (_t169) goto L_02461348; // else: addr-0 trap, fall-through
|
|
L_02461348: ; // 0x2461348
|
|
/* 02461348 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0246134C */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02461350 */ cpu->r[4] = cpu->r[28];
|
|
/* 02461354 */ cpu->r[5] = cpu->r[31];
|
|
/* 02461358 */ _t170 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02461358 */ _t171 = _t170 & 0x00000001u;
|
|
/* 02461358 */ if (_t171) goto L_0246135C; // else: addr-0 trap, fall-through
|
|
L_0246135C: ; // 0x246135c
|
|
/* 0246135C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02461360 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02461364 */ _t172 = cpu->r[29] + 0x00000048u;
|
|
/* 02461364 */ cpu->r[3] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02461368 */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 0246136C */ cpu->r[5] = cpu->r[4];
|
|
/* 02461370 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02461374 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 02461378 */ Gambit_fn_02173CCC(cpu);
|
|
/* 0246137C */ cpu->r[4] = cpu->r[31];
|
|
/* 02461380 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 02461384 */ Gambit_fn_02174330(cpu);
|
|
/* 02461388 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0246138C */ cpu->r[12] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02461390 */ _t173 = cpu->r[4] + 0x000029E8u;
|
|
/* 02461390 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t173);
|
|
/* 02461394 */ cpu->r[0] = 0x43300000u;
|
|
/* 02461398 */ _t174 = cpu->r[1] + 0x00000024u;
|
|
/* 02461398 */ rbrew_write32(cpu->mem, _t174, cpu->r[12]);
|
|
/* 0246139C */ _t175 = cpu->r[1] + 0x00000020u;
|
|
/* 0246139C */ rbrew_write32(cpu->mem, _t175, cpu->r[0]);
|
|
/* 024613A0 */ _t176 = cpu->r[1] + 0x00000020u;
|
|
/* 024613A0 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t176);
|
|
/* 024613A4 */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 024613A8 */ cpu->f[1] = (double)(float)cpu->f[13];
|
|
/* 024613AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 024613B0 */ _t177 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024613B0 */ _t178 = _t177 & 0x00000001u;
|
|
/* 024613B0 */ if (_t178) goto L_024613C4; else goto L_024613B4;
|
|
L_024613B4: ; // 0x24613b4
|
|
/* 024613B4 */ _t179 = cpu->r[29] + 0x00000048u;
|
|
/* 024613B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t179);
|
|
/* 024613B8 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 024613BC */ cpu->r[4] = cpu->r[31] + 0x00000003u;
|
|
/* 024613C0 */ Gambit_fn_027ED914(cpu);
|
|
L_024613C4: ; // 0x24613c4
|
|
/* 024613C4 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 024613C8 */ cpu->r[4] = 0x00000002u;
|
|
/* 024613CC */ Gambit_fn_02173D6C(cpu);
|
|
/* 024613D0 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 024613D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 024613D4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024613D8 */ _t180 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024613D8 */ _t181 = _t180 & 0x00000001u;
|
|
/* 024613D8 */ if (_t181) goto L_024613DC; else goto L_02461274;
|
|
L_024613DC: ; // 0x24613dc
|
|
/* 024613DC */ /* nop */
|
|
/* 024613E0 */ _t182 = cpu->r[1] + 0x000000E0u;
|
|
/* 024613E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 024613E4 */ _t183 = cpu->r[1] + 0x000000D8u;
|
|
/* 024613E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t183);
|
|
/* 024613E8 */ _t184 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024613E8 */ _t185 = _t184 & 0x00000001u;
|
|
/* 024613E8 */ if (_t185) goto L_024613EC; // else: addr-0 trap, fall-through
|
|
L_024613EC: ; // 0x24613ec
|
|
/* 024613EC */ _t186 = cpu->r[1] + 0x000000ECu;
|
|
/* 024613EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t186);
|
|
/* 024613F0 */ cpu->lr = cpu->r[0];
|
|
/* 024613F4 */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 024613F8 */ return;
|
|
}
|
|
|
|
// fn_024613FC @ 0x24613fc
|
|
void Gambit_fn_024613FC(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_024613FC: ; // 0x24613fc
|
|
/* 024613FC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024613FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024613FC */ cpu->r[1] = _t0;
|
|
/* 02461400 */ /* nop */
|
|
/* 02461404 */ cpu->r[0] = cpu->lr;
|
|
/* 02461408 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02461408 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0246140C */ cpu->r[28] = cpu->r[4];
|
|
/* 02461410 */ _t2 = cpu->r[28] + 0x00000090u;
|
|
/* 02461410 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02461414 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02461418 */ cpu->r[5] = 0x100A0000u;
|
|
/* 0246141C */ cpu->r[29] = cpu->r[29] + 0x000028B4u;
|
|
/* 02461420 */ cpu->r[5] = cpu->r[5] + 0x00002C3Cu;
|
|
/* 02461424 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461424 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02461428 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02461428 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0246142C */ _t5 = cpu->r[6] + 0x00000014u;
|
|
/* 0246142C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02461430 */ cpu->ctr = cpu->r[8];
|
|
/* 02461434 */ cpu->r[3] = cpu->r[28] + 0x0000008Cu;
|
|
/* 02461438 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246143C */ _t6 = cpu->r[28] + 0x00000090u;
|
|
/* 0246143C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02461440 */ _t7 = cpu->r[9] + 0x00000014u;
|
|
/* 02461440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02461444 */ cpu->ctr = cpu->r[0];
|
|
/* 02461448 */ cpu->r[3] = cpu->r[28] + 0x0000008Cu;
|
|
/* 0246144C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461450 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02461454 */ _t9 = cpu->r[12] + 0x00000014u;
|
|
/* 02461454 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02461458 */ cpu->ctr = cpu->r[5];
|
|
/* 0246145C */ _t10 = cpu->r[28] + 0x0000008Cu;
|
|
/* 0246145C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02461460 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02461464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461468 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02461468 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246146C */ cpu->r[30] = 0x00080000u;
|
|
/* 02461470 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]);
|
|
/* 02461474 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02461478 */ cpu->r[31] = 0x10110000u;
|
|
/* 0246147C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246147C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0246147C */ if (_t13) goto L_02461480; else goto L_02461498;
|
|
L_02461480: ; // 0x2461480
|
|
/* 02461480 */ /* nop */
|
|
/* 02461484 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02461484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02461488 */ cpu->lr = cpu->r[0];
|
|
/* 0246148C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02461490 */ cpu->r[3] = 0x00000007u;
|
|
/* 02461494 */ return;
|
|
L_02461498: ; // 0x2461498
|
|
/* 02461498 */ _t15 = cpu->r[28] + 0x0000008Cu;
|
|
/* 02461498 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0246149C */ cpu->ctr = cpu->r[30];
|
|
/* 024614A0 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024614A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024614A4 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 024614A8 */ _t17 = cpu->r[31] + 0x00007399u;
|
|
/* 024614A8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t17);
|
|
/* 024614AC */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_024614B0: ; // 0x24614b0
|
|
/* 024614B0 */ _t18 = cpu->r[10] + 0x00000001u;
|
|
/* 024614B0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024614B0 */ cpu->r[10] = _t18;
|
|
/* 024614B4 */ _t19 = cpu->r[9] + 0x00000001u;
|
|
/* 024614B4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024614B4 */ cpu->r[9] = _t19;
|
|
/* 024614B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[7]);
|
|
/* 024614BC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024614BC */ _t21 = _t20 & 0x00000001u;
|
|
/* 024614BC */ if (_t21) goto L_024614C0; else goto L_024614CC;
|
|
L_024614C0: ; // 0x24614c0
|
|
/* 024614C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 024614C4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024614C4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024614C4 */ if (_t23) goto L_02461480; else goto L_024614C8;
|
|
L_024614C8: ; // 0x24614c8
|
|
/* 024614C8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024614C8 */ _t24 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024614C8 */ _t25 = _t24 >> (0x00000002u & 31u);
|
|
/* 024614C8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 024614C8 */ if (_t26) goto L_024614B0; else goto L_024614CC;
|
|
L_024614CC: ; // 0x24614cc
|
|
/* 024614CC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024614D0 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024614D0 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 024614D4 */ cpu->r[0] = cpu->r[0] + 0x00002C5Cu;
|
|
/* 024614D8 */ _t28 = cpu->r[28] + 0x00000090u;
|
|
/* 024614D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024614DC */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 024614DC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 024614E0 */ _t30 = cpu->r[10] + 0x00000014u;
|
|
/* 024614E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024614E4 */ cpu->ctr = cpu->r[11];
|
|
/* 024614E8 */ cpu->r[3] = cpu->r[28] + 0x0000008Cu;
|
|
/* 024614EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024614F0 */ _t31 = cpu->r[28] + 0x00000090u;
|
|
/* 024614F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024614F4 */ _t32 = cpu->r[12] + 0x00000014u;
|
|
/* 024614F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024614F8 */ cpu->ctr = cpu->r[0];
|
|
/* 024614FC */ cpu->r[3] = cpu->r[28] + 0x0000008Cu;
|
|
/* 02461500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461504 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461504 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02461508 */ _t34 = cpu->r[5] + 0x00000014u;
|
|
/* 02461508 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0246150C */ cpu->ctr = cpu->r[6];
|
|
/* 02461510 */ _t35 = cpu->r[28] + 0x0000008Cu;
|
|
/* 02461510 */ cpu->r[27] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02461514 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02461518 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246151C */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0246151C */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02461520 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[7]);
|
|
/* 02461524 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461524 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02461524 */ if (_t38) goto L_02461528; else goto L_02461540;
|
|
L_02461528: ; // 0x2461528
|
|
/* 02461528 */ /* nop */
|
|
/* 0246152C */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246152C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02461530 */ cpu->lr = cpu->r[0];
|
|
/* 02461534 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02461538 */ cpu->r[3] = 0x00000004u;
|
|
/* 0246153C */ return;
|
|
L_02461540: ; // 0x2461540
|
|
/* 02461540 */ _t40 = cpu->r[28] + 0x0000008Cu;
|
|
/* 02461540 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02461544 */ cpu->ctr = cpu->r[30];
|
|
/* 02461548 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 02461548 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0246154C */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02461550 */ _t42 = cpu->r[31] + 0x00007399u;
|
|
/* 02461550 */ cpu->r[5] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02461554 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02461558: ; // 0x2461558
|
|
/* 02461558 */ _t43 = cpu->r[7] + 0x00000001u;
|
|
/* 02461558 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02461558 */ cpu->r[7] = _t43;
|
|
/* 0246155C */ _t44 = cpu->r[6] + 0x00000001u;
|
|
/* 0246155C */ cpu->r[8] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0246155C */ cpu->r[6] = _t44;
|
|
/* 02461560 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02461564 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461564 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02461564 */ if (_t46) goto L_02461568; else goto L_02461574;
|
|
L_02461568: ; // 0x2461568
|
|
/* 02461568 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0246156C */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246156C */ _t48 = _t47 & 0x00000001u;
|
|
/* 0246156C */ if (_t48) goto L_02461528; else goto L_02461570;
|
|
L_02461570: ; // 0x2461570
|
|
/* 02461570 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02461570 */ _t49 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02461570 */ _t50 = _t49 >> (0x00000002u & 31u);
|
|
/* 02461570 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02461570 */ if (_t51) goto L_02461558; else goto L_02461574;
|
|
L_02461574: ; // 0x2461574
|
|
/* 02461574 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461578 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461578 */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
/* 0246157C */ cpu->r[0] = cpu->r[0] + 0x00002C4Cu;
|
|
/* 02461580 */ _t53 = cpu->r[28] + 0x00000090u;
|
|
/* 02461580 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02461584 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 02461584 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02461588 */ _t55 = cpu->r[10] + 0x00000014u;
|
|
/* 02461588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0246158C */ cpu->ctr = cpu->r[0];
|
|
/* 02461590 */ cpu->r[3] = cpu->r[28] + 0x0000008Cu;
|
|
/* 02461594 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461598 */ _t56 = cpu->r[28] + 0x00000090u;
|
|
/* 02461598 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0246159C */ _t57 = cpu->r[12] + 0x00000014u;
|
|
/* 0246159C */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024615A0 */ cpu->ctr = cpu->r[5];
|
|
/* 024615A4 */ cpu->r[3] = cpu->r[28] + 0x0000008Cu;
|
|
/* 024615A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024615AC */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024615AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024615B0 */ _t59 = cpu->r[6] + 0x00000014u;
|
|
/* 024615B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024615B4 */ cpu->ctr = cpu->r[7];
|
|
/* 024615B8 */ _t60 = cpu->r[28] + 0x0000008Cu;
|
|
/* 024615B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024615BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024615C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024615C4 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 024615C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 024615C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 024615CC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024615CC */ _t63 = _t62 & 0x00000001u;
|
|
/* 024615CC */ if (_t63) goto L_024615D0; else goto L_024615E8;
|
|
L_024615D0: ; // 0x24615d0
|
|
/* 024615D0 */ /* nop */
|
|
/* 024615D4 */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024615D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 024615D8 */ cpu->lr = cpu->r[0];
|
|
/* 024615DC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024615E0 */ cpu->r[3] = 0x00000007u;
|
|
/* 024615E4 */ return;
|
|
L_024615E8: ; // 0x24615e8
|
|
/* 024615E8 */ _t65 = cpu->r[28] + 0x0000008Cu;
|
|
/* 024615E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 024615EC */ cpu->ctr = cpu->r[30];
|
|
/* 024615F0 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 024615F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 024615F4 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024615F8 */ _t67 = cpu->r[31] + 0x00007399u;
|
|
/* 024615F8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t67);
|
|
/* 024615FC */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02461600: ; // 0x2461600
|
|
/* 02461600 */ _t68 = cpu->r[12] + 0x00000001u;
|
|
/* 02461600 */ cpu->r[0] = rbrew_read8(cpu->mem, _t68);
|
|
/* 02461600 */ cpu->r[12] = _t68;
|
|
/* 02461604 */ _t69 = cpu->r[11] + 0x00000001u;
|
|
/* 02461604 */ cpu->r[9] = rbrew_read8(cpu->mem, _t69);
|
|
/* 02461604 */ cpu->r[11] = _t69;
|
|
/* 02461608 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0246160C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246160C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0246160C */ if (_t71) goto L_02461610; else goto L_0246161C;
|
|
L_02461610: ; // 0x2461610
|
|
/* 02461610 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 02461614 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461614 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02461614 */ if (_t73) goto L_024615D0; else goto L_02461618;
|
|
L_02461618: ; // 0x2461618
|
|
/* 02461618 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02461618 */ _t74 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02461618 */ _t75 = _t74 >> (0x00000002u & 31u);
|
|
/* 02461618 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02461618 */ if (_t76) goto L_02461600; else goto L_0246161C;
|
|
L_0246161C: ; // 0x246161c
|
|
/* 0246161C */ /* nop */
|
|
/* 02461620 */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02461620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02461624 */ cpu->lr = cpu->r[0];
|
|
/* 02461628 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0246162C */ cpu->r[3] = 0x00000000u;
|
|
/* 02461630 */ return;
|
|
}
|
|
|
|
// fn_02461634 @ 0x2461634
|
|
void Gambit_fn_02461634(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02461634: ; // 0x2461634
|
|
/* 02461634 */ cpu->r[0] = cpu->lr;
|
|
/* 02461638 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02461638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461638 */ cpu->r[1] = _t0;
|
|
/* 0246163C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246163C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02461640 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461644 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02461644 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02461648 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02461648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246164C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0246164C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461650 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461650 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02461650 */ if (_t5) goto L_0246167C; else goto L_02461654;
|
|
L_02461654: ; // 0x2461654
|
|
/* 02461654 */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 02461654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02461658 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0246165C */ _t7 = cpu->r[12] + 0x000001ACu;
|
|
/* 0246165C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02461660 */ cpu->r[4] = cpu->r[4] + 0x00007A5Cu;
|
|
/* 02461664 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02461668 */ _t8 = cpu->r[31] + 0x00000008u;
|
|
/* 02461668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246166C */ cpu->r[4] = 0x101E0000u;
|
|
/* 02461670 */ _t9 = cpu->r[12] + 0x000001ACu;
|
|
/* 02461670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02461674 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 02461678 */ Gambit_fn_027B70B8(cpu);
|
|
L_0246167C: ; // 0x246167c
|
|
/* 0246167C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0246167C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02461680 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461680 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461684 */ cpu->lr = cpu->r[0];
|
|
/* 02461688 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246168C */ return;
|
|
}
|
|
|
|
// fn_02461638 @ 0x2461638
|
|
void Gambit_fn_02461638(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02461638: ; // 0x2461638
|
|
/* 02461638 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02461638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461638 */ cpu->r[1] = _t0;
|
|
/* 0246163C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246163C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02461640 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461644 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02461644 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02461648 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02461648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246164C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0246164C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461650 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461650 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02461650 */ if (_t5) goto L_0246167C; else goto L_02461654;
|
|
L_02461654: ; // 0x2461654
|
|
/* 02461654 */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 02461654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02461658 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0246165C */ _t7 = cpu->r[12] + 0x000001ACu;
|
|
/* 0246165C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02461660 */ cpu->r[4] = cpu->r[4] + 0x00007A5Cu;
|
|
/* 02461664 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02461668 */ _t8 = cpu->r[31] + 0x00000008u;
|
|
/* 02461668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246166C */ cpu->r[4] = 0x101E0000u;
|
|
/* 02461670 */ _t9 = cpu->r[12] + 0x000001ACu;
|
|
/* 02461670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02461674 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 02461678 */ Gambit_fn_027B70B8(cpu);
|
|
L_0246167C: ; // 0x246167c
|
|
/* 0246167C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0246167C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02461680 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461680 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461684 */ cpu->lr = cpu->r[0];
|
|
/* 02461688 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246168C */ return;
|
|
}
|
|
|
|
// fn_02461690 @ 0x2461690
|
|
void Gambit_fn_02461690(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02461690: ; // 0x2461690
|
|
/* 02461690 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02461694 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461698 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0246169C */ cpu->r[12] = cpu->r[12] + 0x00007A54u;
|
|
/* 024616A0 */ cpu->r[0] = cpu->r[0] + 0x000028B4u;
|
|
/* 024616A4 */ cpu->r[11] = cpu->r[11] + 0x00007A5Cu;
|
|
/* 024616A8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024616AC */ _t0 = cpu->r[12] + 0x00000004u;
|
|
/* 024616AC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024616B0 */ cpu->r[8] = 0x100A0000u;
|
|
/* 024616B4 */ cpu->r[9] = cpu->r[9] + 0x00002CC0u;
|
|
/* 024616B8 */ _t1 = cpu->r[11] + 0x00000004u;
|
|
/* 024616B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024616BC */ cpu->r[8] = cpu->r[8] + 0x00002CA0u;
|
|
/* 024616C0 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024616C4 */ _t2 = cpu->r[11] + 0x00000000u;
|
|
/* 024616C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 024616C8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 024616CC */ cpu->r[10] = cpu->r[10] + 0x00007A64u;
|
|
/* 024616D0 */ _t3 = cpu->r[12] + 0x00000000u;
|
|
/* 024616D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 024616D4 */ cpu->r[9] = cpu->r[9] + 0x00007A6Cu;
|
|
/* 024616D8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024616DC */ _t4 = cpu->r[9] + 0x00000004u;
|
|
/* 024616DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024616E0 */ cpu->r[11] = cpu->r[11] + 0x00002CB0u;
|
|
/* 024616E4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024616E8 */ _t5 = cpu->r[10] + 0x00000004u;
|
|
/* 024616E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024616EC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024616F0 */ cpu->r[8] = cpu->r[8] + 0x00007A74u;
|
|
/* 024616F4 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 024616F4 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 024616F8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024616FC */ cpu->r[12] = cpu->r[12] + 0x00002CD4u;
|
|
/* 02461700 */ _t7 = cpu->r[8] + 0x00000004u;
|
|
/* 02461700 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02461704 */ cpu->r[10] = cpu->r[10] + 0x00002C70u;
|
|
/* 02461708 */ _t8 = cpu->r[9] + 0x00000000u;
|
|
/* 02461708 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0246170C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02461710 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 02461710 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02461714 */ cpu->r[11] = cpu->r[11] + 0x00002C80u;
|
|
/* 02461718 */ _t10 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02461718 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0246171C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02461720 */ _t11 = cpu->r[8] + 0x00000008u;
|
|
/* 02461720 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02461724 */ cpu->r[12] = cpu->r[12] + 0x00002C90u;
|
|
/* 02461728 */ _t12 = cpu->r[8] + 0x00000014u;
|
|
/* 02461728 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0246172C */ _t13 = cpu->r[8] + 0x00000010u;
|
|
/* 0246172C */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 02461730 */ return;
|
|
}
|
|
|
|
// fn_02461734 @ 0x2461734
|
|
void Gambit_fn_02461734(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_02461734: ; // 0x2461734
|
|
/* 02461734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461738 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461738 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02461738 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461738 */ goto L_0246173C;
|
|
L_0246173C: ; // 0x246173c
|
|
/* 0246173C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0246173C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461740 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461740 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461740 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461740 */ goto L_02461744;
|
|
L_02461744: ; // 0x2461744
|
|
/* 02461744 */ 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_02461748 @ 0x2461748
|
|
void Gambit_fn_02461748(CPUState* cpu) {
|
|
L_02461748: ; // 0x2461748
|
|
/* 02461748 */ return;
|
|
}
|
|
|
|
// fn_0246174C @ 0x246174c
|
|
void Gambit_fn_0246174C(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_0246174C: ; // 0x246174c
|
|
/* 0246174C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461750 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461750 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02461750 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461750 */ goto L_02461754;
|
|
L_02461754: ; // 0x2461754
|
|
/* 02461754 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461758 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461758 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461758 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461758 */ goto L_0246175C;
|
|
L_0246175C: ; // 0x246175c
|
|
/* 0246175C */ 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_02461760 @ 0x2461760
|
|
void Gambit_fn_02461760(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02461760: ; // 0x2461760
|
|
/* 02461760 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02461760 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02461764 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02461764 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02461768 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0246176C */ cpu->r[11] = 0x10110000u;
|
|
/* 02461770 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02461770 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02461774 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02461774 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02461778 */ return;
|
|
}
|
|
|
|
// fn_0246177C @ 0x246177c
|
|
void Gambit_fn_0246177C(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_0246177C: ; // 0x246177c
|
|
/* 0246177C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461780 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461780 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02461780 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461780 */ goto L_02461784;
|
|
L_02461784: ; // 0x2461784
|
|
/* 02461784 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461788 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461788 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461788 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461788 */ goto L_0246178C;
|
|
L_0246178C: ; // 0x246178c
|
|
/* 0246178C */ 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_02461790 @ 0x2461790
|
|
void Gambit_fn_02461790(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_02461790: ; // 0x2461790
|
|
/* 02461790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461794 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461794 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02461794 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461794 */ goto L_02461798;
|
|
L_02461798: ; // 0x2461798
|
|
/* 02461798 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246179C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246179C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0246179C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0246179C */ goto L_024617A0;
|
|
L_024617A0: ; // 0x24617a0
|
|
/* 024617A0 */ 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_024617A4 @ 0x24617a4
|
|
void Gambit_fn_024617A4(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_024617A4: ; // 0x24617a4
|
|
/* 024617A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024617A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024617A8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024617A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024617A8 */ goto L_024617AC;
|
|
L_024617AC: ; // 0x24617ac
|
|
/* 024617AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024617AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024617B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024617B0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024617B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024617B0 */ goto L_024617B4;
|
|
L_024617B4: ; // 0x24617b4
|
|
/* 024617B4 */ 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_024617B8 @ 0x24617b8
|
|
void Gambit_fn_024617B8(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_024617B8: ; // 0x24617b8
|
|
/* 024617B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024617BC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024617BC */ _t1 = _t0 & 0x00000001u;
|
|
/* 024617BC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024617BC */ goto L_024617C0;
|
|
L_024617C0: ; // 0x24617c0
|
|
/* 024617C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024617C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024617C4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024617C4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024617C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024617C4 */ goto L_024617C8;
|
|
L_024617C8: ; // 0x24617c8
|
|
/* 024617C8 */ 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_024617CC @ 0x24617cc
|
|
void Gambit_fn_024617CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024617CC: ; // 0x24617cc
|
|
/* 024617CC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024617CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024617CC */ cpu->r[1] = _t0;
|
|
/* 024617D0 */ cpu->r[0] = cpu->lr;
|
|
/* 024617D4 */ /* nop */
|
|
/* 024617D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024617D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024617DC */ cpu->r[28] = cpu->r[4];
|
|
/* 024617E0 */ cpu->r[30] = cpu->r[6];
|
|
/* 024617E4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024617E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024617E8 */ cpu->r[29] = cpu->r[5];
|
|
/* 024617EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024617EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024617EC */ if (_t3) goto L_024617F0; else goto L_02461800;
|
|
L_024617F0: ; // 0x24617f0
|
|
/* 024617F0 */ cpu->r[3] = 0x00000018u;
|
|
/* 024617F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024617F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024617F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024617FC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024617FC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024617FC */ if (_t5) goto L_0246183C; else goto L_02461800;
|
|
L_02461800: ; // 0x2461800
|
|
/* 02461800 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 02461800 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 02461804 */ cpu->r[27] = cpu->r[31] + 0x00000004u;
|
|
/* 02461808 */ cpu->r[11] = 0x00000000u;
|
|
/* 0246180C */ cpu->r[0] = 0x00000004u;
|
|
/* 02461810 */ cpu->r[10] = cpu->r[31];
|
|
/* 02461814 */ cpu->r[12] = 0x00000001u;
|
|
/* 02461818 */ cpu->ctr = cpu->r[0];
|
|
/* 0246181C */ _t7 = cpu->r[31] + 0x00000014u;
|
|
/* 0246181C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
L_02461820: ; // 0x2461820
|
|
/* 02461820 */ _t8 = cpu->r[10] + 0x00000004u;
|
|
/* 02461820 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02461820 */ cpu->r[10] = _t8;
|
|
/* 02461824 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02461824 */ _t9 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02461824 */ _t10 = _t9 >> (0x00000002u & 31u);
|
|
/* 02461824 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02461824 */ if (_t11) goto L_02461820; else goto L_02461828;
|
|
L_02461828: ; // 0x2461828
|
|
/* 02461828 */ cpu->r[5] = cpu->r[30];
|
|
/* 0246182C */ cpu->r[4] = cpu->r[29];
|
|
/* 02461830 */ cpu->r[3] = cpu->r[28];
|
|
/* 02461834 */ Gambit_fn_027EC294(cpu);
|
|
/* 02461838 */ _t12 = cpu->r[27] + 0x00000000u;
|
|
/* 02461838 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
L_0246183C: ; // 0x246183c
|
|
/* 0246183C */ cpu->r[3] = cpu->r[31];
|
|
/* 02461840 */ /* nop */
|
|
/* 02461844 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 02461844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02461848 */ cpu->lr = cpu->r[0];
|
|
/* 0246184C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02461850 */ return;
|
|
}
|
|
|
|
// fn_02461854 @ 0x2461854
|
|
void Gambit_fn_02461854(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02461854: ; // 0x2461854
|
|
/* 02461854 */ cpu->r[0] = cpu->lr;
|
|
/* 02461858 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02461858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461858 */ cpu->r[1] = _t0;
|
|
/* 0246185C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0246185C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02461860 */ cpu->r[30] = cpu->r[3];
|
|
/* 02461864 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461864 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02461868 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02461868 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246186C */ _t4 = cpu->r[30] + 0x00000014u;
|
|
/* 0246186C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02461870 */ cpu->r[31] = cpu->r[30] + 0x00000004u;
|
|
/* 02461874 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 02461878 */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 02461878 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0246187C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246187C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246187C */ if (_t7) goto L_02461880; else goto L_02461888;
|
|
L_02461880: ; // 0x2461880
|
|
/* 02461880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02461884 */ cpu->r[31] = cpu->r[31] + cpu->r[0];
|
|
L_02461888: ; // 0x2461888
|
|
/* 02461888 */ Gambit_fn_027EC294(cpu);
|
|
/* 0246188C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0246188C */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02461890 */ _t9 = cpu->r[30] + 0x00000014u;
|
|
/* 02461890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02461894 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02461898 */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 02461898 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0246189C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0246189C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024618A0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024618A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024618A4 */ cpu->lr = cpu->r[0];
|
|
/* 024618A8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024618A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024618AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024618B0 */ return;
|
|
}
|
|
|
|
// fn_02461858 @ 0x2461858
|
|
void Gambit_fn_02461858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02461858: ; // 0x2461858
|
|
/* 02461858 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02461858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461858 */ cpu->r[1] = _t0;
|
|
/* 0246185C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0246185C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02461860 */ cpu->r[30] = cpu->r[3];
|
|
/* 02461864 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461864 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02461868 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02461868 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246186C */ _t4 = cpu->r[30] + 0x00000014u;
|
|
/* 0246186C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02461870 */ cpu->r[31] = cpu->r[30] + 0x00000004u;
|
|
/* 02461874 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 02461878 */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 02461878 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0246187C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246187C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246187C */ if (_t7) goto L_02461880; else goto L_02461888;
|
|
L_02461880: ; // 0x2461880
|
|
/* 02461880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02461884 */ cpu->r[31] = cpu->r[31] + cpu->r[0];
|
|
L_02461888: ; // 0x2461888
|
|
/* 02461888 */ Gambit_fn_027EC294(cpu);
|
|
/* 0246188C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0246188C */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02461890 */ _t9 = cpu->r[30] + 0x00000014u;
|
|
/* 02461890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02461894 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02461898 */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 02461898 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0246189C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0246189C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024618A0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024618A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024618A4 */ cpu->lr = cpu->r[0];
|
|
/* 024618A8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024618A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024618AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024618B0 */ return;
|
|
}
|
|
|
|
// fn_024618B4 @ 0x24618b4
|
|
void Gambit_fn_024618B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024618B4: ; // 0x24618b4
|
|
/* 024618B4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024618B8 */ _t0 = cpu->r[12] + 0x00006000u;
|
|
/* 024618B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024618BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024618C0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024618C0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024618C0 */ if (_t2) goto L_024618C4; else goto L_024618CC;
|
|
L_024618C4: ; // 0x24618c4
|
|
/* 024618C4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024618C8 */ return;
|
|
L_024618CC: ; // 0x24618cc
|
|
/* 024618CC */ _t3 = cpu->r[12] + 0x000002B8u;
|
|
/* 024618CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024618D0 */ _t4 = cpu->r[12] + 0x00000238u;
|
|
/* 024618D0 */ cpu->r[3] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024618D4 */ return;
|
|
}
|
|
|
|
// fn_024618D8 @ 0x24618d8
|
|
void Gambit_fn_024618D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_024618D8: ; // 0x24618d8
|
|
/* 024618D8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024618D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024618D8 */ cpu->r[1] = _t0;
|
|
/* 024618DC */ /* nop */
|
|
/* 024618E0 */ cpu->r[0] = cpu->lr;
|
|
/* 024618E4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024618E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024618E8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024618EC */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 024618EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024618F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024618F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024618F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024618F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024618F8 */ if (_t4) goto L_024619B0; else goto L_024618FC;
|
|
L_024618FC: ; // 0x24618fc
|
|
/* 024618FC */ cpu->r[3] = cpu->r[29];
|
|
/* 02461900 */ _t5 = cpu->r[12] + 0x000002B8u;
|
|
/* 02461900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02461904 */ Gambit_fn_024618B4(cpu);
|
|
/* 02461908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246190C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246190C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246190C */ if (_t7) goto L_024619B0; else goto L_02461910;
|
|
L_02461910: ; // 0x2461910
|
|
/* 02461910 */ cpu->r[3] = cpu->r[0];
|
|
/* 02461914 */ Gambit_fn_0223F658(cpu);
|
|
/* 02461918 */ _t8 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02461918 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246191C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02461920 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461920 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02461920 */ if (_t10) goto L_024619B0; else goto L_02461924;
|
|
L_02461924: ; // 0x2461924
|
|
/* 02461924 */ _t11 = cpu->r[29] + 0x00000014u;
|
|
/* 02461924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461928 */ cpu->r[31] = 0x00000000u;
|
|
/* 0246192C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02461930 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461930 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02461930 */ if (_t13) goto L_02461934; else goto L_02461998;
|
|
L_02461934: ; // 0x2461934
|
|
/* 02461934 */ cpu->r[28] = cpu->r[29] + 0x00000004u;
|
|
/* 02461938 */ cpu->r[27] = 0x00000000u;
|
|
L_0246193C: ; // 0x246193c
|
|
/* 0246193C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000004u);
|
|
/* 02461940 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461940 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02461940 */ if (_t15) goto L_02461944; else goto L_02461970;
|
|
L_02461944: ; // 0x2461944
|
|
/* 02461944 */ cpu->r[4] = 0x00000000u;
|
|
/* 02461948 */ _t16 = cpu->r[28] + cpu->r[27];
|
|
/* 02461948 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246194C */ cpu->r[5] = cpu->r[30];
|
|
/* 02461950 */ cpu->r[6] = cpu->r[4];
|
|
/* 02461954 */ Gambit_fn_028009C0(cpu);
|
|
/* 02461958 */ _t17 = cpu->r[29] + 0x00000014u;
|
|
/* 02461958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246195C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02461960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02461964 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02461968 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461968 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02461968 */ if (_t19) goto L_0246193C; else goto L_0246196C;
|
|
L_0246196C: ; // 0x246196c
|
|
/* 0246196C */ goto L_02461998;
|
|
L_02461970: ; // 0x2461970
|
|
/* 02461970 */ cpu->r[4] = 0x00000000u;
|
|
/* 02461974 */ _t20 = cpu->r[28] + 0x00000000u;
|
|
/* 02461974 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02461978 */ cpu->r[5] = cpu->r[30];
|
|
/* 0246197C */ cpu->r[6] = cpu->r[4];
|
|
/* 02461980 */ Gambit_fn_028009C0(cpu);
|
|
/* 02461984 */ _t21 = cpu->r[29] + 0x00000014u;
|
|
/* 02461984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02461988 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0246198C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02461990 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02461994 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461994 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02461994 */ if (_t23) goto L_0246193C; else goto L_02461998;
|
|
L_02461998: ; // 0x2461998
|
|
/* 02461998 */ /* nop */
|
|
/* 0246199C */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 0246199C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024619A0 */ cpu->lr = cpu->r[0];
|
|
/* 024619A4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024619A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024619AC */ return;
|
|
L_024619B0: ; // 0x24619b0
|
|
/* 024619B0 */ /* nop */
|
|
/* 024619B4 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 024619B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024619B8 */ cpu->lr = cpu->r[0];
|
|
/* 024619BC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024619C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024619C4 */ return;
|
|
}
|
|
|
|
// fn_024619C8 @ 0x24619c8
|
|
void Gambit_fn_024619C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_024618D8: ; // 0x24618d8
|
|
/* 024618D8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024618D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024618D8 */ cpu->r[1] = _t0;
|
|
/* 024618DC */ /* nop */
|
|
/* 024618E0 */ cpu->r[0] = cpu->lr;
|
|
/* 024618E4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024618E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024618E8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024618EC */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 024618EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024618F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024618F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024618F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024618F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024618F8 */ if (_t4) goto L_024619B0; else goto L_024618FC;
|
|
L_024618FC: ; // 0x24618fc
|
|
/* 024618FC */ cpu->r[3] = cpu->r[29];
|
|
/* 02461900 */ _t5 = cpu->r[12] + 0x000002B8u;
|
|
/* 02461900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02461904 */ Gambit_fn_024618B4(cpu);
|
|
/* 02461908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246190C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246190C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246190C */ if (_t7) goto L_024619B0; else goto L_02461910;
|
|
L_02461910: ; // 0x2461910
|
|
/* 02461910 */ cpu->r[3] = cpu->r[0];
|
|
/* 02461914 */ Gambit_fn_0223F658(cpu);
|
|
/* 02461918 */ _t8 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02461918 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246191C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02461920 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461920 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02461920 */ if (_t10) goto L_024619B0; else goto L_02461924;
|
|
L_02461924: ; // 0x2461924
|
|
/* 02461924 */ _t11 = cpu->r[29] + 0x00000014u;
|
|
/* 02461924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461928 */ cpu->r[31] = 0x00000000u;
|
|
/* 0246192C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02461930 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461930 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02461930 */ if (_t13) goto L_02461934; else goto L_02461998;
|
|
L_02461934: ; // 0x2461934
|
|
/* 02461934 */ cpu->r[28] = cpu->r[29] + 0x00000004u;
|
|
/* 02461938 */ cpu->r[27] = 0x00000000u;
|
|
L_0246193C: ; // 0x246193c
|
|
/* 0246193C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000004u);
|
|
/* 02461940 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461940 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02461940 */ if (_t15) goto L_02461944; else goto L_02461970;
|
|
L_02461944: ; // 0x2461944
|
|
/* 02461944 */ cpu->r[4] = 0x00000000u;
|
|
/* 02461948 */ _t16 = cpu->r[28] + cpu->r[27];
|
|
/* 02461948 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246194C */ cpu->r[5] = cpu->r[30];
|
|
/* 02461950 */ cpu->r[6] = cpu->r[4];
|
|
/* 02461954 */ Gambit_fn_028009C0(cpu);
|
|
/* 02461958 */ _t17 = cpu->r[29] + 0x00000014u;
|
|
/* 02461958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246195C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02461960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02461964 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02461968 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461968 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02461968 */ if (_t19) goto L_0246193C; else goto L_0246196C;
|
|
L_0246196C: ; // 0x246196c
|
|
/* 0246196C */ goto L_02461998;
|
|
L_02461970: ; // 0x2461970
|
|
/* 02461970 */ cpu->r[4] = 0x00000000u;
|
|
/* 02461974 */ _t20 = cpu->r[28] + 0x00000000u;
|
|
/* 02461974 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02461978 */ cpu->r[5] = cpu->r[30];
|
|
/* 0246197C */ cpu->r[6] = cpu->r[4];
|
|
/* 02461980 */ Gambit_fn_028009C0(cpu);
|
|
/* 02461984 */ _t21 = cpu->r[29] + 0x00000014u;
|
|
/* 02461984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02461988 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0246198C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02461990 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02461994 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461994 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02461994 */ if (_t23) goto L_0246193C; else goto L_02461998;
|
|
L_02461998: ; // 0x2461998
|
|
/* 02461998 */ /* nop */
|
|
/* 0246199C */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 0246199C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024619A0 */ cpu->lr = cpu->r[0];
|
|
/* 024619A4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024619A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024619AC */ return;
|
|
L_024619B0: ; // 0x24619b0
|
|
/* 024619B0 */ /* nop */
|
|
/* 024619B4 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 024619B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024619B8 */ cpu->lr = cpu->r[0];
|
|
/* 024619BC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024619C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024619C4 */ return;
|
|
L_024619C8: ; // 0x24619c8
|
|
/* 024619C8 */ goto L_024618D8;
|
|
}
|
|
|
|
// fn_024619CC @ 0x24619cc
|
|
void Gambit_fn_024619CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024619CC: ; // 0x24619cc
|
|
/* 024619CC */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024619D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024619D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024619D0 */ cpu->r[1] = _t0;
|
|
/* 024619D4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024619D8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024619DC */ _t1 = cpu->r[10] + 0x00007A8Cu;
|
|
/* 024619DC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024619DC */ cpu->r[10] = _t1;
|
|
/* 024619E0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024619E4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024619E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024619E8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024619EC */ cpu->r[8] = 0x101E0000u;
|
|
/* 024619F0 */ _t3 = cpu->r[7] + 0x00007A9Cu;
|
|
/* 024619F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024619F0 */ cpu->r[7] = _t3;
|
|
/* 024619F4 */ _t4 = cpu->r[8] + 0x00007A94u;
|
|
/* 024619F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024619F4 */ cpu->r[8] = _t4;
|
|
/* 024619F8 */ cpu->r[0] = 0x00000002u;
|
|
/* 024619FC */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024619FC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02461A00 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02461A04 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02461A04 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02461A08 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02461A0C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02461A0C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02461A10 */ _t8 = cpu->r[8] + 0x00007AACu;
|
|
/* 02461A10 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02461A10 */ cpu->r[8] = _t8;
|
|
/* 02461A14 */ _t9 = cpu->r[12] + 0x00007AA4u;
|
|
/* 02461A14 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02461A14 */ cpu->r[12] = _t9;
|
|
/* 02461A18 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02461A18 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02461A1C */ cpu->r[0] = 0x00000004u;
|
|
/* 02461A20 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02461A20 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02461A24 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02461A28 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02461A28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02461A2C */ _t13 = cpu->r[11] + 0x00007AB4u;
|
|
/* 02461A2C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02461A30 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02461A34 */ return;
|
|
}
|
|
|
|
// fn_024619D0 @ 0x24619d0
|
|
void Gambit_fn_024619D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024619D0: ; // 0x24619d0
|
|
/* 024619D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024619D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024619D0 */ cpu->r[1] = _t0;
|
|
/* 024619D4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024619D8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024619DC */ _t1 = cpu->r[10] + 0x00007A8Cu;
|
|
/* 024619DC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024619DC */ cpu->r[10] = _t1;
|
|
/* 024619E0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024619E4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024619E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024619E8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024619EC */ cpu->r[8] = 0x101E0000u;
|
|
/* 024619F0 */ _t3 = cpu->r[7] + 0x00007A9Cu;
|
|
/* 024619F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024619F0 */ cpu->r[7] = _t3;
|
|
/* 024619F4 */ _t4 = cpu->r[8] + 0x00007A94u;
|
|
/* 024619F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024619F4 */ cpu->r[8] = _t4;
|
|
/* 024619F8 */ cpu->r[0] = 0x00000002u;
|
|
/* 024619FC */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024619FC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02461A00 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02461A04 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02461A04 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02461A08 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02461A0C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02461A0C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02461A10 */ _t8 = cpu->r[8] + 0x00007AACu;
|
|
/* 02461A10 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02461A10 */ cpu->r[8] = _t8;
|
|
/* 02461A14 */ _t9 = cpu->r[12] + 0x00007AA4u;
|
|
/* 02461A14 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02461A14 */ cpu->r[12] = _t9;
|
|
/* 02461A18 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02461A18 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02461A1C */ cpu->r[0] = 0x00000004u;
|
|
/* 02461A20 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02461A20 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02461A24 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02461A28 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02461A28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02461A2C */ _t13 = cpu->r[11] + 0x00007AB4u;
|
|
/* 02461A2C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02461A30 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02461A34 */ return;
|
|
}
|
|
|
|
// fn_02461A38 @ 0x2461a38
|
|
void Gambit_fn_02461A38(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_02461A38: ; // 0x2461a38
|
|
/* 02461A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461A3C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461A3C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02461A3C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461A3C */ goto L_02461A40;
|
|
L_02461A40: ; // 0x2461a40
|
|
/* 02461A40 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02461A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461A44 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461A44 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461A44 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02461A44 */ goto L_02461A48;
|
|
L_02461A48: ; // 0x2461a48
|
|
/* 02461A48 */ 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_02461A4C @ 0x2461a4c
|
|
void Gambit_fn_02461A4C(CPUState* cpu) {
|
|
L_02461A4C: ; // 0x2461a4c
|
|
/* 02461A4C */ return;
|
|
}
|
|
|
|
// fn_02461A50 @ 0x2461a50
|
|
void Gambit_fn_02461A50(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;
|
|
|
|
L_02461A50: ; // 0x2461a50
|
|
/* 02461A50 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02461A50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461A50 */ cpu->r[1] = _t0;
|
|
/* 02461A54 */ cpu->r[0] = cpu->lr;
|
|
/* 02461A58 */ /* nop */
|
|
/* 02461A5C */ cpu->r[21] = 0x100A0000u;
|
|
/* 02461A60 */ cpu->r[23] = 0x00000000u;
|
|
/* 02461A64 */ cpu->r[22] = 0x100A0000u;
|
|
/* 02461A68 */ cpu->r[25] = 0x100A0000u;
|
|
/* 02461A6C */ cpu->r[24] = 0x100A0000u;
|
|
/* 02461A70 */ cpu->r[26] = 0x100A0000u;
|
|
/* 02461A74 */ cpu->r[25] = cpu->r[25] + 0x00002D6Cu;
|
|
/* 02461A78 */ cpu->r[22] = cpu->r[22] + 0x00002D60u;
|
|
/* 02461A7C */ cpu->r[24] = cpu->r[24] + 0x00002D54u;
|
|
/* 02461A80 */ cpu->r[26] = cpu->r[26] + 0x00002D78u;
|
|
/* 02461A84 */ cpu->r[30] = cpu->r[23];
|
|
/* 02461A88 */ cpu->r[21] = cpu->r[21] + 0x00002D0Cu;
|
|
/* 02461A8C */ cpu->r[31] = cpu->r[3] + 0x00000008u;
|
|
/* 02461A90 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02461A90 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
L_02461A94: ; // 0x2461a94
|
|
/* 02461A94 */ cpu->r[29] = 0xFFFFFFFEu;
|
|
/* 02461A98 */ cpu->r[28] = 0x00000000u;
|
|
/* 02461A9C */ cpu->r[27] = cpu->r[30];
|
|
/* 02461AA0 */ cpu->r[8] = cpu->r[31] + cpu->r[30];
|
|
L_02461AA4: ; // 0x2461aa4
|
|
/* 02461AA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461AA8 */ _t2 = cpu->r[8] + 0x00000004u;
|
|
/* 02461AA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02461AAC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461AAC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02461AAC */ if (_t4) goto L_02461AB0; else goto L_02461AC4;
|
|
L_02461AB0: ; // 0x2461ab0
|
|
/* 02461AB0 */ cpu->r[9] = cpu->r[31] + cpu->r[27];
|
|
/* 02461AB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461AB8 */ _t5 = cpu->r[9] + 0x00000008u;
|
|
/* 02461AB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 02461ABC */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461ABC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02461ABC */ if (_t7) goto L_02461AD0; else goto L_02461AC0;
|
|
L_02461AC0: ; // 0x2461ac0
|
|
/* 02461AC0 */ goto L_02461AE4;
|
|
L_02461AC4: ; // 0x2461ac4
|
|
/* 02461AC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461AC8 */ _t8 = cpu->r[31] + 0x00000008u;
|
|
/* 02461AC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 02461ACC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461ACC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02461ACC */ if (_t10) goto L_02461AD0; else goto L_02461AE4;
|
|
L_02461AD0: ; // 0x2461ad0
|
|
/* 02461AD0 */ cpu->r[11] = cpu->r[31] + cpu->r[27];
|
|
/* 02461AD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461AD8 */ _t11 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02461AD8 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 02461ADC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461ADC */ _t13 = _t12 & 0x00000001u;
|
|
/* 02461ADC */ if (_t13) goto L_02461AF0; else goto L_02461AE0;
|
|
L_02461AE0: ; // 0x2461ae0
|
|
/* 02461AE0 */ goto L_02461B28;
|
|
L_02461AE4: ; // 0x2461ae4
|
|
/* 02461AE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461AE8 */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02461AE8 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 02461AEC */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461AEC */ _t16 = _t15 & 0x00000001u;
|
|
/* 02461AEC */ if (_t16) goto L_02461AF0; else goto L_02461B28;
|
|
L_02461AF0: ; // 0x2461af0
|
|
/* 02461AF0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02461AF0 */ rbrew_write32(cpu->mem, _t17, cpu->r[22]);
|
|
/* 02461AF4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461AF8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461AF8 */ rbrew_write32(cpu->mem, _t18, cpu->r[21]);
|
|
/* 02461AFC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461AFC */ rbrew_write32(cpu->mem, _t19, cpu->r[21]);
|
|
/* 02461B00 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02461B00 */ rbrew_write32(cpu->mem, _t20, cpu->r[21]);
|
|
/* 02461B04 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 02461B04 */ rbrew_write32(cpu->mem, _t21, cpu->r[25]);
|
|
/* 02461B08 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02461B08 */ rbrew_write32(cpu->mem, _t22, cpu->r[22]);
|
|
/* 02461B0C */ _t23 = cpu->r[31] + cpu->r[27];
|
|
/* 02461B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02461B10 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461B14 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02461B18 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02461B1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461B20 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461B20 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02461B20 */ if (_t25) goto L_02461B5C; else goto L_02461B24;
|
|
L_02461B24: ; // 0x2461b24
|
|
/* 02461B24 */ goto L_02461BAC;
|
|
L_02461B28: ; // 0x2461b28
|
|
/* 02461B28 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 02461B28 */ rbrew_write32(cpu->mem, _t26, cpu->r[22]);
|
|
/* 02461B2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461B30 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461B30 */ rbrew_write32(cpu->mem, _t27, cpu->r[21]);
|
|
/* 02461B34 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461B34 */ rbrew_write32(cpu->mem, _t28, cpu->r[21]);
|
|
/* 02461B38 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02461B38 */ rbrew_write32(cpu->mem, _t29, cpu->r[21]);
|
|
/* 02461B3C */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 02461B3C */ rbrew_write32(cpu->mem, _t30, cpu->r[25]);
|
|
/* 02461B40 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02461B40 */ rbrew_write32(cpu->mem, _t31, cpu->r[22]);
|
|
/* 02461B44 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 02461B44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02461B48 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461B4C */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02461B50 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02461B54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461B58 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461B58 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02461B58 */ if (_t34) goto L_02461B5C; else goto L_02461BAC;
|
|
L_02461B5C: ; // 0x2461b5c
|
|
/* 02461B5C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02461B5C */ rbrew_write32(cpu->mem, _t35, cpu->r[24]);
|
|
/* 02461B60 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02461B64 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461B64 */ rbrew_write32(cpu->mem, _t36, cpu->r[21]);
|
|
/* 02461B68 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461B68 */ rbrew_write32(cpu->mem, _t37, cpu->r[21]);
|
|
/* 02461B6C */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02461B6C */ rbrew_write32(cpu->mem, _t38, cpu->r[21]);
|
|
/* 02461B70 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02461B70 */ rbrew_write32(cpu->mem, _t39, cpu->r[26]);
|
|
/* 02461B74 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 02461B74 */ rbrew_write32(cpu->mem, _t40, cpu->r[24]);
|
|
/* 02461B78 */ _t41 = cpu->r[31] + cpu->r[27];
|
|
/* 02461B78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02461B7C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461B80 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02461B84 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02461B88 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02461B8C */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 02461B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000003u);
|
|
/* 02461B94 */ cpu->r[30] = cpu->r[30] + 0x00000010u;
|
|
/* 02461B98 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461B98 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02461B98 */ if (_t43) goto L_02461B9C; else goto L_02461BEC;
|
|
L_02461B9C: ; // 0x2461b9c
|
|
/* 02461B9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02461BA0 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461BA0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02461BA0 */ if (_t45) goto L_02461A94; else goto L_02461BA4;
|
|
L_02461BA4: ; // 0x2461ba4
|
|
/* 02461BA4 */ cpu->r[8] = cpu->r[31];
|
|
/* 02461BA8 */ goto L_02461AA4;
|
|
L_02461BAC: ; // 0x2461bac
|
|
/* 02461BAC */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02461BAC */ rbrew_write32(cpu->mem, _t46, cpu->r[24]);
|
|
/* 02461BB0 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02461BB4 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461BB4 */ rbrew_write32(cpu->mem, _t47, cpu->r[21]);
|
|
/* 02461BB8 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461BB8 */ rbrew_write32(cpu->mem, _t48, cpu->r[21]);
|
|
/* 02461BBC */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02461BBC */ rbrew_write32(cpu->mem, _t49, cpu->r[21]);
|
|
/* 02461BC0 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 02461BC0 */ rbrew_write32(cpu->mem, _t50, cpu->r[26]);
|
|
/* 02461BC4 */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 02461BC4 */ rbrew_write32(cpu->mem, _t51, cpu->r[24]);
|
|
/* 02461BC8 */ _t52 = cpu->r[31] + 0x00000000u;
|
|
/* 02461BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02461BCC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461BD0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02461BD4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02461BD8 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02461BDC */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 02461BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000003u);
|
|
/* 02461BE4 */ cpu->r[30] = cpu->r[30] + 0x00000010u;
|
|
/* 02461BE8 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461BE8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02461BE8 */ if (_t54) goto L_02461B9C; else goto L_02461BEC;
|
|
L_02461BEC: ; // 0x2461bec
|
|
/* 02461BEC */ /* nop */
|
|
/* 02461BF0 */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 02461BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02461BF4 */ cpu->lr = cpu->r[0];
|
|
/* 02461BF8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02461BFC */ return;
|
|
}
|
|
|
|
// fn_02461C00 @ 0x2461c00
|
|
void Gambit_fn_02461C00(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;
|
|
|
|
L_02461C00: ; // 0x2461c00
|
|
/* 02461C00 */ cpu->r[0] = cpu->lr;
|
|
/* 02461C04 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02461C04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461C04 */ cpu->r[1] = _t0;
|
|
/* 02461C08 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461C08 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02461C0C */ /* nop */
|
|
/* 02461C10 */ cpu->r[29] = cpu->r[3];
|
|
/* 02461C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02461C14 */ cpu->r[28] = cpu->r[4];
|
|
/* 02461C18 */ cpu->r[30] = cpu->r[5];
|
|
/* 02461C1C */ cpu->r[31] = cpu->r[6];
|
|
/* 02461C20 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461C20 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461C20 */ if (_t3) goto L_02461C24; else goto L_02461C34;
|
|
L_02461C24: ; // 0x2461c24
|
|
/* 02461C24 */ cpu->r[3] = 0x00000040u;
|
|
/* 02461C28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02461C2C */ cpu->r[29] = cpu->r[3];
|
|
/* 02461C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02461C30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461C30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02461C30 */ if (_t5) goto L_02461DB4; else goto L_02461C34;
|
|
L_02461C34: ; // 0x2461c34
|
|
/* 02461C34 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02461C38 */ _t6 = cpu->r[29] + 0x00000038u;
|
|
/* 02461C38 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02461C3C */ cpu->r[24] = 0x100A0000u;
|
|
/* 02461C40 */ cpu->r[7] = cpu->r[7] + 0x00002D44u;
|
|
/* 02461C44 */ _t7 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02461C44 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02461C48 */ cpu->r[6] = 0x00000000u;
|
|
/* 02461C4C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461C50 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 02461C50 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 02461C54 */ cpu->r[3] = cpu->r[28];
|
|
/* 02461C58 */ cpu->r[0] = cpu->r[0] + 0x00002D88u;
|
|
/* 02461C5C */ _t9 = cpu->r[29] + 0x00000000u;
|
|
/* 02461C5C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02461C60 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461C64 */ cpu->r[24] = cpu->r[24] + 0x00002D0Cu;
|
|
/* 02461C68 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02461C68 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02461C6C */ cpu->r[23] = cpu->r[29] + 0x00000028u;
|
|
/* 02461C70 */ cpu->r[30] = cpu->r[29] + 0x00000008u;
|
|
/* 02461C74 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461C74 */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
/* 02461C78 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02461C7C */ cpu->r[26] = 0x101D0000u;
|
|
/* 02461C80 */ _t12 = cpu->r[26] + 0xFFFFED9Cu;
|
|
/* 02461C80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02461C80 */ cpu->r[26] = _t12;
|
|
/* 02461C84 */ cpu->r[27] = 0x100A0000u;
|
|
/* 02461C88 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02461C8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02461C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02461C94 */ cpu->r[27] = cpu->r[27] + 0x00002D34u;
|
|
/* 02461C98 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461C98 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02461C98 */ if (_t14) goto L_02461C9C; else goto L_02461CA8;
|
|
L_02461C9C: ; // 0x2461c9c
|
|
/* 02461C9C */ _t15 = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461C9C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 02461CA0 */ cpu->r[10] = 0x00000001u;
|
|
/* 02461CA4 */ _t16 = cpu->r[26] + 0x00000000u;
|
|
/* 02461CA4 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
L_02461CA8: ; // 0x2461ca8
|
|
/* 02461CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02461CAC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461CAC */ _t18 = _t17 & 0x00000001u;
|
|
/* 02461CAC */ if (_t18) goto L_02461CD0; else goto L_02461CB0;
|
|
L_02461CB0: ; // 0x2461cb0
|
|
/* 02461CB0 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 02461CB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02461CB4 */ _t20 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02461CB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02461CB8 */ cpu->ctr = cpu->r[12];
|
|
/* 02461CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02461CC0 */ cpu->r[4] = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461CC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461CCC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461CCC */ _t22 = _t21 & 0x00000001u;
|
|
/* 02461CCC */ if (_t22) goto L_02461CD0; else goto L_02461CD4;
|
|
L_02461CD0: ; // 0x2461cd0
|
|
/* 02461CD0 */ cpu->r[31] = 0x00000000u;
|
|
L_02461CD4: ; // 0x2461cd4
|
|
/* 02461CD4 */ _t23 = cpu->r[23] + 0x00000000u;
|
|
/* 02461CD4 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 02461CD8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461CDC */ cpu->r[3] = cpu->r[28];
|
|
/* 02461CE0 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461CE0 */ rbrew_write32(cpu->mem, _t24, cpu->r[24]);
|
|
/* 02461CE4 */ cpu->r[0] = cpu->r[0] + 0x00002D98u;
|
|
/* 02461CE8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461CEC */ cpu->r[23] = cpu->r[30] + 0x00000010u;
|
|
/* 02461CF0 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02461CF0 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02461CF4 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02461CF8 */ _t26 = cpu->r[26] + 0x00000000u;
|
|
/* 02461CF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02461CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02461D00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461D04 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D04 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02461D04 */ if (_t28) goto L_02461D08; else goto L_02461D14;
|
|
L_02461D08: ; // 0x2461d08
|
|
/* 02461D08 */ _t29 = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D08 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]);
|
|
/* 02461D0C */ cpu->r[0] = 0x00000001u;
|
|
/* 02461D10 */ _t30 = cpu->r[26] + 0x00000000u;
|
|
/* 02461D10 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_02461D14: ; // 0x2461d14
|
|
/* 02461D14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02461D18 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D18 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02461D18 */ if (_t32) goto L_02461D3C; else goto L_02461D1C;
|
|
L_02461D1C: ; // 0x2461d1c
|
|
/* 02461D1C */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 02461D1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02461D20 */ _t34 = cpu->r[7] + 0x0000001Cu;
|
|
/* 02461D20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02461D24 */ cpu->ctr = cpu->r[8];
|
|
/* 02461D28 */ cpu->r[3] = cpu->r[31];
|
|
/* 02461D2C */ cpu->r[4] = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461D38 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D38 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02461D38 */ if (_t36) goto L_02461D3C; else goto L_02461D40;
|
|
L_02461D3C: ; // 0x2461d3c
|
|
/* 02461D3C */ cpu->r[31] = 0x00000000u;
|
|
L_02461D40: ; // 0x2461d40
|
|
/* 02461D40 */ _t37 = cpu->r[23] + 0x00000000u;
|
|
/* 02461D40 */ rbrew_write32(cpu->mem, _t37, cpu->r[31]);
|
|
/* 02461D44 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461D48 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461D48 */ rbrew_write32(cpu->mem, _t38, cpu->r[24]);
|
|
/* 02461D4C */ cpu->r[0] = cpu->r[0] + 0x00002DA8u;
|
|
/* 02461D50 */ cpu->r[3] = cpu->r[28];
|
|
/* 02461D54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461D58 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02461D58 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02461D5C */ Gambit_fn_026D86B0(cpu);
|
|
/* 02461D60 */ _t40 = cpu->r[26] + 0x00000000u;
|
|
/* 02461D60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02461D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02461D68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461D6C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D6C */ _t42 = _t41 & 0x00000001u;
|
|
/* 02461D6C */ if (_t42) goto L_02461D70; else goto L_02461D7C;
|
|
L_02461D70: ; // 0x2461d70
|
|
/* 02461D70 */ _t43 = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D70 */ rbrew_write32(cpu->mem, _t43, cpu->r[27]);
|
|
/* 02461D74 */ cpu->r[0] = 0x00000001u;
|
|
/* 02461D78 */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 02461D78 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
L_02461D7C: ; // 0x2461d7c
|
|
/* 02461D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02461D80 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D80 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02461D80 */ if (_t46) goto L_02461DA4; else goto L_02461D84;
|
|
L_02461D84: ; // 0x2461d84
|
|
/* 02461D84 */ _t47 = cpu->r[31] + 0x00000000u;
|
|
/* 02461D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02461D88 */ _t48 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02461D88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02461D8C */ cpu->ctr = cpu->r[0];
|
|
/* 02461D90 */ cpu->r[3] = cpu->r[31];
|
|
/* 02461D94 */ cpu->r[4] = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461DA0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461DA0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02461DA0 */ if (_t50) goto L_02461DA4; else goto L_02461DA8;
|
|
L_02461DA4: ; // 0x2461da4
|
|
/* 02461DA4 */ cpu->r[31] = 0x00000000u;
|
|
L_02461DA8: ; // 0x2461da8
|
|
/* 02461DA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02461DAC */ _t51 = cpu->r[30] + 0x00000000u;
|
|
/* 02461DAC */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 02461DB0 */ Gambit_fn_02461A50(cpu);
|
|
L_02461DB4: ; // 0x2461db4
|
|
/* 02461DB4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02461DB8 */ /* nop */
|
|
/* 02461DBC */ _t52 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461DBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02461DC0 */ cpu->lr = cpu->r[0];
|
|
/* 02461DC4 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02461DC8 */ return;
|
|
}
|
|
|
|
// fn_02461C04 @ 0x2461c04
|
|
void Gambit_fn_02461C04(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;
|
|
|
|
L_02461C04: ; // 0x2461c04
|
|
/* 02461C04 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02461C04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461C04 */ cpu->r[1] = _t0;
|
|
/* 02461C08 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461C08 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02461C0C */ /* nop */
|
|
/* 02461C10 */ cpu->r[29] = cpu->r[3];
|
|
/* 02461C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02461C14 */ cpu->r[28] = cpu->r[4];
|
|
/* 02461C18 */ cpu->r[30] = cpu->r[5];
|
|
/* 02461C1C */ cpu->r[31] = cpu->r[6];
|
|
/* 02461C20 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461C20 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461C20 */ if (_t3) goto L_02461C24; else goto L_02461C34;
|
|
L_02461C24: ; // 0x2461c24
|
|
/* 02461C24 */ cpu->r[3] = 0x00000040u;
|
|
/* 02461C28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02461C2C */ cpu->r[29] = cpu->r[3];
|
|
/* 02461C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02461C30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461C30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02461C30 */ if (_t5) goto L_02461DB4; else goto L_02461C34;
|
|
L_02461C34: ; // 0x2461c34
|
|
/* 02461C34 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02461C38 */ _t6 = cpu->r[29] + 0x00000038u;
|
|
/* 02461C38 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02461C3C */ cpu->r[24] = 0x100A0000u;
|
|
/* 02461C40 */ cpu->r[7] = cpu->r[7] + 0x00002D44u;
|
|
/* 02461C44 */ _t7 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02461C44 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02461C48 */ cpu->r[6] = 0x00000000u;
|
|
/* 02461C4C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461C50 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 02461C50 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 02461C54 */ cpu->r[3] = cpu->r[28];
|
|
/* 02461C58 */ cpu->r[0] = cpu->r[0] + 0x00002D88u;
|
|
/* 02461C5C */ _t9 = cpu->r[29] + 0x00000000u;
|
|
/* 02461C5C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02461C60 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461C64 */ cpu->r[24] = cpu->r[24] + 0x00002D0Cu;
|
|
/* 02461C68 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02461C68 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02461C6C */ cpu->r[23] = cpu->r[29] + 0x00000028u;
|
|
/* 02461C70 */ cpu->r[30] = cpu->r[29] + 0x00000008u;
|
|
/* 02461C74 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461C74 */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
/* 02461C78 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02461C7C */ cpu->r[26] = 0x101D0000u;
|
|
/* 02461C80 */ _t12 = cpu->r[26] + 0xFFFFED9Cu;
|
|
/* 02461C80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02461C80 */ cpu->r[26] = _t12;
|
|
/* 02461C84 */ cpu->r[27] = 0x100A0000u;
|
|
/* 02461C88 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02461C8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02461C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02461C94 */ cpu->r[27] = cpu->r[27] + 0x00002D34u;
|
|
/* 02461C98 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461C98 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02461C98 */ if (_t14) goto L_02461C9C; else goto L_02461CA8;
|
|
L_02461C9C: ; // 0x2461c9c
|
|
/* 02461C9C */ _t15 = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461C9C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 02461CA0 */ cpu->r[10] = 0x00000001u;
|
|
/* 02461CA4 */ _t16 = cpu->r[26] + 0x00000000u;
|
|
/* 02461CA4 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
L_02461CA8: ; // 0x2461ca8
|
|
/* 02461CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02461CAC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461CAC */ _t18 = _t17 & 0x00000001u;
|
|
/* 02461CAC */ if (_t18) goto L_02461CD0; else goto L_02461CB0;
|
|
L_02461CB0: ; // 0x2461cb0
|
|
/* 02461CB0 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 02461CB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02461CB4 */ _t20 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02461CB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02461CB8 */ cpu->ctr = cpu->r[12];
|
|
/* 02461CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02461CC0 */ cpu->r[4] = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461CC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461CCC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461CCC */ _t22 = _t21 & 0x00000001u;
|
|
/* 02461CCC */ if (_t22) goto L_02461CD0; else goto L_02461CD4;
|
|
L_02461CD0: ; // 0x2461cd0
|
|
/* 02461CD0 */ cpu->r[31] = 0x00000000u;
|
|
L_02461CD4: ; // 0x2461cd4
|
|
/* 02461CD4 */ _t23 = cpu->r[23] + 0x00000000u;
|
|
/* 02461CD4 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 02461CD8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461CDC */ cpu->r[3] = cpu->r[28];
|
|
/* 02461CE0 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461CE0 */ rbrew_write32(cpu->mem, _t24, cpu->r[24]);
|
|
/* 02461CE4 */ cpu->r[0] = cpu->r[0] + 0x00002D98u;
|
|
/* 02461CE8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461CEC */ cpu->r[23] = cpu->r[30] + 0x00000010u;
|
|
/* 02461CF0 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02461CF0 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02461CF4 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02461CF8 */ _t26 = cpu->r[26] + 0x00000000u;
|
|
/* 02461CF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02461CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02461D00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461D04 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D04 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02461D04 */ if (_t28) goto L_02461D08; else goto L_02461D14;
|
|
L_02461D08: ; // 0x2461d08
|
|
/* 02461D08 */ _t29 = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D08 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]);
|
|
/* 02461D0C */ cpu->r[0] = 0x00000001u;
|
|
/* 02461D10 */ _t30 = cpu->r[26] + 0x00000000u;
|
|
/* 02461D10 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_02461D14: ; // 0x2461d14
|
|
/* 02461D14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02461D18 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D18 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02461D18 */ if (_t32) goto L_02461D3C; else goto L_02461D1C;
|
|
L_02461D1C: ; // 0x2461d1c
|
|
/* 02461D1C */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 02461D1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02461D20 */ _t34 = cpu->r[7] + 0x0000001Cu;
|
|
/* 02461D20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02461D24 */ cpu->ctr = cpu->r[8];
|
|
/* 02461D28 */ cpu->r[3] = cpu->r[31];
|
|
/* 02461D2C */ cpu->r[4] = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461D38 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D38 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02461D38 */ if (_t36) goto L_02461D3C; else goto L_02461D40;
|
|
L_02461D3C: ; // 0x2461d3c
|
|
/* 02461D3C */ cpu->r[31] = 0x00000000u;
|
|
L_02461D40: ; // 0x2461d40
|
|
/* 02461D40 */ _t37 = cpu->r[23] + 0x00000000u;
|
|
/* 02461D40 */ rbrew_write32(cpu->mem, _t37, cpu->r[31]);
|
|
/* 02461D44 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461D48 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461D48 */ rbrew_write32(cpu->mem, _t38, cpu->r[24]);
|
|
/* 02461D4C */ cpu->r[0] = cpu->r[0] + 0x00002DA8u;
|
|
/* 02461D50 */ cpu->r[3] = cpu->r[28];
|
|
/* 02461D54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02461D58 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02461D58 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02461D5C */ Gambit_fn_026D86B0(cpu);
|
|
/* 02461D60 */ _t40 = cpu->r[26] + 0x00000000u;
|
|
/* 02461D60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02461D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02461D68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461D6C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D6C */ _t42 = _t41 & 0x00000001u;
|
|
/* 02461D6C */ if (_t42) goto L_02461D70; else goto L_02461D7C;
|
|
L_02461D70: ; // 0x2461d70
|
|
/* 02461D70 */ _t43 = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D70 */ rbrew_write32(cpu->mem, _t43, cpu->r[27]);
|
|
/* 02461D74 */ cpu->r[0] = 0x00000001u;
|
|
/* 02461D78 */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 02461D78 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
L_02461D7C: ; // 0x2461d7c
|
|
/* 02461D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02461D80 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461D80 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02461D80 */ if (_t46) goto L_02461DA4; else goto L_02461D84;
|
|
L_02461D84: ; // 0x2461d84
|
|
/* 02461D84 */ _t47 = cpu->r[31] + 0x00000000u;
|
|
/* 02461D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02461D88 */ _t48 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02461D88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02461D8C */ cpu->ctr = cpu->r[0];
|
|
/* 02461D90 */ cpu->r[3] = cpu->r[31];
|
|
/* 02461D94 */ cpu->r[4] = cpu->r[25] + 0xFFFFEDDCu;
|
|
/* 02461D98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02461D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02461DA0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461DA0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02461DA0 */ if (_t50) goto L_02461DA4; else goto L_02461DA8;
|
|
L_02461DA4: ; // 0x2461da4
|
|
/* 02461DA4 */ cpu->r[31] = 0x00000000u;
|
|
L_02461DA8: ; // 0x2461da8
|
|
/* 02461DA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02461DAC */ _t51 = cpu->r[30] + 0x00000000u;
|
|
/* 02461DAC */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 02461DB0 */ Gambit_fn_02461A50(cpu);
|
|
L_02461DB4: ; // 0x2461db4
|
|
/* 02461DB4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02461DB8 */ /* nop */
|
|
/* 02461DBC */ _t52 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461DBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02461DC0 */ cpu->lr = cpu->r[0];
|
|
/* 02461DC4 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02461DC8 */ return;
|
|
}
|
|
|
|
// fn_02461DCC @ 0x2461dcc
|
|
void Gambit_fn_02461DCC(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;
|
|
|
|
L_02461DCC: ; // 0x2461dcc
|
|
/* 02461DCC */ cpu->r[0] = cpu->lr;
|
|
/* 02461DD0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02461DD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461DD0 */ cpu->r[1] = _t0;
|
|
/* 02461DD4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02461DD4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02461DD8 */ /* nop */
|
|
/* 02461DDC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461DDC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02461DE0 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02461DE0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02461DE4 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02461DE4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02461DE8 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 02461DE8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02461DEC */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461DEC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02461DF0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02461DF4 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 02461DF4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02461DF8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02461DFC */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02461DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02461E00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461E04 */ cpu->r[31] = cpu->r[29] + 0x00000008u;
|
|
/* 02461E08 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02461E08 */ if (_t10) goto L_02461E0C; else goto L_02461E34;
|
|
L_02461E0C: ; // 0x2461e0c
|
|
/* 02461E0C */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461E10 */ cpu->r[11] = cpu->r[31] + cpu->r[9];
|
|
/* 02461E14 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02461E18 */ _t11 = cpu->r[11] + 0x00000008u;
|
|
/* 02461E18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461E1C */ _t12 = cpu->r[12] + 0x00002DB8u;
|
|
/* 02461E1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02461E20 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02461E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000007u);
|
|
/* 02461E28 */ cpu->r[28] = cpu->r[28] + 0x00002D0Cu;
|
|
/* 02461E2C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E2C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02461E2C */ if (_t14) goto L_02461E30; else goto L_02461EB0;
|
|
L_02461E30: ; // 0x2461e30
|
|
/* 02461E30 */ goto L_02461E50;
|
|
L_02461E34: ; // 0x2461e34
|
|
/* 02461E34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02461E38 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 02461E38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02461E3C */ cpu->r[28] = 0x100A0000u;
|
|
/* 02461E40 */ _t16 = cpu->r[12] + 0x00002DB8u;
|
|
/* 02461E40 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02461E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000007u);
|
|
/* 02461E48 */ cpu->r[28] = cpu->r[28] + 0x00002D0Cu;
|
|
/* 02461E4C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E4C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02461E4C */ if (_t18) goto L_02461E50; else goto L_02461EB0;
|
|
L_02461E50: ; // 0x2461e50
|
|
/* 02461E50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461E54 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E54 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02461E54 */ if (_t20) goto L_02461E58; else goto L_02461E88;
|
|
L_02461E58: ; // 0x2461e58
|
|
/* 02461E58 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461E58 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02461E5C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02461E60 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461E64 */ _t22 = cpu->r[29] + 0x00000038u;
|
|
/* 02461E64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02461E68 */ cpu->r[8] = cpu->r[8] + 0x00002DC8u;
|
|
/* 02461E6C */ cpu->f[1] = cpu->f[31];
|
|
/* 02461E70 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02461E70 */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 02461E74 */ _t24 = cpu->r[7] + cpu->r[31];
|
|
/* 02461E74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02461E78 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02461E7C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461E80 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 02461E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02461E84 */ goto L_02461EB0;
|
|
L_02461E88: ; // 0x2461e88
|
|
/* 02461E88 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461E88 */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02461E8C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02461E90 */ _t27 = cpu->r[29] + 0x00000038u;
|
|
/* 02461E90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02461E94 */ cpu->r[8] = cpu->r[8] + 0x00002DC8u;
|
|
/* 02461E98 */ cpu->f[1] = cpu->f[31];
|
|
/* 02461E9C */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02461E9C */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 02461EA0 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 02461EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02461EA4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02461EA8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461EAC */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 02461EAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
L_02461EB0: ; // 0x2461eb0
|
|
/* 02461EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461EB4 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461EB4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02461EB4 */ if (_t32) goto L_02461EB8; else goto L_02461ED0;
|
|
L_02461EB8: ; // 0x2461eb8
|
|
/* 02461EB8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461EBC */ cpu->r[10] = cpu->r[31] + cpu->r[10];
|
|
/* 02461EC0 */ _t33 = cpu->r[10] + 0x00000008u;
|
|
/* 02461EC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02461EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02461EC8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461EC8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02461EC8 */ if (_t35) goto L_02461ECC; else goto L_02461F6C;
|
|
L_02461ECC: ; // 0x2461ecc
|
|
/* 02461ECC */ goto L_02461EDC;
|
|
L_02461ED0: ; // 0x2461ed0
|
|
/* 02461ED0 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 02461ED0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02461ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02461ED8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461ED8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02461ED8 */ if (_t38) goto L_02461EDC; else goto L_02461F6C;
|
|
L_02461EDC: ; // 0x2461edc
|
|
/* 02461EDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461EE0 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461EE0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02461EE0 */ if (_t40) goto L_02461EE4; else goto L_02461F28;
|
|
L_02461EE4: ; // 0x2461ee4
|
|
/* 02461EE4 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 02461EE4 */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 02461EE8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461EEC */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461EF0 */ _t42 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02461EF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02461EF4 */ cpu->r[0] = cpu->r[0] + 0x00002DBCu;
|
|
/* 02461EF8 */ cpu->f[1] = cpu->f[31];
|
|
/* 02461EFC */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02461EFC */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02461F00 */ _t44 = cpu->r[31] + cpu->r[12];
|
|
/* 02461F00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02461F04 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461F08 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461F0C */ _t45 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F0C */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02461F10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 02461F14 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F14 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02461F14 */ if (_t47) goto L_02461F58; else goto L_02461F18;
|
|
L_02461F18: ; // 0x2461f18
|
|
/* 02461F18 */ cpu->r[10] = 0x00000000u;
|
|
/* 02461F1C */ _t48 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02461F1C */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02461F20 */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02461F24 */ goto L_02461F6C;
|
|
L_02461F28: ; // 0x2461f28
|
|
/* 02461F28 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02461F28 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 02461F2C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461F30 */ _t51 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02461F30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02461F34 */ cpu->r[0] = cpu->r[0] + 0x00002DBCu;
|
|
/* 02461F38 */ cpu->f[1] = cpu->f[31];
|
|
/* 02461F3C */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02461F3C */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 02461F40 */ _t53 = cpu->r[31] + 0x00000000u;
|
|
/* 02461F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02461F44 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461F48 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461F4C */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02461F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 02461F54 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F54 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02461F54 */ if (_t56) goto L_02461F58; else goto L_02461F18;
|
|
L_02461F58: ; // 0x2461f58
|
|
/* 02461F58 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461F5C */ cpu->r[10] = 0x00000000u;
|
|
/* 02461F60 */ cpu->r[9] = cpu->r[31] + cpu->r[8];
|
|
/* 02461F64 */ _t57 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02461F64 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 02461F68 */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
L_02461F6C: ; // 0x2461f6c
|
|
/* 02461F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461F70 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F70 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02461F70 */ if (_t60) goto L_02461F74; else goto L_02461F7C;
|
|
L_02461F74: ; // 0x2461f74
|
|
/* 02461F74 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461F78 */ cpu->r[31] = cpu->r[31] + cpu->r[11];
|
|
L_02461F7C: ; // 0x2461f7c
|
|
/* 02461F7C */ cpu->r[0] = 0x00000008u;
|
|
/* 02461F80 */ _t61 = cpu->r[31] + 0x00000008u;
|
|
/* 02461F80 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 02461F84 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 02461F84 */ cpu->r[28] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02461F88 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461F88 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02461F8C */ _t64 = cpu->r[1] + 0x00000030u;
|
|
/* 02461F8C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02461F90 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 02461F90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02461F94 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 02461F94 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 02461F98 */ _t67 = cpu->r[1] + 0x00000024u;
|
|
/* 02461F98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02461F9C */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F9C */ _t69 = _t68 & 0x00000001u;
|
|
/* 02461F9C */ if (_t69) goto L_02461FA0; // else: addr-0 trap, fall-through
|
|
L_02461FA0: ; // 0x2461fa0
|
|
/* 02461FA0 */ _t70 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02461FA4 */ cpu->lr = cpu->r[0];
|
|
/* 02461FA8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02461FAC */ return;
|
|
}
|
|
|
|
// fn_02461DD0 @ 0x2461dd0
|
|
void Gambit_fn_02461DD0(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;
|
|
|
|
L_02461DD0: ; // 0x2461dd0
|
|
/* 02461DD0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02461DD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461DD0 */ cpu->r[1] = _t0;
|
|
/* 02461DD4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02461DD4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02461DD8 */ /* nop */
|
|
/* 02461DDC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461DDC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02461DE0 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02461DE0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02461DE4 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02461DE4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02461DE8 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 02461DE8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02461DEC */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461DEC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02461DF0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02461DF4 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 02461DF4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02461DF8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02461DFC */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02461DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02461E00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461E04 */ cpu->r[31] = cpu->r[29] + 0x00000008u;
|
|
/* 02461E08 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02461E08 */ if (_t10) goto L_02461E0C; else goto L_02461E34;
|
|
L_02461E0C: ; // 0x2461e0c
|
|
/* 02461E0C */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461E10 */ cpu->r[11] = cpu->r[31] + cpu->r[9];
|
|
/* 02461E14 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02461E18 */ _t11 = cpu->r[11] + 0x00000008u;
|
|
/* 02461E18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461E1C */ _t12 = cpu->r[12] + 0x00002DB8u;
|
|
/* 02461E1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02461E20 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02461E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000007u);
|
|
/* 02461E28 */ cpu->r[28] = cpu->r[28] + 0x00002D0Cu;
|
|
/* 02461E2C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E2C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02461E2C */ if (_t14) goto L_02461E30; else goto L_02461EB0;
|
|
L_02461E30: ; // 0x2461e30
|
|
/* 02461E30 */ goto L_02461E50;
|
|
L_02461E34: ; // 0x2461e34
|
|
/* 02461E34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02461E38 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 02461E38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02461E3C */ cpu->r[28] = 0x100A0000u;
|
|
/* 02461E40 */ _t16 = cpu->r[12] + 0x00002DB8u;
|
|
/* 02461E40 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02461E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000007u);
|
|
/* 02461E48 */ cpu->r[28] = cpu->r[28] + 0x00002D0Cu;
|
|
/* 02461E4C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E4C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02461E4C */ if (_t18) goto L_02461E50; else goto L_02461EB0;
|
|
L_02461E50: ; // 0x2461e50
|
|
/* 02461E50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461E54 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461E54 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02461E54 */ if (_t20) goto L_02461E58; else goto L_02461E88;
|
|
L_02461E58: ; // 0x2461e58
|
|
/* 02461E58 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461E58 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02461E5C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02461E60 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461E64 */ _t22 = cpu->r[29] + 0x00000038u;
|
|
/* 02461E64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02461E68 */ cpu->r[8] = cpu->r[8] + 0x00002DC8u;
|
|
/* 02461E6C */ cpu->f[1] = cpu->f[31];
|
|
/* 02461E70 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02461E70 */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 02461E74 */ _t24 = cpu->r[7] + cpu->r[31];
|
|
/* 02461E74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02461E78 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02461E7C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461E80 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 02461E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02461E84 */ goto L_02461EB0;
|
|
L_02461E88: ; // 0x2461e88
|
|
/* 02461E88 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461E88 */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02461E8C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02461E90 */ _t27 = cpu->r[29] + 0x00000038u;
|
|
/* 02461E90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02461E94 */ cpu->r[8] = cpu->r[8] + 0x00002DC8u;
|
|
/* 02461E98 */ cpu->f[1] = cpu->f[31];
|
|
/* 02461E9C */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02461E9C */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 02461EA0 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 02461EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02461EA4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02461EA8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461EAC */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 02461EAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
L_02461EB0: ; // 0x2461eb0
|
|
/* 02461EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461EB4 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461EB4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02461EB4 */ if (_t32) goto L_02461EB8; else goto L_02461ED0;
|
|
L_02461EB8: ; // 0x2461eb8
|
|
/* 02461EB8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461EBC */ cpu->r[10] = cpu->r[31] + cpu->r[10];
|
|
/* 02461EC0 */ _t33 = cpu->r[10] + 0x00000008u;
|
|
/* 02461EC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02461EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02461EC8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461EC8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02461EC8 */ if (_t35) goto L_02461ECC; else goto L_02461F6C;
|
|
L_02461ECC: ; // 0x2461ecc
|
|
/* 02461ECC */ goto L_02461EDC;
|
|
L_02461ED0: ; // 0x2461ed0
|
|
/* 02461ED0 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 02461ED0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02461ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02461ED8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461ED8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02461ED8 */ if (_t38) goto L_02461EDC; else goto L_02461F6C;
|
|
L_02461EDC: ; // 0x2461edc
|
|
/* 02461EDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461EE0 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461EE0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02461EE0 */ if (_t40) goto L_02461EE4; else goto L_02461F28;
|
|
L_02461EE4: ; // 0x2461ee4
|
|
/* 02461EE4 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 02461EE4 */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 02461EE8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461EEC */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461EF0 */ _t42 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02461EF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02461EF4 */ cpu->r[0] = cpu->r[0] + 0x00002DBCu;
|
|
/* 02461EF8 */ cpu->f[1] = cpu->f[31];
|
|
/* 02461EFC */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02461EFC */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02461F00 */ _t44 = cpu->r[31] + cpu->r[12];
|
|
/* 02461F00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02461F04 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461F08 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461F0C */ _t45 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F0C */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02461F10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 02461F14 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F14 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02461F14 */ if (_t47) goto L_02461F58; else goto L_02461F18;
|
|
L_02461F18: ; // 0x2461f18
|
|
/* 02461F18 */ cpu->r[10] = 0x00000000u;
|
|
/* 02461F1C */ _t48 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02461F1C */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02461F20 */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02461F24 */ goto L_02461F6C;
|
|
L_02461F28: ; // 0x2461f28
|
|
/* 02461F28 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02461F28 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 02461F2C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02461F30 */ _t51 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02461F30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02461F34 */ cpu->r[0] = cpu->r[0] + 0x00002DBCu;
|
|
/* 02461F38 */ cpu->f[1] = cpu->f[31];
|
|
/* 02461F3C */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02461F3C */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 02461F40 */ _t53 = cpu->r[31] + 0x00000000u;
|
|
/* 02461F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02461F44 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02461F48 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02461F4C */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02461F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 02461F54 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F54 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02461F54 */ if (_t56) goto L_02461F58; else goto L_02461F18;
|
|
L_02461F58: ; // 0x2461f58
|
|
/* 02461F58 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461F5C */ cpu->r[10] = 0x00000000u;
|
|
/* 02461F60 */ cpu->r[9] = cpu->r[31] + cpu->r[8];
|
|
/* 02461F64 */ _t57 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02461F64 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 02461F68 */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 02461F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
L_02461F6C: ; // 0x2461f6c
|
|
/* 02461F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02461F70 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F70 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02461F70 */ if (_t60) goto L_02461F74; else goto L_02461F7C;
|
|
L_02461F74: ; // 0x2461f74
|
|
/* 02461F74 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02461F78 */ cpu->r[31] = cpu->r[31] + cpu->r[11];
|
|
L_02461F7C: ; // 0x2461f7c
|
|
/* 02461F7C */ cpu->r[0] = 0x00000008u;
|
|
/* 02461F80 */ _t61 = cpu->r[31] + 0x00000008u;
|
|
/* 02461F80 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 02461F84 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 02461F84 */ cpu->r[28] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02461F88 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02461F88 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02461F8C */ _t64 = cpu->r[1] + 0x00000030u;
|
|
/* 02461F8C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02461F90 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 02461F90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02461F94 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 02461F94 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 02461F98 */ _t67 = cpu->r[1] + 0x00000024u;
|
|
/* 02461F98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02461F9C */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461F9C */ _t69 = _t68 & 0x00000001u;
|
|
/* 02461F9C */ if (_t69) goto L_02461FA0; // else: addr-0 trap, fall-through
|
|
L_02461FA0: ; // 0x2461fa0
|
|
/* 02461FA0 */ _t70 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02461FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02461FA4 */ cpu->lr = cpu->r[0];
|
|
/* 02461FA8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02461FAC */ return;
|
|
}
|
|
|
|
// fn_02461FB0 @ 0x2461fb0
|
|
void Gambit_fn_02461FB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02461FB0: ; // 0x2461fb0
|
|
/* 02461FB0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02461FB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02461FB0 */ cpu->r[1] = _t0;
|
|
/* 02461FB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02461FB8 */ /* nop */
|
|
/* 02461FBC */ cpu->r[31] = cpu->r[4];
|
|
/* 02461FC0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02461FC4 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02461FC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02461FC8 */ cpu->r[29] = cpu->r[30] + 0x00000008u;
|
|
/* 02461FCC */ cpu->r[28] = 0x00000000u;
|
|
/* 02461FD0 */ cpu->r[27] = cpu->r[29];
|
|
/* 02461FD4 */ goto L_02461FE0;
|
|
L_02461FD8: ; // 0x2461fd8
|
|
/* 02461FD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02461FDC */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02461FDC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02461FDC */ if (_t3) goto L_02461FE0; else goto L_02461FEC;
|
|
L_02461FE0: ; // 0x2461fe0
|
|
/* 02461FE0 */ cpu->r[9] = cpu->r[27];
|
|
/* 02461FE4 */ cpu->r[26] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461FE8 */ goto L_02461FF0;
|
|
L_02461FEC: ; // 0x2461fec
|
|
/* 02461FEC */ cpu->r[9] = cpu->r[29];
|
|
L_02461FF0: ; // 0x2461ff0
|
|
/* 02461FF0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02461FF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02461FF4 */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 02461FF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02461FF8 */ cpu->r[10] = cpu->r[11] + 0x00000064u;
|
|
/* 02461FFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[10]);
|
|
/* 02462000 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462000 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02462000 */ if (_t7) goto L_02462004; else goto L_0246201C;
|
|
L_02462004: ; // 0x2462004
|
|
/* 02462004 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462004 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 02462008 */ _t9 = cpu->r[26] + 0x00000000u;
|
|
/* 02462008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246200C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02462010 */ cpu->r[3] = cpu->r[30];
|
|
/* 02462014 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02462014 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02462018 */ Gambit_fn_02461DCC(cpu);
|
|
L_0246201C: ; // 0x246201c
|
|
/* 0246201C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02462020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000003u);
|
|
/* 02462024 */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 02462028 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462028 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02462028 */ if (_t12) goto L_02461FD8; else goto L_0246202C;
|
|
L_0246202C: ; // 0x246202c
|
|
/* 0246202C */ /* nop */
|
|
/* 02462030 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02462034 */ cpu->lr = cpu->r[0];
|
|
/* 02462038 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0246203C */ return;
|
|
}
|
|
|
|
// fn_02462040 @ 0x2462040
|
|
void Gambit_fn_02462040(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_02462040: ; // 0x2462040
|
|
/* 02462040 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02462040 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462040 */ cpu->r[1] = _t0;
|
|
/* 02462044 */ cpu->r[0] = cpu->lr;
|
|
/* 02462048 */ /* nop */
|
|
/* 0246204C */ cpu->r[31] = cpu->r[3];
|
|
/* 02462050 */ cpu->r[30] = cpu->r[31] + 0x00000008u;
|
|
/* 02462054 */ cpu->r[26] = 0x00000000u;
|
|
/* 02462058 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462058 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0246205C */ cpu->r[29] = cpu->r[26];
|
|
L_02462060: ; // 0x2462060
|
|
/* 02462060 */ cpu->r[28] = 0x00000000u;
|
|
/* 02462064 */ cpu->r[27] = cpu->r[29];
|
|
/* 02462068 */ cpu->r[9] = cpu->r[30] + cpu->r[29];
|
|
L_0246206C: ; // 0x246206c
|
|
/* 0246206C */ _t2 = cpu->r[9] + 0x00000008u;
|
|
/* 0246206C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02462070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02462074 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462074 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02462074 */ if (_t4) goto L_02462078; else goto L_024621FC;
|
|
L_02462078: ; // 0x2462078
|
|
/* 02462078 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246207C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246207C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246207C */ if (_t6) goto L_02462080; else goto L_0246209C;
|
|
L_02462080: ; // 0x2462080
|
|
/* 02462080 */ cpu->r[12] = cpu->r[30] + cpu->r[27];
|
|
/* 02462084 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 02462084 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02462088 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 0246208C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462090 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 02462090 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 02462094 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462094 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02462094 */ if (_t10) goto L_024620B0; else goto L_02462098;
|
|
L_02462098: ; // 0x2462098
|
|
/* 02462098 */ goto L_024620CC;
|
|
L_0246209C: ; // 0x246209c
|
|
/* 0246209C */ _t11 = cpu->r[30] + 0x00000008u;
|
|
/* 0246209C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024620A0 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 024620A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024620A8 */ _t12 = cpu->r[30] + 0x00000008u;
|
|
/* 024620A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 024620AC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024620AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 024620AC */ if (_t14) goto L_024620B0; else goto L_024620CC;
|
|
L_024620B0: ; // 0x24620b0
|
|
/* 024620B0 */ cpu->r[5] = cpu->r[30] + cpu->r[27];
|
|
/* 024620B4 */ _t15 = cpu->r[5] + 0x0000000Cu;
|
|
/* 024620B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024620B8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024620BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024620C0 */ _t16 = cpu->r[5] + 0x0000000Cu;
|
|
/* 024620C0 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 024620C4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024620C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024620C4 */ if (_t18) goto L_024620E0; else goto L_024620C8;
|
|
L_024620C8: ; // 0x24620c8
|
|
/* 024620C8 */ goto L_024620F4;
|
|
L_024620CC: ; // 0x24620cc
|
|
/* 024620CC */ _t19 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024620CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024620D0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024620D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024620D8 */ _t20 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024620D8 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 024620DC */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024620DC */ _t22 = _t21 & 0x00000001u;
|
|
/* 024620DC */ if (_t22) goto L_024620E0; else goto L_024620F4;
|
|
L_024620E0: ; // 0x24620e0
|
|
/* 024620E0 */ cpu->r[7] = cpu->r[30] + cpu->r[27];
|
|
/* 024620E4 */ _t23 = cpu->r[7] + 0x00000008u;
|
|
/* 024620E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024620E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024620EC */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024620EC */ _t25 = _t24 & 0x00000001u;
|
|
/* 024620EC */ if (_t25) goto L_024621FC; else goto L_024620F0;
|
|
L_024620F0: ; // 0x24620f0
|
|
/* 024620F0 */ goto L_02462100;
|
|
L_024620F4: ; // 0x24620f4
|
|
/* 024620F4 */ _t26 = cpu->r[30] + 0x00000008u;
|
|
/* 024620F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024620F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024620FC */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024620FC */ _t28 = _t27 & 0x00000001u;
|
|
/* 024620FC */ if (_t28) goto L_024621FC; else goto L_02462100;
|
|
L_02462100: ; // 0x2462100
|
|
/* 02462100 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462104 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462104 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02462104 */ if (_t30) goto L_02462108; else goto L_0246211C;
|
|
L_02462108: ; // 0x2462108
|
|
/* 02462108 */ cpu->r[8] = cpu->r[30] + cpu->r[27];
|
|
/* 0246210C */ _t31 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0246210C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02462110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 02462114 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462114 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02462114 */ if (_t33) goto L_02462118; else goto L_02462188;
|
|
L_02462118: ; // 0x2462118
|
|
/* 02462118 */ goto L_02462128;
|
|
L_0246211C: ; // 0x246211c
|
|
/* 0246211C */ _t34 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0246211C */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02462120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 02462124 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462124 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02462124 */ if (_t36) goto L_02462128; else goto L_02462188;
|
|
L_02462128: ; // 0x2462128
|
|
/* 02462128 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246212C */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246212C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0246212C */ if (_t38) goto L_02462130; else goto L_02462164;
|
|
L_02462130: ; // 0x2462130
|
|
/* 02462130 */ cpu->r[9] = cpu->r[30] + cpu->r[27];
|
|
/* 02462134 */ _t39 = cpu->r[9] + 0x00000008u;
|
|
/* 02462134 */ cpu->r[4] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02462138 */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 0246213C */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02462140 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02462144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 02462148 */ _t40 = cpu->r[9] + 0x00000008u;
|
|
/* 02462148 */ rbrew_write32(cpu->mem, _t40, cpu->r[4]);
|
|
/* 0246214C */ cpu->r[29] = cpu->r[29] + 0x00000010u;
|
|
/* 02462150 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462150 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02462150 */ if (_t42) goto L_02462154; else goto L_02462210;
|
|
L_02462154: ; // 0x2462154
|
|
/* 02462154 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462158 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462158 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02462158 */ if (_t44) goto L_02462060; else goto L_0246215C;
|
|
L_0246215C: ; // 0x246215c
|
|
/* 0246215C */ cpu->r[9] = cpu->r[30];
|
|
/* 02462160 */ goto L_0246206C;
|
|
L_02462164: ; // 0x2462164
|
|
/* 02462164 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 02462164 */ cpu->r[4] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02462168 */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 0246216C */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02462170 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02462174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 02462178 */ _t46 = cpu->r[30] + 0x00000008u;
|
|
/* 02462178 */ rbrew_write32(cpu->mem, _t46, cpu->r[4]);
|
|
/* 0246217C */ cpu->r[29] = cpu->r[29] + 0x00000010u;
|
|
/* 02462180 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462180 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02462180 */ if (_t48) goto L_02462154; else goto L_02462184;
|
|
L_02462184: ; // 0x2462184
|
|
/* 02462184 */ goto L_02462210;
|
|
L_02462188: ; // 0x2462188
|
|
/* 02462188 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246218C */ _t49 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0246218C */ cpu->r[4] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02462190 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462190 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02462190 */ if (_t51) goto L_02462194; else goto L_024621C8;
|
|
L_02462194: ; // 0x2462194
|
|
/* 02462194 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02462198 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246219C */ cpu->r[6] = cpu->r[6] + 0x00002D0Cu;
|
|
/* 024621A0 */ cpu->r[0] = cpu->r[0] + 0x00002DD4u;
|
|
/* 024621A4 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024621A4 */ rbrew_write32(cpu->mem, _t52, cpu->r[6]);
|
|
/* 024621A8 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 024621A8 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 024621AC */ _t54 = cpu->r[30] + cpu->r[27];
|
|
/* 024621AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024621B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024621B4 */ Gambit_fn_027ED798(cpu);
|
|
/* 024621B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024621BC */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024621BC */ _t56 = _t55 & 0x00000001u;
|
|
/* 024621BC */ if (_t56) goto L_024621F4; else goto L_024621C0;
|
|
L_024621C0: ; // 0x24621c0
|
|
/* 024621C0 */ _t57 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024621C0 */ rbrew_write32(cpu->mem, _t57, cpu->r[28]);
|
|
/* 024621C4 */ goto L_024621FC;
|
|
L_024621C8: ; // 0x24621c8
|
|
/* 024621C8 */ cpu->r[6] = 0x100A0000u;
|
|
/* 024621CC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024621D0 */ cpu->r[6] = cpu->r[6] + 0x00002D0Cu;
|
|
/* 024621D4 */ cpu->r[0] = cpu->r[0] + 0x00002DD4u;
|
|
/* 024621D8 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024621D8 */ rbrew_write32(cpu->mem, _t58, cpu->r[6]);
|
|
/* 024621DC */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 024621DC */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 024621E0 */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 024621E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024621E4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024621E8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024621EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024621F0 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024621F0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 024621F0 */ if (_t62) goto L_024621F4; else goto L_024621C0;
|
|
L_024621F4: ; // 0x24621f4
|
|
/* 024621F4 */ cpu->r[12] = cpu->r[30] + cpu->r[27];
|
|
/* 024621F8 */ _t63 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024621F8 */ rbrew_write32(cpu->mem, _t63, cpu->r[28]);
|
|
L_024621FC: ; // 0x24621fc
|
|
/* 024621FC */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02462200 */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 02462204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 02462208 */ cpu->r[29] = cpu->r[29] + 0x00000010u;
|
|
/* 0246220C */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246220C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0246220C */ if (_t65) goto L_02462154; else goto L_02462210;
|
|
L_02462210: ; // 0x2462210
|
|
/* 02462210 */ /* nop */
|
|
/* 02462214 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02462218 */ cpu->lr = cpu->r[0];
|
|
/* 0246221C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02462220 */ return;
|
|
}
|
|
|
|
// fn_02462224 @ 0x2462224
|
|
void Gambit_fn_02462224(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;
|
|
|
|
L_02462224: ; // 0x2462224
|
|
/* 02462224 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02462224 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462224 */ cpu->r[1] = _t0;
|
|
/* 02462228 */ /* nop */
|
|
/* 0246222C */ cpu->r[0] = cpu->lr;
|
|
/* 02462230 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02462230 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02462234 */ cpu->r[30] = cpu->r[3];
|
|
/* 02462238 */ cpu->r[25] = 0x00000003u;
|
|
/* 0246223C */ cpu->r[26] = 0x00000000u;
|
|
/* 02462240 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02462244 */ _t2 = cpu->r[12] + 0x00001344u;
|
|
/* 02462244 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02462248 */ cpu->r[28] = cpu->r[1] + 0x00000014u;
|
|
/* 0246224C */ cpu->r[27] = cpu->r[26];
|
|
/* 02462250 */ cpu->r[23] = cpu->r[26];
|
|
/* 02462254 */ _t3 = cpu->r[12] + 0x00000014u;
|
|
/* 02462254 */ cpu->r[24] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02462258 */ cpu->r[29] = cpu->r[4] + 0x00000054u;
|
|
L_0246225C: ; // 0x246225c
|
|
/* 0246225C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0246225C */ rbrew_write32(cpu->mem, _t4, cpu->r[26]);
|
|
/* 02462260 */ _t5 = cpu->r[28] + 0x00000000u;
|
|
/* 02462260 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02462264 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000003u);
|
|
/* 02462268 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02462268 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 0246226C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246226C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0246226C */ if (_t8) goto L_02462270; else goto L_024622D4;
|
|
L_02462270: ; // 0x2462270
|
|
/* 02462270 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x0000001Cu);
|
|
/* 02462274 */ _t9 = cpu->r[28] + 0x00000000u;
|
|
/* 02462274 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02462278 */ cpu->r[10] = cpu->r[29] + cpu->r[0];
|
|
/* 0246227C */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 0246227C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02462280 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 02462280 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02462284 */ _t12 = cpu->r[10] + 0x00000004u;
|
|
/* 02462284 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02462288 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462288 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0246228C */ _t14 = cpu->r[10] + 0x00000008u;
|
|
/* 0246228C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02462290 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 02462290 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02462294 */ _t16 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02462294 */ cpu->r[5] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02462298 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02462298 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 0246229C */ _t18 = cpu->r[10] + 0x00000010u;
|
|
/* 0246229C */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024622A0 */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 024622A0 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 024622A4 */ _t20 = cpu->r[10] + 0x00000014u;
|
|
/* 024622A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024622A8 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 024622A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024622AC */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024622AC */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 024622B0 */ _t23 = cpu->r[10] + 0x00000018u;
|
|
/* 024622B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024622B4 */ cpu->r[3] = cpu->r[24];
|
|
/* 024622B8 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024622B8 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 024622BC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024622C0 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 024622C0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 024622C4 */ Gambit_fn_0201D9E4(cpu);
|
|
/* 024622C8 */ cpu->r[5] = cpu->r[3];
|
|
/* 024622C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 024622CC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024622CC */ _t27 = _t26 & 0x00000001u;
|
|
/* 024622CC */ if (_t27) goto L_02462418; else goto L_024622D0;
|
|
L_024622D0: ; // 0x24622d0
|
|
/* 024622D0 */ goto L_0246232C;
|
|
L_024622D4: ; // 0x24622d4
|
|
/* 024622D4 */ _t28 = cpu->r[29] + 0x00000000u;
|
|
/* 024622D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024622D8 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 024622D8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 024622DC */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 024622DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024622E0 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024622E0 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 024622E4 */ _t32 = cpu->r[29] + 0x00000008u;
|
|
/* 024622E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024622E8 */ _t33 = cpu->r[1] + 0x00000020u;
|
|
/* 024622E8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 024622EC */ _t34 = cpu->r[29] + 0x0000000Cu;
|
|
/* 024622EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024622F0 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 024622F0 */ rbrew_write32(cpu->mem, _t35, cpu->r[5]);
|
|
/* 024622F4 */ _t36 = cpu->r[29] + 0x00000010u;
|
|
/* 024622F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024622F8 */ _t37 = cpu->r[28] + 0x00000000u;
|
|
/* 024622F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024622FC */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 024622FC */ rbrew_write32(cpu->mem, _t38, cpu->r[6]);
|
|
/* 02462300 */ _t39 = cpu->r[29] + 0x00000014u;
|
|
/* 02462300 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02462304 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 02462304 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02462308 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462308 */ rbrew_write32(cpu->mem, _t41, cpu->r[7]);
|
|
/* 0246230C */ _t42 = cpu->r[29] + 0x00000018u;
|
|
/* 0246230C */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02462310 */ cpu->r[3] = cpu->r[24];
|
|
/* 02462314 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02462314 */ rbrew_write32(cpu->mem, _t43, cpu->r[9]);
|
|
/* 02462318 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246231C */ _t44 = cpu->r[1] + 0x00000030u;
|
|
/* 0246231C */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
/* 02462320 */ Gambit_fn_0201D9E4(cpu);
|
|
/* 02462324 */ cpu->r[5] = cpu->r[3];
|
|
/* 02462324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02462328 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462328 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02462328 */ if (_t46) goto L_02462418; else goto L_0246232C;
|
|
L_0246232C: ; // 0x246232c
|
|
/* 0246232C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462330 */ cpu->r[31] = cpu->r[30] + 0x00000008u;
|
|
/* 02462334 */ _t47 = cpu->r[5] + 0x0000014Cu;
|
|
/* 02462334 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02462338 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462338 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02462338 */ if (_t49) goto L_0246233C; else goto L_02462350;
|
|
L_0246233C: ; // 0x246233c
|
|
/* 0246233C */ cpu->r[7] = cpu->r[31] + cpu->r[27];
|
|
/* 02462340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462344 */ _t50 = cpu->r[7] + 0x00000004u;
|
|
/* 02462344 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 02462348 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462348 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02462348 */ if (_t52) goto L_0246235C; else goto L_0246234C;
|
|
L_0246234C: ; // 0x246234c
|
|
/* 0246234C */ goto L_0246236C;
|
|
L_02462350: ; // 0x2462350
|
|
/* 02462350 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462354 */ _t53 = cpu->r[31] + 0x00000004u;
|
|
/* 02462354 */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 02462358 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462358 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02462358 */ if (_t55) goto L_0246235C; else goto L_0246236C;
|
|
L_0246235C: ; // 0x246235c
|
|
/* 0246235C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462360 */ cpu->r[8] = cpu->r[31] + cpu->r[27];
|
|
/* 02462364 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462364 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02462364 */ if (_t57) goto L_02462378; else goto L_02462368;
|
|
L_02462368: ; // 0x2462368
|
|
/* 02462368 */ goto L_02462394;
|
|
L_0246236C: ; // 0x246236c
|
|
/* 0246236C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02462370 */ cpu->r[8] = cpu->r[31];
|
|
/* 02462374 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462374 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02462374 */ if (_t59) goto L_02462378; else goto L_02462394;
|
|
L_02462378: ; // 0x2462378
|
|
/* 02462378 */ cpu->r[10] = cpu->r[31] + cpu->r[27];
|
|
/* 0246237C */ _t60 = cpu->r[8] + 0x00000000u;
|
|
/* 0246237C */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02462380 */ _t61 = cpu->r[10] + 0x00000004u;
|
|
/* 02462380 */ cpu->r[4] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02462384 */ Gambit_fn_020CF070(cpu);
|
|
/* 02462388 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246238C */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246238C */ _t63 = _t62 & 0x00000001u;
|
|
/* 0246238C */ if (_t63) goto L_024623A8; else goto L_02462390;
|
|
L_02462390: ; // 0x2462390
|
|
/* 02462390 */ goto L_024623BC;
|
|
L_02462394: ; // 0x2462394
|
|
/* 02462394 */ _t64 = cpu->r[8] + 0x00000000u;
|
|
/* 02462394 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02462398 */ _t65 = cpu->r[31] + 0x00000004u;
|
|
/* 02462398 */ cpu->r[4] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0246239C */ Gambit_fn_020CF070(cpu);
|
|
/* 024623A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024623A4 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024623A4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 024623A4 */ if (_t67) goto L_024623A8; else goto L_024623BC;
|
|
L_024623A8: ; // 0x24623a8
|
|
/* 024623A8 */ cpu->r[9] = cpu->r[31] + cpu->r[27];
|
|
/* 024623AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024623B0 */ _t68 = cpu->r[9] + 0x00000008u;
|
|
/* 024623B0 */ rbrew_write32(cpu->mem, _t68, cpu->r[23]);
|
|
/* 024623B4 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024623B4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 024623B4 */ if (_t70) goto L_024623C8; else goto L_024623B8;
|
|
L_024623B8: ; // 0x24623b8
|
|
/* 024623B8 */ goto L_024623E0;
|
|
L_024623BC: ; // 0x24623bc
|
|
/* 024623BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024623C0 */ _t71 = cpu->r[31] + 0x00000008u;
|
|
/* 024623C0 */ rbrew_write32(cpu->mem, _t71, cpu->r[23]);
|
|
/* 024623C4 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024623C4 */ _t73 = _t72 & 0x00000001u;
|
|
/* 024623C4 */ if (_t73) goto L_024623C8; else goto L_024623E0;
|
|
L_024623C8: ; // 0x24623c8
|
|
/* 024623C8 */ cpu->r[10] = cpu->r[31] + cpu->r[27];
|
|
/* 024623CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024623D0 */ _t74 = cpu->r[10] + 0x0000000Cu;
|
|
/* 024623D0 */ rbrew_write32(cpu->mem, _t74, cpu->r[23]);
|
|
/* 024623D4 */ _t75 = cpu->r[30] + 0x0000003Cu;
|
|
/* 024623D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024623D8 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024623D8 */ _t77 = _t76 & 0x00000001u;
|
|
/* 024623D8 */ if (_t77) goto L_024623F0; else goto L_024623DC;
|
|
L_024623DC: ; // 0x24623dc
|
|
/* 024623DC */ goto L_024623F4;
|
|
L_024623E0: ; // 0x24623e0
|
|
/* 024623E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 024623E4 */ _t78 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024623E4 */ rbrew_write32(cpu->mem, _t78, cpu->r[23]);
|
|
/* 024623E8 */ _t79 = cpu->r[30] + 0x0000003Cu;
|
|
/* 024623E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t79);
|
|
/* 024623EC */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024623EC */ _t81 = _t80 & 0x00000001u;
|
|
/* 024623EC */ if (_t81) goto L_024623F0; else goto L_024623DC;
|
|
L_024623F0: ; // 0x24623f0
|
|
/* 024623F0 */ cpu->r[31] = cpu->r[31] + cpu->r[27];
|
|
L_024623F4: ; // 0x24623f4
|
|
/* 024623F4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024623F8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024623FC */ cpu->r[0] = cpu->r[0] + 0x00002D0Cu;
|
|
/* 02462400 */ cpu->r[9] = cpu->r[9] + 0x00002DE0u;
|
|
/* 02462404 */ _t82 = cpu->r[1] + 0x00000010u;
|
|
/* 02462404 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 02462408 */ _t83 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462408 */ rbrew_write32(cpu->mem, _t83, cpu->r[9]);
|
|
/* 0246240C */ _t84 = cpu->r[31] + 0x00000000u;
|
|
/* 0246240C */ cpu->r[3] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02462410 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462414 */ Gambit_fn_027ED798(cpu);
|
|
L_02462418: ; // 0x2462418
|
|
/* 02462418 */ cpu->r[25] = cpu->r[25] + 0xFFFFFFFFu;
|
|
/* 02462418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0246241C */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02462420 */ cpu->r[27] = cpu->r[27] + 0x00000010u;
|
|
/* 02462424 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462424 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02462424 */ if (_t86) goto L_02462428; else goto L_0246225C;
|
|
L_02462428: ; // 0x2462428
|
|
/* 02462428 */ /* nop */
|
|
/* 0246242C */ _t87 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0246242C */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02462430 */ cpu->lr = cpu->r[0];
|
|
/* 02462434 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02462438 */ return;
|
|
}
|
|
|
|
// fn_0246243C @ 0x246243c
|
|
void Gambit_fn_0246243C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0246243C: ; // 0x246243c
|
|
/* 0246243C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02462440 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02462440 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462440 */ cpu->r[1] = _t0;
|
|
/* 02462444 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02462448 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0246244C */ _t1 = cpu->r[10] + 0x00007AB8u;
|
|
/* 0246244C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0246244C */ cpu->r[10] = _t1;
|
|
/* 02462450 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02462454 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02462454 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02462458 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0246245C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02462460 */ _t3 = cpu->r[7] + 0x00007AC8u;
|
|
/* 02462460 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02462460 */ cpu->r[7] = _t3;
|
|
/* 02462464 */ _t4 = cpu->r[8] + 0x00007AC0u;
|
|
/* 02462464 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02462464 */ cpu->r[8] = _t4;
|
|
/* 02462468 */ cpu->r[0] = 0x00000002u;
|
|
/* 0246246C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0246246C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02462470 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02462474 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02462474 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02462478 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0246247C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0246247C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02462480 */ _t8 = cpu->r[8] + 0x00007AD8u;
|
|
/* 02462480 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02462480 */ cpu->r[8] = _t8;
|
|
/* 02462484 */ _t9 = cpu->r[12] + 0x00007AD0u;
|
|
/* 02462484 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02462484 */ cpu->r[12] = _t9;
|
|
/* 02462488 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02462488 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0246248C */ cpu->r[0] = 0x00000004u;
|
|
/* 02462490 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02462490 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02462494 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02462498 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02462498 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0246249C */ _t13 = cpu->r[11] + 0x00007AE0u;
|
|
/* 0246249C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024624A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024624A4 */ return;
|
|
}
|
|
|
|
// fn_02462440 @ 0x2462440
|
|
void Gambit_fn_02462440(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02462440: ; // 0x2462440
|
|
/* 02462440 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02462440 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462440 */ cpu->r[1] = _t0;
|
|
/* 02462444 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02462448 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0246244C */ _t1 = cpu->r[10] + 0x00007AB8u;
|
|
/* 0246244C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0246244C */ cpu->r[10] = _t1;
|
|
/* 02462450 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02462454 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02462454 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02462458 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0246245C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02462460 */ _t3 = cpu->r[7] + 0x00007AC8u;
|
|
/* 02462460 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02462460 */ cpu->r[7] = _t3;
|
|
/* 02462464 */ _t4 = cpu->r[8] + 0x00007AC0u;
|
|
/* 02462464 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02462464 */ cpu->r[8] = _t4;
|
|
/* 02462468 */ cpu->r[0] = 0x00000002u;
|
|
/* 0246246C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0246246C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02462470 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02462474 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02462474 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02462478 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0246247C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0246247C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02462480 */ _t8 = cpu->r[8] + 0x00007AD8u;
|
|
/* 02462480 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02462480 */ cpu->r[8] = _t8;
|
|
/* 02462484 */ _t9 = cpu->r[12] + 0x00007AD0u;
|
|
/* 02462484 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02462484 */ cpu->r[12] = _t9;
|
|
/* 02462488 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02462488 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0246248C */ cpu->r[0] = 0x00000004u;
|
|
/* 02462490 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02462490 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02462494 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02462498 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02462498 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0246249C */ _t13 = cpu->r[11] + 0x00007AE0u;
|
|
/* 0246249C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024624A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024624A4 */ return;
|
|
}
|
|
|
|
// fn_024624A8 @ 0x24624a8
|
|
void Gambit_fn_024624A8(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_024624A8: ; // 0x24624a8
|
|
/* 024624A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024624AC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024624AC */ _t1 = _t0 & 0x00000001u;
|
|
/* 024624AC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024624AC */ goto L_024624B0;
|
|
L_024624B0: ; // 0x24624b0
|
|
/* 024624B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024624B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024624B4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024624B4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024624B4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024624B4 */ goto L_024624B8;
|
|
L_024624B8: ; // 0x24624b8
|
|
/* 024624B8 */ 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_024624BC @ 0x24624bc
|
|
void Gambit_fn_024624BC(CPUState* cpu) {
|
|
L_024624BC: ; // 0x24624bc
|
|
/* 024624BC */ return;
|
|
}
|
|
|
|
// fn_024624C0 @ 0x24624c0
|
|
void Gambit_fn_024624C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024624C0: ; // 0x24624c0
|
|
/* 024624C0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024624C4 */ goto L_02462854;
|
|
L_02462854: ; // 0x2462854
|
|
/* 02462854 */ cpu->r[0] = cpu->lr;
|
|
/* 02462858 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02462858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462858 */ cpu->r[1] = _t0;
|
|
/* 0246285C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246285C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02462860 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02462860 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02462864 */ cpu->r[30] = cpu->r[3];
|
|
/* 02462864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462868 */ cpu->r[31] = cpu->r[4];
|
|
/* 0246286C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246286C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02462870 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462870 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02462870 */ if (_t5) goto L_024628E0; else goto L_02462874;
|
|
L_02462874: ; // 0x2462874
|
|
/* 02462874 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462878 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246287C */ cpu->r[0] = cpu->r[0] + 0x00002FB8u;
|
|
/* 02462880 */ cpu->r[12] = cpu->r[12] + 0x00002FD8u;
|
|
/* 02462884 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02462884 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02462888 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246288C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0246288C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02462890 */ cpu->r[11] = cpu->r[11] + 0x00002FC8u;
|
|
/* 02462894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462898 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02462898 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0246289C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246289C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0246289C */ if (_t10) goto L_024628D0; else goto L_024628A0;
|
|
L_024628A0: ; // 0x24628a0
|
|
/* 024628A0 */ cpu->r[10] = 0x10010000u;
|
|
/* 024628A4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024628A8 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 024628AC */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 024628B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024628B4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024628B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024628B8 */ cpu->r[0] = 0x10010000u;
|
|
/* 024628BC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024628BC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024628C0 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 024628C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024628C8 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024628C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024628CC */ Gambit_fn_02068798(cpu);
|
|
L_024628D0: ; // 0x24628d0
|
|
/* 024628D0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024628D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024628D4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024628D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024628D4 */ if (_t15) goto L_024628E0; else goto L_024628D8;
|
|
L_024628D8: ; // 0x24628d8
|
|
/* 024628D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024628DC */ Gambit_fn_02801BB0(cpu);
|
|
L_024628E0: ; // 0x24628e0
|
|
/* 024628E0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024628E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024628E4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024628E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024628E8 */ cpu->lr = cpu->r[0];
|
|
/* 024628EC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024628EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024628F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024628F4 */ return;
|
|
}
|
|
|
|
// fn_024624C8 @ 0x24624c8
|
|
void Gambit_fn_024624C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_024624C8: ; // 0x24624c8
|
|
/* 024624C8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024624CC */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024624D0 @ 0x24624d0
|
|
void Gambit_fn_024624D0(CPUState* cpu) {
|
|
L_024624D0: ; // 0x24624d0
|
|
/* 024624D0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024624D4 */ goto L_024628F8;
|
|
L_024628F8: ; // 0x24628f8
|
|
/* 024628F8 */ return;
|
|
}
|
|
|
|
// fn_024624D8 @ 0x24624d8
|
|
void Gambit_fn_024624D8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024624D8: ; // 0x24624d8
|
|
/* 024624D8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024624DC */ goto L_024628FC;
|
|
L_024628FC: ; // 0x24628fc
|
|
/* 024628FC */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024628FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02462900 */ return;
|
|
}
|
|
|
|
// fn_024624E0 @ 0x24624e0
|
|
void Gambit_fn_024624E0(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_024624E0: ; // 0x24624e0
|
|
/* 024624E0 */ cpu->r[0] = cpu->lr;
|
|
/* 024624E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024624E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024624E4 */ cpu->r[1] = _t0;
|
|
/* 024624E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024624E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024624EC */ cpu->r[31] = cpu->r[3];
|
|
/* 024624EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024624F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024624F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024624F4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024624F4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024624F4 */ if (_t4) goto L_024624F8; else goto L_02462508;
|
|
L_024624F8: ; // 0x24624f8
|
|
/* 024624F8 */ cpu->r[3] = 0x00000238u;
|
|
/* 024624FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02462500 */ cpu->r[31] = cpu->r[3];
|
|
/* 02462500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02462504 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462504 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02462504 */ if (_t6) goto L_0246259C; else goto L_02462508;
|
|
L_02462508: ; // 0x2462508
|
|
/* 02462508 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0246250C */ cpu->r[3] = cpu->r[31];
|
|
/* 02462510 */ cpu->r[5] = 0x00000001u;
|
|
/* 02462514 */ cpu->r[4] = cpu->r[4] + 0x00002E28u;
|
|
/* 02462518 */ Gambit_fn_020B82F0(cpu);
|
|
/* 0246251C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462520 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02462524 */ cpu->r[0] = cpu->r[0] + 0x00002E50u;
|
|
/* 02462528 */ cpu->r[11] = cpu->r[11] + 0x00002FB8u;
|
|
/* 0246252C */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0246252C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02462530 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462534 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02462534 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02462538 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246253C */ cpu->r[0] = cpu->r[0] + 0x00002FC8u;
|
|
/* 02462540 */ cpu->r[11] = cpu->r[11] + 0x00002FD8u;
|
|
/* 02462544 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02462544 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02462548 */ cpu->r[12] = 0x00000000u;
|
|
/* 0246254C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 0246254C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02462550 */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 02462550 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02462554 */ cpu->r[3] = cpu->r[31] + 0x0000022Cu;
|
|
/* 02462554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462558 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02462558 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[12]);
|
|
/* 0246255C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246255C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0246255C */ if (_t14) goto L_02462560; else goto L_02462570;
|
|
L_02462560: ; // 0x2462560
|
|
/* 02462560 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02462564 */ Gambit_fn_02801A78(cpu);
|
|
/* 02462568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246256C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246256C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0246256C */ if (_t16) goto L_0246259C; else goto L_02462570;
|
|
L_02462570: ; // 0x2462570
|
|
/* 02462570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462574 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462574 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02462574 */ if (_t18) goto L_02462578; else goto L_02462588;
|
|
L_02462578: ; // 0x2462578
|
|
/* 02462578 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0246257C */ Gambit_fn_02801A78(cpu);
|
|
/* 02462580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462584 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462584 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02462584 */ if (_t20) goto L_0246259C; else goto L_02462588;
|
|
L_02462588: ; // 0x2462588
|
|
/* 02462588 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246258C */ _t21 = cpu->r[12] + 0x00002E24u;
|
|
/* 0246258C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02462590 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02462590 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02462594 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 02462594 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 02462598 */ _t24 = cpu->r[3] + 0x00000004u;
|
|
/* 02462598 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
L_0246259C: ; // 0x246259c
|
|
/* 0246259C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0246259C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024625A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024625A4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024625A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024625A8 */ cpu->lr = cpu->r[0];
|
|
/* 024625AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024625B0 */ return;
|
|
}
|
|
|
|
// fn_024624E4 @ 0x24624e4
|
|
void Gambit_fn_024624E4(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_024624E4: ; // 0x24624e4
|
|
/* 024624E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024624E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024624E4 */ cpu->r[1] = _t0;
|
|
/* 024624E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024624E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024624EC */ cpu->r[31] = cpu->r[3];
|
|
/* 024624EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024624F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024624F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024624F4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024624F4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024624F4 */ if (_t4) goto L_024624F8; else goto L_02462508;
|
|
L_024624F8: ; // 0x24624f8
|
|
/* 024624F8 */ cpu->r[3] = 0x00000238u;
|
|
/* 024624FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02462500 */ cpu->r[31] = cpu->r[3];
|
|
/* 02462500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02462504 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462504 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02462504 */ if (_t6) goto L_0246259C; else goto L_02462508;
|
|
L_02462508: ; // 0x2462508
|
|
/* 02462508 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0246250C */ cpu->r[3] = cpu->r[31];
|
|
/* 02462510 */ cpu->r[5] = 0x00000001u;
|
|
/* 02462514 */ cpu->r[4] = cpu->r[4] + 0x00002E28u;
|
|
/* 02462518 */ Gambit_fn_020B82F0(cpu);
|
|
/* 0246251C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462520 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02462524 */ cpu->r[0] = cpu->r[0] + 0x00002E50u;
|
|
/* 02462528 */ cpu->r[11] = cpu->r[11] + 0x00002FB8u;
|
|
/* 0246252C */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0246252C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02462530 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462534 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02462534 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02462538 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246253C */ cpu->r[0] = cpu->r[0] + 0x00002FC8u;
|
|
/* 02462540 */ cpu->r[11] = cpu->r[11] + 0x00002FD8u;
|
|
/* 02462544 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02462544 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02462548 */ cpu->r[12] = 0x00000000u;
|
|
/* 0246254C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 0246254C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02462550 */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 02462550 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02462554 */ cpu->r[3] = cpu->r[31] + 0x0000022Cu;
|
|
/* 02462554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462558 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02462558 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[12]);
|
|
/* 0246255C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246255C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0246255C */ if (_t14) goto L_02462560; else goto L_02462570;
|
|
L_02462560: ; // 0x2462560
|
|
/* 02462560 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02462564 */ Gambit_fn_02801A78(cpu);
|
|
/* 02462568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246256C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246256C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0246256C */ if (_t16) goto L_0246259C; else goto L_02462570;
|
|
L_02462570: ; // 0x2462570
|
|
/* 02462570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462574 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462574 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02462574 */ if (_t18) goto L_02462578; else goto L_02462588;
|
|
L_02462578: ; // 0x2462578
|
|
/* 02462578 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0246257C */ Gambit_fn_02801A78(cpu);
|
|
/* 02462580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462584 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462584 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02462584 */ if (_t20) goto L_0246259C; else goto L_02462588;
|
|
L_02462588: ; // 0x2462588
|
|
/* 02462588 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246258C */ _t21 = cpu->r[12] + 0x00002E24u;
|
|
/* 0246258C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02462590 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02462590 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02462594 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 02462594 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 02462598 */ _t24 = cpu->r[3] + 0x00000004u;
|
|
/* 02462598 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
L_0246259C: ; // 0x246259c
|
|
/* 0246259C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0246259C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024625A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024625A4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024625A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024625A8 */ cpu->lr = cpu->r[0];
|
|
/* 024625AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024625B0 */ return;
|
|
}
|
|
|
|
// fn_024625B4 @ 0x24625b4
|
|
void Gambit_fn_024625B4(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_024625B4: ; // 0x24625b4
|
|
/* 024625B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024625B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024625B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024625B8 */ cpu->r[1] = _t0;
|
|
/* 024625BC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024625BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024625C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024625C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024625C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024625C8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024625C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024625CC */ _t4 = cpu->r[30] + 0x00000224u;
|
|
/* 024625CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024625D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024625D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024625D8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024625D8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024625D8 */ if (_t6) goto L_024625DC; else goto L_02462644;
|
|
L_024625DC: ; // 0x24625dc
|
|
/* 024625DC */ _t7 = cpu->r[30] + 0x00000118u;
|
|
/* 024625DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024625E0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024625E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024625E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024625E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024625E4 */ if (_t9) goto L_024625F4; else goto L_024625E8;
|
|
L_024625E8: ; // 0x24625e8
|
|
/* 024625E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024625EC */ cpu->r[4] = 0x00000001u;
|
|
/* 024625F0 */ Gambit_fn_020B8610(cpu);
|
|
L_024625F4: ; // 0x24625f4
|
|
/* 024625F4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024625F8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024625FC */ cpu->r[12] = 0x100A0000u;
|
|
/* 02462600 */ cpu->r[10] = cpu->r[10] + 0x00002DFCu;
|
|
/* 02462604 */ cpu->r[0] = cpu->r[0] + 0x00002E38u;
|
|
/* 02462608 */ _t10 = cpu->r[12] + 0x00002E34u;
|
|
/* 02462608 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0246260C */ cpu->r[4] = 0x00000000u;
|
|
/* 02462610 */ cpu->r[3] = cpu->r[30];
|
|
/* 02462614 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462614 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02462618 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246261C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0246261C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02462620 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02462624 */ cpu->r[0] = 0x00000001u;
|
|
/* 02462628 */ _t13 = cpu->r[30] + 0x00000224u;
|
|
/* 02462628 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 0246262C */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 0246262C */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02462630 */ _t15 = cpu->r[30] + 0x0000022Cu;
|
|
/* 02462630 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 02462634 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 02462634 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02462638 */ _t17 = cpu->r[30] + 0x00000230u;
|
|
/* 02462638 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
/* 0246263C */ _t18 = cpu->r[31] + 0x00000008u;
|
|
/* 0246263C */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02462640 */ _t19 = cpu->r[30] + 0x00000234u;
|
|
/* 02462640 */ rbrew_write32(cpu->mem, _t19, cpu->r[8]);
|
|
L_02462644: ; // 0x2462644
|
|
/* 02462644 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02462648 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02462648 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0246264C */ cpu->lr = cpu->r[0];
|
|
/* 02462650 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02462650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02462654 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02462658 */ return;
|
|
}
|
|
|
|
// fn_024625B8 @ 0x24625b8
|
|
void Gambit_fn_024625B8(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_024625B8: ; // 0x24625b8
|
|
/* 024625B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024625B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024625B8 */ cpu->r[1] = _t0;
|
|
/* 024625BC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024625BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024625C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024625C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024625C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024625C8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024625C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024625CC */ _t4 = cpu->r[30] + 0x00000224u;
|
|
/* 024625CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024625D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024625D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024625D8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024625D8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024625D8 */ if (_t6) goto L_024625DC; else goto L_02462644;
|
|
L_024625DC: ; // 0x24625dc
|
|
/* 024625DC */ _t7 = cpu->r[30] + 0x00000118u;
|
|
/* 024625DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024625E0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024625E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024625E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024625E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024625E4 */ if (_t9) goto L_024625F4; else goto L_024625E8;
|
|
L_024625E8: ; // 0x24625e8
|
|
/* 024625E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024625EC */ cpu->r[4] = 0x00000001u;
|
|
/* 024625F0 */ Gambit_fn_020B8610(cpu);
|
|
L_024625F4: ; // 0x24625f4
|
|
/* 024625F4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024625F8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024625FC */ cpu->r[12] = 0x100A0000u;
|
|
/* 02462600 */ cpu->r[10] = cpu->r[10] + 0x00002DFCu;
|
|
/* 02462604 */ cpu->r[0] = cpu->r[0] + 0x00002E38u;
|
|
/* 02462608 */ _t10 = cpu->r[12] + 0x00002E34u;
|
|
/* 02462608 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0246260C */ cpu->r[4] = 0x00000000u;
|
|
/* 02462610 */ cpu->r[3] = cpu->r[30];
|
|
/* 02462614 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462614 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02462618 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246261C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0246261C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02462620 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02462624 */ cpu->r[0] = 0x00000001u;
|
|
/* 02462628 */ _t13 = cpu->r[30] + 0x00000224u;
|
|
/* 02462628 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 0246262C */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 0246262C */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02462630 */ _t15 = cpu->r[30] + 0x0000022Cu;
|
|
/* 02462630 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 02462634 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 02462634 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02462638 */ _t17 = cpu->r[30] + 0x00000230u;
|
|
/* 02462638 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
/* 0246263C */ _t18 = cpu->r[31] + 0x00000008u;
|
|
/* 0246263C */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02462640 */ _t19 = cpu->r[30] + 0x00000234u;
|
|
/* 02462640 */ rbrew_write32(cpu->mem, _t19, cpu->r[8]);
|
|
L_02462644: ; // 0x2462644
|
|
/* 02462644 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02462648 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02462648 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0246264C */ cpu->lr = cpu->r[0];
|
|
/* 02462650 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02462650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02462654 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02462658 */ return;
|
|
}
|
|
|
|
// fn_0246265C @ 0x246265c
|
|
void Gambit_fn_0246265C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0246265C: ; // 0x246265c
|
|
/* 0246265C */ cpu->r[0] = cpu->lr;
|
|
/* 02462660 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02462660 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462660 */ cpu->r[1] = _t0;
|
|
/* 02462664 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02462664 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02462668 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246266C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246266C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02462670 */ Gambit_fn_020B86A0(cpu);
|
|
/* 02462674 */ cpu->r[4] = 0x00000000u;
|
|
/* 02462678 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246267C */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 0246267C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[4]);
|
|
/* 02462680 */ cpu->r[0] = cpu->r[0] + 0x00002DFCu;
|
|
/* 02462684 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02462688 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462688 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246268C */ cpu->r[12] = cpu->r[12] + 0x00002E3Cu;
|
|
/* 02462690 */ cpu->r[3] = cpu->r[31];
|
|
/* 02462694 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02462698 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02462698 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0246269C */ Gambit_fn_027ED624(cpu);
|
|
/* 024626A0 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024626A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024626A4 */ cpu->lr = cpu->r[0];
|
|
/* 024626A8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024626A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024626AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024626B0 */ return;
|
|
}
|
|
|
|
// fn_02462660 @ 0x2462660
|
|
void Gambit_fn_02462660(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02462660: ; // 0x2462660
|
|
/* 02462660 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02462660 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462660 */ cpu->r[1] = _t0;
|
|
/* 02462664 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02462664 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02462668 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246266C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246266C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02462670 */ Gambit_fn_020B86A0(cpu);
|
|
/* 02462674 */ cpu->r[4] = 0x00000000u;
|
|
/* 02462678 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246267C */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 0246267C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[4]);
|
|
/* 02462680 */ cpu->r[0] = cpu->r[0] + 0x00002DFCu;
|
|
/* 02462684 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02462688 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462688 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246268C */ cpu->r[12] = cpu->r[12] + 0x00002E3Cu;
|
|
/* 02462690 */ cpu->r[3] = cpu->r[31];
|
|
/* 02462694 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02462698 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02462698 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0246269C */ Gambit_fn_027ED624(cpu);
|
|
/* 024626A0 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024626A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024626A4 */ cpu->lr = cpu->r[0];
|
|
/* 024626A8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024626A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024626AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024626B0 */ return;
|
|
}
|
|
|
|
// fn_024626B4 @ 0x24626b4
|
|
void Gambit_fn_024626B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024626B4: ; // 0x24626b4
|
|
/* 024626B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024626B8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024626BC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024626C0 */ cpu->r[11] = cpu->r[11] + 0x00002DFCu;
|
|
/* 024626C4 */ cpu->r[12] = cpu->r[12] + 0x00002E40u;
|
|
/* 024626C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024626C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024626CC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024626D0 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024626D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024626D0 */ cpu->r[1] = _t1;
|
|
/* 024626D4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024626D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 024626D8 */ cpu->r[0] = cpu->r[0] + 0x00002E44u;
|
|
/* 024626DC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024626DC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024626E0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024626E4 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024626E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024626E8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024626EC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024626EC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024626F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024626F4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024626F4 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 024626F8 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 024626F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024626FC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02462700 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02462700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02462704 */ cpu->lr = cpu->r[0];
|
|
/* 02462708 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0246270C */ return;
|
|
}
|
|
|
|
// fn_024626D0 @ 0x24626d0
|
|
void Gambit_fn_024626D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024626D0: ; // 0x24626d0
|
|
/* 024626D0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024626D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024626D0 */ cpu->r[1] = _t0;
|
|
/* 024626D4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024626D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024626D8 */ cpu->r[0] = cpu->r[0] + 0x00002E44u;
|
|
/* 024626DC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024626DC */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024626E0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024626E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024626E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024626E8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024626EC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024626EC */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 024626F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024626F4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024626F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024626F8 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 024626F8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024626FC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02462700 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 02462700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02462704 */ cpu->lr = cpu->r[0];
|
|
/* 02462708 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0246270C */ return;
|
|
}
|
|
|
|
// fn_02462710 @ 0x2462710
|
|
void Gambit_fn_02462710(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_02462710: ; // 0x2462710
|
|
/* 02462710 */ cpu->r[0] = cpu->lr;
|
|
/* 02462714 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02462714 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462714 */ cpu->r[1] = _t0;
|
|
/* 02462718 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462718 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246271C */ cpu->r[31] = cpu->r[3];
|
|
/* 02462720 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02462720 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02462724 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02462728 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02462728 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246272C */ _t4 = cpu->r[3] + 0x00000E14u;
|
|
/* 0246272C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02462730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462734 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462734 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02462734 */ if (_t6) goto L_024627E4; else goto L_02462738;
|
|
L_02462738: ; // 0x2462738
|
|
/* 02462738 */ cpu->r[4] = 0x00000000u;
|
|
/* 0246273C */ Gambit_fn_0200CBD8(cpu);
|
|
/* 02462740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462744 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462744 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02462744 */ if (_t8) goto L_024627E4; else goto L_02462748;
|
|
L_02462748: ; // 0x2462748
|
|
/* 02462748 */ Gambit_fn_0201447C(cpu);
|
|
/* 0246274C */ cpu->r[30] = cpu->r[3];
|
|
/* 0246274C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462750 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462750 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02462750 */ if (_t10) goto L_024627E4; else goto L_02462754;
|
|
L_02462754: ; // 0x2462754
|
|
/* 02462754 */ _t11 = cpu->r[30] + 0x00000048u;
|
|
/* 02462754 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02462758 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246275C */ cpu->r[5] = cpu->r[31] + 0x0000022Cu;
|
|
/* 02462760 */ Gambit_fn_0281A9D0(cpu);
|
|
/* 02462764 */ _t12 = cpu->r[30] + 0x0000004Cu;
|
|
/* 02462764 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02462768 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246276C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02462770 */ Gambit_fn_0281BCA8(cpu);
|
|
/* 02462774 */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 02462778 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0246277C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02462780 */ Gambit_fn_0281DE48(cpu);
|
|
/* 02462784 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02462788 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02462788 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0246278C */ _t14 = cpu->r[10] + 0x00002E24u;
|
|
/* 0246278C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02462790 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 02462794 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462794 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02462794 */ if (_t16) goto L_02462798; else goto L_024627A8;
|
|
L_02462798: ; // 0x2462798
|
|
/* 02462798 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246279C */ _t17 = cpu->r[9] + 0x00002E34u;
|
|
/* 0246279C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024627A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024627A4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024627A4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024627A4 */ if (_t19) goto L_024627CC; else goto L_024627A8;
|
|
L_024627A8: ; // 0x24627a8
|
|
/* 024627A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627AC */ cpu->r[4] = 0x00000000u;
|
|
/* 024627B0 */ Gambit_fn_027ECCEC(cpu);
|
|
/* 024627B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024627BC */ Gambit_fn_027EDF00(cpu);
|
|
/* 024627C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024627C4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024627C4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024627C4 */ if (_t21) goto L_02462828; else goto L_024627C8;
|
|
L_024627C8: ; // 0x24627c8
|
|
/* 024627C8 */ goto L_024627F8;
|
|
L_024627CC: ; // 0x24627cc
|
|
/* 024627CC */ cpu->r[3] = cpu->r[31];
|
|
/* 024627D0 */ cpu->r[4] = 0x00000001u;
|
|
/* 024627D4 */ Gambit_fn_027ECCEC(cpu);
|
|
/* 024627D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627DC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024627E0 */ Gambit_fn_027ECC10(cpu);
|
|
L_024627E4: ; // 0x24627e4
|
|
/* 024627E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024627EC */ Gambit_fn_027EDF00(cpu);
|
|
/* 024627F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024627F4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024627F4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024627F4 */ if (_t23) goto L_02462828; else goto L_024627F8;
|
|
L_024627F8: ; // 0x24627f8
|
|
/* 024627F8 */ _t24 = cpu->r[31] + 0x00000224u;
|
|
/* 024627F8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t24);
|
|
/* 024627FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02462800 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462800 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02462800 */ if (_t26) goto L_02462828; else goto L_02462804;
|
|
L_02462804: ; // 0x2462804
|
|
/* 02462804 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 02462804 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02462808 */ _t28 = cpu->r[12] + 0x00000094u;
|
|
/* 02462808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0246280C */ cpu->ctr = cpu->r[0];
|
|
/* 02462810 */ cpu->r[3] = cpu->r[31];
|
|
/* 02462814 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462818 */ cpu->r[7] = 0x00000000u;
|
|
/* 0246281C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02462820 */ _t29 = cpu->r[31] + 0x00000224u;
|
|
/* 02462820 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[7]);
|
|
/* 02462824 */ _t30 = cpu->r[31] + 0x00000228u;
|
|
/* 02462824 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_02462828: ; // 0x2462828
|
|
/* 02462828 */ _t31 = cpu->r[1] + 0x00000034u;
|
|
/* 02462828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0246282C */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 0246282C */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02462830 */ cpu->lr = cpu->r[0];
|
|
/* 02462834 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02462838 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0246283C */ return;
|
|
}
|
|
|
|
// fn_02462714 @ 0x2462714
|
|
void Gambit_fn_02462714(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_02462714: ; // 0x2462714
|
|
/* 02462714 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02462714 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462714 */ cpu->r[1] = _t0;
|
|
/* 02462718 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462718 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246271C */ cpu->r[31] = cpu->r[3];
|
|
/* 02462720 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02462720 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02462724 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02462728 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02462728 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246272C */ _t4 = cpu->r[3] + 0x00000E14u;
|
|
/* 0246272C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02462730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462734 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462734 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02462734 */ if (_t6) goto L_024627E4; else goto L_02462738;
|
|
L_02462738: ; // 0x2462738
|
|
/* 02462738 */ cpu->r[4] = 0x00000000u;
|
|
/* 0246273C */ Gambit_fn_0200CBD8(cpu);
|
|
/* 02462740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462744 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462744 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02462744 */ if (_t8) goto L_024627E4; else goto L_02462748;
|
|
L_02462748: ; // 0x2462748
|
|
/* 02462748 */ Gambit_fn_0201447C(cpu);
|
|
/* 0246274C */ cpu->r[30] = cpu->r[3];
|
|
/* 0246274C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462750 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462750 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02462750 */ if (_t10) goto L_024627E4; else goto L_02462754;
|
|
L_02462754: ; // 0x2462754
|
|
/* 02462754 */ _t11 = cpu->r[30] + 0x00000048u;
|
|
/* 02462754 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02462758 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246275C */ cpu->r[5] = cpu->r[31] + 0x0000022Cu;
|
|
/* 02462760 */ Gambit_fn_0281A9D0(cpu);
|
|
/* 02462764 */ _t12 = cpu->r[30] + 0x0000004Cu;
|
|
/* 02462764 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02462768 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246276C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02462770 */ Gambit_fn_0281BCA8(cpu);
|
|
/* 02462774 */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 02462778 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0246277C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02462780 */ Gambit_fn_0281DE48(cpu);
|
|
/* 02462784 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02462788 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02462788 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0246278C */ _t14 = cpu->r[10] + 0x00002E24u;
|
|
/* 0246278C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02462790 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 02462794 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462794 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02462794 */ if (_t16) goto L_02462798; else goto L_024627A8;
|
|
L_02462798: ; // 0x2462798
|
|
/* 02462798 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246279C */ _t17 = cpu->r[9] + 0x00002E34u;
|
|
/* 0246279C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024627A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024627A4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024627A4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024627A4 */ if (_t19) goto L_024627CC; else goto L_024627A8;
|
|
L_024627A8: ; // 0x24627a8
|
|
/* 024627A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627AC */ cpu->r[4] = 0x00000000u;
|
|
/* 024627B0 */ Gambit_fn_027ECCEC(cpu);
|
|
/* 024627B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024627BC */ Gambit_fn_027EDF00(cpu);
|
|
/* 024627C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024627C4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024627C4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024627C4 */ if (_t21) goto L_02462828; else goto L_024627C8;
|
|
L_024627C8: ; // 0x24627c8
|
|
/* 024627C8 */ goto L_024627F8;
|
|
L_024627CC: ; // 0x24627cc
|
|
/* 024627CC */ cpu->r[3] = cpu->r[31];
|
|
/* 024627D0 */ cpu->r[4] = 0x00000001u;
|
|
/* 024627D4 */ Gambit_fn_027ECCEC(cpu);
|
|
/* 024627D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627DC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024627E0 */ Gambit_fn_027ECC10(cpu);
|
|
L_024627E4: ; // 0x24627e4
|
|
/* 024627E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024627E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024627EC */ Gambit_fn_027EDF00(cpu);
|
|
/* 024627F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024627F4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024627F4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024627F4 */ if (_t23) goto L_02462828; else goto L_024627F8;
|
|
L_024627F8: ; // 0x24627f8
|
|
/* 024627F8 */ _t24 = cpu->r[31] + 0x00000224u;
|
|
/* 024627F8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t24);
|
|
/* 024627FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02462800 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462800 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02462800 */ if (_t26) goto L_02462828; else goto L_02462804;
|
|
L_02462804: ; // 0x2462804
|
|
/* 02462804 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 02462804 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02462808 */ _t28 = cpu->r[12] + 0x00000094u;
|
|
/* 02462808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0246280C */ cpu->ctr = cpu->r[0];
|
|
/* 02462810 */ cpu->r[3] = cpu->r[31];
|
|
/* 02462814 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462818 */ cpu->r[7] = 0x00000000u;
|
|
/* 0246281C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02462820 */ _t29 = cpu->r[31] + 0x00000224u;
|
|
/* 02462820 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[7]);
|
|
/* 02462824 */ _t30 = cpu->r[31] + 0x00000228u;
|
|
/* 02462824 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_02462828: ; // 0x2462828
|
|
/* 02462828 */ _t31 = cpu->r[1] + 0x00000034u;
|
|
/* 02462828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0246282C */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 0246282C */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02462830 */ cpu->lr = cpu->r[0];
|
|
/* 02462834 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02462834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02462838 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0246283C */ return;
|
|
}
|
|
|
|
// fn_02462840 @ 0x2462840
|
|
void Gambit_fn_02462840(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_02462840: ; // 0x2462840
|
|
/* 02462840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02462844 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462844 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02462844 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02462844 */ goto L_02462848;
|
|
L_02462848: ; // 0x2462848
|
|
/* 02462848 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02462848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246284C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246284C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0246284C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0246284C */ goto L_02462850;
|
|
L_02462850: ; // 0x2462850
|
|
/* 02462850 */ 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_02462854 @ 0x2462854
|
|
void Gambit_fn_02462854(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02462854: ; // 0x2462854
|
|
/* 02462854 */ cpu->r[0] = cpu->lr;
|
|
/* 02462858 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02462858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462858 */ cpu->r[1] = _t0;
|
|
/* 0246285C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246285C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02462860 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02462860 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02462864 */ cpu->r[30] = cpu->r[3];
|
|
/* 02462864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462868 */ cpu->r[31] = cpu->r[4];
|
|
/* 0246286C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246286C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02462870 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462870 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02462870 */ if (_t5) goto L_024628E0; else goto L_02462874;
|
|
L_02462874: ; // 0x2462874
|
|
/* 02462874 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462878 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246287C */ cpu->r[0] = cpu->r[0] + 0x00002FB8u;
|
|
/* 02462880 */ cpu->r[12] = cpu->r[12] + 0x00002FD8u;
|
|
/* 02462884 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02462884 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02462888 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246288C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0246288C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02462890 */ cpu->r[11] = cpu->r[11] + 0x00002FC8u;
|
|
/* 02462894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462898 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02462898 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0246289C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246289C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0246289C */ if (_t10) goto L_024628D0; else goto L_024628A0;
|
|
L_024628A0: ; // 0x24628a0
|
|
/* 024628A0 */ cpu->r[10] = 0x10010000u;
|
|
/* 024628A4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024628A8 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 024628AC */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 024628B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024628B4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024628B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024628B8 */ cpu->r[0] = 0x10010000u;
|
|
/* 024628BC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024628BC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024628C0 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 024628C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024628C8 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024628C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024628CC */ Gambit_fn_02068798(cpu);
|
|
L_024628D0: ; // 0x24628d0
|
|
/* 024628D0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024628D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024628D4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024628D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024628D4 */ if (_t15) goto L_024628E0; else goto L_024628D8;
|
|
L_024628D8: ; // 0x24628d8
|
|
/* 024628D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024628DC */ Gambit_fn_02801BB0(cpu);
|
|
L_024628E0: ; // 0x24628e0
|
|
/* 024628E0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024628E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024628E4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024628E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024628E8 */ cpu->lr = cpu->r[0];
|
|
/* 024628EC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024628EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024628F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024628F4 */ return;
|
|
}
|
|
|
|
// fn_02462858 @ 0x2462858
|
|
void Gambit_fn_02462858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02462858: ; // 0x2462858
|
|
/* 02462858 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02462858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462858 */ cpu->r[1] = _t0;
|
|
/* 0246285C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246285C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02462860 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02462860 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02462864 */ cpu->r[30] = cpu->r[3];
|
|
/* 02462864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462868 */ cpu->r[31] = cpu->r[4];
|
|
/* 0246286C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246286C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02462870 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462870 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02462870 */ if (_t5) goto L_024628E0; else goto L_02462874;
|
|
L_02462874: ; // 0x2462874
|
|
/* 02462874 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462878 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246287C */ cpu->r[0] = cpu->r[0] + 0x00002FB8u;
|
|
/* 02462880 */ cpu->r[12] = cpu->r[12] + 0x00002FD8u;
|
|
/* 02462884 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02462884 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02462888 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246288C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0246288C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02462890 */ cpu->r[11] = cpu->r[11] + 0x00002FC8u;
|
|
/* 02462894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02462898 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02462898 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0246289C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246289C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0246289C */ if (_t10) goto L_024628D0; else goto L_024628A0;
|
|
L_024628A0: ; // 0x24628a0
|
|
/* 024628A0 */ cpu->r[10] = 0x10010000u;
|
|
/* 024628A4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024628A8 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 024628AC */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 024628B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024628B4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024628B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024628B8 */ cpu->r[0] = 0x10010000u;
|
|
/* 024628BC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024628BC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024628C0 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 024628C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024628C8 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024628C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024628CC */ Gambit_fn_02068798(cpu);
|
|
L_024628D0: ; // 0x24628d0
|
|
/* 024628D0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024628D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024628D4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024628D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024628D4 */ if (_t15) goto L_024628E0; else goto L_024628D8;
|
|
L_024628D8: ; // 0x24628d8
|
|
/* 024628D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024628DC */ Gambit_fn_02801BB0(cpu);
|
|
L_024628E0: ; // 0x24628e0
|
|
/* 024628E0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024628E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024628E4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024628E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024628E8 */ cpu->lr = cpu->r[0];
|
|
/* 024628EC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024628EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024628F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024628F4 */ return;
|
|
}
|
|
|
|
// fn_024628F8 @ 0x24628f8
|
|
void Gambit_fn_024628F8(CPUState* cpu) {
|
|
L_024628F8: ; // 0x24628f8
|
|
/* 024628F8 */ return;
|
|
}
|
|
|
|
// fn_024628FC @ 0x24628fc
|
|
void Gambit_fn_024628FC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024628FC: ; // 0x24628fc
|
|
/* 024628FC */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024628FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02462900 */ return;
|
|
}
|
|
|
|
// fn_02462904 @ 0x2462904
|
|
void Gambit_fn_02462904(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02462904: ; // 0x2462904
|
|
/* 02462904 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02462904 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02462908 */ return;
|
|
}
|
|
|
|
// fn_0246290C @ 0x246290c
|
|
void Gambit_fn_0246290C(CPUState* cpu) {
|
|
L_0246290C: ; // 0x246290c
|
|
/* 0246290C */ return;
|
|
}
|
|
|
|
// fn_02462910 @ 0x2462910
|
|
void Gambit_fn_02462910(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02462910: ; // 0x2462910
|
|
/* 02462910 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02462910 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02462914 */ return;
|
|
}
|
|
|
|
// fn_02462918 @ 0x2462918
|
|
void Gambit_fn_02462918(CPUState* cpu) {
|
|
L_02462918: ; // 0x2462918
|
|
/* 02462918 */ return;
|
|
}
|
|
|
|
// fn_0246291C @ 0x246291c
|
|
void Gambit_fn_0246291C(CPUState* cpu) {
|
|
L_0246291C: ; // 0x246291c
|
|
/* 0246291C */ return;
|
|
}
|
|
|
|
// fn_02462920 @ 0x2462920
|
|
void Gambit_fn_02462920(CPUState* cpu) {
|
|
L_02462920: ; // 0x2462920
|
|
/* 02462920 */ return;
|
|
}
|
|
|
|
// fn_02462924 @ 0x2462924
|
|
void Gambit_fn_02462924(CPUState* cpu) {
|
|
L_02462924: ; // 0x2462924
|
|
/* 02462924 */ return;
|
|
}
|
|
|
|
// fn_02462928 @ 0x2462928
|
|
void Gambit_fn_02462928(CPUState* cpu) {
|
|
L_02462928: ; // 0x2462928
|
|
/* 02462928 */ cpu->r[3] = 0x00000001u;
|
|
/* 0246292C */ return;
|
|
}
|
|
|
|
// fn_02462930 @ 0x2462930
|
|
void Gambit_fn_02462930(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02462930: ; // 0x2462930
|
|
/* 02462930 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02462930 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02462934 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02462934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02462938 */ cpu->ctr = cpu->r[0];
|
|
/* 0246293C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02462940 @ 0x2462940
|
|
void Gambit_fn_02462940(CPUState* cpu) {
|
|
L_02462940: ; // 0x2462940
|
|
/* 02462940 */ return;
|
|
}
|
|
|
|
// fn_02462944 @ 0x2462944
|
|
void Gambit_fn_02462944(CPUState* cpu) {
|
|
L_02462944: ; // 0x2462944
|
|
/* 02462944 */ cpu->r[3] = 0x00000000u;
|
|
/* 02462948 */ return;
|
|
}
|
|
|
|
// fn_0246294C @ 0x246294c
|
|
void Gambit_fn_0246294C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0246294C: ; // 0x246294c
|
|
/* 0246294C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02462950 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02462950 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02462950 */ cpu->r[9] = _t0;
|
|
/* 02462954 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02462958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0246295C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02462960 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462960 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02462960 */ if (_t2) goto L_02462964; else goto L_02462978;
|
|
L_02462964: ; // 0x2462964
|
|
/* 02462964 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02462968 */ cpu->r[0] = 0x00000001u;
|
|
/* 0246296C */ cpu->r[7] = cpu->r[7] + 0x00002E14u;
|
|
/* 02462970 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02462970 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02462974 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02462974 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02462978: ; // 0x2462978
|
|
/* 02462978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0246297C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246297C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246297C */ if (_t6) goto L_02462980; else goto L_02462988;
|
|
L_02462980: ; // 0x2462980
|
|
/* 02462980 */ cpu->r[3] = 0x00000001u;
|
|
/* 02462984 */ return;
|
|
L_02462988: ; // 0x2462988
|
|
/* 02462988 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0246298C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0246298C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246298C */ cpu->r[7] = _t7;
|
|
/* 02462990 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02462994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02462998 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0246299C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246299C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0246299C */ if (_t9) goto L_024629A0; else goto L_024629B4;
|
|
L_024629A0: ; // 0x24629a0
|
|
/* 024629A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024629A4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024629A8 */ cpu->r[0] = cpu->r[0] + 0x00002DECu;
|
|
/* 024629AC */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 024629AC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024629B0 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024629B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024629B4: ; // 0x24629b4
|
|
/* 024629B4 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024629B8 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 024629BC */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 024629C0 */ return;
|
|
}
|
|
|
|
// fn_024629C4 @ 0x24629c4
|
|
void Gambit_fn_024629C4(CPUState* cpu) {
|
|
L_024629C4: ; // 0x24629c4
|
|
/* 024629C4 */ return;
|
|
}
|
|
|
|
// fn_024629C8 @ 0x24629c8
|
|
void Gambit_fn_024629C8(CPUState* cpu) {
|
|
L_024629C8: ; // 0x24629c8
|
|
/* 024629C8 */ return;
|
|
}
|
|
|
|
// fn_024629CC @ 0x24629cc
|
|
void Gambit_fn_024629CC(CPUState* cpu) {
|
|
L_024629CC: ; // 0x24629cc
|
|
/* 024629CC */ return;
|
|
}
|
|
|
|
// fn_024629D0 @ 0x24629d0
|
|
void Gambit_fn_024629D0(CPUState* cpu) {
|
|
L_024629D0: ; // 0x24629d0
|
|
/* 024629D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024629D4 */ return;
|
|
}
|
|
|
|
// fn_024629D8 @ 0x24629d8
|
|
void Gambit_fn_024629D8(CPUState* cpu) {
|
|
L_024629D8: ; // 0x24629d8
|
|
/* 024629D8 */ cpu->r[3] = 0x00000000u;
|
|
/* 024629DC */ return;
|
|
}
|
|
|
|
// fn_024629E0 @ 0x24629e0
|
|
void Gambit_fn_024629E0(CPUState* cpu) {
|
|
L_024629E0: ; // 0x24629e0
|
|
/* 024629E0 */ return;
|
|
}
|
|
|
|
// fn_024629E4 @ 0x24629e4
|
|
void Gambit_fn_024629E4(CPUState* cpu) {
|
|
L_024629E4: ; // 0x24629e4
|
|
/* 024629E4 */ return;
|
|
}
|
|
|
|
// fn_024629E8 @ 0x24629e8
|
|
void Gambit_fn_024629E8(CPUState* cpu) {
|
|
L_024629E8: ; // 0x24629e8
|
|
/* 024629E8 */ return;
|
|
}
|
|
|
|
// fn_024629EC @ 0x24629ec
|
|
void Gambit_fn_024629EC(CPUState* cpu) {
|
|
L_024629EC: ; // 0x24629ec
|
|
/* 024629EC */ return;
|
|
}
|
|
|
|
// fn_024629F0 @ 0x24629f0
|
|
void Gambit_fn_024629F0(CPUState* cpu) {
|
|
L_024629F0: ; // 0x24629f0
|
|
/* 024629F0 */ return;
|
|
}
|
|
|
|
// fn_024629F4 @ 0x24629f4
|
|
void Gambit_fn_024629F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C894: ; // 0x206c894
|
|
/* 0206C894 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C898 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C898 */ cpu->r[1] = _t0;
|
|
/* 0206C89C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C89C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C8A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C8A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C8AC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C8B4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206C8B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206C8B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C8B8 */ if (_t6) goto L_0206C8E0; else goto L_0206C8BC;
|
|
L_0206C8BC: ; // 0x206c8bc
|
|
/* 0206C8BC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C8BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206C8C0 */ /* nop */
|
|
/* 0206C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206C8C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C8C8 */ if (_t9) goto L_0206C8CC; else goto L_0206C8E0;
|
|
L_0206C8CC: ; // 0x206c8cc
|
|
/* 0206C8CC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206C8CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C8D0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206C8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C8D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C8D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C8E0: ; // 0x206c8e0
|
|
/* 0206C8E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8E4 */ Gambit_fn_0206C80C(cpu);
|
|
/* 0206C8E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8EC */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206C8F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C8F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0206C8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C900 */ return;
|
|
L_024629F4: ; // 0x24629f4
|
|
/* 024629F4 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 024629F8 */ goto L_0206C894;
|
|
}
|
|
|
|
// fn_024629FC @ 0x24629fc
|
|
void Gambit_fn_024629FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024629FC: ; // 0x24629fc
|
|
/* 024629FC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02462A00 */ goto L_02463DAC;
|
|
L_02463DAC: ; // 0x2463dac
|
|
/* 02463DAC */ cpu->r[0] = cpu->lr;
|
|
/* 02463DB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463DB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463DB0 */ cpu->r[1] = _t0;
|
|
/* 02463DB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463DB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463DB8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02463DB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02463DBC */ cpu->r[30] = cpu->r[3];
|
|
/* 02463DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02463DC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02463DC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02463DC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02463DC8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463DC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02463DC8 */ if (_t5) goto L_02463E0C; else goto L_02463DCC;
|
|
L_02463DCC: ; // 0x2463dcc
|
|
/* 02463DCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463DD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463DD4 */ cpu->r[11] = cpu->r[11] + 0x000033C4u;
|
|
/* 02463DD8 */ cpu->r[0] = cpu->r[0] + 0x000033B4u;
|
|
/* 02463DDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02463DE0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02463DE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02463DE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463DE8 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02463DE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02463DEC */ cpu->r[0] = cpu->r[0] + 0x000033D4u;
|
|
/* 02463DF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463DF4 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 02463DF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02463DF8 */ Gambit_fn_02068798(cpu);
|
|
/* 02463DFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463E00 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E00 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02463E00 */ if (_t10) goto L_02463E0C; else goto L_02463E04;
|
|
L_02463E04: ; // 0x2463e04
|
|
/* 02463E04 */ cpu->r[3] = cpu->r[30];
|
|
/* 02463E08 */ Gambit_fn_02801BB0(cpu);
|
|
L_02463E0C: ; // 0x2463e0c
|
|
/* 02463E0C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02463E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02463E10 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02463E10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02463E14 */ cpu->lr = cpu->r[0];
|
|
/* 02463E18 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02463E1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463E20 */ return;
|
|
}
|
|
|
|
// fn_02462A04 @ 0x2462a04
|
|
void Gambit_fn_02462A04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02462A04: ; // 0x2462a04
|
|
/* 02462A04 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02462A08 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02462A0C @ 0x2462a0c
|
|
void Gambit_fn_02462A0C(CPUState* cpu) {
|
|
L_02462A0C: ; // 0x2462a0c
|
|
/* 02462A0C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02462A10 */ goto L_02463E24;
|
|
L_02463E24: ; // 0x2463e24
|
|
/* 02463E24 */ return;
|
|
}
|
|
|
|
// fn_02462A14 @ 0x2462a14
|
|
void Gambit_fn_02462A14(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02462A14: ; // 0x2462a14
|
|
/* 02462A14 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02462A18 */ goto L_02463E28;
|
|
L_02463E28: ; // 0x2463e28
|
|
/* 02463E28 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02463E28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463E2C */ return;
|
|
}
|
|
|
|
// fn_02462A1C @ 0x2462a1c
|
|
void Gambit_fn_02462A1C(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;
|
|
|
|
L_02462A1C: ; // 0x2462a1c
|
|
/* 02462A1C */ cpu->r[0] = cpu->lr;
|
|
/* 02462A20 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02462A20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462A20 */ cpu->r[1] = _t0;
|
|
/* 02462A24 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02462A24 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02462A28 */ /* nop */
|
|
/* 02462A2C */ cpu->r[29] = cpu->r[3];
|
|
/* 02462A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02462A30 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462A30 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02462A30 */ if (_t3) goto L_02462A34; else goto L_02462A44;
|
|
L_02462A34: ; // 0x2462a34
|
|
/* 02462A34 */ cpu->r[3] = 0x0000026Cu;
|
|
/* 02462A38 */ Gambit_fn_02801A78(cpu);
|
|
/* 02462A3C */ cpu->r[29] = cpu->r[3];
|
|
/* 02462A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02462A40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462A40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02462A40 */ if (_t5) goto L_02463018; else goto L_02462A44;
|
|
L_02462A44: ; // 0x2462a44
|
|
/* 02462A44 */ cpu->r[26] = 0x100A0000u;
|
|
/* 02462A48 */ cpu->r[3] = cpu->r[29];
|
|
/* 02462A4C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02462A50 */ cpu->r[26] = cpu->r[26] + 0x00003060u;
|
|
/* 02462A54 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462A58 */ cpu->r[10] = cpu->r[10] + 0x00003130u;
|
|
/* 02462A5C */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02462A5C */ rbrew_write32(cpu->mem, _t6, cpu->r[26]);
|
|
/* 02462A60 */ cpu->r[5] = 0x00000001u;
|
|
/* 02462A64 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462A64 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 02462A68 */ Gambit_fn_02068860(cpu);
|
|
/* 02462A6C */ cpu->r[5] = 0x100A0000u;
|
|
/* 02462A70 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02462A74 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462A78 */ cpu->r[5] = cpu->r[5] + 0x00003254u;
|
|
/* 02462A7C */ cpu->r[7] = cpu->r[7] + 0x000033B4u;
|
|
/* 02462A80 */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 02462A80 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02462A84 */ cpu->r[0] = cpu->r[0] + 0x000033C4u;
|
|
/* 02462A88 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02462A8C */ _t9 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02462A8C */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02462A90 */ cpu->r[27] = cpu->r[29] + 0x000001DCu;
|
|
/* 02462A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02462A94 */ cpu->r[10] = cpu->r[10] + 0x000033D4u;
|
|
/* 02462A98 */ _t10 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02462A98 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02462A9C */ cpu->r[31] = cpu->r[27];
|
|
/* 02462AA0 */ cpu->r[28] = 0x00000000u;
|
|
/* 02462AA4 */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 02462AA4 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02462AA8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462AA8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02462AA8 */ if (_t13) goto L_02462AAC; else goto L_02462ABC;
|
|
L_02462AAC: ; // 0x2462aac
|
|
/* 02462AAC */ cpu->r[3] = 0x00000038u;
|
|
/* 02462AB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02462AB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02462AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02462AB8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462AB8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02462AB8 */ if (_t15) goto L_02462AEC; else goto L_02462ABC;
|
|
L_02462ABC: ; // 0x2462abc
|
|
/* 02462ABC */ cpu->r[3] = cpu->r[31];
|
|
/* 02462AC0 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02462AC4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462AC8 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 02462AC8 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02462ACC */ cpu->r[0] = cpu->r[0] + 0x00003224u;
|
|
/* 02462AD0 */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 02462AD0 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02462AD4 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02462AD4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02462AD8 */ _t19 = cpu->r[31] + 0x00000024u;
|
|
/* 02462AD8 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02462ADC */ _t20 = cpu->r[31] + 0x00000028u;
|
|
/* 02462ADC */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 02462AE0 */ _t21 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02462AE0 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02462AE4 */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02462AE4 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 02462AE8 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 02462AE8 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
L_02462AEC: ; // 0x2462aec
|
|
/* 02462AEC */ _t24 = cpu->r[29] + 0x00000214u;
|
|
/* 02462AEC */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 02462AF0 */ cpu->r[12] = 0x0000005Au;
|
|
/* 02462AF4 */ _t25 = cpu->r[29] + 0x00000258u;
|
|
/* 02462AF4 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 02462AF8 */ cpu->r[0] = 0x00000005u;
|
|
/* 02462AFC */ _t26 = cpu->r[29] + 0x00000264u;
|
|
/* 02462AFC */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02462B00 */ cpu->r[4] = cpu->r[29];
|
|
/* 02462B04 */ _t27 = cpu->r[29] + 0x00000268u;
|
|
/* 02462B04 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 02462B08 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462B0C */ _t28 = cpu->r[29] + 0x00000254u;
|
|
/* 02462B0C */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 02462B10 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02462B14 */ _t29 = cpu->r[29] + 0x00000260u;
|
|
/* 02462B14 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 02462B18 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462B1C */ _t30 = cpu->r[29] + 0x0000025Cu;
|
|
/* 02462B1C */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02462B20 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02462B20 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 02462B24 */ Gambit_fn_02463FE0(cpu);
|
|
/* 02462B28 */ cpu->r[25] = 0x02460000u;
|
|
/* 02462B2C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462B30 */ cpu->r[25] = cpu->r[25] + 0x00003E38u;
|
|
/* 02462B34 */ cpu->r[0] = cpu->r[0] + 0x00003120u;
|
|
/* 02462B38 */ cpu->ctr = cpu->r[25];
|
|
/* 02462B3C */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462B3C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 02462B40 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02462B40 */ rbrew_write32(cpu->mem, _t33, cpu->r[26]);
|
|
/* 02462B44 */ _t34 = cpu->r[27] + 0x00000018u;
|
|
/* 02462B44 */ cpu->r[23] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02462B48 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462B4C */ _t35 = cpu->r[23] + 0x00000000u;
|
|
/* 02462B4C */ cpu->r[24] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02462B50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462B54 */ cpu->r[30] = 0x10110000u;
|
|
/* 02462B58 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462B58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02462B5C */ _t37 = cpu->r[30] + 0x00007399u;
|
|
/* 02462B5C */ cpu->r[30] = rbrew_read8(cpu->mem, _t37);
|
|
/* 02462B60 */ _t38 = cpu->r[9] + 0x00000000u;
|
|
/* 02462B60 */ cpu->r[7] = rbrew_read8(cpu->mem, _t38);
|
|
/* 02462B64 */ cpu->r[31] = 0x00000000u;
|
|
/* 02462B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02462B6C */ cpu->r[10] = 0x00080000u;
|
|
/* 02462B70 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462B70 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02462B70 */ if (_t40) goto L_02462B98; else goto L_02462B74;
|
|
L_02462B74: ; // 0x2462b74
|
|
/* 02462B74 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02462B7C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02462B80 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462B80 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02462B80 */ if (_t42) goto L_02462B94; else goto L_02462B84;
|
|
L_02462B84: ; // 0x2462b84
|
|
/* 02462B84 */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 02462B84 */ cpu->r[8] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02462B88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02462B8C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462B8C */ _t45 = _t44 & 0x00000001u;
|
|
/* 02462B8C */ if (_t45) goto L_02462B90; else goto L_02462B74;
|
|
L_02462B90: ; // 0x2462b90
|
|
/* 02462B90 */ goto L_02462B98;
|
|
L_02462B94: ; // 0x2462b94
|
|
/* 02462B94 */ cpu->r[31] = 0x00000000u;
|
|
L_02462B98: ; // 0x2462b98
|
|
/* 02462B98 */ _t46 = cpu->r[23] + 0x00000008u;
|
|
/* 02462B98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02462B9C */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 02462B9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02462BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02462BA4 */ _t48 = cpu->r[10] + 0x00000014u;
|
|
/* 02462BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02462BA8 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462BA8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02462BA8 */ if (_t50) goto L_02462BB0; else goto L_02462BAC;
|
|
L_02462BAC: ; // 0x2462bac
|
|
/* 02462BAC */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02462BB0: ; // 0x2462bb0
|
|
/* 02462BB0 */ cpu->ctr = cpu->r[0];
|
|
/* 02462BB4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462BB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462BBC */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462BBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02462BC0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462BC4 */ cpu->r[5] = cpu->r[31];
|
|
/* 02462BC8 */ cpu->r[3] = cpu->r[24];
|
|
/* 02462BCC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462BD0 */ _t52 = cpu->r[24] + cpu->r[31];
|
|
/* 02462BD0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[30]);
|
|
/* 02462BD4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02462BD8 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462BD8 */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[28]);
|
|
/* 02462BDC */ cpu->r[6] = 0x00000000u;
|
|
/* 02462BE0 */ _t54 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462BE0 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[8]);
|
|
/* 02462BE4 */ cpu->r[0] = 0x02460000u;
|
|
/* 02462BE8 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 02462BE8 */ rbrew_write32(cpu->mem, _t55, cpu->r[28]);
|
|
/* 02462BEC */ cpu->r[0] = cpu->r[0] + 0x00003FD8u;
|
|
/* 02462BF0 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02462BF0 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[6]);
|
|
/* 02462BF4 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 02462BF4 */ rbrew_write32(cpu->mem, _t57, cpu->r[28]);
|
|
/* 02462BF8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462BFC */ _t58 = cpu->r[1] + 0x00000020u;
|
|
/* 02462BFC */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 02462C00 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02462C04 */ _t59 = cpu->r[1] + 0x00000026u;
|
|
/* 02462C04 */ rbrew_write16(cpu->mem, _t59, (uint16_t)cpu->r[28]);
|
|
/* 02462C08 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462C0C */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 02462C0C */ rbrew_write16(cpu->mem, _t60, (uint16_t)cpu->r[28]);
|
|
/* 02462C10 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462C14 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 02462C14 */ rbrew_write16(cpu->mem, _t61, (uint16_t)cpu->r[28]);
|
|
/* 02462C18 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462C1C */ _t62 = cpu->r[1] + 0x00000016u;
|
|
/* 02462C1C */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[28]);
|
|
/* 02462C20 */ Gambit_fn_02464290(cpu);
|
|
/* 02462C24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462C28 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 02462C28 */ rbrew_write32(cpu->mem, _t63, cpu->r[26]);
|
|
/* 02462C2C */ cpu->r[0] = cpu->r[0] + 0x00003140u;
|
|
/* 02462C30 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462C30 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 02462C34 */ _t65 = cpu->r[27] + 0x00000014u;
|
|
/* 02462C34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02462C38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 02462C3C */ _t66 = cpu->r[27] + 0x00000018u;
|
|
/* 02462C3C */ cpu->r[24] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02462C40 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462C40 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02462C40 */ if (_t68) goto L_02462C44; else goto L_02462C48;
|
|
L_02462C44: ; // 0x2462c44
|
|
/* 02462C44 */ cpu->r[24] = cpu->r[24] + 0x00000024u;
|
|
L_02462C48: ; // 0x2462c48
|
|
/* 02462C48 */ cpu->ctr = cpu->r[25];
|
|
/* 02462C4C */ _t69 = cpu->r[24] + 0x00000000u;
|
|
/* 02462C4C */ cpu->r[23] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02462C50 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462C58 */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462C58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02462C5C */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 02462C5C */ cpu->r[6] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02462C60 */ cpu->r[31] = 0x00000000u;
|
|
/* 02462C64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02462C68 */ cpu->r[6] = 0x00080000u;
|
|
/* 02462C6C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462C6C */ _t73 = _t72 & 0x00000001u;
|
|
/* 02462C6C */ if (_t73) goto L_02462C94; else goto L_02462C70;
|
|
L_02462C70: ; // 0x2462c70
|
|
/* 02462C70 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02462C78 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02462C7C */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462C7C */ _t75 = _t74 & 0x00000001u;
|
|
/* 02462C7C */ if (_t75) goto L_02462C90; else goto L_02462C80;
|
|
L_02462C80: ; // 0x2462c80
|
|
/* 02462C80 */ _t76 = cpu->r[12] + 0x00000000u;
|
|
/* 02462C80 */ cpu->r[7] = rbrew_read8(cpu->mem, _t76);
|
|
/* 02462C84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02462C88 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462C88 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02462C88 */ if (_t78) goto L_02462C8C; else goto L_02462C70;
|
|
L_02462C8C: ; // 0x2462c8c
|
|
/* 02462C8C */ goto L_02462C94;
|
|
L_02462C90: ; // 0x2462c90
|
|
/* 02462C90 */ cpu->r[31] = 0x00000000u;
|
|
L_02462C94: ; // 0x2462c94
|
|
/* 02462C94 */ _t79 = cpu->r[24] + 0x00000008u;
|
|
/* 02462C94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02462C98 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 02462C98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02462C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 02462CA0 */ _t81 = cpu->r[9] + 0x00000014u;
|
|
/* 02462CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02462CA4 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462CA4 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02462CA4 */ if (_t83) goto L_02462CAC; else goto L_02462CA8;
|
|
L_02462CA8: ; // 0x2462ca8
|
|
/* 02462CA8 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02462CAC: ; // 0x2462cac
|
|
/* 02462CAC */ cpu->ctr = cpu->r[0];
|
|
/* 02462CB0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462CB8 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462CB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02462CBC */ cpu->r[3] = cpu->r[23];
|
|
/* 02462CC0 */ cpu->r[5] = cpu->r[31];
|
|
/* 02462CC4 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462CC8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462CCC */ _t85 = cpu->r[23] + cpu->r[31];
|
|
/* 02462CCC */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[30]);
|
|
/* 02462CD0 */ cpu->r[0] = 0x02460000u;
|
|
/* 02462CD4 */ _t86 = cpu->r[1] + 0x00000020u;
|
|
/* 02462CD4 */ rbrew_write32(cpu->mem, _t86, cpu->r[28]);
|
|
/* 02462CD8 */ cpu->r[0] = cpu->r[0] + 0x00003B34u;
|
|
/* 02462CDC */ _t87 = cpu->r[1] + 0x00000024u;
|
|
/* 02462CDC */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[28]);
|
|
/* 02462CE0 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 02462CE4 */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 02462CE4 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 02462CE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02462CEC */ _t89 = cpu->r[1] + 0x00000016u;
|
|
/* 02462CEC */ rbrew_write16(cpu->mem, _t89, (uint16_t)cpu->r[5]);
|
|
/* 02462CF0 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 02462CF0 */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[0]);
|
|
/* 02462CF4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462CF8 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462CF8 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[28]);
|
|
/* 02462CFC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462D00 */ _t92 = cpu->r[1] + 0x00000014u;
|
|
/* 02462D00 */ rbrew_write16(cpu->mem, _t92, (uint16_t)cpu->r[28]);
|
|
/* 02462D04 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462D08 */ _t93 = cpu->r[1] + 0x00000026u;
|
|
/* 02462D08 */ rbrew_write16(cpu->mem, _t93, (uint16_t)cpu->r[28]);
|
|
/* 02462D0C */ cpu->r[3] = cpu->r[27];
|
|
/* 02462D10 */ _t94 = cpu->r[1] + 0x00000028u;
|
|
/* 02462D10 */ rbrew_write32(cpu->mem, _t94, cpu->r[28]);
|
|
/* 02462D14 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462D18 */ _t95 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462D18 */ rbrew_write16(cpu->mem, _t95, (uint16_t)cpu->r[28]);
|
|
/* 02462D1C */ Gambit_fn_02464290(cpu);
|
|
/* 02462D20 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02462D24 */ _t96 = cpu->r[1] + 0x00000010u;
|
|
/* 02462D24 */ rbrew_write32(cpu->mem, _t96, cpu->r[26]);
|
|
/* 02462D28 */ cpu->r[7] = cpu->r[7] + 0x00003154u;
|
|
/* 02462D2C */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462D2C */ rbrew_write32(cpu->mem, _t97, cpu->r[7]);
|
|
/* 02462D30 */ _t98 = cpu->r[27] + 0x00000014u;
|
|
/* 02462D30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02462D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 02462D38 */ _t99 = cpu->r[27] + 0x00000018u;
|
|
/* 02462D38 */ cpu->r[24] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02462D3C */ _t100 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462D3C */ _t101 = _t100 & 0x00000001u;
|
|
/* 02462D3C */ if (_t101) goto L_02462D40; else goto L_02462D44;
|
|
L_02462D40: ; // 0x2462d40
|
|
/* 02462D40 */ cpu->r[24] = cpu->r[24] + 0x00000048u;
|
|
L_02462D44: ; // 0x2462d44
|
|
/* 02462D44 */ cpu->ctr = cpu->r[25];
|
|
/* 02462D48 */ _t102 = cpu->r[24] + 0x00000000u;
|
|
/* 02462D48 */ cpu->r[23] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02462D4C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462D54 */ _t103 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462D54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02462D58 */ _t104 = cpu->r[8] + 0x00000000u;
|
|
/* 02462D58 */ cpu->r[0] = rbrew_read8(cpu->mem, _t104);
|
|
/* 02462D5C */ cpu->r[31] = 0x00000000u;
|
|
/* 02462D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02462D64 */ cpu->r[10] = 0x00080000u;
|
|
/* 02462D68 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462D68 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02462D68 */ if (_t106) goto L_02462D90; else goto L_02462D6C;
|
|
L_02462D6C: ; // 0x2462d6c
|
|
/* 02462D6C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462D70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02462D74 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02462D78 */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462D78 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02462D78 */ if (_t108) goto L_02462D8C; else goto L_02462D7C;
|
|
L_02462D7C: ; // 0x2462d7c
|
|
/* 02462D7C */ _t109 = cpu->r[8] + 0x00000000u;
|
|
/* 02462D7C */ cpu->r[5] = rbrew_read8(cpu->mem, _t109);
|
|
/* 02462D80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 02462D84 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462D84 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02462D84 */ if (_t111) goto L_02462D88; else goto L_02462D6C;
|
|
L_02462D88: ; // 0x2462d88
|
|
/* 02462D88 */ goto L_02462D90;
|
|
L_02462D8C: ; // 0x2462d8c
|
|
/* 02462D8C */ cpu->r[31] = 0x00000000u;
|
|
L_02462D90: ; // 0x2462d90
|
|
/* 02462D90 */ _t112 = cpu->r[24] + 0x00000008u;
|
|
/* 02462D90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02462D94 */ _t113 = cpu->r[1] + 0x00000010u;
|
|
/* 02462D94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02462D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 02462D9C */ _t114 = cpu->r[7] + 0x00000014u;
|
|
/* 02462D9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02462DA0 */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462DA0 */ _t116 = _t115 & 0x00000001u;
|
|
/* 02462DA0 */ if (_t116) goto L_02462DA8; else goto L_02462DA4;
|
|
L_02462DA4: ; // 0x2462da4
|
|
/* 02462DA4 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02462DA8: ; // 0x2462da8
|
|
/* 02462DA8 */ cpu->ctr = cpu->r[8];
|
|
/* 02462DAC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462DB4 */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462DB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02462DB8 */ cpu->r[3] = cpu->r[23];
|
|
/* 02462DBC */ cpu->r[5] = cpu->r[31];
|
|
/* 02462DC0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462DC4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462DC8 */ _t118 = cpu->r[23] + cpu->r[31];
|
|
/* 02462DC8 */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[30]);
|
|
/* 02462DCC */ cpu->r[0] = 0x00000002u;
|
|
/* 02462DD0 */ _t119 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462DD0 */ rbrew_write16(cpu->mem, _t119, (uint16_t)cpu->r[28]);
|
|
/* 02462DD4 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02462DD8 */ _t120 = cpu->r[1] + 0x00000024u;
|
|
/* 02462DD8 */ rbrew_write16(cpu->mem, _t120, (uint16_t)cpu->r[28]);
|
|
/* 02462DDC */ cpu->r[11] = 0x02460000u;
|
|
/* 02462DE0 */ _t121 = cpu->r[1] + 0x00000016u;
|
|
/* 02462DE0 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[12]);
|
|
/* 02462DE4 */ cpu->r[11] = cpu->r[11] + 0x00003B80u;
|
|
/* 02462DE8 */ _t122 = cpu->r[1] + 0x00000020u;
|
|
/* 02462DE8 */ rbrew_write32(cpu->mem, _t122, cpu->r[28]);
|
|
/* 02462DEC */ _t123 = cpu->r[1] + 0x00000014u;
|
|
/* 02462DEC */ rbrew_write16(cpu->mem, _t123, (uint16_t)cpu->r[28]);
|
|
/* 02462DF0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462DF4 */ _t124 = cpu->r[1] + 0x00000008u;
|
|
/* 02462DF4 */ rbrew_write8(cpu->mem, _t124, (uint8_t)cpu->r[0]);
|
|
/* 02462DF8 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462DFC */ _t125 = cpu->r[1] + 0x00000028u;
|
|
/* 02462DFC */ rbrew_write32(cpu->mem, _t125, cpu->r[28]);
|
|
/* 02462E00 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462E04 */ _t126 = cpu->r[1] + 0x00000026u;
|
|
/* 02462E04 */ rbrew_write16(cpu->mem, _t126, (uint16_t)cpu->r[28]);
|
|
/* 02462E08 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462E0C */ _t127 = cpu->r[1] + 0x00000018u;
|
|
/* 02462E0C */ rbrew_write32(cpu->mem, _t127, cpu->r[11]);
|
|
/* 02462E10 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462E14 */ _t128 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462E14 */ rbrew_write16(cpu->mem, _t128, (uint16_t)cpu->r[28]);
|
|
/* 02462E18 */ Gambit_fn_02464290(cpu);
|
|
/* 02462E1C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462E20 */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 02462E20 */ rbrew_write32(cpu->mem, _t129, cpu->r[26]);
|
|
/* 02462E24 */ cpu->r[0] = cpu->r[0] + 0x00003164u;
|
|
/* 02462E28 */ _t130 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462E28 */ rbrew_write32(cpu->mem, _t130, cpu->r[0]);
|
|
/* 02462E2C */ _t131 = cpu->r[27] + 0x00000014u;
|
|
/* 02462E2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02462E30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 02462E34 */ _t132 = cpu->r[27] + 0x00000018u;
|
|
/* 02462E34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02462E38 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462E38 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02462E38 */ if (_t134) goto L_02462E3C; else goto L_02462E40;
|
|
L_02462E3C: ; // 0x2462e3c
|
|
/* 02462E3C */ cpu->r[31] = cpu->r[31] + 0x0000006Cu;
|
|
L_02462E40: ; // 0x2462e40
|
|
/* 02462E40 */ cpu->ctr = cpu->r[25];
|
|
/* 02462E44 */ _t135 = cpu->r[31] + 0x00000000u;
|
|
/* 02462E44 */ cpu->r[23] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02462E48 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462E50 */ _t136 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462E50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02462E54 */ _t137 = cpu->r[12] + 0x00000000u;
|
|
/* 02462E54 */ cpu->r[8] = rbrew_read8(cpu->mem, _t137);
|
|
/* 02462E58 */ cpu->r[24] = 0x00000000u;
|
|
/* 02462E5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02462E60 */ cpu->r[6] = 0x00080000u;
|
|
/* 02462E64 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462E64 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02462E64 */ if (_t139) goto L_02462E8C; else goto L_02462E68;
|
|
L_02462E68: ; // 0x2462e68
|
|
/* 02462E68 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02462E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[6]);
|
|
/* 02462E70 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02462E74 */ _t140 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462E74 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02462E74 */ if (_t141) goto L_02462E88; else goto L_02462E78;
|
|
L_02462E78: ; // 0x2462e78
|
|
/* 02462E78 */ _t142 = cpu->r[12] + 0x00000000u;
|
|
/* 02462E78 */ cpu->r[0] = rbrew_read8(cpu->mem, _t142);
|
|
/* 02462E7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02462E80 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462E80 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02462E80 */ if (_t144) goto L_02462E84; else goto L_02462E68;
|
|
L_02462E84: ; // 0x2462e84
|
|
/* 02462E84 */ goto L_02462E8C;
|
|
L_02462E88: ; // 0x2462e88
|
|
/* 02462E88 */ cpu->r[24] = 0x00000000u;
|
|
L_02462E8C: ; // 0x2462e8c
|
|
/* 02462E8C */ _t145 = cpu->r[31] + 0x00000008u;
|
|
/* 02462E8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02462E90 */ _t146 = cpu->r[1] + 0x00000010u;
|
|
/* 02462E90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02462E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[11]);
|
|
/* 02462E98 */ _t147 = cpu->r[12] + 0x00000014u;
|
|
/* 02462E98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02462E9C */ _t148 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462E9C */ _t149 = _t148 & 0x00000001u;
|
|
/* 02462E9C */ if (_t149) goto L_02462EA4; else goto L_02462EA0;
|
|
L_02462EA0: ; // 0x2462ea0
|
|
/* 02462EA0 */ cpu->r[24] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02462EA4: ; // 0x2462ea4
|
|
/* 02462EA4 */ cpu->ctr = cpu->r[6];
|
|
/* 02462EA8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462EAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462EB0 */ _t150 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462EB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02462EB4 */ cpu->r[3] = cpu->r[23];
|
|
/* 02462EB8 */ cpu->r[5] = cpu->r[24];
|
|
/* 02462EBC */ cpu->r[6] = 0x00000000u;
|
|
/* 02462EC0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462EC4 */ _t151 = cpu->r[23] + cpu->r[24];
|
|
/* 02462EC4 */ rbrew_write8(cpu->mem, _t151, (uint8_t)cpu->r[30]);
|
|
/* 02462EC8 */ cpu->r[0] = 0x00000003u;
|
|
/* 02462ECC */ _t152 = cpu->r[1] + 0x00000014u;
|
|
/* 02462ECC */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[28]);
|
|
/* 02462ED0 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02462ED4 */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 02462ED4 */ rbrew_write8(cpu->mem, _t153, (uint8_t)cpu->r[0]);
|
|
/* 02462ED8 */ cpu->r[7] = 0x02460000u;
|
|
/* 02462EDC */ _t154 = cpu->r[1] + 0x00000028u;
|
|
/* 02462EDC */ rbrew_write32(cpu->mem, _t154, cpu->r[28]);
|
|
/* 02462EE0 */ cpu->r[7] = cpu->r[7] + 0x00003FDCu;
|
|
/* 02462EE4 */ _t155 = cpu->r[1] + 0x00000024u;
|
|
/* 02462EE4 */ rbrew_write16(cpu->mem, _t155, (uint16_t)cpu->r[28]);
|
|
/* 02462EE8 */ _t156 = cpu->r[1] + 0x00000018u;
|
|
/* 02462EE8 */ rbrew_write32(cpu->mem, _t156, cpu->r[7]);
|
|
/* 02462EEC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462EF0 */ _t157 = cpu->r[1] + 0x00000026u;
|
|
/* 02462EF0 */ rbrew_write16(cpu->mem, _t157, (uint16_t)cpu->r[28]);
|
|
/* 02462EF4 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462EF8 */ _t158 = cpu->r[1] + 0x00000020u;
|
|
/* 02462EF8 */ rbrew_write32(cpu->mem, _t158, cpu->r[28]);
|
|
/* 02462EFC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462F00 */ _t159 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462F00 */ rbrew_write16(cpu->mem, _t159, (uint16_t)cpu->r[28]);
|
|
/* 02462F04 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462F08 */ _t160 = cpu->r[1] + 0x00000016u;
|
|
/* 02462F08 */ rbrew_write16(cpu->mem, _t160, (uint16_t)cpu->r[12]);
|
|
/* 02462F0C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462F10 */ _t161 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462F10 */ rbrew_write16(cpu->mem, _t161, (uint16_t)cpu->r[28]);
|
|
/* 02462F14 */ Gambit_fn_02464290(cpu);
|
|
/* 02462F18 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02462F1C */ _t162 = cpu->r[1] + 0x00000010u;
|
|
/* 02462F1C */ rbrew_write32(cpu->mem, _t162, cpu->r[26]);
|
|
/* 02462F20 */ cpu->r[8] = cpu->r[8] + 0x00003110u;
|
|
/* 02462F24 */ _t163 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462F24 */ rbrew_write32(cpu->mem, _t163, cpu->r[8]);
|
|
/* 02462F28 */ _t164 = cpu->r[27] + 0x00000014u;
|
|
/* 02462F28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02462F2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000004u);
|
|
/* 02462F30 */ _t165 = cpu->r[27] + 0x00000018u;
|
|
/* 02462F30 */ cpu->r[26] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02462F34 */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462F34 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02462F34 */ if (_t167) goto L_02462F38; else goto L_02462F3C;
|
|
L_02462F38: ; // 0x2462f38
|
|
/* 02462F38 */ cpu->r[26] = cpu->r[26] + 0x00000090u;
|
|
L_02462F3C: ; // 0x2462f3c
|
|
/* 02462F3C */ cpu->ctr = cpu->r[25];
|
|
/* 02462F40 */ _t168 = cpu->r[26] + 0x00000000u;
|
|
/* 02462F40 */ cpu->r[24] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02462F44 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462F48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462F4C */ _t169 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462F4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02462F50 */ _t170 = cpu->r[8] + 0x00000000u;
|
|
/* 02462F50 */ cpu->r[11] = rbrew_read8(cpu->mem, _t170);
|
|
/* 02462F54 */ cpu->r[31] = 0x00000000u;
|
|
/* 02462F58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02462F5C */ cpu->r[10] = 0x00080000u;
|
|
/* 02462F60 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462F60 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02462F60 */ if (_t172) goto L_02462F88; else goto L_02462F64;
|
|
L_02462F64: ; // 0x2462f64
|
|
/* 02462F64 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02462F6C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02462F70 */ _t173 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462F70 */ _t174 = _t173 & 0x00000001u;
|
|
/* 02462F70 */ if (_t174) goto L_02462F84; else goto L_02462F74;
|
|
L_02462F74: ; // 0x2462f74
|
|
/* 02462F74 */ _t175 = cpu->r[8] + 0x00000000u;
|
|
/* 02462F74 */ cpu->r[11] = rbrew_read8(cpu->mem, _t175);
|
|
/* 02462F78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02462F7C */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462F7C */ _t177 = _t176 & 0x00000001u;
|
|
/* 02462F7C */ if (_t177) goto L_02462F80; else goto L_02462F64;
|
|
L_02462F80: ; // 0x2462f80
|
|
/* 02462F80 */ goto L_02462F88;
|
|
L_02462F84: ; // 0x2462f84
|
|
/* 02462F84 */ cpu->r[31] = 0x00000000u;
|
|
L_02462F88: ; // 0x2462f88
|
|
/* 02462F88 */ _t178 = cpu->r[26] + 0x00000008u;
|
|
/* 02462F88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02462F8C */ _t179 = cpu->r[1] + 0x00000010u;
|
|
/* 02462F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t179);
|
|
/* 02462F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 02462F94 */ _t180 = cpu->r[12] + 0x00000014u;
|
|
/* 02462F94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02462F98 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462F98 */ _t182 = _t181 & 0x00000001u;
|
|
/* 02462F98 */ if (_t182) goto L_02462FA0; else goto L_02462F9C;
|
|
L_02462F9C: ; // 0x2462f9c
|
|
/* 02462F9C */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02462FA0: ; // 0x2462fa0
|
|
/* 02462FA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02462FA4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462FA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462FAC */ _t183 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462FAC */ cpu->r[4] = rbrew_read32(cpu->mem, _t183);
|
|
/* 02462FB0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462FB4 */ cpu->r[5] = cpu->r[31];
|
|
/* 02462FB8 */ cpu->r[3] = cpu->r[24];
|
|
/* 02462FBC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462FC0 */ _t184 = cpu->r[24] + cpu->r[31];
|
|
/* 02462FC0 */ rbrew_write8(cpu->mem, _t184, (uint8_t)cpu->r[30]);
|
|
/* 02462FC4 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 02462FC8 */ _t185 = cpu->r[1] + 0x00000020u;
|
|
/* 02462FC8 */ rbrew_write32(cpu->mem, _t185, cpu->r[28]);
|
|
/* 02462FCC */ cpu->r[9] = 0x00000004u;
|
|
/* 02462FD0 */ _t186 = cpu->r[1] + 0x00000016u;
|
|
/* 02462FD0 */ rbrew_write16(cpu->mem, _t186, (uint16_t)cpu->r[7]);
|
|
/* 02462FD4 */ cpu->r[8] = 0x02460000u;
|
|
/* 02462FD8 */ _t187 = cpu->r[1] + 0x00000014u;
|
|
/* 02462FD8 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 02462FDC */ cpu->r[8] = cpu->r[8] + 0x00003C0Cu;
|
|
/* 02462FE0 */ _t188 = cpu->r[1] + 0x00000008u;
|
|
/* 02462FE0 */ rbrew_write8(cpu->mem, _t188, (uint8_t)cpu->r[9]);
|
|
/* 02462FE4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462FE8 */ _t189 = cpu->r[1] + 0x00000018u;
|
|
/* 02462FE8 */ rbrew_write32(cpu->mem, _t189, cpu->r[8]);
|
|
/* 02462FEC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462FF0 */ _t190 = cpu->r[1] + 0x00000028u;
|
|
/* 02462FF0 */ rbrew_write32(cpu->mem, _t190, cpu->r[28]);
|
|
/* 02462FF4 */ _t191 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462FF4 */ rbrew_write16(cpu->mem, _t191, (uint16_t)cpu->r[28]);
|
|
/* 02462FF8 */ _t192 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462FF8 */ rbrew_write16(cpu->mem, _t192, (uint16_t)cpu->r[28]);
|
|
/* 02462FFC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02463000 */ _t193 = cpu->r[1] + 0x00000024u;
|
|
/* 02463000 */ rbrew_write16(cpu->mem, _t193, (uint16_t)cpu->r[28]);
|
|
/* 02463004 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463008 */ cpu->r[3] = cpu->r[27];
|
|
/* 0246300C */ _t194 = cpu->r[1] + 0x00000026u;
|
|
/* 0246300C */ rbrew_write16(cpu->mem, _t194, (uint16_t)cpu->r[28]);
|
|
/* 02463010 */ Gambit_fn_02464290(cpu);
|
|
/* 02463014 */ _t195 = cpu->r[29] + 0x000001B8u;
|
|
/* 02463014 */ rbrew_write32(cpu->mem, _t195, cpu->r[27]);
|
|
L_02463018: ; // 0x2463018
|
|
/* 02463018 */ cpu->r[3] = cpu->r[29];
|
|
/* 0246301C */ /* nop */
|
|
/* 02463020 */ _t196 = cpu->r[1] + 0x00000054u;
|
|
/* 02463020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02463024 */ cpu->lr = cpu->r[0];
|
|
/* 02463028 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0246302C */ return;
|
|
}
|
|
|
|
// fn_02462A20 @ 0x2462a20
|
|
void Gambit_fn_02462A20(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;
|
|
|
|
L_02462A20: ; // 0x2462a20
|
|
/* 02462A20 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02462A20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02462A20 */ cpu->r[1] = _t0;
|
|
/* 02462A24 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02462A24 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02462A28 */ /* nop */
|
|
/* 02462A2C */ cpu->r[29] = cpu->r[3];
|
|
/* 02462A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02462A30 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462A30 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02462A30 */ if (_t3) goto L_02462A34; else goto L_02462A44;
|
|
L_02462A34: ; // 0x2462a34
|
|
/* 02462A34 */ cpu->r[3] = 0x0000026Cu;
|
|
/* 02462A38 */ Gambit_fn_02801A78(cpu);
|
|
/* 02462A3C */ cpu->r[29] = cpu->r[3];
|
|
/* 02462A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02462A40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462A40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02462A40 */ if (_t5) goto L_02463018; else goto L_02462A44;
|
|
L_02462A44: ; // 0x2462a44
|
|
/* 02462A44 */ cpu->r[26] = 0x100A0000u;
|
|
/* 02462A48 */ cpu->r[3] = cpu->r[29];
|
|
/* 02462A4C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02462A50 */ cpu->r[26] = cpu->r[26] + 0x00003060u;
|
|
/* 02462A54 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462A58 */ cpu->r[10] = cpu->r[10] + 0x00003130u;
|
|
/* 02462A5C */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02462A5C */ rbrew_write32(cpu->mem, _t6, cpu->r[26]);
|
|
/* 02462A60 */ cpu->r[5] = 0x00000001u;
|
|
/* 02462A64 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462A64 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 02462A68 */ Gambit_fn_02068860(cpu);
|
|
/* 02462A6C */ cpu->r[5] = 0x100A0000u;
|
|
/* 02462A70 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02462A74 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462A78 */ cpu->r[5] = cpu->r[5] + 0x00003254u;
|
|
/* 02462A7C */ cpu->r[7] = cpu->r[7] + 0x000033B4u;
|
|
/* 02462A80 */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 02462A80 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02462A84 */ cpu->r[0] = cpu->r[0] + 0x000033C4u;
|
|
/* 02462A88 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02462A8C */ _t9 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02462A8C */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02462A90 */ cpu->r[27] = cpu->r[29] + 0x000001DCu;
|
|
/* 02462A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02462A94 */ cpu->r[10] = cpu->r[10] + 0x000033D4u;
|
|
/* 02462A98 */ _t10 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02462A98 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02462A9C */ cpu->r[31] = cpu->r[27];
|
|
/* 02462AA0 */ cpu->r[28] = 0x00000000u;
|
|
/* 02462AA4 */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 02462AA4 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02462AA8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462AA8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02462AA8 */ if (_t13) goto L_02462AAC; else goto L_02462ABC;
|
|
L_02462AAC: ; // 0x2462aac
|
|
/* 02462AAC */ cpu->r[3] = 0x00000038u;
|
|
/* 02462AB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02462AB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02462AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02462AB8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462AB8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02462AB8 */ if (_t15) goto L_02462AEC; else goto L_02462ABC;
|
|
L_02462ABC: ; // 0x2462abc
|
|
/* 02462ABC */ cpu->r[3] = cpu->r[31];
|
|
/* 02462AC0 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02462AC4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462AC8 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 02462AC8 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02462ACC */ cpu->r[0] = cpu->r[0] + 0x00003224u;
|
|
/* 02462AD0 */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 02462AD0 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02462AD4 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02462AD4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02462AD8 */ _t19 = cpu->r[31] + 0x00000024u;
|
|
/* 02462AD8 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02462ADC */ _t20 = cpu->r[31] + 0x00000028u;
|
|
/* 02462ADC */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 02462AE0 */ _t21 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02462AE0 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02462AE4 */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02462AE4 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 02462AE8 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 02462AE8 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
L_02462AEC: ; // 0x2462aec
|
|
/* 02462AEC */ _t24 = cpu->r[29] + 0x00000214u;
|
|
/* 02462AEC */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 02462AF0 */ cpu->r[12] = 0x0000005Au;
|
|
/* 02462AF4 */ _t25 = cpu->r[29] + 0x00000258u;
|
|
/* 02462AF4 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 02462AF8 */ cpu->r[0] = 0x00000005u;
|
|
/* 02462AFC */ _t26 = cpu->r[29] + 0x00000264u;
|
|
/* 02462AFC */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02462B00 */ cpu->r[4] = cpu->r[29];
|
|
/* 02462B04 */ _t27 = cpu->r[29] + 0x00000268u;
|
|
/* 02462B04 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 02462B08 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462B0C */ _t28 = cpu->r[29] + 0x00000254u;
|
|
/* 02462B0C */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 02462B10 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02462B14 */ _t29 = cpu->r[29] + 0x00000260u;
|
|
/* 02462B14 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 02462B18 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462B1C */ _t30 = cpu->r[29] + 0x0000025Cu;
|
|
/* 02462B1C */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02462B20 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02462B20 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 02462B24 */ Gambit_fn_02463FE0(cpu);
|
|
/* 02462B28 */ cpu->r[25] = 0x02460000u;
|
|
/* 02462B2C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462B30 */ cpu->r[25] = cpu->r[25] + 0x00003E38u;
|
|
/* 02462B34 */ cpu->r[0] = cpu->r[0] + 0x00003120u;
|
|
/* 02462B38 */ cpu->ctr = cpu->r[25];
|
|
/* 02462B3C */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462B3C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 02462B40 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02462B40 */ rbrew_write32(cpu->mem, _t33, cpu->r[26]);
|
|
/* 02462B44 */ _t34 = cpu->r[27] + 0x00000018u;
|
|
/* 02462B44 */ cpu->r[23] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02462B48 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462B4C */ _t35 = cpu->r[23] + 0x00000000u;
|
|
/* 02462B4C */ cpu->r[24] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02462B50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462B54 */ cpu->r[30] = 0x10110000u;
|
|
/* 02462B58 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462B58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02462B5C */ _t37 = cpu->r[30] + 0x00007399u;
|
|
/* 02462B5C */ cpu->r[30] = rbrew_read8(cpu->mem, _t37);
|
|
/* 02462B60 */ _t38 = cpu->r[9] + 0x00000000u;
|
|
/* 02462B60 */ cpu->r[7] = rbrew_read8(cpu->mem, _t38);
|
|
/* 02462B64 */ cpu->r[31] = 0x00000000u;
|
|
/* 02462B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02462B6C */ cpu->r[10] = 0x00080000u;
|
|
/* 02462B70 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462B70 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02462B70 */ if (_t40) goto L_02462B98; else goto L_02462B74;
|
|
L_02462B74: ; // 0x2462b74
|
|
/* 02462B74 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02462B7C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02462B80 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462B80 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02462B80 */ if (_t42) goto L_02462B94; else goto L_02462B84;
|
|
L_02462B84: ; // 0x2462b84
|
|
/* 02462B84 */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 02462B84 */ cpu->r[8] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02462B88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02462B8C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462B8C */ _t45 = _t44 & 0x00000001u;
|
|
/* 02462B8C */ if (_t45) goto L_02462B90; else goto L_02462B74;
|
|
L_02462B90: ; // 0x2462b90
|
|
/* 02462B90 */ goto L_02462B98;
|
|
L_02462B94: ; // 0x2462b94
|
|
/* 02462B94 */ cpu->r[31] = 0x00000000u;
|
|
L_02462B98: ; // 0x2462b98
|
|
/* 02462B98 */ _t46 = cpu->r[23] + 0x00000008u;
|
|
/* 02462B98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02462B9C */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 02462B9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02462BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02462BA4 */ _t48 = cpu->r[10] + 0x00000014u;
|
|
/* 02462BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02462BA8 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462BA8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02462BA8 */ if (_t50) goto L_02462BB0; else goto L_02462BAC;
|
|
L_02462BAC: ; // 0x2462bac
|
|
/* 02462BAC */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02462BB0: ; // 0x2462bb0
|
|
/* 02462BB0 */ cpu->ctr = cpu->r[0];
|
|
/* 02462BB4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462BB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462BBC */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462BBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02462BC0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462BC4 */ cpu->r[5] = cpu->r[31];
|
|
/* 02462BC8 */ cpu->r[3] = cpu->r[24];
|
|
/* 02462BCC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462BD0 */ _t52 = cpu->r[24] + cpu->r[31];
|
|
/* 02462BD0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[30]);
|
|
/* 02462BD4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02462BD8 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462BD8 */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[28]);
|
|
/* 02462BDC */ cpu->r[6] = 0x00000000u;
|
|
/* 02462BE0 */ _t54 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462BE0 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[8]);
|
|
/* 02462BE4 */ cpu->r[0] = 0x02460000u;
|
|
/* 02462BE8 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 02462BE8 */ rbrew_write32(cpu->mem, _t55, cpu->r[28]);
|
|
/* 02462BEC */ cpu->r[0] = cpu->r[0] + 0x00003FD8u;
|
|
/* 02462BF0 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02462BF0 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[6]);
|
|
/* 02462BF4 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 02462BF4 */ rbrew_write32(cpu->mem, _t57, cpu->r[28]);
|
|
/* 02462BF8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462BFC */ _t58 = cpu->r[1] + 0x00000020u;
|
|
/* 02462BFC */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 02462C00 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02462C04 */ _t59 = cpu->r[1] + 0x00000026u;
|
|
/* 02462C04 */ rbrew_write16(cpu->mem, _t59, (uint16_t)cpu->r[28]);
|
|
/* 02462C08 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462C0C */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 02462C0C */ rbrew_write16(cpu->mem, _t60, (uint16_t)cpu->r[28]);
|
|
/* 02462C10 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462C14 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 02462C14 */ rbrew_write16(cpu->mem, _t61, (uint16_t)cpu->r[28]);
|
|
/* 02462C18 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462C1C */ _t62 = cpu->r[1] + 0x00000016u;
|
|
/* 02462C1C */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[28]);
|
|
/* 02462C20 */ Gambit_fn_02464290(cpu);
|
|
/* 02462C24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462C28 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 02462C28 */ rbrew_write32(cpu->mem, _t63, cpu->r[26]);
|
|
/* 02462C2C */ cpu->r[0] = cpu->r[0] + 0x00003140u;
|
|
/* 02462C30 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462C30 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 02462C34 */ _t65 = cpu->r[27] + 0x00000014u;
|
|
/* 02462C34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02462C38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 02462C3C */ _t66 = cpu->r[27] + 0x00000018u;
|
|
/* 02462C3C */ cpu->r[24] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02462C40 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462C40 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02462C40 */ if (_t68) goto L_02462C44; else goto L_02462C48;
|
|
L_02462C44: ; // 0x2462c44
|
|
/* 02462C44 */ cpu->r[24] = cpu->r[24] + 0x00000024u;
|
|
L_02462C48: ; // 0x2462c48
|
|
/* 02462C48 */ cpu->ctr = cpu->r[25];
|
|
/* 02462C4C */ _t69 = cpu->r[24] + 0x00000000u;
|
|
/* 02462C4C */ cpu->r[23] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02462C50 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462C58 */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462C58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02462C5C */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 02462C5C */ cpu->r[6] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02462C60 */ cpu->r[31] = 0x00000000u;
|
|
/* 02462C64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02462C68 */ cpu->r[6] = 0x00080000u;
|
|
/* 02462C6C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462C6C */ _t73 = _t72 & 0x00000001u;
|
|
/* 02462C6C */ if (_t73) goto L_02462C94; else goto L_02462C70;
|
|
L_02462C70: ; // 0x2462c70
|
|
/* 02462C70 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02462C78 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02462C7C */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462C7C */ _t75 = _t74 & 0x00000001u;
|
|
/* 02462C7C */ if (_t75) goto L_02462C90; else goto L_02462C80;
|
|
L_02462C80: ; // 0x2462c80
|
|
/* 02462C80 */ _t76 = cpu->r[12] + 0x00000000u;
|
|
/* 02462C80 */ cpu->r[7] = rbrew_read8(cpu->mem, _t76);
|
|
/* 02462C84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02462C88 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462C88 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02462C88 */ if (_t78) goto L_02462C8C; else goto L_02462C70;
|
|
L_02462C8C: ; // 0x2462c8c
|
|
/* 02462C8C */ goto L_02462C94;
|
|
L_02462C90: ; // 0x2462c90
|
|
/* 02462C90 */ cpu->r[31] = 0x00000000u;
|
|
L_02462C94: ; // 0x2462c94
|
|
/* 02462C94 */ _t79 = cpu->r[24] + 0x00000008u;
|
|
/* 02462C94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02462C98 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 02462C98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02462C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 02462CA0 */ _t81 = cpu->r[9] + 0x00000014u;
|
|
/* 02462CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02462CA4 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462CA4 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02462CA4 */ if (_t83) goto L_02462CAC; else goto L_02462CA8;
|
|
L_02462CA8: ; // 0x2462ca8
|
|
/* 02462CA8 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02462CAC: ; // 0x2462cac
|
|
/* 02462CAC */ cpu->ctr = cpu->r[0];
|
|
/* 02462CB0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462CB8 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462CB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02462CBC */ cpu->r[3] = cpu->r[23];
|
|
/* 02462CC0 */ cpu->r[5] = cpu->r[31];
|
|
/* 02462CC4 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462CC8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462CCC */ _t85 = cpu->r[23] + cpu->r[31];
|
|
/* 02462CCC */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[30]);
|
|
/* 02462CD0 */ cpu->r[0] = 0x02460000u;
|
|
/* 02462CD4 */ _t86 = cpu->r[1] + 0x00000020u;
|
|
/* 02462CD4 */ rbrew_write32(cpu->mem, _t86, cpu->r[28]);
|
|
/* 02462CD8 */ cpu->r[0] = cpu->r[0] + 0x00003B34u;
|
|
/* 02462CDC */ _t87 = cpu->r[1] + 0x00000024u;
|
|
/* 02462CDC */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[28]);
|
|
/* 02462CE0 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 02462CE4 */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 02462CE4 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 02462CE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02462CEC */ _t89 = cpu->r[1] + 0x00000016u;
|
|
/* 02462CEC */ rbrew_write16(cpu->mem, _t89, (uint16_t)cpu->r[5]);
|
|
/* 02462CF0 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 02462CF0 */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[0]);
|
|
/* 02462CF4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462CF8 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462CF8 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[28]);
|
|
/* 02462CFC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462D00 */ _t92 = cpu->r[1] + 0x00000014u;
|
|
/* 02462D00 */ rbrew_write16(cpu->mem, _t92, (uint16_t)cpu->r[28]);
|
|
/* 02462D04 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462D08 */ _t93 = cpu->r[1] + 0x00000026u;
|
|
/* 02462D08 */ rbrew_write16(cpu->mem, _t93, (uint16_t)cpu->r[28]);
|
|
/* 02462D0C */ cpu->r[3] = cpu->r[27];
|
|
/* 02462D10 */ _t94 = cpu->r[1] + 0x00000028u;
|
|
/* 02462D10 */ rbrew_write32(cpu->mem, _t94, cpu->r[28]);
|
|
/* 02462D14 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462D18 */ _t95 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462D18 */ rbrew_write16(cpu->mem, _t95, (uint16_t)cpu->r[28]);
|
|
/* 02462D1C */ Gambit_fn_02464290(cpu);
|
|
/* 02462D20 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02462D24 */ _t96 = cpu->r[1] + 0x00000010u;
|
|
/* 02462D24 */ rbrew_write32(cpu->mem, _t96, cpu->r[26]);
|
|
/* 02462D28 */ cpu->r[7] = cpu->r[7] + 0x00003154u;
|
|
/* 02462D2C */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462D2C */ rbrew_write32(cpu->mem, _t97, cpu->r[7]);
|
|
/* 02462D30 */ _t98 = cpu->r[27] + 0x00000014u;
|
|
/* 02462D30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02462D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 02462D38 */ _t99 = cpu->r[27] + 0x00000018u;
|
|
/* 02462D38 */ cpu->r[24] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02462D3C */ _t100 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462D3C */ _t101 = _t100 & 0x00000001u;
|
|
/* 02462D3C */ if (_t101) goto L_02462D40; else goto L_02462D44;
|
|
L_02462D40: ; // 0x2462d40
|
|
/* 02462D40 */ cpu->r[24] = cpu->r[24] + 0x00000048u;
|
|
L_02462D44: ; // 0x2462d44
|
|
/* 02462D44 */ cpu->ctr = cpu->r[25];
|
|
/* 02462D48 */ _t102 = cpu->r[24] + 0x00000000u;
|
|
/* 02462D48 */ cpu->r[23] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02462D4C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462D54 */ _t103 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462D54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02462D58 */ _t104 = cpu->r[8] + 0x00000000u;
|
|
/* 02462D58 */ cpu->r[0] = rbrew_read8(cpu->mem, _t104);
|
|
/* 02462D5C */ cpu->r[31] = 0x00000000u;
|
|
/* 02462D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02462D64 */ cpu->r[10] = 0x00080000u;
|
|
/* 02462D68 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462D68 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02462D68 */ if (_t106) goto L_02462D90; else goto L_02462D6C;
|
|
L_02462D6C: ; // 0x2462d6c
|
|
/* 02462D6C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462D70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02462D74 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02462D78 */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462D78 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02462D78 */ if (_t108) goto L_02462D8C; else goto L_02462D7C;
|
|
L_02462D7C: ; // 0x2462d7c
|
|
/* 02462D7C */ _t109 = cpu->r[8] + 0x00000000u;
|
|
/* 02462D7C */ cpu->r[5] = rbrew_read8(cpu->mem, _t109);
|
|
/* 02462D80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 02462D84 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462D84 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02462D84 */ if (_t111) goto L_02462D88; else goto L_02462D6C;
|
|
L_02462D88: ; // 0x2462d88
|
|
/* 02462D88 */ goto L_02462D90;
|
|
L_02462D8C: ; // 0x2462d8c
|
|
/* 02462D8C */ cpu->r[31] = 0x00000000u;
|
|
L_02462D90: ; // 0x2462d90
|
|
/* 02462D90 */ _t112 = cpu->r[24] + 0x00000008u;
|
|
/* 02462D90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02462D94 */ _t113 = cpu->r[1] + 0x00000010u;
|
|
/* 02462D94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02462D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 02462D9C */ _t114 = cpu->r[7] + 0x00000014u;
|
|
/* 02462D9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02462DA0 */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462DA0 */ _t116 = _t115 & 0x00000001u;
|
|
/* 02462DA0 */ if (_t116) goto L_02462DA8; else goto L_02462DA4;
|
|
L_02462DA4: ; // 0x2462da4
|
|
/* 02462DA4 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02462DA8: ; // 0x2462da8
|
|
/* 02462DA8 */ cpu->ctr = cpu->r[8];
|
|
/* 02462DAC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462DB4 */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462DB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02462DB8 */ cpu->r[3] = cpu->r[23];
|
|
/* 02462DBC */ cpu->r[5] = cpu->r[31];
|
|
/* 02462DC0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462DC4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462DC8 */ _t118 = cpu->r[23] + cpu->r[31];
|
|
/* 02462DC8 */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[30]);
|
|
/* 02462DCC */ cpu->r[0] = 0x00000002u;
|
|
/* 02462DD0 */ _t119 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462DD0 */ rbrew_write16(cpu->mem, _t119, (uint16_t)cpu->r[28]);
|
|
/* 02462DD4 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02462DD8 */ _t120 = cpu->r[1] + 0x00000024u;
|
|
/* 02462DD8 */ rbrew_write16(cpu->mem, _t120, (uint16_t)cpu->r[28]);
|
|
/* 02462DDC */ cpu->r[11] = 0x02460000u;
|
|
/* 02462DE0 */ _t121 = cpu->r[1] + 0x00000016u;
|
|
/* 02462DE0 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[12]);
|
|
/* 02462DE4 */ cpu->r[11] = cpu->r[11] + 0x00003B80u;
|
|
/* 02462DE8 */ _t122 = cpu->r[1] + 0x00000020u;
|
|
/* 02462DE8 */ rbrew_write32(cpu->mem, _t122, cpu->r[28]);
|
|
/* 02462DEC */ _t123 = cpu->r[1] + 0x00000014u;
|
|
/* 02462DEC */ rbrew_write16(cpu->mem, _t123, (uint16_t)cpu->r[28]);
|
|
/* 02462DF0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462DF4 */ _t124 = cpu->r[1] + 0x00000008u;
|
|
/* 02462DF4 */ rbrew_write8(cpu->mem, _t124, (uint8_t)cpu->r[0]);
|
|
/* 02462DF8 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462DFC */ _t125 = cpu->r[1] + 0x00000028u;
|
|
/* 02462DFC */ rbrew_write32(cpu->mem, _t125, cpu->r[28]);
|
|
/* 02462E00 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462E04 */ _t126 = cpu->r[1] + 0x00000026u;
|
|
/* 02462E04 */ rbrew_write16(cpu->mem, _t126, (uint16_t)cpu->r[28]);
|
|
/* 02462E08 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462E0C */ _t127 = cpu->r[1] + 0x00000018u;
|
|
/* 02462E0C */ rbrew_write32(cpu->mem, _t127, cpu->r[11]);
|
|
/* 02462E10 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462E14 */ _t128 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462E14 */ rbrew_write16(cpu->mem, _t128, (uint16_t)cpu->r[28]);
|
|
/* 02462E18 */ Gambit_fn_02464290(cpu);
|
|
/* 02462E1C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02462E20 */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 02462E20 */ rbrew_write32(cpu->mem, _t129, cpu->r[26]);
|
|
/* 02462E24 */ cpu->r[0] = cpu->r[0] + 0x00003164u;
|
|
/* 02462E28 */ _t130 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462E28 */ rbrew_write32(cpu->mem, _t130, cpu->r[0]);
|
|
/* 02462E2C */ _t131 = cpu->r[27] + 0x00000014u;
|
|
/* 02462E2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02462E30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 02462E34 */ _t132 = cpu->r[27] + 0x00000018u;
|
|
/* 02462E34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02462E38 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462E38 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02462E38 */ if (_t134) goto L_02462E3C; else goto L_02462E40;
|
|
L_02462E3C: ; // 0x2462e3c
|
|
/* 02462E3C */ cpu->r[31] = cpu->r[31] + 0x0000006Cu;
|
|
L_02462E40: ; // 0x2462e40
|
|
/* 02462E40 */ cpu->ctr = cpu->r[25];
|
|
/* 02462E44 */ _t135 = cpu->r[31] + 0x00000000u;
|
|
/* 02462E44 */ cpu->r[23] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02462E48 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462E50 */ _t136 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462E50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02462E54 */ _t137 = cpu->r[12] + 0x00000000u;
|
|
/* 02462E54 */ cpu->r[8] = rbrew_read8(cpu->mem, _t137);
|
|
/* 02462E58 */ cpu->r[24] = 0x00000000u;
|
|
/* 02462E5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02462E60 */ cpu->r[6] = 0x00080000u;
|
|
/* 02462E64 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462E64 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02462E64 */ if (_t139) goto L_02462E8C; else goto L_02462E68;
|
|
L_02462E68: ; // 0x2462e68
|
|
/* 02462E68 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02462E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[6]);
|
|
/* 02462E70 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02462E74 */ _t140 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462E74 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02462E74 */ if (_t141) goto L_02462E88; else goto L_02462E78;
|
|
L_02462E78: ; // 0x2462e78
|
|
/* 02462E78 */ _t142 = cpu->r[12] + 0x00000000u;
|
|
/* 02462E78 */ cpu->r[0] = rbrew_read8(cpu->mem, _t142);
|
|
/* 02462E7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02462E80 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462E80 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02462E80 */ if (_t144) goto L_02462E84; else goto L_02462E68;
|
|
L_02462E84: ; // 0x2462e84
|
|
/* 02462E84 */ goto L_02462E8C;
|
|
L_02462E88: ; // 0x2462e88
|
|
/* 02462E88 */ cpu->r[24] = 0x00000000u;
|
|
L_02462E8C: ; // 0x2462e8c
|
|
/* 02462E8C */ _t145 = cpu->r[31] + 0x00000008u;
|
|
/* 02462E8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02462E90 */ _t146 = cpu->r[1] + 0x00000010u;
|
|
/* 02462E90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02462E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[11]);
|
|
/* 02462E98 */ _t147 = cpu->r[12] + 0x00000014u;
|
|
/* 02462E98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02462E9C */ _t148 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462E9C */ _t149 = _t148 & 0x00000001u;
|
|
/* 02462E9C */ if (_t149) goto L_02462EA4; else goto L_02462EA0;
|
|
L_02462EA0: ; // 0x2462ea0
|
|
/* 02462EA0 */ cpu->r[24] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02462EA4: ; // 0x2462ea4
|
|
/* 02462EA4 */ cpu->ctr = cpu->r[6];
|
|
/* 02462EA8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462EAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462EB0 */ _t150 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462EB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02462EB4 */ cpu->r[3] = cpu->r[23];
|
|
/* 02462EB8 */ cpu->r[5] = cpu->r[24];
|
|
/* 02462EBC */ cpu->r[6] = 0x00000000u;
|
|
/* 02462EC0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462EC4 */ _t151 = cpu->r[23] + cpu->r[24];
|
|
/* 02462EC4 */ rbrew_write8(cpu->mem, _t151, (uint8_t)cpu->r[30]);
|
|
/* 02462EC8 */ cpu->r[0] = 0x00000003u;
|
|
/* 02462ECC */ _t152 = cpu->r[1] + 0x00000014u;
|
|
/* 02462ECC */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[28]);
|
|
/* 02462ED0 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02462ED4 */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 02462ED4 */ rbrew_write8(cpu->mem, _t153, (uint8_t)cpu->r[0]);
|
|
/* 02462ED8 */ cpu->r[7] = 0x02460000u;
|
|
/* 02462EDC */ _t154 = cpu->r[1] + 0x00000028u;
|
|
/* 02462EDC */ rbrew_write32(cpu->mem, _t154, cpu->r[28]);
|
|
/* 02462EE0 */ cpu->r[7] = cpu->r[7] + 0x00003FDCu;
|
|
/* 02462EE4 */ _t155 = cpu->r[1] + 0x00000024u;
|
|
/* 02462EE4 */ rbrew_write16(cpu->mem, _t155, (uint16_t)cpu->r[28]);
|
|
/* 02462EE8 */ _t156 = cpu->r[1] + 0x00000018u;
|
|
/* 02462EE8 */ rbrew_write32(cpu->mem, _t156, cpu->r[7]);
|
|
/* 02462EEC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02462EF0 */ _t157 = cpu->r[1] + 0x00000026u;
|
|
/* 02462EF0 */ rbrew_write16(cpu->mem, _t157, (uint16_t)cpu->r[28]);
|
|
/* 02462EF4 */ cpu->r[3] = cpu->r[27];
|
|
/* 02462EF8 */ _t158 = cpu->r[1] + 0x00000020u;
|
|
/* 02462EF8 */ rbrew_write32(cpu->mem, _t158, cpu->r[28]);
|
|
/* 02462EFC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462F00 */ _t159 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462F00 */ rbrew_write16(cpu->mem, _t159, (uint16_t)cpu->r[28]);
|
|
/* 02462F04 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462F08 */ _t160 = cpu->r[1] + 0x00000016u;
|
|
/* 02462F08 */ rbrew_write16(cpu->mem, _t160, (uint16_t)cpu->r[12]);
|
|
/* 02462F0C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462F10 */ _t161 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462F10 */ rbrew_write16(cpu->mem, _t161, (uint16_t)cpu->r[28]);
|
|
/* 02462F14 */ Gambit_fn_02464290(cpu);
|
|
/* 02462F18 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02462F1C */ _t162 = cpu->r[1] + 0x00000010u;
|
|
/* 02462F1C */ rbrew_write32(cpu->mem, _t162, cpu->r[26]);
|
|
/* 02462F20 */ cpu->r[8] = cpu->r[8] + 0x00003110u;
|
|
/* 02462F24 */ _t163 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462F24 */ rbrew_write32(cpu->mem, _t163, cpu->r[8]);
|
|
/* 02462F28 */ _t164 = cpu->r[27] + 0x00000014u;
|
|
/* 02462F28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02462F2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000004u);
|
|
/* 02462F30 */ _t165 = cpu->r[27] + 0x00000018u;
|
|
/* 02462F30 */ cpu->r[26] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02462F34 */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462F34 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02462F34 */ if (_t167) goto L_02462F38; else goto L_02462F3C;
|
|
L_02462F38: ; // 0x2462f38
|
|
/* 02462F38 */ cpu->r[26] = cpu->r[26] + 0x00000090u;
|
|
L_02462F3C: ; // 0x2462f3c
|
|
/* 02462F3C */ cpu->ctr = cpu->r[25];
|
|
/* 02462F40 */ _t168 = cpu->r[26] + 0x00000000u;
|
|
/* 02462F40 */ cpu->r[24] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02462F44 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462F48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462F4C */ _t169 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462F4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02462F50 */ _t170 = cpu->r[8] + 0x00000000u;
|
|
/* 02462F50 */ cpu->r[11] = rbrew_read8(cpu->mem, _t170);
|
|
/* 02462F54 */ cpu->r[31] = 0x00000000u;
|
|
/* 02462F58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02462F5C */ cpu->r[10] = 0x00080000u;
|
|
/* 02462F60 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462F60 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02462F60 */ if (_t172) goto L_02462F88; else goto L_02462F64;
|
|
L_02462F64: ; // 0x2462f64
|
|
/* 02462F64 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02462F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02462F6C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02462F70 */ _t173 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02462F70 */ _t174 = _t173 & 0x00000001u;
|
|
/* 02462F70 */ if (_t174) goto L_02462F84; else goto L_02462F74;
|
|
L_02462F74: ; // 0x2462f74
|
|
/* 02462F74 */ _t175 = cpu->r[8] + 0x00000000u;
|
|
/* 02462F74 */ cpu->r[11] = rbrew_read8(cpu->mem, _t175);
|
|
/* 02462F78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02462F7C */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02462F7C */ _t177 = _t176 & 0x00000001u;
|
|
/* 02462F7C */ if (_t177) goto L_02462F80; else goto L_02462F64;
|
|
L_02462F80: ; // 0x2462f80
|
|
/* 02462F80 */ goto L_02462F88;
|
|
L_02462F84: ; // 0x2462f84
|
|
/* 02462F84 */ cpu->r[31] = 0x00000000u;
|
|
L_02462F88: ; // 0x2462f88
|
|
/* 02462F88 */ _t178 = cpu->r[26] + 0x00000008u;
|
|
/* 02462F88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02462F8C */ _t179 = cpu->r[1] + 0x00000010u;
|
|
/* 02462F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t179);
|
|
/* 02462F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 02462F94 */ _t180 = cpu->r[12] + 0x00000014u;
|
|
/* 02462F94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02462F98 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02462F98 */ _t182 = _t181 & 0x00000001u;
|
|
/* 02462F98 */ if (_t182) goto L_02462FA0; else goto L_02462F9C;
|
|
L_02462F9C: ; // 0x2462f9c
|
|
/* 02462F9C */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02462FA0: ; // 0x2462fa0
|
|
/* 02462FA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02462FA4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462FA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02462FAC */ _t183 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02462FAC */ cpu->r[4] = rbrew_read32(cpu->mem, _t183);
|
|
/* 02462FB0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02462FB4 */ cpu->r[5] = cpu->r[31];
|
|
/* 02462FB8 */ cpu->r[3] = cpu->r[24];
|
|
/* 02462FBC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02462FC0 */ _t184 = cpu->r[24] + cpu->r[31];
|
|
/* 02462FC0 */ rbrew_write8(cpu->mem, _t184, (uint8_t)cpu->r[30]);
|
|
/* 02462FC4 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 02462FC8 */ _t185 = cpu->r[1] + 0x00000020u;
|
|
/* 02462FC8 */ rbrew_write32(cpu->mem, _t185, cpu->r[28]);
|
|
/* 02462FCC */ cpu->r[9] = 0x00000004u;
|
|
/* 02462FD0 */ _t186 = cpu->r[1] + 0x00000016u;
|
|
/* 02462FD0 */ rbrew_write16(cpu->mem, _t186, (uint16_t)cpu->r[7]);
|
|
/* 02462FD4 */ cpu->r[8] = 0x02460000u;
|
|
/* 02462FD8 */ _t187 = cpu->r[1] + 0x00000014u;
|
|
/* 02462FD8 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 02462FDC */ cpu->r[8] = cpu->r[8] + 0x00003C0Cu;
|
|
/* 02462FE0 */ _t188 = cpu->r[1] + 0x00000008u;
|
|
/* 02462FE0 */ rbrew_write8(cpu->mem, _t188, (uint8_t)cpu->r[9]);
|
|
/* 02462FE4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02462FE8 */ _t189 = cpu->r[1] + 0x00000018u;
|
|
/* 02462FE8 */ rbrew_write32(cpu->mem, _t189, cpu->r[8]);
|
|
/* 02462FEC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02462FF0 */ _t190 = cpu->r[1] + 0x00000028u;
|
|
/* 02462FF0 */ rbrew_write32(cpu->mem, _t190, cpu->r[28]);
|
|
/* 02462FF4 */ _t191 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02462FF4 */ rbrew_write16(cpu->mem, _t191, (uint16_t)cpu->r[28]);
|
|
/* 02462FF8 */ _t192 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02462FF8 */ rbrew_write16(cpu->mem, _t192, (uint16_t)cpu->r[28]);
|
|
/* 02462FFC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02463000 */ _t193 = cpu->r[1] + 0x00000024u;
|
|
/* 02463000 */ rbrew_write16(cpu->mem, _t193, (uint16_t)cpu->r[28]);
|
|
/* 02463004 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463008 */ cpu->r[3] = cpu->r[27];
|
|
/* 0246300C */ _t194 = cpu->r[1] + 0x00000026u;
|
|
/* 0246300C */ rbrew_write16(cpu->mem, _t194, (uint16_t)cpu->r[28]);
|
|
/* 02463010 */ Gambit_fn_02464290(cpu);
|
|
/* 02463014 */ _t195 = cpu->r[29] + 0x000001B8u;
|
|
/* 02463014 */ rbrew_write32(cpu->mem, _t195, cpu->r[27]);
|
|
L_02463018: ; // 0x2463018
|
|
/* 02463018 */ cpu->r[3] = cpu->r[29];
|
|
/* 0246301C */ /* nop */
|
|
/* 02463020 */ _t196 = cpu->r[1] + 0x00000054u;
|
|
/* 02463020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02463024 */ cpu->lr = cpu->r[0];
|
|
/* 02463028 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0246302C */ return;
|
|
}
|
|
|
|
// fn_02463030 @ 0x2463030
|
|
void Gambit_fn_02463030(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;
|
|
|
|
L_02463030: ; // 0x2463030
|
|
/* 02463030 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 02463030 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463030 */ cpu->r[1] = _t0;
|
|
/* 02463034 */ /* nop */
|
|
/* 02463038 */ cpu->r[12] = 0x88890000u;
|
|
/* 0246303C */ cpu->r[12] = cpu->r[12] + 0xFFFF8889u;
|
|
/* 02463040 */ cpu->r[27] = cpu->r[6];
|
|
/* 02463044 */ cpu->r[10] = (uint32_t)(((int64_t)(int32_t)cpu->r[12] * (int64_t)(int32_t)cpu->r[27]) >> 32);
|
|
/* 02463048 */ cpu->r[10] = cpu->r[27] + cpu->r[10];
|
|
/* 0246304C */ /* nop */
|
|
/* 02463050 */ /* nop */
|
|
/* 02463054 */ cpu->r[0] = cpu->lr;
|
|
/* 02463058 */ cpu->r[10] = cpu->r[10] - cpu->r[11];
|
|
/* 0246305C */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 0246305C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02463060 */ cpu->r[30] = cpu->r[4];
|
|
/* 02463064 */ cpu->r[4] = cpu->r[10] + 0x00000001u;
|
|
/* 02463068 */ cpu->r[29] = cpu->r[5];
|
|
/* 0246306C */ cpu->r[28] = cpu->r[3];
|
|
/* 02463070 */ _t2 = cpu->r[28] + 0x00000260u;
|
|
/* 02463070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02463074 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02463078 */ cpu->r[31] = cpu->r[7];
|
|
/* 0246307C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246307C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0246307C */ if (_t4) goto L_0246308C; else goto L_02463080;
|
|
L_02463080: ; // 0x2463080
|
|
/* 02463080 */ _t5 = cpu->r[28] + 0x00000258u;
|
|
/* 02463080 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463084 */ _t6 = cpu->r[28] + 0x00000260u;
|
|
/* 02463084 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 02463088 */ Gambit_fn_020A7EFC(cpu);
|
|
L_0246308C: ; // 0x246308c
|
|
/* 0246308C */ _t7 = cpu->r[28] + 0x00000118u;
|
|
/* 0246308C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02463090 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02463090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02463094 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463094 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02463094 */ if (_t9) goto L_024634AC; else goto L_02463098;
|
|
L_02463098: ; // 0x2463098
|
|
/* 02463098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0246309C */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246309C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0246309C */ if (_t11) goto L_024630A0; else goto L_024634AC;
|
|
L_024630A0: ; // 0x24630a0
|
|
/* 024630A0 */ _t12 = cpu->r[28] + 0x00000000u;
|
|
/* 024630A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024630A4 */ _t13 = cpu->r[7] + 0x00000084u;
|
|
/* 024630A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024630A8 */ cpu->ctr = cpu->r[8];
|
|
/* 024630AC */ cpu->r[3] = cpu->r[28];
|
|
/* 024630B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024630B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024630B8 */ Gambit_fn_0206A274(cpu);
|
|
/* 024630BC */ cpu->r[4] = 0x00000001u;
|
|
/* 024630C0 */ cpu->r[3] = cpu->r[28] + 0x000001DCu;
|
|
/* 024630C4 */ _t14 = cpu->r[28] + 0x00000268u;
|
|
/* 024630C4 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 024630C8 */ Gambit_fn_02464428(cpu);
|
|
/* 024630CC */ cpu->r[10] = 0x100A0000u;
|
|
/* 024630D0 */ _t15 = cpu->r[28] + 0x00000264u;
|
|
/* 024630D0 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 024630D4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024630D8 */ cpu->r[10] = cpu->r[10] + 0x00003060u;
|
|
/* 024630DC */ cpu->r[3] = cpu->r[28];
|
|
/* 024630E0 */ cpu->r[0] = cpu->r[0] + 0x00003170u;
|
|
/* 024630E4 */ _t16 = cpu->r[1] + 0x00000044u;
|
|
/* 024630E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 024630E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024630EC */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 024630F0 */ _t17 = cpu->r[1] + 0x00000040u;
|
|
/* 024630F0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 024630F4 */ Gambit_fn_027ED798(cpu);
|
|
/* 024630F8 */ _t18 = cpu->r[30] + 0x00000002u;
|
|
/* 024630F8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t18);
|
|
/* 024630FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 02463100 */ /* nop */
|
|
/* 02463104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000003u);
|
|
/* 02463108 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463108 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02463108 */ if (_t20) goto L_024631E8; else goto L_0246310C;
|
|
L_0246310C: ; // 0x246310c
|
|
/* 0246310C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 02463110 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463110 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02463110 */ if (_t22) goto L_02463130; else goto L_02463114;
|
|
L_02463114: ; // 0x2463114
|
|
/* 02463114 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000004u);
|
|
/* 02463118 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463118 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02463118 */ if (_t24) goto L_024631A0; else goto L_0246311C;
|
|
L_0246311C: ; // 0x246311c
|
|
/* 0246311C */ _t25 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0246311C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02463120 */ Gambit_fn_020A7E60(cpu);
|
|
/* 02463124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02463128 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463128 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02463128 */ if (_t27) goto L_024634A0; else goto L_0246312C;
|
|
L_0246312C: ; // 0x246312c
|
|
/* 0246312C */ goto L_02463278;
|
|
L_02463130: ; // 0x2463130
|
|
/* 02463130 */ _t28 = cpu->r[30] + 0x00000000u;
|
|
/* 02463130 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28);
|
|
/* 02463134 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02463138 */ cpu->r[10] = cpu->r[10] + 0x00007B20u;
|
|
/* 0246313C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02463140 */ _t29 = cpu->r[28] + 0x0000025Cu;
|
|
/* 02463140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02463144 */ cpu->r[4] = cpu->r[10] + cpu->r[0];
|
|
/* 02463148 */ Gambit_fn_020A6F10(cpu);
|
|
/* 0246314C */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 0246314C */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t30);
|
|
/* 02463150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000004u);
|
|
/* 02463154 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463154 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02463154 */ if (_t32) goto L_02463160; else goto L_02463158;
|
|
L_02463158: ; // 0x2463158
|
|
/* 02463158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000005u);
|
|
/* 0246315C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246315C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0246315C */ if (_t34) goto L_02463160; else goto L_024631D4;
|
|
L_02463160: ; // 0x2463160
|
|
/* 02463160 */ cpu->r[31] = 0x00000002u;
|
|
/* 02463164 */ _t35 = cpu->r[28] + 0x0000025Cu;
|
|
/* 02463164 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02463168 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246316C */ cpu->r[5] = 0x00000007u;
|
|
/* 02463170 */ _t36 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02463170 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 02463174 */ Gambit_fn_020A8210(cpu);
|
|
/* 02463178 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246317C */ _t37 = cpu->r[28] + 0x00000214u;
|
|
/* 0246317C */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02463180 */ cpu->r[5] = 0x00000007u;
|
|
/* 02463184 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02463184 */ rbrew_write32(cpu->mem, _t38, cpu->r[31]);
|
|
/* 02463188 */ Gambit_fn_020CE938(cpu);
|
|
/* 0246318C */ _t39 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0246318C */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02463190 */ Gambit_fn_020A7E60(cpu);
|
|
/* 02463194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02463198 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463198 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02463198 */ if (_t41) goto L_024634A0; else goto L_0246319C;
|
|
L_0246319C: ; // 0x246319c
|
|
/* 0246319C */ goto L_02463278;
|
|
L_024631A0: ; // 0x24631a0
|
|
/* 024631A0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 024631A4 */ _t42 = cpu->r[28] + 0x0000025Cu;
|
|
/* 024631A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024631A8 */ cpu->r[4] = cpu->r[4] + 0x00007B0Cu;
|
|
/* 024631AC */ Gambit_fn_020A75A0(cpu);
|
|
/* 024631B0 */ _t43 = cpu->r[30] + 0x00000000u;
|
|
/* 024631B0 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t43);
|
|
/* 024631B4 */ cpu->r[0] = 0x00000000u;
|
|
/* 024631B8 */ _t44 = cpu->r[28] + 0x0000025Cu;
|
|
/* 024631B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024631BC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 024631C0 */ _t45 = cpu->r[1] + 0x00000034u;
|
|
/* 024631C0 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 024631C4 */ Gambit_fn_020A8210(cpu);
|
|
/* 024631C8 */ _t46 = cpu->r[28] + 0x00000214u;
|
|
/* 024631C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024631CC */ _t47 = cpu->r[29] + 0x00000040u;
|
|
/* 024631CC */ cpu->r[4] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024631D0 */ Gambit_fn_020CEDAC(cpu);
|
|
L_024631D4: ; // 0x24631d4
|
|
/* 024631D4 */ _t48 = cpu->r[28] + 0x0000025Cu;
|
|
/* 024631D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024631D8 */ Gambit_fn_020A7E60(cpu);
|
|
/* 024631DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024631E0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024631E0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024631E0 */ if (_t50) goto L_024634A0; else goto L_024631E4;
|
|
L_024631E4: ; // 0x24631e4
|
|
/* 024631E4 */ goto L_02463278;
|
|
L_024631E8: ; // 0x24631e8
|
|
/* 024631E8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 024631EC */ _t51 = cpu->r[28] + 0x0000025Cu;
|
|
/* 024631EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024631F0 */ cpu->r[4] = cpu->r[4] + 0x00007B14u;
|
|
/* 024631F4 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 024631F4 */ rbrew_write32(cpu->mem, _t52, cpu->r[31]);
|
|
/* 024631F8 */ Gambit_fn_020A75A0(cpu);
|
|
/* 024631FC */ _t53 = cpu->r[1] + 0x00000030u;
|
|
/* 024631FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02463200 */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 02463200 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t54);
|
|
/* 02463204 */ _t55 = cpu->r[28] + 0x0000025Cu;
|
|
/* 02463204 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02463208 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 0246320C */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 0246320C */ rbrew_write32(cpu->mem, _t56, cpu->r[7]);
|
|
/* 02463210 */ Gambit_fn_020A8210(cpu);
|
|
/* 02463214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02463218 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463218 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02463218 */ if (_t58) goto L_0246321C; else goto L_02463258;
|
|
L_0246321C: ; // 0x246321c
|
|
/* 0246321C */ _t59 = cpu->r[29] + 0x00000040u;
|
|
/* 0246321C */ cpu->r[4] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02463220 */ _t60 = cpu->r[28] + 0x00000214u;
|
|
/* 02463220 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02463224 */ Gambit_fn_020CEDAC(cpu);
|
|
/* 02463228 */ _t61 = cpu->r[28] + 0x00000254u;
|
|
/* 02463228 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0246322C */ cpu->r[4] = 0x00000001u;
|
|
/* 02463230 */ Gambit_fn_027EEDF0(cpu);
|
|
/* 02463234 */ cpu->r[30] = 0x00000003u;
|
|
/* 02463238 */ cpu->r[27] = 0x00000000u;
|
|
/* 0246323C */ cpu->r[23] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463240 */ cpu->r[24] = 0x101C0000u;
|
|
/* 02463244 */ cpu->r[31] = cpu->r[27];
|
|
/* 02463248 */ cpu->r[25] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246324C */ cpu->r[24] = cpu->r[24] + 0x00001344u;
|
|
/* 02463250 */ cpu->r[26] = cpu->r[29] + 0x00000054u;
|
|
/* 02463254 */ goto L_024632A4;
|
|
L_02463258: ; // 0x2463258
|
|
/* 02463258 */ _t62 = cpu->r[1] + 0x00000030u;
|
|
/* 02463258 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0246325C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02463260 */ _t63 = cpu->r[30] + 0x00000000u;
|
|
/* 02463260 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t63);
|
|
/* 02463264 */ _t64 = cpu->r[28] + 0x00000214u;
|
|
/* 02463264 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02463268 */ _t65 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02463268 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0246326C */ Gambit_fn_020CE938(cpu);
|
|
/* 02463270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02463274 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463274 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02463274 */ if (_t67) goto L_024634A0; else goto L_02463278;
|
|
L_02463278: ; // 0x2463278
|
|
/* 02463278 */ _t68 = cpu->r[28] + 0x00000254u;
|
|
/* 02463278 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0246327C */ cpu->r[4] = 0x00000001u;
|
|
/* 02463280 */ Gambit_fn_027EEDF0(cpu);
|
|
/* 02463284 */ cpu->r[27] = 0x00000000u;
|
|
/* 02463288 */ cpu->r[24] = 0x101C0000u;
|
|
/* 0246328C */ cpu->r[30] = 0x00000003u;
|
|
/* 02463290 */ cpu->r[25] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463294 */ cpu->r[24] = cpu->r[24] + 0x00001344u;
|
|
/* 02463298 */ cpu->r[26] = cpu->r[29] + 0x00000054u;
|
|
/* 0246329C */ cpu->r[31] = cpu->r[27];
|
|
/* 024632A0 */ cpu->r[23] = cpu->r[1] + 0x0000000Cu;
|
|
L_024632A4: ; // 0x24632a4
|
|
/* 024632A4 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024632A4 */ rbrew_write32(cpu->mem, _t69, cpu->r[27]);
|
|
/* 024632A8 */ _t70 = cpu->r[23] + 0x00000000u;
|
|
/* 024632A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t70);
|
|
/* 024632AC */ _t71 = cpu->r[24] + 0x00000000u;
|
|
/* 024632AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024632B0 */ _t72 = cpu->r[23] + 0x00000000u;
|
|
/* 024632B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 024632B4 */ _t73 = cpu->r[9] + 0x00000014u;
|
|
/* 024632B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024632B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 024632BC */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 024632BC */ rbrew_write32(cpu->mem, _t74, cpu->r[10]);
|
|
/* 024632C0 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024632C0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 024632C0 */ if (_t76) goto L_024632C4; else goto L_024632E0;
|
|
L_024632C4: ; // 0x24632c4
|
|
/* 024632C4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x0000001Cu);
|
|
/* 024632C8 */ _t77 = cpu->r[26] + cpu->r[0];
|
|
/* 024632C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t77);
|
|
/* 024632CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024632D0 */ Gambit_fn_0201D9E4(cpu);
|
|
/* 024632D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024632D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024632D8 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024632D8 */ _t79 = _t78 & 0x00000001u;
|
|
/* 024632D8 */ if (_t79) goto L_0246347C; else goto L_024632DC;
|
|
L_024632DC: ; // 0x24632dc
|
|
/* 024632DC */ goto L_024632F4;
|
|
L_024632E0: ; // 0x24632e0
|
|
/* 024632E0 */ _t80 = cpu->r[26] + 0x00000000u;
|
|
/* 024632E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024632E4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024632E8 */ Gambit_fn_0201D9E4(cpu);
|
|
/* 024632EC */ cpu->r[29] = cpu->r[3];
|
|
/* 024632EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024632F0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024632F0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 024632F0 */ if (_t82) goto L_0246347C; else goto L_024632F4;
|
|
L_024632F4: ; // 0x24632f4
|
|
/* 024632F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 024632F8 */ cpu->r[21] = cpu->r[28] + 0x00000218u;
|
|
/* 024632FC */ _t83 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024632FC */ _t84 = _t83 & 0x00000001u;
|
|
/* 024632FC */ if (_t84) goto L_02463300; else goto L_0246331C;
|
|
L_02463300: ; // 0x2463300
|
|
/* 02463300 */ _t85 = cpu->r[21] + cpu->r[31];
|
|
/* 02463300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02463304 */ cpu->r[4] = cpu->r[29];
|
|
/* 02463308 */ Gambit_fn_020CE5CC(cpu);
|
|
/* 0246330C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02463310 */ _t86 = cpu->r[29] + 0x0000014Cu;
|
|
/* 02463310 */ cpu->r[4] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02463314 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463314 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02463314 */ if (_t88) goto L_02463334; else goto L_02463318;
|
|
L_02463318: ; // 0x2463318
|
|
/* 02463318 */ goto L_02463398;
|
|
L_0246331C: ; // 0x246331c
|
|
/* 0246331C */ _t89 = cpu->r[21] + 0x00000000u;
|
|
/* 0246331C */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02463320 */ cpu->r[4] = cpu->r[29];
|
|
/* 02463324 */ Gambit_fn_020CE5CC(cpu);
|
|
/* 02463328 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 0246332C */ _t90 = cpu->r[29] + 0x0000014Cu;
|
|
/* 0246332C */ cpu->r[4] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02463330 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463330 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02463330 */ if (_t92) goto L_02463334; else goto L_02463398;
|
|
L_02463334: ; // 0x2463334
|
|
/* 02463334 */ cpu->r[8] = cpu->r[21] + cpu->r[31];
|
|
/* 02463338 */ _t93 = cpu->r[8] + 0x00000004u;
|
|
/* 02463338 */ cpu->r[3] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0246333C */ Gambit_fn_020CF070(cpu);
|
|
/* 02463340 */ _t94 = cpu->r[23] + 0x00000000u;
|
|
/* 02463340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02463344 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02463348 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463348 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02463348 */ if (_t96) goto L_024633AC; else goto L_0246334C;
|
|
L_0246334C: ; // 0x246334c
|
|
/* 0246334C */ _t97 = cpu->r[26] + 0x00000000u;
|
|
/* 0246334C */ cpu->r[8] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02463350 */ _t98 = cpu->r[1] + 0x00000010u;
|
|
/* 02463350 */ rbrew_write32(cpu->mem, _t98, cpu->r[8]);
|
|
/* 02463354 */ _t99 = cpu->r[26] + 0x00000004u;
|
|
/* 02463354 */ cpu->r[9] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02463358 */ _t100 = cpu->r[1] + 0x00000014u;
|
|
/* 02463358 */ rbrew_write32(cpu->mem, _t100, cpu->r[9]);
|
|
/* 0246335C */ _t101 = cpu->r[26] + 0x00000008u;
|
|
/* 0246335C */ cpu->r[10] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02463360 */ _t102 = cpu->r[1] + 0x00000018u;
|
|
/* 02463360 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 02463364 */ _t103 = cpu->r[26] + 0x0000000Cu;
|
|
/* 02463364 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02463368 */ _t104 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463368 */ rbrew_write32(cpu->mem, _t104, cpu->r[11]);
|
|
/* 0246336C */ _t105 = cpu->r[26] + 0x00000010u;
|
|
/* 0246336C */ cpu->r[12] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02463370 */ _t106 = cpu->r[1] + 0x00000020u;
|
|
/* 02463370 */ rbrew_write32(cpu->mem, _t106, cpu->r[12]);
|
|
/* 02463374 */ _t107 = cpu->r[26] + 0x00000014u;
|
|
/* 02463374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02463378 */ cpu->r[29] = 0x00000003u;
|
|
/* 0246337C */ cpu->r[22] = 0x00000000u;
|
|
/* 02463380 */ _t108 = cpu->r[1] + 0x00000024u;
|
|
/* 02463380 */ rbrew_write32(cpu->mem, _t108, cpu->r[0]);
|
|
/* 02463384 */ _t109 = cpu->r[26] + 0x00000018u;
|
|
/* 02463384 */ cpu->r[4] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02463388 */ cpu->r[19] = cpu->r[22];
|
|
/* 0246338C */ cpu->r[20] = cpu->r[25];
|
|
/* 02463390 */ _t110 = cpu->r[1] + 0x00000028u;
|
|
/* 02463390 */ rbrew_write32(cpu->mem, _t110, cpu->r[4]);
|
|
/* 02463394 */ goto L_024633FC;
|
|
L_02463398: ; // 0x2463398
|
|
/* 02463398 */ _t111 = cpu->r[21] + 0x00000004u;
|
|
/* 02463398 */ cpu->r[3] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0246339C */ Gambit_fn_020CF070(cpu);
|
|
/* 024633A0 */ _t112 = cpu->r[23] + 0x00000000u;
|
|
/* 024633A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t112);
|
|
/* 024633A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024633A8 */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024633A8 */ _t114 = _t113 & 0x00000001u;
|
|
/* 024633A8 */ if (_t114) goto L_024633AC; else goto L_0246334C;
|
|
L_024633AC: ; // 0x24633ac
|
|
/* 024633AC */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu);
|
|
/* 024633B0 */ _t115 = cpu->r[26] + cpu->r[6];
|
|
/* 024633B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t115);
|
|
/* 024633B4 */ cpu->r[5] = cpu->r[26] + cpu->r[6];
|
|
/* 024633B8 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 024633B8 */ rbrew_write32(cpu->mem, _t116, cpu->r[8]);
|
|
/* 024633BC */ _t117 = cpu->r[5] + 0x00000004u;
|
|
/* 024633BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 024633C0 */ _t118 = cpu->r[1] + 0x00000014u;
|
|
/* 024633C0 */ rbrew_write32(cpu->mem, _t118, cpu->r[9]);
|
|
/* 024633C4 */ _t119 = cpu->r[5] + 0x00000008u;
|
|
/* 024633C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t119);
|
|
/* 024633C8 */ _t120 = cpu->r[1] + 0x00000018u;
|
|
/* 024633C8 */ rbrew_write32(cpu->mem, _t120, cpu->r[10]);
|
|
/* 024633CC */ _t121 = cpu->r[5] + 0x0000000Cu;
|
|
/* 024633CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t121);
|
|
/* 024633D0 */ _t122 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024633D0 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 024633D4 */ _t123 = cpu->r[5] + 0x00000010u;
|
|
/* 024633D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t123);
|
|
/* 024633D8 */ _t124 = cpu->r[1] + 0x00000020u;
|
|
/* 024633D8 */ rbrew_write32(cpu->mem, _t124, cpu->r[12]);
|
|
/* 024633DC */ _t125 = cpu->r[5] + 0x00000014u;
|
|
/* 024633DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t125);
|
|
/* 024633E0 */ cpu->r[29] = 0x00000003u;
|
|
/* 024633E4 */ cpu->r[22] = 0x00000000u;
|
|
/* 024633E8 */ _t126 = cpu->r[1] + 0x00000024u;
|
|
/* 024633E8 */ rbrew_write32(cpu->mem, _t126, cpu->r[0]);
|
|
/* 024633EC */ _t127 = cpu->r[5] + 0x00000018u;
|
|
/* 024633EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t127);
|
|
/* 024633F0 */ cpu->r[19] = cpu->r[22];
|
|
/* 024633F4 */ cpu->r[20] = cpu->r[25];
|
|
/* 024633F8 */ _t128 = cpu->r[1] + 0x00000028u;
|
|
/* 024633F8 */ rbrew_write32(cpu->mem, _t128, cpu->r[4]);
|
|
L_024633FC: ; // 0x24633fc
|
|
/* 024633FC */ _t129 = cpu->r[1] + 0x00000018u;
|
|
/* 024633FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02463400 */ cpu->r[5] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02463404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[5]);
|
|
/* 02463408 */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463408 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02463408 */ if (_t131) goto L_0246341C; else goto L_0246340C;
|
|
L_0246340C: ; // 0x246340c
|
|
/* 0246340C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02463410 */ cpu->r[4] = 0xFFFFFFFEu;
|
|
/* 02463414 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463414 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02463414 */ if (_t133) goto L_0246343C; else goto L_02463418;
|
|
L_02463418: ; // 0x2463418
|
|
/* 02463418 */ goto L_02463450;
|
|
L_0246341C: ; // 0x246341c
|
|
/* 0246341C */ _t134 = cpu->r[1] + 0x00000014u;
|
|
/* 0246341C */ cpu->r[9] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02463420 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02463424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[0]);
|
|
/* 02463428 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0246342C */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246342C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0246342C */ if (_t136) goto L_02463430; else goto L_02463434;
|
|
L_02463430: ; // 0x2463430
|
|
/* 02463430 */ _t137 = cpu->r[20] + 0x00000000u;
|
|
/* 02463430 */ cpu->r[4] = rbrew_read32(cpu->mem, _t137);
|
|
L_02463434: ; // 0x2463434
|
|
/* 02463434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02463438 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463438 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02463438 */ if (_t139) goto L_0246343C; else goto L_02463450;
|
|
L_0246343C: ; // 0x246343c
|
|
/* 0246343C */ cpu->r[12] = cpu->r[21] + cpu->r[31];
|
|
/* 02463440 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], 0x00000003u);
|
|
/* 02463444 */ cpu->r[12] = cpu->r[12] + 0x00000008u;
|
|
/* 02463448 */ _t140 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463448 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02463448 */ if (_t141) goto L_0246345C; else goto L_0246344C;
|
|
L_0246344C: ; // 0x246344c
|
|
/* 0246344C */ goto L_02463460;
|
|
L_02463450: ; // 0x2463450
|
|
/* 02463450 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], 0x00000003u);
|
|
/* 02463454 */ cpu->r[12] = cpu->r[21] + 0x00000008u;
|
|
/* 02463458 */ _t142 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463458 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02463458 */ if (_t143) goto L_0246345C; else goto L_0246344C;
|
|
L_0246345C: ; // 0x246345c
|
|
/* 0246345C */ cpu->r[12] = cpu->r[12] + cpu->r[19];
|
|
L_02463460: ; // 0x2463460
|
|
/* 02463460 */ _t144 = cpu->r[12] + 0x00000000u;
|
|
/* 02463460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02463464 */ Gambit_fn_020CF070(cpu);
|
|
/* 02463468 */ cpu->r[19] = cpu->r[19] + 0x00000004u;
|
|
/* 0246346C */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu;
|
|
/* 0246346C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02463470 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02463474 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 02463478 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463478 */ _t146 = _t145 & 0x00000001u;
|
|
/* 02463478 */ if (_t146) goto L_0246347C; else goto L_024633FC;
|
|
L_0246347C: ; // 0x246347c
|
|
/* 0246347C */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0246347C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02463480 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02463484 */ cpu->r[31] = cpu->r[31] + 0x00000014u;
|
|
/* 02463488 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463488 */ _t148 = _t147 & 0x00000001u;
|
|
/* 02463488 */ if (_t148) goto L_0246348C; else goto L_024632A4;
|
|
L_0246348C: ; // 0x246348c
|
|
/* 0246348C */ /* nop */
|
|
/* 02463490 */ _t149 = cpu->r[1] + 0x00000084u;
|
|
/* 02463490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02463494 */ cpu->lr = cpu->r[0];
|
|
/* 02463498 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0246349C */ return;
|
|
L_024634A0: ; // 0x24634a0
|
|
/* 024634A0 */ _t150 = cpu->r[28] + 0x00000254u;
|
|
/* 024634A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t150);
|
|
/* 024634A4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024634A8 */ Gambit_fn_027EEDF0(cpu);
|
|
L_024634AC: ; // 0x24634ac
|
|
/* 024634AC */ /* nop */
|
|
/* 024634B0 */ _t151 = cpu->r[1] + 0x00000084u;
|
|
/* 024634B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 024634B4 */ cpu->lr = cpu->r[0];
|
|
/* 024634B8 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 024634BC */ return;
|
|
}
|
|
|
|
// fn_024634C0 @ 0x24634c0
|
|
void Gambit_fn_024634C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024634C0: ; // 0x24634c0
|
|
/* 024634C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024634C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024634C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024634C4 */ cpu->r[1] = _t0;
|
|
/* 024634C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024634C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024634CC */ cpu->r[31] = cpu->r[3];
|
|
/* 024634D0 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 024634D4 */ cpu->r[4] = 0x00000004u;
|
|
/* 024634D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024634D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024634DC */ Gambit_fn_02464428(cpu);
|
|
/* 024634E0 */ _t3 = cpu->r[31] + 0x000001ACu;
|
|
/* 024634E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024634E4 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 024634E8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024634E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024634EC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024634EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024634F0 */ cpu->lr = cpu->r[0];
|
|
/* 024634F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024634F8 */ return;
|
|
}
|
|
|
|
// fn_024634C4 @ 0x24634c4
|
|
void Gambit_fn_024634C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024634C4: ; // 0x24634c4
|
|
/* 024634C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024634C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024634C4 */ cpu->r[1] = _t0;
|
|
/* 024634C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024634C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024634CC */ cpu->r[31] = cpu->r[3];
|
|
/* 024634D0 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 024634D4 */ cpu->r[4] = 0x00000004u;
|
|
/* 024634D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024634D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024634DC */ Gambit_fn_02464428(cpu);
|
|
/* 024634E0 */ _t3 = cpu->r[31] + 0x000001ACu;
|
|
/* 024634E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024634E4 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 024634E8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024634E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024634EC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024634EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024634F0 */ cpu->lr = cpu->r[0];
|
|
/* 024634F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024634F8 */ return;
|
|
}
|
|
|
|
// fn_024634FC @ 0x24634fc
|
|
void Gambit_fn_024634FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024634FC: ; // 0x24634fc
|
|
/* 024634FC */ cpu->r[0] = cpu->lr;
|
|
/* 02463500 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463500 */ cpu->r[1] = _t0;
|
|
/* 02463504 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463504 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463508 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246350C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02463510 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463514 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02463514 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463518 */ Gambit_fn_02464428(cpu);
|
|
/* 0246351C */ cpu->r[0] = 0x00000000u;
|
|
/* 02463520 */ _t3 = cpu->r[31] + 0x00000264u;
|
|
/* 02463520 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02463524 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463528 */ _t4 = cpu->r[31] + 0x00000260u;
|
|
/* 02463528 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246352C */ Gambit_fn_0206A310(cpu);
|
|
/* 02463530 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02463530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463534 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463534 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02463538 */ cpu->lr = cpu->r[0];
|
|
/* 0246353C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463540 */ return;
|
|
}
|
|
|
|
// fn_02463500 @ 0x2463500
|
|
void Gambit_fn_02463500(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02463500: ; // 0x2463500
|
|
/* 02463500 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463500 */ cpu->r[1] = _t0;
|
|
/* 02463504 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463504 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463508 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246350C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02463510 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463514 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02463514 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463518 */ Gambit_fn_02464428(cpu);
|
|
/* 0246351C */ cpu->r[0] = 0x00000000u;
|
|
/* 02463520 */ _t3 = cpu->r[31] + 0x00000264u;
|
|
/* 02463520 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02463524 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463528 */ _t4 = cpu->r[31] + 0x00000260u;
|
|
/* 02463528 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246352C */ Gambit_fn_0206A310(cpu);
|
|
/* 02463530 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02463530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463534 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463534 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02463538 */ cpu->lr = cpu->r[0];
|
|
/* 0246353C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463540 */ return;
|
|
}
|
|
|
|
// fn_0246355C @ 0x246355c
|
|
void Gambit_fn_0246355C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0246355C: ; // 0x246355c
|
|
/* 0246355C */ cpu->r[0] = cpu->lr;
|
|
/* 02463560 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463560 */ cpu->r[1] = _t0;
|
|
/* 02463564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463564 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246356C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0246356C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463570 */ Gambit_fn_0206A1E0(cpu);
|
|
/* 02463574 */ _t3 = cpu->r[31] + 0x000001EAu;
|
|
/* 02463574 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02463578 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0246357C */ /* nop */
|
|
/* 02463580 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02463584 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02463588 */ Gambit_fn_024643A0(cpu);
|
|
/* 0246358C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0246358C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02463590 */ cpu->lr = cpu->r[0];
|
|
/* 02463594 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463598 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246359C */ return;
|
|
}
|
|
|
|
// fn_02463560 @ 0x2463560
|
|
void Gambit_fn_02463560(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02463560: ; // 0x2463560
|
|
/* 02463560 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463560 */ cpu->r[1] = _t0;
|
|
/* 02463564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463564 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246356C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0246356C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463570 */ Gambit_fn_0206A1E0(cpu);
|
|
/* 02463574 */ _t3 = cpu->r[31] + 0x000001EAu;
|
|
/* 02463574 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02463578 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0246357C */ /* nop */
|
|
/* 02463580 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02463584 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02463588 */ Gambit_fn_024643A0(cpu);
|
|
/* 0246358C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0246358C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02463590 */ cpu->lr = cpu->r[0];
|
|
/* 02463594 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463598 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246359C */ return;
|
|
}
|
|
|
|
// fn_024635A0 @ 0x24635a0
|
|
void Gambit_fn_024635A0(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;
|
|
|
|
L_024635A0: ; // 0x24635a0
|
|
/* 024635A0 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 024635A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024635A0 */ cpu->r[1] = _t0;
|
|
/* 024635A4 */ /* nop */
|
|
/* 024635A8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024635AC */ cpu->r[12] = cpu->r[12] + 0x000031CCu;
|
|
/* 024635B0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 024635B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024635B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024635B8 */ cpu->r[28] = 0x100A0000u;
|
|
/* 024635BC */ _t2 = cpu->r[1] + 0x000000ACu;
|
|
/* 024635BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024635C0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024635C4 */ cpu->r[28] = cpu->r[28] + 0x00003060u;
|
|
/* 024635C8 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 024635C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024635CC */ cpu->r[11] = cpu->r[11] + 0x00003184u;
|
|
/* 024635D0 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 024635D4 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 024635D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 024635D8 */ cpu->r[25] = cpu->r[3];
|
|
/* 024635DC */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 024635E0 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024635E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024635E4 */ Gambit_fn_027EBB94(cpu);
|
|
/* 024635E8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024635EC */ _t6 = cpu->r[25] + 0x00000254u;
|
|
/* 024635EC */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 024635F0 */ cpu->r[3] = cpu->r[25];
|
|
/* 024635F4 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 024635F4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 024635F8 */ cpu->r[7] = cpu->r[7] + 0x00003190u;
|
|
/* 024635FC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 02463600 */ _t8 = cpu->r[1] + 0x00000034u;
|
|
/* 02463600 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 02463604 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02463608 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0246360C */ cpu->r[24] = 0x100A0000u;
|
|
/* 02463610 */ _t9 = cpu->r[31] + 0xFFFFED9Cu;
|
|
/* 02463610 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02463610 */ cpu->r[31] = _t9;
|
|
/* 02463614 */ cpu->r[29] = cpu->r[3];
|
|
/* 02463618 */ cpu->r[24] = cpu->r[24] + 0x00003100u;
|
|
/* 0246361C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02463620 */ cpu->r[30] = 0x101D0000u;
|
|
/* 02463624 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463624 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02463624 */ if (_t11) goto L_02463628; else goto L_02463634;
|
|
L_02463628: ; // 0x2463628
|
|
/* 02463628 */ _t12 = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463628 */ rbrew_write32(cpu->mem, _t12, cpu->r[24]);
|
|
/* 0246362C */ cpu->r[9] = 0x00000001u;
|
|
/* 02463630 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02463630 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
L_02463634: ; // 0x2463634
|
|
/* 02463634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02463638 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463638 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02463638 */ if (_t15) goto L_0246365C; else goto L_0246363C;
|
|
L_0246363C: ; // 0x246363c
|
|
/* 0246363C */ _t16 = cpu->r[29] + 0x00000000u;
|
|
/* 0246363C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02463640 */ _t17 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02463640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02463644 */ cpu->ctr = cpu->r[0];
|
|
/* 02463648 */ cpu->r[3] = cpu->r[29];
|
|
/* 0246364C */ cpu->r[4] = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463650 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02463654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463658 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463658 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02463658 */ if (_t19) goto L_0246365C; else goto L_02463660;
|
|
L_0246365C: ; // 0x246365c
|
|
/* 0246365C */ cpu->r[29] = 0x00000000u;
|
|
L_02463660: ; // 0x2463660
|
|
/* 02463660 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02463664 */ _t20 = cpu->r[1] + 0x00000048u;
|
|
/* 02463664 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 02463668 */ cpu->r[8] = cpu->r[8] + 0x00003174u;
|
|
/* 0246366C */ cpu->r[11] = cpu->r[1] + 0x00000044u;
|
|
/* 02463670 */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 02463670 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 02463674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFF8u);
|
|
/* 02463678 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0246367C */ _t22 = cpu->r[25] + 0x00000214u;
|
|
/* 0246367C */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 02463680 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463680 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02463680 */ if (_t24) goto L_02463684; else goto L_02463694;
|
|
L_02463684: ; // 0x2463684
|
|
/* 02463684 */ cpu->r[3] = 0x00000008u;
|
|
/* 02463688 */ Gambit_fn_02801A78(cpu);
|
|
/* 0246368C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463690 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463690 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02463690 */ if (_t26) goto L_024636A4; else goto L_02463694;
|
|
L_02463694: ; // 0x2463694
|
|
/* 02463694 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463698 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02463698 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 0246369C */ cpu->r[0] = cpu->r[0] + 0x0000317Cu;
|
|
/* 024636A0 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 024636A0 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
L_024636A4: ; // 0x24636a4
|
|
/* 024636A4 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 024636A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFF0u);
|
|
/* 024636AC */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 024636B0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024636B0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024636B0 */ if (_t30) goto L_024636B4; else goto L_024636C4;
|
|
L_024636B4: ; // 0x24636b4
|
|
/* 024636B4 */ cpu->r[3] = 0x00000008u;
|
|
/* 024636B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024636BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024636C0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024636C0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 024636C0 */ if (_t32) goto L_024636D4; else goto L_024636C4;
|
|
L_024636C4: ; // 0x24636c4
|
|
/* 024636C4 */ cpu->r[5] = 0x100A0000u;
|
|
/* 024636C8 */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 024636C8 */ rbrew_write32(cpu->mem, _t33, cpu->r[28]);
|
|
/* 024636CC */ cpu->r[5] = cpu->r[5] + 0x00003188u;
|
|
/* 024636D0 */ _t34 = cpu->r[3] + 0x00000000u;
|
|
/* 024636D0 */ rbrew_write32(cpu->mem, _t34, cpu->r[5]);
|
|
L_024636D4: ; // 0x24636d4
|
|
/* 024636D4 */ cpu->r[11] = 0x10110000u;
|
|
/* 024636D8 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 024636DC */ cpu->r[21] = 0x00000000u;
|
|
/* 024636E0 */ _t35 = cpu->r[11] + 0x00007399u;
|
|
/* 024636E0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t35);
|
|
/* 024636E4 */ cpu->r[7] = 0x00000020u;
|
|
/* 024636E8 */ cpu->r[8] = 0x100A0000u;
|
|
/* 024636EC */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 024636EC */ rbrew_write32(cpu->mem, _t36, cpu->r[6]);
|
|
/* 024636F0 */ cpu->r[27] = 0x00000003u;
|
|
/* 024636F4 */ cpu->r[8] = cpu->r[8] + 0x000030A8u;
|
|
/* 024636F8 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 024636F8 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 024636FC */ cpu->r[29] = cpu->r[1] + 0x00000044u;
|
|
/* 02463700 */ cpu->r[22] = cpu->r[25] + 0x00000218u;
|
|
/* 02463704 */ cpu->r[28] = cpu->r[21];
|
|
/* 02463708 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463708 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
/* 0246370C */ cpu->r[15] = 0x100A0000u;
|
|
/* 02463710 */ cpu->r[14] = 0x00000001u;
|
|
/* 02463714 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02463714 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[11]);
|
|
/* 02463718 */ cpu->r[16] = 0x100A0000u;
|
|
/* 0246371C */ cpu->r[23] = 0x100A0000u;
|
|
/* 02463720 */ _t40 = cpu->r[1] + 0x00000033u;
|
|
/* 02463720 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[11]);
|
|
L_02463724: ; // 0x2463724
|
|
/* 02463724 */ _t41 = cpu->r[29] + 0x00000004u;
|
|
/* 02463724 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02463728 */ _t42 = cpu->r[9] + 0x00000014u;
|
|
/* 02463728 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0246372C */ cpu->ctr = cpu->r[10];
|
|
/* 02463730 */ cpu->r[3] = cpu->r[29];
|
|
/* 02463734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02463738 */ _t43 = cpu->r[29] + 0x00000000u;
|
|
/* 02463738 */ cpu->r[5] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0246373C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02463740 */ cpu->r[4] = cpu->r[15] + 0x000031B0u;
|
|
/* 02463744 */ _t44 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02463744 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02463744 */ if (_t45) goto L_02463748; // else: addr-0 trap, fall-through
|
|
L_02463748: ; // 0x2463748
|
|
/* 02463748 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0246374C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], 0x00000003u);
|
|
/* 02463750 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02463750 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02463750 */ if (_t47) goto L_02463754; else goto L_02463778;
|
|
L_02463754: ; // 0x2463754
|
|
/* 02463754 */ cpu->r[3] = cpu->r[25];
|
|
/* 02463758 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246375C */ cpu->r[20] = cpu->r[22] + cpu->r[28];
|
|
/* 02463760 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02463764 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 02463764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02463768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246376C */ cpu->r[26] = cpu->r[3];
|
|
/* 02463770 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463770 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02463770 */ if (_t50) goto L_02463774; else goto L_024637A0;
|
|
L_02463774: ; // 0x2463774
|
|
/* 02463774 */ goto L_02463798;
|
|
L_02463778: ; // 0x2463778
|
|
/* 02463778 */ cpu->r[3] = cpu->r[25];
|
|
/* 0246377C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02463780 */ cpu->r[20] = cpu->r[22];
|
|
/* 02463784 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02463788 */ _t51 = cpu->r[31] + 0x00000000u;
|
|
/* 02463788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0246378C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463790 */ cpu->r[26] = cpu->r[3];
|
|
/* 02463794 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463794 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02463794 */ if (_t53) goto L_02463798; else goto L_024637A0;
|
|
L_02463798: ; // 0x2463798
|
|
/* 02463798 */ _t54 = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463798 */ rbrew_write32(cpu->mem, _t54, cpu->r[24]);
|
|
/* 0246379C */ _t55 = cpu->r[31] + 0x00000000u;
|
|
/* 0246379C */ rbrew_write32(cpu->mem, _t55, cpu->r[14]);
|
|
L_024637A0: ; // 0x24637a0
|
|
/* 024637A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024637A4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024637A4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024637A4 */ if (_t57) goto L_024637C8; else goto L_024637A8;
|
|
L_024637A8: ; // 0x24637a8
|
|
/* 024637A8 */ _t58 = cpu->r[26] + 0x00000000u;
|
|
/* 024637A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024637AC */ _t59 = cpu->r[4] + 0x0000001Cu;
|
|
/* 024637AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024637B0 */ cpu->ctr = cpu->r[0];
|
|
/* 024637B4 */ cpu->r[4] = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 024637B8 */ cpu->r[3] = cpu->r[26];
|
|
/* 024637BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024637C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024637C4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024637C4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 024637C4 */ if (_t61) goto L_024637C8; else goto L_024637CC;
|
|
L_024637C8: ; // 0x24637c8
|
|
/* 024637C8 */ cpu->r[26] = 0x00000000u;
|
|
L_024637CC: ; // 0x24637cc
|
|
/* 024637CC */ _t62 = cpu->r[20] + 0x00000000u;
|
|
/* 024637CC */ rbrew_write32(cpu->mem, _t62, cpu->r[26]);
|
|
/* 024637D0 */ _t63 = cpu->r[29] + 0x00000004u;
|
|
/* 024637D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024637D4 */ _t64 = cpu->r[6] + 0x00000014u;
|
|
/* 024637D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 024637D8 */ cpu->ctr = cpu->r[8];
|
|
/* 024637DC */ cpu->r[3] = cpu->r[29];
|
|
/* 024637E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024637E4 */ _t65 = cpu->r[29] + 0x00000000u;
|
|
/* 024637E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 024637E8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024637EC */ cpu->r[4] = cpu->r[16] + 0x000031BCu;
|
|
/* 024637F0 */ _t66 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024637F0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 024637F0 */ if (_t67) goto L_024637F4; // else: addr-0 trap, fall-through
|
|
L_024637F4: ; // 0x24637f4
|
|
/* 024637F4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024637F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], 0x00000003u);
|
|
/* 024637FC */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024637FC */ _t69 = _t68 & 0x00000001u;
|
|
/* 024637FC */ if (_t69) goto L_02463800; else goto L_02463824;
|
|
L_02463800: ; // 0x2463800
|
|
/* 02463800 */ cpu->r[3] = cpu->r[25];
|
|
/* 02463804 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02463808 */ cpu->r[20] = cpu->r[22] + cpu->r[28];
|
|
/* 0246380C */ Gambit_fn_026D86B0(cpu);
|
|
/* 02463810 */ _t70 = cpu->r[31] + 0x00000000u;
|
|
/* 02463810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02463814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463818 */ cpu->r[26] = cpu->r[3];
|
|
/* 0246381C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246381C */ _t72 = _t71 & 0x00000001u;
|
|
/* 0246381C */ if (_t72) goto L_02463820; else goto L_0246384C;
|
|
L_02463820: ; // 0x2463820
|
|
/* 02463820 */ goto L_02463844;
|
|
L_02463824: ; // 0x2463824
|
|
/* 02463824 */ cpu->r[3] = cpu->r[25];
|
|
/* 02463828 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246382C */ cpu->r[20] = cpu->r[22];
|
|
/* 02463830 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02463834 */ _t73 = cpu->r[31] + 0x00000000u;
|
|
/* 02463834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02463838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246383C */ cpu->r[26] = cpu->r[3];
|
|
/* 02463840 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463840 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02463840 */ if (_t75) goto L_02463844; else goto L_0246384C;
|
|
L_02463844: ; // 0x2463844
|
|
/* 02463844 */ _t76 = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463844 */ rbrew_write32(cpu->mem, _t76, cpu->r[24]);
|
|
/* 02463848 */ _t77 = cpu->r[31] + 0x00000000u;
|
|
/* 02463848 */ rbrew_write32(cpu->mem, _t77, cpu->r[14]);
|
|
L_0246384C: ; // 0x246384c
|
|
/* 0246384C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02463850 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463850 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02463850 */ if (_t79) goto L_02463874; else goto L_02463854;
|
|
L_02463854: ; // 0x2463854
|
|
/* 02463854 */ _t80 = cpu->r[26] + 0x00000000u;
|
|
/* 02463854 */ cpu->r[10] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02463858 */ _t81 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02463858 */ cpu->r[12] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0246385C */ cpu->ctr = cpu->r[12];
|
|
/* 02463860 */ cpu->r[3] = cpu->r[26];
|
|
/* 02463864 */ cpu->r[4] = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463868 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246386C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463870 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463870 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02463870 */ if (_t83) goto L_02463874; else goto L_02463878;
|
|
L_02463874: ; // 0x2463874
|
|
/* 02463874 */ cpu->r[26] = 0x00000000u;
|
|
L_02463878: ; // 0x2463878
|
|
/* 02463878 */ cpu->r[17] = 0x00000000u;
|
|
/* 0246387C */ _t84 = cpu->r[20] + 0x00000004u;
|
|
/* 0246387C */ rbrew_write32(cpu->mem, _t84, cpu->r[26]);
|
|
/* 02463880 */ cpu->r[26] = 0x00000003u;
|
|
/* 02463884 */ cpu->r[18] = cpu->r[17];
|
|
/* 02463888 */ cpu->r[14] = 0x00000001u;
|
|
L_0246388C: ; // 0x246388c
|
|
/* 0246388C */ _t85 = cpu->r[29] + 0x00000004u;
|
|
/* 0246388C */ cpu->r[5] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02463890 */ _t86 = cpu->r[5] + 0x00000014u;
|
|
/* 02463890 */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02463894 */ cpu->ctr = cpu->r[7];
|
|
/* 02463898 */ cpu->r[3] = cpu->r[29];
|
|
/* 0246389C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024638A0 */ _t87 = cpu->r[29] + 0x00000000u;
|
|
/* 024638A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024638A4 */ cpu->r[6] = cpu->r[17];
|
|
/* 024638A8 */ cpu->r[4] = cpu->r[23] + 0x000031A0u;
|
|
/* 024638AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024638B0 */ _t88 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024638B0 */ _t89 = _t88 & 0x00000001u;
|
|
/* 024638B0 */ if (_t89) goto L_024638B4; // else: addr-0 trap, fall-through
|
|
L_024638B4: ; // 0x24638b4
|
|
/* 024638B4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024638B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], 0x00000003u);
|
|
/* 024638BC */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024638BC */ _t91 = _t90 & 0x00000001u;
|
|
/* 024638BC */ if (_t91) goto L_024638C0; else goto L_024638D4;
|
|
L_024638C0: ; // 0x24638c0
|
|
/* 024638C0 */ cpu->r[6] = cpu->r[22] + cpu->r[28];
|
|
/* 024638C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], 0x00000003u);
|
|
/* 024638C8 */ cpu->r[12] = cpu->r[6] + 0x00000008u;
|
|
/* 024638CC */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024638CC */ _t93 = _t92 & 0x00000001u;
|
|
/* 024638CC */ if (_t93) goto L_024638E0; else goto L_024638D0;
|
|
L_024638D0: ; // 0x24638d0
|
|
/* 024638D0 */ goto L_02463904;
|
|
L_024638D4: ; // 0x24638d4
|
|
/* 024638D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], 0x00000003u);
|
|
/* 024638D8 */ cpu->r[12] = cpu->r[22] + 0x00000008u;
|
|
/* 024638DC */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024638DC */ _t95 = _t94 & 0x00000001u;
|
|
/* 024638DC */ if (_t95) goto L_024638E0; else goto L_02463904;
|
|
L_024638E0: ; // 0x24638e0
|
|
/* 024638E0 */ cpu->r[3] = cpu->r[25];
|
|
/* 024638E4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024638E8 */ cpu->r[19] = cpu->r[12] + cpu->r[18];
|
|
/* 024638EC */ Gambit_fn_026D86B0(cpu);
|
|
/* 024638F0 */ _t96 = cpu->r[31] + 0x00000000u;
|
|
/* 024638F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024638F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024638F8 */ cpu->r[20] = cpu->r[3];
|
|
/* 024638FC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024638FC */ _t98 = _t97 & 0x00000001u;
|
|
/* 024638FC */ if (_t98) goto L_02463900; else goto L_0246392C;
|
|
L_02463900: ; // 0x2463900
|
|
/* 02463900 */ goto L_02463924;
|
|
L_02463904: ; // 0x2463904
|
|
/* 02463904 */ cpu->r[3] = cpu->r[25];
|
|
/* 02463908 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246390C */ cpu->r[19] = cpu->r[12];
|
|
/* 02463910 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02463914 */ _t99 = cpu->r[31] + 0x00000000u;
|
|
/* 02463914 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02463918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246391C */ cpu->r[20] = cpu->r[3];
|
|
/* 02463920 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463920 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02463920 */ if (_t101) goto L_02463924; else goto L_0246392C;
|
|
L_02463924: ; // 0x2463924
|
|
/* 02463924 */ _t102 = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463924 */ rbrew_write32(cpu->mem, _t102, cpu->r[24]);
|
|
/* 02463928 */ _t103 = cpu->r[31] + 0x00000000u;
|
|
/* 02463928 */ rbrew_write32(cpu->mem, _t103, cpu->r[14]);
|
|
L_0246392C: ; // 0x246392c
|
|
/* 0246392C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02463930 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463930 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02463930 */ if (_t105) goto L_0246396C; else goto L_02463934;
|
|
L_02463934: ; // 0x2463934
|
|
/* 02463934 */ _t106 = cpu->r[20] + 0x00000000u;
|
|
/* 02463934 */ cpu->r[10] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02463938 */ _t107 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02463938 */ cpu->r[12] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0246393C */ cpu->ctr = cpu->r[12];
|
|
/* 02463940 */ cpu->r[3] = cpu->r[20];
|
|
/* 02463944 */ cpu->r[4] = cpu->r[30] + 0xFFFFEDDCu;
|
|
/* 02463948 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246394C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463950 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463950 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02463950 */ if (_t109) goto L_0246396C; else goto L_02463954;
|
|
L_02463954: ; // 0x2463954
|
|
/* 02463954 */ _t110 = cpu->r[19] + 0x00000000u;
|
|
/* 02463954 */ rbrew_write32(cpu->mem, _t110, cpu->r[20]);
|
|
/* 02463958 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 02463958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0246395C */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02463960 */ cpu->r[18] = cpu->r[18] + 0x00000004u;
|
|
/* 02463964 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463964 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02463964 */ if (_t112) goto L_02463968; else goto L_0246388C;
|
|
L_02463968: ; // 0x2463968
|
|
/* 02463968 */ goto L_02463984;
|
|
L_0246396C: ; // 0x246396c
|
|
/* 0246396C */ cpu->r[0] = 0x00000000u;
|
|
/* 02463970 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 02463970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02463974 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02463978 */ _t113 = cpu->r[19] + 0x00000000u;
|
|
/* 02463978 */ rbrew_write32(cpu->mem, _t113, cpu->r[0]);
|
|
/* 0246397C */ cpu->r[18] = cpu->r[18] + 0x00000004u;
|
|
/* 02463980 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463980 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02463980 */ if (_t115) goto L_02463984; else goto L_0246388C;
|
|
L_02463984: ; // 0x2463984
|
|
/* 02463984 */ cpu->r[28] = cpu->r[28] + 0x00000014u;
|
|
/* 02463988 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 02463988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0246398C */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02463990 */ cpu->r[29] = cpu->r[29] + 0x00000008u;
|
|
/* 02463994 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463994 */ _t117 = _t116 & 0x00000001u;
|
|
/* 02463994 */ if (_t117) goto L_02463998; else goto L_02463724;
|
|
L_02463998: ; // 0x2463998
|
|
/* 02463998 */ cpu->r[6] = 0x02460000u;
|
|
/* 0246399C */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 024639A0 */ cpu->r[7] = 0x00000000u;
|
|
/* 024639A4 */ cpu->r[6] = cpu->r[6] + 0x00003D98u;
|
|
/* 024639A8 */ cpu->r[4] = 0x00000003u;
|
|
/* 024639AC */ cpu->r[8] = cpu->r[7];
|
|
/* 024639B0 */ cpu->r[5] = 0x00000008u;
|
|
/* 024639B4 */ Gambit_fn_02C82F38(cpu);
|
|
/* 024639B8 */ /* nop */
|
|
/* 024639BC */ _t118 = cpu->r[1] + 0x000000ACu;
|
|
/* 024639BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 024639C0 */ cpu->lr = cpu->r[0];
|
|
/* 024639C4 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 024639C8 */ return;
|
|
}
|
|
|
|
// fn_024639CC @ 0x24639cc
|
|
void Gambit_fn_024639CC(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_024639CC: ; // 0x24639cc
|
|
/* 024639CC */ cpu->r[0] = cpu->lr;
|
|
/* 024639D0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024639D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024639D0 */ cpu->r[1] = _t0;
|
|
/* 024639D4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024639D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024639D8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024639DC */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024639DC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024639E0 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024639E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024639E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024639E8 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 024639E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024639EC */ cpu->r[29] = 0x100A0000u;
|
|
/* 024639F0 */ cpu->r[30] = cpu->r[30] + 0x000031E4u;
|
|
/* 024639F4 */ cpu->r[29] = cpu->r[29] + 0x00003060u;
|
|
/* 024639F8 */ cpu->r[12] = cpu->r[12] + 0x000031E0u;
|
|
/* 024639FC */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 024639FC */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02463A00 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02463A00 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02463A04 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02463A08 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463A08 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02463A0C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02463A0C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02463A10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463A14 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463A14 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02463A18 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02463A1C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02463A20 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02463A20 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02463A24 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02463A28 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463A2C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463A2C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02463A30 */ cpu->r[0] = cpu->r[0] + 0x000031DCu;
|
|
/* 02463A34 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463A34 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02463A38 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02463A3C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02463A3C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02463A40 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463A44 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02463A44 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02463A48 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02463A48 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02463A4C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02463A50 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02463A54 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02463A54 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02463A58 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02463A5C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02463A5C */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02463A60 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02463A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02463A64 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02463A64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02463A68 */ cpu->lr = cpu->r[0];
|
|
/* 02463A6C */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 02463A6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02463A70 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02463A74 */ return;
|
|
}
|
|
|
|
// fn_024639D0 @ 0x24639d0
|
|
void Gambit_fn_024639D0(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_024639D0: ; // 0x24639d0
|
|
/* 024639D0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024639D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024639D0 */ cpu->r[1] = _t0;
|
|
/* 024639D4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024639D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024639D8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024639DC */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024639DC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024639E0 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024639E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024639E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024639E8 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 024639E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024639EC */ cpu->r[29] = 0x100A0000u;
|
|
/* 024639F0 */ cpu->r[30] = cpu->r[30] + 0x000031E4u;
|
|
/* 024639F4 */ cpu->r[29] = cpu->r[29] + 0x00003060u;
|
|
/* 024639F8 */ cpu->r[12] = cpu->r[12] + 0x000031E0u;
|
|
/* 024639FC */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 024639FC */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02463A00 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02463A00 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02463A04 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02463A08 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463A08 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02463A0C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02463A0C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02463A10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463A14 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463A14 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02463A18 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02463A1C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02463A20 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02463A20 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02463A24 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02463A28 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463A2C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463A2C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02463A30 */ cpu->r[0] = cpu->r[0] + 0x000031DCu;
|
|
/* 02463A34 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463A34 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02463A38 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02463A3C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02463A3C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02463A40 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463A44 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02463A44 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02463A48 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02463A48 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02463A4C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02463A50 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02463A54 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02463A54 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02463A58 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02463A5C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02463A5C */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02463A60 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02463A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02463A64 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02463A64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02463A68 */ cpu->lr = cpu->r[0];
|
|
/* 02463A6C */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 02463A6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02463A70 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02463A74 */ return;
|
|
}
|
|
|
|
// fn_02463A78 @ 0x2463a78
|
|
void Gambit_fn_02463A78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02463A78: ; // 0x2463a78
|
|
/* 02463A78 */ cpu->r[0] = cpu->lr;
|
|
/* 02463A7C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02463A7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463A7C */ cpu->r[1] = _t0;
|
|
/* 02463A80 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02463A80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463A84 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463A88 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463A8C */ cpu->r[4] = cpu->r[31];
|
|
/* 02463A90 */ cpu->r[12] = cpu->r[12] + 0x000031F0u;
|
|
/* 02463A94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02463A98 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463A9C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463AA0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02463AA0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02463AA4 */ cpu->r[0] = cpu->r[0] + 0x00003060u;
|
|
/* 02463AA8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02463AAC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463AAC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02463AB0 */ Gambit_fn_020A7150(cpu);
|
|
/* 02463AB4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02463AB8 */ cpu->r[5] = 0x101E0000u;
|
|
/* 02463ABC */ _t5 = cpu->r[31] + 0x00000258u;
|
|
/* 02463ABC */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02463AC0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02463AC4 */ cpu->r[5] = cpu->r[5] + 0x00007B14u;
|
|
/* 02463AC8 */ Gambit_fn_020A7150(cpu);
|
|
/* 02463ACC */ _t6 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02463ACC */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02463AD0 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463AD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02463AD4 */ cpu->lr = cpu->r[0];
|
|
/* 02463AD8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02463AD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02463ADC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02463AE0 */ return;
|
|
}
|
|
|
|
// fn_02463A7C @ 0x2463a7c
|
|
void Gambit_fn_02463A7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02463A7C: ; // 0x2463a7c
|
|
/* 02463A7C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02463A7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463A7C */ cpu->r[1] = _t0;
|
|
/* 02463A80 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02463A80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463A84 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463A88 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463A8C */ cpu->r[4] = cpu->r[31];
|
|
/* 02463A90 */ cpu->r[12] = cpu->r[12] + 0x000031F0u;
|
|
/* 02463A94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02463A98 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463A9C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463AA0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02463AA0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02463AA4 */ cpu->r[0] = cpu->r[0] + 0x00003060u;
|
|
/* 02463AA8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02463AAC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463AAC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02463AB0 */ Gambit_fn_020A7150(cpu);
|
|
/* 02463AB4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02463AB8 */ cpu->r[5] = 0x101E0000u;
|
|
/* 02463ABC */ _t5 = cpu->r[31] + 0x00000258u;
|
|
/* 02463ABC */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02463AC0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02463AC4 */ cpu->r[5] = cpu->r[5] + 0x00007B14u;
|
|
/* 02463AC8 */ Gambit_fn_020A7150(cpu);
|
|
/* 02463ACC */ _t6 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02463ACC */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02463AD0 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463AD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02463AD4 */ cpu->lr = cpu->r[0];
|
|
/* 02463AD8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02463AD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02463ADC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02463AE0 */ return;
|
|
}
|
|
|
|
// fn_02463AE4 @ 0x2463ae4
|
|
void Gambit_fn_02463AE4(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_020A7EFC: ; // 0x20a7efc
|
|
/* 020A7EFC */ cpu->r[0] = cpu->lr;
|
|
/* 020A7F00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020A7F00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020A7F00 */ cpu->r[1] = _t0;
|
|
/* 020A7F04 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020A7F04 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 020A7F08 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 020A7F08 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020A7F0C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020A7F0C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 020A7F10 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020A7F10 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020A7F14 */ cpu->r[29] = cpu->r[3];
|
|
/* 020A7F18 */ cpu->r[3] = cpu->r[29] + 0x00000054u;
|
|
/* 020A7F1C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 020A7F1C */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 020A7F20 */ Gambit_fn_020A7E08(cpu);
|
|
/* 020A7F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020A7F28 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020A7F28 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020A7F28 */ if (_t7) goto L_020A7F84; else goto L_020A7F2C;
|
|
L_020A7F2C: ; // 0x20a7f2c
|
|
/* 020A7F2C */ _t8 = cpu->r[29] + 0x00000008u;
|
|
/* 020A7F2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020A7F30 */ cpu->r[30] = 0x00000000u;
|
|
/* 020A7F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 020A7F38 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020A7F38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020A7F38 */ if (_t10) goto L_020A7F3C; else goto L_020A7F7C;
|
|
L_020A7F3C: ; // 0x20a7f3c
|
|
/* 020A7F3C */ cpu->r[31] = 0x00000000u;
|
|
L_020A7F40: ; // 0x20a7f40
|
|
/* 020A7F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 020A7F44 */ cpu->r[3] = 0x00000000u;
|
|
/* 020A7F48 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020A7F48 */ _t12 = _t11 & 0x00000001u;
|
|
/* 020A7F48 */ if (_t12) goto L_020A7F4C; else goto L_020A7F54;
|
|
L_020A7F4C: ; // 0x20a7f4c
|
|
/* 020A7F4C */ _t13 = cpu->r[29] + 0x00000010u;
|
|
/* 020A7F4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020A7F50 */ _t14 = cpu->r[12] + cpu->r[31];
|
|
/* 020A7F50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
L_020A7F54: ; // 0x20a7f54
|
|
/* 020A7F54 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 020A7F58 */ cpu->r[5] = 0x00000001u;
|
|
/* 020A7F5C */ cpu->r[4] = cpu->r[29] + 0x00000054u;
|
|
/* 020A7F60 */ _t15 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 020A7F60 */ _t16 = _t15 & 0x00000001u;
|
|
/* 020A7F60 */ if (_t16) goto L_020A7F64; // else: addr-0 trap, fall-through
|
|
L_020A7F64: ; // 0x20a7f64
|
|
/* 020A7F64 */ Gambit_fn_027FE3FC(cpu);
|
|
/* 020A7F68 */ _t17 = cpu->r[29] + 0x00000008u;
|
|
/* 020A7F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 020A7F6C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020A7F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 020A7F74 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 020A7F78 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020A7F78 */ _t19 = _t18 & 0x00000001u;
|
|
/* 020A7F78 */ if (_t19) goto L_020A7F40; else goto L_020A7F7C;
|
|
L_020A7F7C: ; // 0x20a7f7c
|
|
/* 020A7F7C */ cpu->r[3] = cpu->r[29];
|
|
/* 020A7F80 */ Gambit_fn_020A7E10(cpu);
|
|
L_020A7F84: ; // 0x20a7f84
|
|
/* 020A7F84 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020A7F84 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 020A7F88 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020A7F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020A7F8C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 020A7F8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 020A7F90 */ cpu->lr = cpu->r[0];
|
|
/* 020A7F94 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 020A7F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020A7F98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020A7F9C */ return;
|
|
L_02463AE4: ; // 0x2463ae4
|
|
/* 02463AE4 */ cpu->r[11] = cpu->r[3];
|
|
/* 02463AE8 */ _t24 = cpu->r[11] + 0x00000264u;
|
|
/* 02463AE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02463AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02463AF0 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02463AF0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02463AF0 */ if (_t26) goto L_02463AF4; else goto L_02463AFC;
|
|
L_02463AF4: ; // 0x2463af4
|
|
/* 02463AF4 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02463AF8 */ _t27 = cpu->r[11] + 0x00000264u;
|
|
/* 02463AF8 */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
L_02463AFC: ; // 0x2463afc
|
|
/* 02463AFC */ cpu->r[12] = 0x88890000u;
|
|
/* 02463B00 */ cpu->r[12] = cpu->r[12] + 0xFFFF8889u;
|
|
/* 02463B04 */ cpu->r[12] = (uint32_t)(((int64_t)(int32_t)cpu->r[12] * (int64_t)(int32_t)cpu->r[10]) >> 32);
|
|
/* 02463B08 */ cpu->r[12] = cpu->r[10] + cpu->r[12];
|
|
/* 02463B0C */ /* nop */
|
|
/* 02463B10 */ /* nop */
|
|
/* 02463B14 */ cpu->r[12] = cpu->r[12] - cpu->r[9];
|
|
/* 02463B18 */ _t28 = cpu->r[11] + 0x00000260u;
|
|
/* 02463B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02463B1C */ cpu->r[4] = cpu->r[12] + 0x00000001u;
|
|
/* 02463B20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02463B24 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463B24 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02463B24 */ if (_t30) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463B24 */ goto L_02463B28;
|
|
L_02463B28: ; // 0x2463b28
|
|
/* 02463B28 */ _t31 = cpu->r[11] + 0x00000258u;
|
|
/* 02463B28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02463B2C */ _t32 = cpu->r[11] + 0x00000260u;
|
|
/* 02463B2C */ rbrew_write32(cpu->mem, _t32, cpu->r[4]);
|
|
/* 02463B30 */ goto L_020A7EFC;
|
|
}
|
|
|
|
// fn_02463B38 @ 0x2463b38
|
|
void Gambit_fn_02463B38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02463B38: ; // 0x2463b38
|
|
/* 02463B38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463B38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463B38 */ cpu->r[1] = _t0;
|
|
/* 02463B3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463B3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463B40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02463B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463B48 */ _t3 = cpu->r[31] + 0x00000268u;
|
|
/* 02463B48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02463B4C */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02463B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02463B50 */ _t4 = cpu->r[31] + 0x00000268u;
|
|
/* 02463B50 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02463B54 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02463B54 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02463B54 */ if (_t6) goto L_02463B6C; else goto L_02463B58;
|
|
L_02463B58: ; // 0x2463b58
|
|
/* 02463B58 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02463B5C */ cpu->r[4] = 0x00000002u;
|
|
/* 02463B60 */ Gambit_fn_02464428(cpu);
|
|
/* 02463B64 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02463B64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02463B68 */ Gambit_fn_027BB1DC(cpu);
|
|
L_02463B6C: ; // 0x2463b6c
|
|
/* 02463B6C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02463B6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02463B70 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463B70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02463B74 */ cpu->lr = cpu->r[0];
|
|
/* 02463B78 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463B7C */ return;
|
|
}
|
|
|
|
// fn_02463B84 @ 0x2463b84
|
|
void Gambit_fn_02463B84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02463B84: ; // 0x2463b84
|
|
/* 02463B84 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02463B84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463B84 */ cpu->r[1] = _t0;
|
|
/* 02463B88 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02463B88 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463B8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02463B90 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463B90 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463B94 */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 02463B94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02463B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02463B9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463B9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02463B9C */ if (_t5) goto L_02463BA0; else goto L_02463BD0;
|
|
L_02463BA0: ; // 0x2463ba0
|
|
/* 02463BA0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463BA4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463BA8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463BAC */ cpu->r[12] = cpu->r[12] + 0x00003060u;
|
|
/* 02463BB0 */ cpu->r[0] = cpu->r[0] + 0x00003200u;
|
|
/* 02463BB4 */ _t6 = cpu->r[11] + 0x000031FCu;
|
|
/* 02463BB4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02463BB8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463BBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02463BC0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463BC0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02463BC4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02463BC8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02463BC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02463BCC */ Gambit_fn_027ED1E4(cpu);
|
|
L_02463BD0: ; // 0x2463bd0
|
|
/* 02463BD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463BD4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463BD8 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02463BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463BE0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463BE0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02463BE0 */ if (_t10) goto L_02463BF8; else goto L_02463BE4;
|
|
L_02463BE4: ; // 0x2463be4
|
|
/* 02463BE4 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02463BE8 */ cpu->r[4] = 0x00000003u;
|
|
/* 02463BEC */ Gambit_fn_02464428(cpu);
|
|
/* 02463BF0 */ _t11 = cpu->r[31] + 0x000001ACu;
|
|
/* 02463BF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02463BF4 */ Gambit_fn_027BB1DC(cpu);
|
|
L_02463BF8: ; // 0x2463bf8
|
|
/* 02463BF8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02463BFC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02463BFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02463C00 */ cpu->lr = cpu->r[0];
|
|
/* 02463C04 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02463C08 */ return;
|
|
}
|
|
|
|
// fn_02463C10 @ 0x2463c10
|
|
void Gambit_fn_02463C10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02463C10: ; // 0x2463c10
|
|
/* 02463C10 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02463C10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463C10 */ cpu->r[1] = _t0;
|
|
/* 02463C14 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02463C14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463C18 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463C1C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463C1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463C20 */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 02463C20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02463C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02463C28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463C28 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02463C28 */ if (_t5) goto L_02463C2C; else goto L_02463C5C;
|
|
L_02463C2C: ; // 0x2463c2c
|
|
/* 02463C2C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463C30 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463C34 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02463C38 */ cpu->r[11] = cpu->r[11] + 0x00003060u;
|
|
/* 02463C3C */ cpu->r[0] = cpu->r[0] + 0x00003204u;
|
|
/* 02463C40 */ _t6 = cpu->r[10] + 0x000031FCu;
|
|
/* 02463C40 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02463C44 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463C48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463C4C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463C4C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02463C50 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02463C54 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02463C54 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02463C58 */ Gambit_fn_027ED1E4(cpu);
|
|
L_02463C5C: ; // 0x2463c5c
|
|
/* 02463C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02463C60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463C64 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02463C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463C6C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463C6C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02463C6C */ if (_t10) goto L_02463C84; else goto L_02463C70;
|
|
L_02463C70: ; // 0x2463c70
|
|
/* 02463C70 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02463C70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02463C74 */ _t12 = cpu->r[12] + 0x00000094u;
|
|
/* 02463C74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02463C78 */ cpu->ctr = cpu->r[0];
|
|
/* 02463C7C */ cpu->r[3] = cpu->r[31];
|
|
/* 02463C80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02463C84: ; // 0x2463c84
|
|
/* 02463C84 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02463C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02463C88 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02463C88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02463C8C */ cpu->lr = cpu->r[0];
|
|
/* 02463C90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02463C94 */ return;
|
|
}
|
|
|
|
// fn_02463C98 @ 0x2463c98
|
|
void Gambit_fn_02463C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31;
|
|
|
|
L_02463C98: ; // 0x2463c98
|
|
/* 02463C98 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02463C9C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463C9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463C9C */ cpu->r[1] = _t0;
|
|
/* 02463CA0 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02463CA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463CA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463CA8 */ cpu->r[4] = 0xFFFFFFFDu;
|
|
/* 02463CAC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02463CB0 */ _t2 = cpu->r[10] + 0x00007AF4u;
|
|
/* 02463CB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[8]);
|
|
/* 02463CB0 */ cpu->r[10] = _t2;
|
|
/* 02463CB4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02463CB8 */ _t3 = cpu->r[12] + 0x00007AE4u;
|
|
/* 02463CB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02463CB8 */ cpu->r[12] = _t3;
|
|
/* 02463CBC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02463CC0 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 02463CC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02463CC4 */ cpu->r[12] = 0xFFFFFFFEu;
|
|
/* 02463CC8 */ _t5 = cpu->r[10] + 0x00000004u;
|
|
/* 02463CC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 02463CCC */ cpu->r[9] = 0x101E0000u;
|
|
/* 02463CD0 */ _t6 = cpu->r[11] + 0x00007AECu;
|
|
/* 02463CD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02463CD0 */ cpu->r[11] = _t6;
|
|
/* 02463CD4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02463CD8 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 02463CD8 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02463CDC */ cpu->r[9] = cpu->r[9] + 0x00007B04u;
|
|
/* 02463CE0 */ _t8 = cpu->r[12] + 0x00007AFCu;
|
|
/* 02463CE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 02463CE0 */ cpu->r[12] = _t8;
|
|
/* 02463CE4 */ cpu->r[3] = 0x100A0000u;
|
|
/* 02463CE8 */ _t9 = cpu->r[9] + 0x00000004u;
|
|
/* 02463CE8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02463CEC */ cpu->r[3] = cpu->r[3] + 0x00003060u;
|
|
/* 02463CF0 */ cpu->r[31] = cpu->r[31] + 0x00007B20u;
|
|
/* 02463CF4 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02463CF4 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02463CF8 */ cpu->r[5] = 0x100A0000u;
|
|
/* 02463CFC */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02463CFC */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02463D00 */ cpu->r[5] = cpu->r[5] + 0x00003208u;
|
|
/* 02463D04 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463D08 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02463D08 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 02463D0C */ cpu->r[12] = cpu->r[12] + 0x0000320Cu;
|
|
/* 02463D10 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02463D10 */ rbrew_write32(cpu->mem, _t13, cpu->r[3]);
|
|
/* 02463D14 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02463D18 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 02463D18 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02463D1C */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 02463D1C */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02463D20 */ _t16 = cpu->r[31] + 0x00000010u;
|
|
/* 02463D20 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 02463D24 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02463D24 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02463D28 */ cpu->r[7] = cpu->r[7] + 0x00007B0Cu;
|
|
/* 02463D2C */ _t18 = cpu->r[31] + 0x00000018u;
|
|
/* 02463D2C */ rbrew_write32(cpu->mem, _t18, cpu->r[5]);
|
|
/* 02463D30 */ cpu->r[11] = 0x00000002u;
|
|
/* 02463D34 */ _t19 = cpu->r[9] + 0x00000000u;
|
|
/* 02463D34 */ rbrew_write32(cpu->mem, _t19, cpu->r[4]);
|
|
/* 02463D38 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02463D3C */ cpu->r[6] = 0x101E0000u;
|
|
/* 02463D40 */ _t20 = cpu->r[7] + 0x00000004u;
|
|
/* 02463D40 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02463D44 */ cpu->r[8] = cpu->r[8] + 0x00003218u;
|
|
/* 02463D48 */ cpu->r[6] = cpu->r[6] + 0x00007B14u;
|
|
/* 02463D4C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02463D4C */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02463D50 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02463D50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02463D54 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02463D58 */ _t23 = cpu->r[6] + 0x00000004u;
|
|
/* 02463D58 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 02463D5C */ _t24 = cpu->r[6] + 0x00000000u;
|
|
/* 02463D5C */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 02463D60 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463D64 */ cpu->r[12] = 0x00000004u;
|
|
/* 02463D68 */ _t25 = cpu->r[31] + 0x00000024u;
|
|
/* 02463D68 */ rbrew_write32(cpu->mem, _t25, cpu->r[3]);
|
|
/* 02463D6C */ _t26 = cpu->r[10] + 0x00007B1Cu;
|
|
/* 02463D6C */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 02463D70 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463D74 */ cpu->r[11] = cpu->r[11] + 0x00003210u;
|
|
/* 02463D78 */ cpu->r[12] = cpu->r[12] + 0x00003214u;
|
|
/* 02463D7C */ _t27 = cpu->r[31] + 0x00000020u;
|
|
/* 02463D7C */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
/* 02463D80 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02463D80 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 02463D84 */ _t29 = cpu->r[7] + 0x00000000u;
|
|
/* 02463D84 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
/* 02463D88 */ _t30 = cpu->r[31] + 0x00000028u;
|
|
/* 02463D88 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 02463D8C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463D8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02463D90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463D94 */ return;
|
|
}
|
|
|
|
// fn_02463C9C @ 0x2463c9c
|
|
void Gambit_fn_02463C9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31;
|
|
|
|
L_02463C9C: ; // 0x2463c9c
|
|
/* 02463C9C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463C9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463C9C */ cpu->r[1] = _t0;
|
|
/* 02463CA0 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02463CA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463CA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463CA8 */ cpu->r[4] = 0xFFFFFFFDu;
|
|
/* 02463CAC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02463CB0 */ _t2 = cpu->r[10] + 0x00007AF4u;
|
|
/* 02463CB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[8]);
|
|
/* 02463CB0 */ cpu->r[10] = _t2;
|
|
/* 02463CB4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02463CB8 */ _t3 = cpu->r[12] + 0x00007AE4u;
|
|
/* 02463CB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02463CB8 */ cpu->r[12] = _t3;
|
|
/* 02463CBC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02463CC0 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 02463CC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02463CC4 */ cpu->r[12] = 0xFFFFFFFEu;
|
|
/* 02463CC8 */ _t5 = cpu->r[10] + 0x00000004u;
|
|
/* 02463CC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 02463CCC */ cpu->r[9] = 0x101E0000u;
|
|
/* 02463CD0 */ _t6 = cpu->r[11] + 0x00007AECu;
|
|
/* 02463CD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02463CD0 */ cpu->r[11] = _t6;
|
|
/* 02463CD4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02463CD8 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 02463CD8 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02463CDC */ cpu->r[9] = cpu->r[9] + 0x00007B04u;
|
|
/* 02463CE0 */ _t8 = cpu->r[12] + 0x00007AFCu;
|
|
/* 02463CE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 02463CE0 */ cpu->r[12] = _t8;
|
|
/* 02463CE4 */ cpu->r[3] = 0x100A0000u;
|
|
/* 02463CE8 */ _t9 = cpu->r[9] + 0x00000004u;
|
|
/* 02463CE8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02463CEC */ cpu->r[3] = cpu->r[3] + 0x00003060u;
|
|
/* 02463CF0 */ cpu->r[31] = cpu->r[31] + 0x00007B20u;
|
|
/* 02463CF4 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02463CF4 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02463CF8 */ cpu->r[5] = 0x100A0000u;
|
|
/* 02463CFC */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02463CFC */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02463D00 */ cpu->r[5] = cpu->r[5] + 0x00003208u;
|
|
/* 02463D04 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463D08 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02463D08 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 02463D0C */ cpu->r[12] = cpu->r[12] + 0x0000320Cu;
|
|
/* 02463D10 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02463D10 */ rbrew_write32(cpu->mem, _t13, cpu->r[3]);
|
|
/* 02463D14 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02463D18 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 02463D18 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02463D1C */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 02463D1C */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02463D20 */ _t16 = cpu->r[31] + 0x00000010u;
|
|
/* 02463D20 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 02463D24 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02463D24 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02463D28 */ cpu->r[7] = cpu->r[7] + 0x00007B0Cu;
|
|
/* 02463D2C */ _t18 = cpu->r[31] + 0x00000018u;
|
|
/* 02463D2C */ rbrew_write32(cpu->mem, _t18, cpu->r[5]);
|
|
/* 02463D30 */ cpu->r[11] = 0x00000002u;
|
|
/* 02463D34 */ _t19 = cpu->r[9] + 0x00000000u;
|
|
/* 02463D34 */ rbrew_write32(cpu->mem, _t19, cpu->r[4]);
|
|
/* 02463D38 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02463D3C */ cpu->r[6] = 0x101E0000u;
|
|
/* 02463D40 */ _t20 = cpu->r[7] + 0x00000004u;
|
|
/* 02463D40 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02463D44 */ cpu->r[8] = cpu->r[8] + 0x00003218u;
|
|
/* 02463D48 */ cpu->r[6] = cpu->r[6] + 0x00007B14u;
|
|
/* 02463D4C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02463D4C */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02463D50 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02463D50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02463D54 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02463D58 */ _t23 = cpu->r[6] + 0x00000004u;
|
|
/* 02463D58 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 02463D5C */ _t24 = cpu->r[6] + 0x00000000u;
|
|
/* 02463D5C */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 02463D60 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463D64 */ cpu->r[12] = 0x00000004u;
|
|
/* 02463D68 */ _t25 = cpu->r[31] + 0x00000024u;
|
|
/* 02463D68 */ rbrew_write32(cpu->mem, _t25, cpu->r[3]);
|
|
/* 02463D6C */ _t26 = cpu->r[10] + 0x00007B1Cu;
|
|
/* 02463D6C */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 02463D70 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02463D74 */ cpu->r[11] = cpu->r[11] + 0x00003210u;
|
|
/* 02463D78 */ cpu->r[12] = cpu->r[12] + 0x00003214u;
|
|
/* 02463D7C */ _t27 = cpu->r[31] + 0x00000020u;
|
|
/* 02463D7C */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
/* 02463D80 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02463D80 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 02463D84 */ _t29 = cpu->r[7] + 0x00000000u;
|
|
/* 02463D84 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
/* 02463D88 */ _t30 = cpu->r[31] + 0x00000028u;
|
|
/* 02463D88 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 02463D8C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463D8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02463D90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463D94 */ return;
|
|
}
|
|
|
|
// fn_02463D98 @ 0x2463d98
|
|
void Gambit_fn_02463D98(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_02463D98: ; // 0x2463d98
|
|
/* 02463D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463D9C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463D9C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02463D9C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463D9C */ goto L_02463DA0;
|
|
L_02463DA0: ; // 0x2463da0
|
|
/* 02463DA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463DA4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463DA4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02463DA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463DA4 */ goto L_02463DA8;
|
|
L_02463DA8: ; // 0x2463da8
|
|
/* 02463DA8 */ 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_02463DAC @ 0x2463dac
|
|
void Gambit_fn_02463DAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02463DAC: ; // 0x2463dac
|
|
/* 02463DAC */ cpu->r[0] = cpu->lr;
|
|
/* 02463DB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463DB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463DB0 */ cpu->r[1] = _t0;
|
|
/* 02463DB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463DB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463DB8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02463DB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02463DBC */ cpu->r[30] = cpu->r[3];
|
|
/* 02463DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02463DC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02463DC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02463DC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02463DC8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463DC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02463DC8 */ if (_t5) goto L_02463E0C; else goto L_02463DCC;
|
|
L_02463DCC: ; // 0x2463dcc
|
|
/* 02463DCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463DD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463DD4 */ cpu->r[11] = cpu->r[11] + 0x000033C4u;
|
|
/* 02463DD8 */ cpu->r[0] = cpu->r[0] + 0x000033B4u;
|
|
/* 02463DDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02463DE0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02463DE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02463DE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463DE8 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02463DE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02463DEC */ cpu->r[0] = cpu->r[0] + 0x000033D4u;
|
|
/* 02463DF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463DF4 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 02463DF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02463DF8 */ Gambit_fn_02068798(cpu);
|
|
/* 02463DFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463E00 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E00 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02463E00 */ if (_t10) goto L_02463E0C; else goto L_02463E04;
|
|
L_02463E04: ; // 0x2463e04
|
|
/* 02463E04 */ cpu->r[3] = cpu->r[30];
|
|
/* 02463E08 */ Gambit_fn_02801BB0(cpu);
|
|
L_02463E0C: ; // 0x2463e0c
|
|
/* 02463E0C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02463E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02463E10 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02463E10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02463E14 */ cpu->lr = cpu->r[0];
|
|
/* 02463E18 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02463E1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463E20 */ return;
|
|
}
|
|
|
|
// fn_02463DB0 @ 0x2463db0
|
|
void Gambit_fn_02463DB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02463DB0: ; // 0x2463db0
|
|
/* 02463DB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463DB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463DB0 */ cpu->r[1] = _t0;
|
|
/* 02463DB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463DB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463DB8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02463DB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02463DBC */ cpu->r[30] = cpu->r[3];
|
|
/* 02463DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02463DC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02463DC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02463DC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02463DC8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463DC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02463DC8 */ if (_t5) goto L_02463E0C; else goto L_02463DCC;
|
|
L_02463DCC: ; // 0x2463dcc
|
|
/* 02463DCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02463DD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463DD4 */ cpu->r[11] = cpu->r[11] + 0x000033C4u;
|
|
/* 02463DD8 */ cpu->r[0] = cpu->r[0] + 0x000033B4u;
|
|
/* 02463DDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02463DE0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02463DE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02463DE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463DE8 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02463DE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02463DEC */ cpu->r[0] = cpu->r[0] + 0x000033D4u;
|
|
/* 02463DF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02463DF4 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 02463DF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02463DF8 */ Gambit_fn_02068798(cpu);
|
|
/* 02463DFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463E00 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E00 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02463E00 */ if (_t10) goto L_02463E0C; else goto L_02463E04;
|
|
L_02463E04: ; // 0x2463e04
|
|
/* 02463E04 */ cpu->r[3] = cpu->r[30];
|
|
/* 02463E08 */ Gambit_fn_02801BB0(cpu);
|
|
L_02463E0C: ; // 0x2463e0c
|
|
/* 02463E0C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02463E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02463E10 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02463E10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02463E14 */ cpu->lr = cpu->r[0];
|
|
/* 02463E18 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02463E1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463E20 */ return;
|
|
}
|
|
|
|
// fn_02463E24 @ 0x2463e24
|
|
void Gambit_fn_02463E24(CPUState* cpu) {
|
|
L_02463E24: ; // 0x2463e24
|
|
/* 02463E24 */ return;
|
|
}
|
|
|
|
// fn_02463E28 @ 0x2463e28
|
|
void Gambit_fn_02463E28(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02463E28: ; // 0x2463e28
|
|
/* 02463E28 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02463E28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463E2C */ return;
|
|
}
|
|
|
|
// fn_02463E30 @ 0x2463e30
|
|
void Gambit_fn_02463E30(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02463E30: ; // 0x2463e30
|
|
/* 02463E30 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02463E30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463E34 */ return;
|
|
}
|
|
|
|
// fn_02463E38 @ 0x2463e38
|
|
void Gambit_fn_02463E38(CPUState* cpu) {
|
|
L_02463E38: ; // 0x2463e38
|
|
/* 02463E38 */ return;
|
|
}
|
|
|
|
// fn_02463E3C @ 0x2463e3c
|
|
void Gambit_fn_02463E3C(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_02463E3C: ; // 0x2463e3c
|
|
/* 02463E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463E40 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E40 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02463E40 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E40 */ goto L_02463E44;
|
|
L_02463E44: ; // 0x2463e44
|
|
/* 02463E44 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463E48 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E48 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02463E48 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E48 */ goto L_02463E4C;
|
|
L_02463E4C: ; // 0x2463e4c
|
|
/* 02463E4C */ 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_02463E50 @ 0x2463e50
|
|
void Gambit_fn_02463E50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02463E50: ; // 0x2463e50
|
|
/* 02463E50 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02463E50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463E54 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02463E54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02463E58 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02463E5C */ cpu->r[11] = 0x10110000u;
|
|
/* 02463E60 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02463E60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02463E64 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02463E64 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02463E68 */ return;
|
|
}
|
|
|
|
// fn_02463E6C @ 0x2463e6c
|
|
void Gambit_fn_02463E6C(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_02463E6C: ; // 0x2463e6c
|
|
/* 02463E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463E70 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E70 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02463E70 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E70 */ goto L_02463E74;
|
|
L_02463E74: ; // 0x2463e74
|
|
/* 02463E74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463E78 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E78 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02463E78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E78 */ goto L_02463E7C;
|
|
L_02463E7C: ; // 0x2463e7c
|
|
/* 02463E7C */ 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_02463E80 @ 0x2463e80
|
|
void Gambit_fn_02463E80(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_02463E80: ; // 0x2463e80
|
|
/* 02463E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463E84 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E84 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02463E84 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E84 */ goto L_02463E88;
|
|
L_02463E88: ; // 0x2463e88
|
|
/* 02463E88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463E8C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02463E8C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E8C */ goto L_02463E90;
|
|
L_02463E90: ; // 0x2463e90
|
|
/* 02463E90 */ 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_02463E94 @ 0x2463e94
|
|
void Gambit_fn_02463E94(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_02463E94: ; // 0x2463e94
|
|
/* 02463E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463E98 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463E98 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02463E98 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463E98 */ goto L_02463E9C;
|
|
L_02463E9C: ; // 0x2463e9c
|
|
/* 02463E9C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463E9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463EA0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463EA0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02463EA0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463EA0 */ goto L_02463EA4;
|
|
L_02463EA4: ; // 0x2463ea4
|
|
/* 02463EA4 */ 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_02463EA8 @ 0x2463ea8
|
|
void Gambit_fn_02463EA8(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_02463EA8: ; // 0x2463ea8
|
|
/* 02463EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02463EAC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463EAC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02463EAC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463EAC */ goto L_02463EB0;
|
|
L_02463EB0: ; // 0x2463eb0
|
|
/* 02463EB0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02463EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02463EB4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463EB4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02463EB4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02463EB4 */ goto L_02463EB8;
|
|
L_02463EB8: ; // 0x2463eb8
|
|
/* 02463EB8 */ 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_02463EBC @ 0x2463ebc
|
|
void Gambit_fn_02463EBC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02463EBC: ; // 0x2463ebc
|
|
/* 02463EBC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02463EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463EC0 */ return;
|
|
}
|
|
|
|
// fn_02463EC4 @ 0x2463ec4
|
|
void Gambit_fn_02463EC4(CPUState* cpu) {
|
|
L_02463EC4: ; // 0x2463ec4
|
|
/* 02463EC4 */ return;
|
|
}
|
|
|
|
// fn_02463EC8 @ 0x2463ec8
|
|
void Gambit_fn_02463EC8(CPUState* cpu) {
|
|
L_02463EC8: ; // 0x2463ec8
|
|
/* 02463EC8 */ return;
|
|
}
|
|
|
|
// fn_02463ECC @ 0x2463ecc
|
|
void Gambit_fn_02463ECC(CPUState* cpu) {
|
|
L_02463ECC: ; // 0x2463ecc
|
|
/* 02463ECC */ return;
|
|
}
|
|
|
|
// fn_02463ED0 @ 0x2463ed0
|
|
void Gambit_fn_02463ED0(CPUState* cpu) {
|
|
L_02463ED0: ; // 0x2463ed0
|
|
/* 02463ED0 */ return;
|
|
}
|
|
|
|
// fn_02463ED4 @ 0x2463ed4
|
|
void Gambit_fn_02463ED4(CPUState* cpu) {
|
|
L_02463ED4: ; // 0x2463ed4
|
|
/* 02463ED4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02463ED8 */ return;
|
|
}
|
|
|
|
// fn_02463EDC @ 0x2463edc
|
|
void Gambit_fn_02463EDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02463EDC: ; // 0x2463edc
|
|
/* 02463EDC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02463EDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463EE0 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02463EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02463EE4 */ cpu->ctr = cpu->r[0];
|
|
/* 02463EE8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02463EEC @ 0x2463eec
|
|
void Gambit_fn_02463EEC(CPUState* cpu) {
|
|
L_02463EEC: ; // 0x2463eec
|
|
/* 02463EEC */ return;
|
|
}
|
|
|
|
// fn_02463EF0 @ 0x2463ef0
|
|
void Gambit_fn_02463EF0(CPUState* cpu) {
|
|
L_02463EF0: ; // 0x2463ef0
|
|
/* 02463EF0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02463EF4 */ return;
|
|
}
|
|
|
|
// fn_02463EF8 @ 0x2463ef8
|
|
void Gambit_fn_02463EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02463EF8: ; // 0x2463ef8
|
|
/* 02463EF8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02463EFC */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02463EFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02463EFC */ cpu->r[9] = _t0;
|
|
/* 02463F00 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02463F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02463F08 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02463F0C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463F0C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02463F0C */ if (_t2) goto L_02463F10; else goto L_02463F24;
|
|
L_02463F10: ; // 0x2463f10
|
|
/* 02463F10 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02463F14 */ cpu->r[0] = 0x00000001u;
|
|
/* 02463F18 */ cpu->r[7] = cpu->r[7] + 0x000030F0u;
|
|
/* 02463F1C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02463F1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02463F20 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02463F20 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02463F24: ; // 0x2463f24
|
|
/* 02463F24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02463F28 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463F28 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02463F28 */ if (_t6) goto L_02463F2C; else goto L_02463F34;
|
|
L_02463F2C: ; // 0x2463f2c
|
|
/* 02463F2C */ cpu->r[3] = 0x00000001u;
|
|
/* 02463F30 */ return;
|
|
L_02463F34: ; // 0x2463f34
|
|
/* 02463F34 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02463F38 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02463F38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02463F38 */ cpu->r[7] = _t7;
|
|
/* 02463F3C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02463F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02463F44 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02463F48 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02463F48 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02463F48 */ if (_t9) goto L_02463F4C; else goto L_02463F60;
|
|
L_02463F4C: ; // 0x2463f4c
|
|
/* 02463F4C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02463F50 */ cpu->r[9] = 0x00000001u;
|
|
/* 02463F54 */ cpu->r[0] = cpu->r[0] + 0x00003050u;
|
|
/* 02463F58 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02463F58 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02463F5C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02463F5C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02463F60: ; // 0x2463f60
|
|
/* 02463F60 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02463F64 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02463F68 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02463F6C */ return;
|
|
}
|
|
|
|
// fn_02463F70 @ 0x2463f70
|
|
void Gambit_fn_02463F70(CPUState* cpu) {
|
|
L_02463F70: ; // 0x2463f70
|
|
/* 02463F70 */ return;
|
|
}
|
|
|
|
// fn_02463F74 @ 0x2463f74
|
|
void Gambit_fn_02463F74(CPUState* cpu) {
|
|
L_02463F74: ; // 0x2463f74
|
|
/* 02463F74 */ cpu->r[3] = 0x00000000u;
|
|
/* 02463F78 */ return;
|
|
}
|
|
|
|
// fn_02463F7C @ 0x2463f7c
|
|
void Gambit_fn_02463F7C(CPUState* cpu) {
|
|
L_02463F7C: ; // 0x2463f7c
|
|
/* 02463F7C */ cpu->r[3] = 0x00000000u;
|
|
/* 02463F80 */ return;
|
|
}
|
|
|
|
// fn_02463F84 @ 0x2463f84
|
|
void Gambit_fn_02463F84(CPUState* cpu) {
|
|
L_02463F84: ; // 0x2463f84
|
|
/* 02463F84 */ return;
|
|
}
|
|
|
|
// fn_02463F88 @ 0x2463f88
|
|
void Gambit_fn_02463F88(CPUState* cpu) {
|
|
L_02463F88: ; // 0x2463f88
|
|
/* 02463F88 */ return;
|
|
}
|
|
|
|
// fn_02463F8C @ 0x2463f8c
|
|
void Gambit_fn_02463F8C(CPUState* cpu) {
|
|
L_02463F8C: ; // 0x2463f8c
|
|
/* 02463F8C */ return;
|
|
}
|
|
|
|
// fn_02463F90 @ 0x2463f90
|
|
void Gambit_fn_02463F90(CPUState* cpu) {
|
|
L_02463F90: ; // 0x2463f90
|
|
/* 02463F90 */ return;
|
|
}
|
|
|
|
// fn_02463F94 @ 0x2463f94
|
|
void Gambit_fn_02463F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02463F94: ; // 0x2463f94
|
|
/* 02463F94 */ cpu->r[0] = cpu->lr;
|
|
/* 02463F98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463F98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463F98 */ cpu->r[1] = _t0;
|
|
/* 02463F9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463F9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463FA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02463FA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463FA4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02463FA4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02463FA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463FAC */ /* nop */
|
|
/* 02463FB0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02463FB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463FB8 */ Gambit_fn_024643A0(cpu);
|
|
/* 02463FBC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02463FBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02463FC0 */ cpu->lr = cpu->r[0];
|
|
/* 02463FC4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463FC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463FC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463FCC */ return;
|
|
}
|
|
|
|
// fn_02463F98 @ 0x2463f98
|
|
void Gambit_fn_02463F98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02463F98: ; // 0x2463f98
|
|
/* 02463F98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02463F98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463F98 */ cpu->r[1] = _t0;
|
|
/* 02463F9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463F9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02463FA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02463FA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02463FA4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02463FA4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02463FA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02463FAC */ /* nop */
|
|
/* 02463FB0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02463FB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02463FB8 */ Gambit_fn_024643A0(cpu);
|
|
/* 02463FBC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02463FBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02463FC0 */ cpu->lr = cpu->r[0];
|
|
/* 02463FC4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02463FC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02463FC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02463FCC */ return;
|
|
}
|
|
|
|
// fn_02463FD0 @ 0x2463fd0
|
|
void Gambit_fn_02463FD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02463FD0: ; // 0x2463fd0
|
|
/* 02463FD0 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02463FD4 */ goto L_02464528;
|
|
L_02464528: ; // 0x2464528
|
|
/* 02464528 */ cpu->r[0] = cpu->lr;
|
|
/* 0246452C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246452C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246452C */ cpu->r[1] = _t0;
|
|
/* 02464530 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464530 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464534 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02464538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246453C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0246453C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02464540 */ cpu->r[12] = 0x00000000u;
|
|
/* 02464544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02464548 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02464548 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0246454C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246454C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246454C */ if (_t6) goto L_02464574; else goto L_02464550;
|
|
L_02464550: ; // 0x2464550
|
|
/* 02464550 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464550 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02464554 */ /* nop */
|
|
/* 02464558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0246455C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246455C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0246455C */ if (_t9) goto L_02464560; else goto L_02464574;
|
|
L_02464560: ; // 0x2464560
|
|
/* 02464560 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02464560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02464564 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02464564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464568 */ cpu->ctr = cpu->r[0];
|
|
/* 0246456C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464570 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02464574: ; // 0x2464574
|
|
/* 02464574 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464578 */ Gambit_fn_024644A0(cpu);
|
|
/* 0246457C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464580 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02464584 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02464584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02464588 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246458C */ cpu->lr = cpu->r[0];
|
|
/* 02464590 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464594 */ return;
|
|
}
|
|
|
|
// fn_02463FE0 @ 0x2463fe0
|
|
void Gambit_fn_02463FE0(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_02463FE0: ; // 0x2463fe0
|
|
/* 02463FE0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02463FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02463FE0 */ cpu->r[1] = _t0;
|
|
/* 02463FE4 */ /* nop */
|
|
/* 02463FE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02463FEC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02463FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02463FF0 */ cpu->r[29] = cpu->r[6];
|
|
/* 02463FF4 */ cpu->r[28] = cpu->r[3];
|
|
/* 02463FF8 */ cpu->r[30] = cpu->r[5];
|
|
/* 02463FFC */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02463FFC */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02464000 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02464004 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02464004 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02464008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0246400C */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0246400C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02464010 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464010 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02464010 */ if (_t6) goto L_02464054; else goto L_02464014;
|
|
L_02464014: ; // 0x2464014
|
|
/* 02464014 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02464014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02464018 */ Gambit_fn_02826F20(cpu);
|
|
/* 0246401C */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0246401C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02464020 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 02464020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02464024 */ cpu->ctr = cpu->r[0];
|
|
/* 02464028 */ cpu->r[5] = 0x00000004u;
|
|
/* 0246402C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464030 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02464038 */ cpu->r[0] = cpu->r[27];
|
|
/* 0246403C */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246403C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0246403C */ if (_t11) goto L_02464044; else goto L_02464040;
|
|
L_02464040: ; // 0x2464040
|
|
/* 02464040 */ cpu->r[0] = 0x00000001u;
|
|
L_02464044: ; // 0x2464044
|
|
/* 02464044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02464048 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464048 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02464048 */ if (_t13) goto L_02464054; else goto L_0246404C;
|
|
L_0246404C: ; // 0x246404c
|
|
/* 0246404C */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 0246404C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02464050 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 02464050 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02464054: ; // 0x2464054
|
|
/* 02464054 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02464054 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02464058 */ cpu->r[0] = 0x00000000u;
|
|
/* 0246405C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02464060 */ cpu->r[12] = cpu->r[0];
|
|
/* 02464064 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02464064 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02464064 */ if (_t18) goto L_02464068; else goto L_0246408C;
|
|
L_02464068: ; // 0x2464068
|
|
/* 02464068 */ cpu->ctr = cpu->r[7];
|
|
/* 0246406C */ cpu->r[10] = 0x00000000u;
|
|
L_02464070: ; // 0x2464070
|
|
/* 02464070 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 02464070 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02464074 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02464074 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02464078 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0246407C */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 0246407C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02464080 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02464084 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02464084 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02464088 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02464088 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02464088 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02464088 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02464088 */ if (_t25) goto L_02464070; else goto L_0246408C;
|
|
L_0246408C: ; // 0x246408c
|
|
/* 0246408C */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0246408C */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02464090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02464094 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464094 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02464094 */ if (_t28) goto L_024640D8; else goto L_02464098;
|
|
L_02464098: ; // 0x2464098
|
|
/* 02464098 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02464098 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0246409C */ Gambit_fn_02826F20(cpu);
|
|
/* 024640A0 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024640A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024640A4 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 024640A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024640A8 */ cpu->ctr = cpu->r[0];
|
|
/* 024640AC */ cpu->r[5] = 0x00000004u;
|
|
/* 024640B0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024640B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024640B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024640BC */ cpu->r[11] = cpu->r[27];
|
|
/* 024640C0 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024640C0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024640C0 */ if (_t33) goto L_024640C8; else goto L_024640C4;
|
|
L_024640C4: ; // 0x24640c4
|
|
/* 024640C4 */ cpu->r[11] = 0x00000001u;
|
|
L_024640C8: ; // 0x24640c8
|
|
/* 024640C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024640CC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024640CC */ _t35 = _t34 & 0x00000001u;
|
|
/* 024640CC */ if (_t35) goto L_024640D8; else goto L_024640D0;
|
|
L_024640D0: ; // 0x24640d0
|
|
/* 024640D0 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024640D0 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 024640D4 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 024640D4 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_024640D8: ; // 0x24640d8
|
|
/* 024640D8 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 024640D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024640DC */ cpu->r[0] = 0x00000000u;
|
|
/* 024640E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024640E4 */ cpu->r[12] = cpu->r[0];
|
|
/* 024640E8 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024640E8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024640E8 */ if (_t40) goto L_024640EC; else goto L_02464110;
|
|
L_024640EC: ; // 0x24640ec
|
|
/* 024640EC */ cpu->ctr = cpu->r[6];
|
|
/* 024640F0 */ cpu->r[9] = 0x00000000u;
|
|
L_024640F4: ; // 0x24640f4
|
|
/* 024640F4 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024640F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024640F8 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 024640F8 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 024640FC */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02464100 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02464100 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02464104 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02464108 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02464108 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 0246410C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0246410C */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0246410C */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 0246410C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0246410C */ if (_t47) goto L_024640F4; else goto L_02464110;
|
|
L_02464110: ; // 0x2464110
|
|
/* 02464110 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02464110 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02464114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02464118 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464118 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02464118 */ if (_t50) goto L_0246415C; else goto L_0246411C;
|
|
L_0246411C: ; // 0x246411c
|
|
/* 0246411C */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0246411C */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02464120 */ Gambit_fn_02826F20(cpu);
|
|
/* 02464124 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02464124 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02464128 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 02464128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0246412C */ cpu->ctr = cpu->r[0];
|
|
/* 02464130 */ cpu->r[5] = 0x00000004u;
|
|
/* 02464134 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464138 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246413C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02464140 */ cpu->r[10] = cpu->r[27];
|
|
/* 02464144 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02464144 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02464144 */ if (_t55) goto L_0246414C; else goto L_02464148;
|
|
L_02464148: ; // 0x2464148
|
|
/* 02464148 */ cpu->r[10] = 0x00000001u;
|
|
L_0246414C: ; // 0x246414c
|
|
/* 0246414C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02464150 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464150 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02464150 */ if (_t57) goto L_0246415C; else goto L_02464154;
|
|
L_02464154: ; // 0x2464154
|
|
/* 02464154 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02464154 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02464158 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 02464158 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0246415C: ; // 0x246415c
|
|
/* 0246415C */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0246415C */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02464160 */ cpu->r[0] = 0x00000000u;
|
|
/* 02464164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02464168 */ cpu->r[5] = cpu->r[0];
|
|
/* 0246416C */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246416C */ _t62 = _t61 & 0x00000001u;
|
|
/* 0246416C */ if (_t62) goto L_02464170; else goto L_02464194;
|
|
L_02464170: ; // 0x2464170
|
|
/* 02464170 */ cpu->ctr = cpu->r[12];
|
|
/* 02464174 */ cpu->r[8] = 0x00000000u;
|
|
L_02464178: ; // 0x2464178
|
|
/* 02464178 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02464178 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0246417C */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0246417C */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02464180 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02464184 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02464184 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02464188 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0246418C */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0246418C */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02464190 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02464190 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02464190 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02464190 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02464190 */ if (_t69) goto L_02464178; else goto L_02464194;
|
|
L_02464194: ; // 0x2464194
|
|
/* 02464194 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02464194 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02464198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0246419C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246419C */ _t72 = _t71 & 0x00000001u;
|
|
/* 0246419C */ if (_t72) goto L_02464278; else goto L_024641A0;
|
|
L_024641A0: ; // 0x24641a0
|
|
/* 024641A0 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024641A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024641A4 */ Gambit_fn_02826F20(cpu);
|
|
/* 024641A8 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024641A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024641AC */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 024641AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024641B0 */ cpu->ctr = cpu->r[12];
|
|
/* 024641B4 */ cpu->r[5] = 0x00000004u;
|
|
/* 024641B8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 024641BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024641C0 */ cpu->r[24] = cpu->r[3];
|
|
/* 024641C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024641C8 */ cpu->r[30] = cpu->r[25];
|
|
/* 024641CC */ cpu->r[7] = 0x00000000u;
|
|
/* 024641D0 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024641D0 */ _t77 = _t76 & 0x00000001u;
|
|
/* 024641D0 */ if (_t77) goto L_024641D8; else goto L_024641D4;
|
|
L_024641D4: ; // 0x24641d4
|
|
/* 024641D4 */ cpu->r[30] = 0x00000001u;
|
|
L_024641D8: ; // 0x24641d8
|
|
/* 024641D8 */ cpu->r[31] = 0x10110000u;
|
|
/* 024641DC */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 024641E0 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 024641E0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 024641E4 */ cpu->r[23] = 0x00000018u;
|
|
L_024641E8: ; // 0x24641e8
|
|
/* 024641E8 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 024641E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024641EC */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024641EC */ _t80 = _t79 & 0x00000001u;
|
|
/* 024641EC */ if (_t80) goto L_0246425C; else goto L_024641F0;
|
|
L_024641F0: ; // 0x24641f0
|
|
/* 024641F0 */ cpu->r[26] = cpu->r[27];
|
|
/* 024641F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024641F4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024641F4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 024641F4 */ if (_t82) goto L_024641F8; else goto L_02464208;
|
|
L_024641F8: ; // 0x24641f8
|
|
/* 024641F8 */ cpu->r[3] = 0x00000024u;
|
|
/* 024641FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02464200 */ cpu->r[26] = cpu->r[3];
|
|
/* 02464200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02464204 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464204 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02464204 */ if (_t84) goto L_02464250; else goto L_02464208;
|
|
L_02464208: ; // 0x2464208
|
|
/* 02464208 */ cpu->r[11] = cpu->r[26];
|
|
/* 02464208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0246420C */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246420C */ _t86 = _t85 & 0x00000001u;
|
|
/* 0246420C */ if (_t86) goto L_02464210; else goto L_02464220;
|
|
L_02464210: ; // 0x2464210
|
|
/* 02464210 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02464214 */ Gambit_fn_02801A78(cpu);
|
|
/* 02464218 */ cpu->r[11] = cpu->r[3];
|
|
/* 02464218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0246421C */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246421C */ _t88 = _t87 & 0x00000001u;
|
|
/* 0246421C */ if (_t88) goto L_0246423C; else goto L_02464220;
|
|
L_02464220: ; // 0x2464220
|
|
/* 02464220 */ cpu->r[5] = 0x100A0000u;
|
|
/* 02464224 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 02464224 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 02464228 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0246422C */ cpu->r[5] = cpu->r[5] + 0x00003078u;
|
|
/* 02464230 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 02464230 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02464234 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 02464234 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 02464238 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 02464238 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0246423C: ; // 0x246423c
|
|
/* 0246423C */ cpu->r[6] = 0x100A0000u;
|
|
/* 02464240 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 02464240 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02464244 */ cpu->r[6] = cpu->r[6] + 0x000030C0u;
|
|
/* 02464248 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 02464248 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0246424C */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0246424C */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_02464250: ; // 0x2464250
|
|
/* 02464250 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464254 */ cpu->r[0] = cpu->r[0] + 0x000030D8u;
|
|
/* 02464258 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 02464258 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0246425C: ; // 0x246425c
|
|
/* 0246425C */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0246425C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464260 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02464264 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464264 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02464264 */ if (_t98) goto L_02464268; else goto L_024641E8;
|
|
L_02464268: ; // 0x2464268
|
|
/* 02464268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246426C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246426C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0246426C */ if (_t100) goto L_02464278; else goto L_02464270;
|
|
L_02464270: ; // 0x2464270
|
|
/* 02464270 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 02464270 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02464274 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02464274 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02464278: ; // 0x2464278
|
|
/* 02464278 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02464278 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0246427C */ /* nop */
|
|
/* 02464280 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02464280 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02464284 */ cpu->lr = cpu->r[0];
|
|
/* 02464288 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0246428C */ return;
|
|
}
|
|
|
|
// fn_02464290 @ 0x2464290
|
|
void Gambit_fn_02464290(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_02464290: ; // 0x2464290
|
|
/* 02464290 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02464290 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02464294 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02464294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02464298 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02464298 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0246429C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 024642A0 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 024642A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024642A4 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024642A4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024642A4 */ if (_t5) goto L_024642A8; else goto L_024642B0;
|
|
L_024642A8: ; // 0x24642a8
|
|
/* 024642A8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024642AC */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_024642B0: ; // 0x24642b0
|
|
/* 024642B0 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024642B0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024642B4 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 024642B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024642B8 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024642B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 024642BC */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 024642BC */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 024642C0 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 024642C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024642C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 024642C8 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024642C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024642CC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024642CC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024642CC */ if (_t13) goto L_024642D0; else goto L_024642D8;
|
|
L_024642D0: ; // 0x24642d0
|
|
/* 024642D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024642D4 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024642D8: ; // 0x24642d8
|
|
/* 024642D8 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 024642D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024642DC */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024642DC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024642E0 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 024642E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024642E4 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 024642E4 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 024642E8 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 024642E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024642EC */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 024642EC */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024642F0 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 024642F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024642F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 024642F8 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 024642F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024642FC */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024642FC */ _t23 = _t22 & 0x00000001u;
|
|
/* 024642FC */ if (_t23) goto L_02464300; else goto L_02464308;
|
|
L_02464300: ; // 0x2464300
|
|
/* 02464300 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464304 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02464308: ; // 0x2464308
|
|
/* 02464308 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02464308 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0246430C */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 0246430C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02464310 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 02464310 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02464314 */ return;
|
|
}
|
|
|
|
// fn_02464318 @ 0x2464318
|
|
void Gambit_fn_02464318(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_02464318: ; // 0x2464318
|
|
/* 02464318 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02464318 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0246431C */ /* nop */
|
|
/* 02464320 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02464320 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02464324 */ cpu->r[7] = cpu->r[0];
|
|
/* 02464328 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0246432C */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0246432C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02464330 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464330 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02464330 */ if (_t4) goto L_02464334; else goto L_0246434C;
|
|
L_02464334: ; // 0x2464334
|
|
/* 02464334 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464338 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0246433C */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0246433C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02464340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02464344 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464344 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02464344 */ if (_t7) goto L_02464348; else goto L_02464358;
|
|
L_02464348: ; // 0x2464348
|
|
/* 02464348 */ return;
|
|
L_0246434C: ; // 0x246434c
|
|
/* 0246434C */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0246434C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02464350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02464354 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464354 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02464354 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02464354 */ goto L_02464358;
|
|
L_02464358: ; // 0x2464358
|
|
/* 02464358 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0246435C */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0246435C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464360 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464360 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02464360 */ if (_t13) goto L_02464364; else goto L_0246436C;
|
|
L_02464364: ; // 0x2464364
|
|
/* 02464364 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464368 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0246436C: ; // 0x246436c
|
|
/* 0246436C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0246436C */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02464370 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02464370 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02464374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02464378 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02464378 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246437C */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02464380 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464380 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02464380 */ if (_t18) goto L_02464398; else goto L_02464384;
|
|
L_02464384: ; // 0x2464384
|
|
/* 02464384 */ /* nop */
|
|
/* 02464388 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02464388 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0246438C */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464390 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02464394 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02464394 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02464398: ; // 0x2464398
|
|
/* 02464398 */ cpu->ctr = cpu->r[11];
|
|
/* 0246439C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024643A0 @ 0x24643a0
|
|
void Gambit_fn_024643A0(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_024643A0: ; // 0x24643a0
|
|
/* 024643A0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024643A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024643A4 */ /* nop */
|
|
/* 024643A8 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 024643A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024643AC */ cpu->r[8] = cpu->r[0];
|
|
/* 024643B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 024643B4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 024643B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024643B8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024643B8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024643B8 */ if (_t4) goto L_024643BC; else goto L_024643D4;
|
|
L_024643BC: ; // 0x24643bc
|
|
/* 024643BC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024643C0 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 024643C4 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 024643C4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 024643C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024643CC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024643CC */ _t7 = _t6 & 0x00000001u;
|
|
/* 024643CC */ if (_t7) goto L_024643D0; else goto L_024643E0;
|
|
L_024643D0: ; // 0x24643d0
|
|
/* 024643D0 */ return;
|
|
L_024643D4: ; // 0x24643d4
|
|
/* 024643D4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 024643D4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 024643D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024643DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024643DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024643DC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024643DC */ goto L_024643E0;
|
|
L_024643E0: ; // 0x24643e0
|
|
/* 024643E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 024643E4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 024643E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024643E8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024643E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024643E8 */ if (_t13) goto L_024643EC; else goto L_024643F4;
|
|
L_024643EC: ; // 0x24643ec
|
|
/* 024643EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024643F0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_024643F4: ; // 0x24643f4
|
|
/* 024643F4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 024643F4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 024643F8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 024643F8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 024643FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02464400 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02464400 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02464404 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02464408 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464408 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02464408 */ if (_t18) goto L_02464420; else goto L_0246440C;
|
|
L_0246440C: ; // 0x246440c
|
|
/* 0246440C */ /* nop */
|
|
/* 02464410 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02464410 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02464414 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464418 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0246441C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0246441C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02464420: ; // 0x2464420
|
|
/* 02464420 */ cpu->ctr = cpu->r[11];
|
|
/* 02464424 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02464428 @ 0x2464428
|
|
void Gambit_fn_02464428(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02464428: ; // 0x2464428
|
|
/* 02464428 */ cpu->r[0] = cpu->lr;
|
|
/* 0246442C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246442C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246442C */ cpu->r[1] = _t0;
|
|
/* 02464430 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02464430 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02464434 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464434 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02464438 */ cpu->r[30] = cpu->r[3];
|
|
/* 0246443C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246443C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02464440 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02464440 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02464444 */ /* nop */
|
|
/* 02464448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0246444C */ cpu->r[31] = cpu->r[4];
|
|
/* 02464450 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464450 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02464450 */ if (_t6) goto L_02464454; else goto L_02464468;
|
|
L_02464454: ; // 0x2464454
|
|
/* 02464454 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02464454 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02464458 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02464458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246445C */ cpu->ctr = cpu->r[0];
|
|
/* 02464460 */ cpu->r[3] = cpu->r[30];
|
|
/* 02464464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02464468: ; // 0x2464468
|
|
/* 02464468 */ cpu->r[3] = cpu->r[30];
|
|
/* 0246446C */ cpu->r[4] = cpu->r[31];
|
|
/* 02464470 */ Gambit_fn_02464318(cpu);
|
|
/* 02464474 */ cpu->r[3] = cpu->r[30];
|
|
/* 02464478 */ /* nop */
|
|
/* 0246447C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02464480 */ cpu->r[3] = cpu->r[30];
|
|
/* 02464484 */ Gambit_fn_024643A0(cpu);
|
|
/* 02464488 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02464488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246448C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0246448C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02464490 */ cpu->lr = cpu->r[0];
|
|
/* 02464494 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464494 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464498 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246449C */ return;
|
|
}
|
|
|
|
// fn_0246442C @ 0x246442c
|
|
void Gambit_fn_0246442C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0246442C: ; // 0x246442c
|
|
/* 0246442C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246442C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246442C */ cpu->r[1] = _t0;
|
|
/* 02464430 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02464430 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02464434 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464434 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02464438 */ cpu->r[30] = cpu->r[3];
|
|
/* 0246443C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246443C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02464440 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02464440 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02464444 */ /* nop */
|
|
/* 02464448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0246444C */ cpu->r[31] = cpu->r[4];
|
|
/* 02464450 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464450 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02464450 */ if (_t6) goto L_02464454; else goto L_02464468;
|
|
L_02464454: ; // 0x2464454
|
|
/* 02464454 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02464454 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02464458 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02464458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246445C */ cpu->ctr = cpu->r[0];
|
|
/* 02464460 */ cpu->r[3] = cpu->r[30];
|
|
/* 02464464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02464468: ; // 0x2464468
|
|
/* 02464468 */ cpu->r[3] = cpu->r[30];
|
|
/* 0246446C */ cpu->r[4] = cpu->r[31];
|
|
/* 02464470 */ Gambit_fn_02464318(cpu);
|
|
/* 02464474 */ cpu->r[3] = cpu->r[30];
|
|
/* 02464478 */ /* nop */
|
|
/* 0246447C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02464480 */ cpu->r[3] = cpu->r[30];
|
|
/* 02464484 */ Gambit_fn_024643A0(cpu);
|
|
/* 02464488 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02464488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246448C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0246448C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02464490 */ cpu->lr = cpu->r[0];
|
|
/* 02464494 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464494 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464498 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246449C */ return;
|
|
}
|
|
|
|
// fn_024644A0 @ 0x24644a0
|
|
void Gambit_fn_024644A0(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_024644A0: ; // 0x24644a0
|
|
/* 024644A0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024644A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024644A4 */ /* nop */
|
|
/* 024644A8 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 024644A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024644AC */ cpu->r[8] = cpu->r[0];
|
|
/* 024644B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 024644B4 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024644B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024644B8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024644B8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024644B8 */ if (_t4) goto L_024644BC; else goto L_024644D4;
|
|
L_024644BC: ; // 0x24644bc
|
|
/* 024644BC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024644C0 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 024644C4 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 024644C4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 024644C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024644CC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024644CC */ _t7 = _t6 & 0x00000001u;
|
|
/* 024644CC */ if (_t7) goto L_024644D0; else goto L_024644E0;
|
|
L_024644D0: ; // 0x24644d0
|
|
/* 024644D0 */ return;
|
|
L_024644D4: ; // 0x24644d4
|
|
/* 024644D4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 024644D4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 024644D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024644DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024644DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024644DC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024644DC */ goto L_024644E0;
|
|
L_024644E0: ; // 0x24644e0
|
|
/* 024644E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 024644E4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 024644E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024644E8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024644E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024644E8 */ if (_t13) goto L_024644EC; else goto L_024644F4;
|
|
L_024644EC: ; // 0x24644ec
|
|
/* 024644EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024644F0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_024644F4: ; // 0x24644f4
|
|
/* 024644F4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 024644F4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 024644F8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 024644F8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 024644FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02464500 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02464500 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02464504 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02464508 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464508 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02464508 */ if (_t18) goto L_02464520; else goto L_0246450C;
|
|
L_0246450C: ; // 0x246450c
|
|
/* 0246450C */ /* nop */
|
|
/* 02464510 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02464510 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02464514 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02464518 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0246451C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0246451C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02464520: ; // 0x2464520
|
|
/* 02464520 */ cpu->ctr = cpu->r[11];
|
|
/* 02464524 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02464528 @ 0x2464528
|
|
void Gambit_fn_02464528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02464528: ; // 0x2464528
|
|
/* 02464528 */ cpu->r[0] = cpu->lr;
|
|
/* 0246452C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246452C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246452C */ cpu->r[1] = _t0;
|
|
/* 02464530 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464530 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464534 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02464538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246453C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0246453C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02464540 */ cpu->r[12] = 0x00000000u;
|
|
/* 02464544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02464548 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02464548 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0246454C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246454C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246454C */ if (_t6) goto L_02464574; else goto L_02464550;
|
|
L_02464550: ; // 0x2464550
|
|
/* 02464550 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464550 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02464554 */ /* nop */
|
|
/* 02464558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0246455C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246455C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0246455C */ if (_t9) goto L_02464560; else goto L_02464574;
|
|
L_02464560: ; // 0x2464560
|
|
/* 02464560 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02464560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02464564 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02464564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464568 */ cpu->ctr = cpu->r[0];
|
|
/* 0246456C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464570 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02464574: ; // 0x2464574
|
|
/* 02464574 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464578 */ Gambit_fn_024644A0(cpu);
|
|
/* 0246457C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464580 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02464584 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02464584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02464588 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246458C */ cpu->lr = cpu->r[0];
|
|
/* 02464590 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464594 */ return;
|
|
}
|
|
|
|
// fn_0246452C @ 0x246452c
|
|
void Gambit_fn_0246452C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0246452C: ; // 0x246452c
|
|
/* 0246452C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246452C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246452C */ cpu->r[1] = _t0;
|
|
/* 02464530 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464530 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464534 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02464538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246453C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0246453C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02464540 */ cpu->r[12] = 0x00000000u;
|
|
/* 02464544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02464548 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02464548 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0246454C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246454C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246454C */ if (_t6) goto L_02464574; else goto L_02464550;
|
|
L_02464550: ; // 0x2464550
|
|
/* 02464550 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464550 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02464554 */ /* nop */
|
|
/* 02464558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0246455C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246455C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0246455C */ if (_t9) goto L_02464560; else goto L_02464574;
|
|
L_02464560: ; // 0x2464560
|
|
/* 02464560 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02464560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02464564 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02464564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464568 */ cpu->ctr = cpu->r[0];
|
|
/* 0246456C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464570 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02464574: ; // 0x2464574
|
|
/* 02464574 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464578 */ Gambit_fn_024644A0(cpu);
|
|
/* 0246457C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464580 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02464584 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02464584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02464588 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246458C */ cpu->lr = cpu->r[0];
|
|
/* 02464590 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464594 */ return;
|
|
}
|
|
|
|
// fn_02464598 @ 0x2464598
|
|
void Gambit_fn_02464598(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02464598: ; // 0x2464598
|
|
/* 02464598 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0246459C */ goto L_02464950;
|
|
L_02464950: ; // 0x2464950
|
|
/* 02464950 */ cpu->r[0] = cpu->lr;
|
|
/* 02464954 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02464954 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464954 */ cpu->r[1] = _t0;
|
|
/* 02464958 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464958 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246495C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0246495C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02464960 */ cpu->r[30] = cpu->r[3];
|
|
/* 02464960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464964 */ cpu->r[31] = cpu->r[4];
|
|
/* 02464968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02464968 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246496C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246496C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246496C */ if (_t5) goto L_024649DC; else goto L_02464970;
|
|
L_02464970: ; // 0x2464970
|
|
/* 02464970 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464974 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464978 */ cpu->r[0] = cpu->r[0] + 0x000036B4u;
|
|
/* 0246497C */ cpu->r[12] = cpu->r[12] + 0x000036D4u;
|
|
/* 02464980 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02464980 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02464984 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464988 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02464988 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0246498C */ cpu->r[11] = cpu->r[11] + 0x000036C4u;
|
|
/* 02464990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464994 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02464994 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02464998 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464998 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02464998 */ if (_t10) goto L_024649CC; else goto L_0246499C;
|
|
L_0246499C: ; // 0x246499c
|
|
/* 0246499C */ cpu->r[10] = 0x10010000u;
|
|
/* 024649A0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024649A4 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 024649A8 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 024649AC */ cpu->r[3] = cpu->r[30];
|
|
/* 024649B0 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024649B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024649B4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024649B8 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024649B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024649BC */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 024649C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024649C4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024649C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024649C8 */ Gambit_fn_02068798(cpu);
|
|
L_024649CC: ; // 0x24649cc
|
|
/* 024649CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024649CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024649D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024649D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024649D0 */ if (_t15) goto L_024649DC; else goto L_024649D4;
|
|
L_024649D4: ; // 0x24649d4
|
|
/* 024649D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024649D8 */ Gambit_fn_02801BB0(cpu);
|
|
L_024649DC: ; // 0x24649dc
|
|
/* 024649DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024649DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024649E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024649E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024649E4 */ cpu->lr = cpu->r[0];
|
|
/* 024649E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024649E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024649EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024649F0 */ return;
|
|
}
|
|
|
|
// fn_024645A0 @ 0x24645a0
|
|
void Gambit_fn_024645A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_024645A0: ; // 0x24645a0
|
|
/* 024645A0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024645A4 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024645A8 @ 0x24645a8
|
|
void Gambit_fn_024645A8(CPUState* cpu) {
|
|
L_024645A8: ; // 0x24645a8
|
|
/* 024645A8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024645AC */ goto L_024649F4;
|
|
L_024649F4: ; // 0x24649f4
|
|
/* 024649F4 */ return;
|
|
}
|
|
|
|
// fn_024645B0 @ 0x24645b0
|
|
void Gambit_fn_024645B0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024645B0: ; // 0x24645b0
|
|
/* 024645B0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024645B4 */ goto L_024649F8;
|
|
L_024649F8: ; // 0x24649f8
|
|
/* 024649F8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024649F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024649FC */ return;
|
|
}
|
|
|
|
// fn_024645B8 @ 0x24645b8
|
|
void Gambit_fn_024645B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024645B8: ; // 0x24645b8
|
|
/* 024645B8 */ cpu->r[0] = cpu->lr;
|
|
/* 024645BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024645BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024645BC */ cpu->r[1] = _t0;
|
|
/* 024645C0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024645C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024645C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024645C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024645C8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024645C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024645CC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024645CC */ _t4 = _t3 & 0x00000001u;
|
|
/* 024645CC */ if (_t4) goto L_024645D0; else goto L_024645E0;
|
|
L_024645D0: ; // 0x24645d0
|
|
/* 024645D0 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 024645D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024645D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024645D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024645DC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024645DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 024645DC */ if (_t6) goto L_02464640; else goto L_024645E0;
|
|
L_024645E0: ; // 0x24645e0
|
|
/* 024645E0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024645E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024645E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024645EC */ cpu->r[4] = cpu->r[4] + 0x00003484u;
|
|
/* 024645F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 024645F4 */ Gambit_fn_020B6F60(cpu);
|
|
/* 024645F8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024645FC */ cpu->r[10] = 0x00000000u;
|
|
/* 02464600 */ cpu->r[11] = cpu->r[11] + 0x000034CCu;
|
|
/* 02464604 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02464604 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 02464608 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246460C */ _t8 = cpu->r[31] + 0x00000228u;
|
|
/* 0246460C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02464610 */ cpu->r[0] = cpu->r[0] + 0x000036C4u;
|
|
/* 02464614 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464618 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02464618 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0246461C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464620 */ cpu->r[9] = cpu->r[9] + 0x000036D4u;
|
|
/* 02464624 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02464624 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02464628 */ cpu->r[12] = cpu->r[12] + 0x000036B4u;
|
|
/* 0246462C */ _t11 = cpu->r[31] + 0x000001C8u;
|
|
/* 0246462C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02464630 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02464634 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464634 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02464638 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 02464638 */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 0246463C */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0246463C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
L_02464640: ; // 0x2464640
|
|
/* 02464640 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02464640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02464644 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464648 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464648 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246464C */ cpu->lr = cpu->r[0];
|
|
/* 02464650 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464654 */ return;
|
|
}
|
|
|
|
// fn_024645BC @ 0x24645bc
|
|
void Gambit_fn_024645BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024645BC: ; // 0x24645bc
|
|
/* 024645BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024645BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024645BC */ cpu->r[1] = _t0;
|
|
/* 024645C0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024645C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024645C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024645C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024645C8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024645C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024645CC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024645CC */ _t4 = _t3 & 0x00000001u;
|
|
/* 024645CC */ if (_t4) goto L_024645D0; else goto L_024645E0;
|
|
L_024645D0: ; // 0x24645d0
|
|
/* 024645D0 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 024645D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024645D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024645D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024645DC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024645DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 024645DC */ if (_t6) goto L_02464640; else goto L_024645E0;
|
|
L_024645E0: ; // 0x24645e0
|
|
/* 024645E0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024645E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024645E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024645EC */ cpu->r[4] = cpu->r[4] + 0x00003484u;
|
|
/* 024645F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 024645F4 */ Gambit_fn_020B6F60(cpu);
|
|
/* 024645F8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024645FC */ cpu->r[10] = 0x00000000u;
|
|
/* 02464600 */ cpu->r[11] = cpu->r[11] + 0x000034CCu;
|
|
/* 02464604 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02464604 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 02464608 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246460C */ _t8 = cpu->r[31] + 0x00000228u;
|
|
/* 0246460C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02464610 */ cpu->r[0] = cpu->r[0] + 0x000036C4u;
|
|
/* 02464614 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464618 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02464618 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0246461C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464620 */ cpu->r[9] = cpu->r[9] + 0x000036D4u;
|
|
/* 02464624 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02464624 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02464628 */ cpu->r[12] = cpu->r[12] + 0x000036B4u;
|
|
/* 0246462C */ _t11 = cpu->r[31] + 0x000001C8u;
|
|
/* 0246462C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02464630 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02464634 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464634 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02464638 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 02464638 */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 0246463C */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0246463C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
L_02464640: ; // 0x2464640
|
|
/* 02464640 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02464640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02464644 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464648 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464648 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246464C */ cpu->lr = cpu->r[0];
|
|
/* 02464650 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464654 */ return;
|
|
}
|
|
|
|
// fn_02464658 @ 0x2464658
|
|
void Gambit_fn_02464658(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02464658: ; // 0x2464658
|
|
/* 02464658 */ cpu->r[0] = cpu->lr;
|
|
/* 0246465C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246465C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246465C */ cpu->r[1] = _t0;
|
|
/* 02464660 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464660 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464664 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0246466C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0246466C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02464670 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464670 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02464670 */ if (_t4) goto L_024646D0; else goto L_02464674;
|
|
L_02464674: ; // 0x2464674
|
|
/* 02464674 */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02464674 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02464678 */ _t6 = cpu->r[31] + 0x00000224u;
|
|
/* 02464678 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 0246467C */ _t7 = cpu->r[31] + 0x00000228u;
|
|
/* 0246467C */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 02464680 */ Gambit_fn_020A8208(cpu);
|
|
/* 02464684 */ cpu->r[4] = 0x00000000u;
|
|
/* 02464688 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0246468C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464690 */ _t8 = cpu->r[31] + 0x00000220u;
|
|
/* 02464690 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 02464694 */ cpu->r[5] = cpu->r[5] + 0x00007B7Cu;
|
|
/* 02464698 */ Gambit_fn_027ED798(cpu);
|
|
/* 0246469C */ _t9 = cpu->r[31] + 0x00000118u;
|
|
/* 0246469C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024646A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024646A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024646A4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024646A4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024646A4 */ if (_t11) goto L_024646A8; else goto L_024646BC;
|
|
L_024646A8: ; // 0x24646a8
|
|
/* 024646A8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 024646A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024646AC */ _t13 = cpu->r[9] + 0x00000094u;
|
|
/* 024646AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024646B0 */ cpu->ctr = cpu->r[10];
|
|
/* 024646B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024646B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024646BC: ; // 0x24646bc
|
|
/* 024646BC */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 024646BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024646C0 */ _t15 = cpu->r[12] + 0x00000164u;
|
|
/* 024646C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024646C4 */ cpu->ctr = cpu->r[0];
|
|
/* 024646C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024646CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024646D0: ; // 0x24646d0
|
|
/* 024646D0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024646D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024646D4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024646D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024646D8 */ cpu->lr = cpu->r[0];
|
|
/* 024646DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024646E0 */ return;
|
|
}
|
|
|
|
// fn_0246465C @ 0x246465c
|
|
void Gambit_fn_0246465C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0246465C: ; // 0x246465c
|
|
/* 0246465C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246465C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246465C */ cpu->r[1] = _t0;
|
|
/* 02464660 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464660 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464664 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0246466C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0246466C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02464670 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464670 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02464670 */ if (_t4) goto L_024646D0; else goto L_02464674;
|
|
L_02464674: ; // 0x2464674
|
|
/* 02464674 */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02464674 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02464678 */ _t6 = cpu->r[31] + 0x00000224u;
|
|
/* 02464678 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 0246467C */ _t7 = cpu->r[31] + 0x00000228u;
|
|
/* 0246467C */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 02464680 */ Gambit_fn_020A8208(cpu);
|
|
/* 02464684 */ cpu->r[4] = 0x00000000u;
|
|
/* 02464688 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0246468C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464690 */ _t8 = cpu->r[31] + 0x00000220u;
|
|
/* 02464690 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 02464694 */ cpu->r[5] = cpu->r[5] + 0x00007B7Cu;
|
|
/* 02464698 */ Gambit_fn_027ED798(cpu);
|
|
/* 0246469C */ _t9 = cpu->r[31] + 0x00000118u;
|
|
/* 0246469C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024646A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024646A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024646A4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024646A4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024646A4 */ if (_t11) goto L_024646A8; else goto L_024646BC;
|
|
L_024646A8: ; // 0x24646a8
|
|
/* 024646A8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 024646A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024646AC */ _t13 = cpu->r[9] + 0x00000094u;
|
|
/* 024646AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024646B0 */ cpu->ctr = cpu->r[10];
|
|
/* 024646B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024646B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024646BC: ; // 0x24646bc
|
|
/* 024646BC */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 024646BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024646C0 */ _t15 = cpu->r[12] + 0x00000164u;
|
|
/* 024646C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024646C4 */ cpu->ctr = cpu->r[0];
|
|
/* 024646C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024646CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024646D0: ; // 0x24646d0
|
|
/* 024646D0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024646D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024646D4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024646D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024646D8 */ cpu->lr = cpu->r[0];
|
|
/* 024646DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024646E0 */ return;
|
|
}
|
|
|
|
// fn_024646E4 @ 0x24646e4
|
|
void Gambit_fn_024646E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_024646E4: ; // 0x24646e4
|
|
/* 024646E4 */ cpu->r[0] = cpu->lr;
|
|
/* 024646E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024646E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024646E8 */ cpu->r[1] = _t0;
|
|
/* 024646EC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024646EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024646F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024646F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024646F4 */ _t3 = cpu->r[3] + 0x00000220u;
|
|
/* 024646F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024646F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024646FC */ cpu->r[31] = cpu->r[3];
|
|
/* 02464700 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464700 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02464700 */ if (_t5) goto L_02464764; else goto L_02464704;
|
|
L_02464704: ; // 0x2464704
|
|
/* 02464704 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 02464704 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02464708 */ _t7 = cpu->r[11] + 0x00000184u;
|
|
/* 02464708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246470C */ cpu->ctr = cpu->r[0];
|
|
/* 02464710 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02464718 */ cpu->r[3] = cpu->r[31];
|
|
/* 0246471C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0246471C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02464720 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464720 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02464720 */ if (_t10) goto L_02464744; else goto L_02464724;
|
|
L_02464724: ; // 0x2464724
|
|
/* 02464724 */ _t11 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02464724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464728 */ cpu->ctr = cpu->r[11];
|
|
/* 0246472C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464730 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02464730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02464734 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464734 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02464738 */ cpu->lr = cpu->r[0];
|
|
/* 0246473C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464740 */ return;
|
|
L_02464744: ; // 0x2464744
|
|
/* 02464744 */ _t14 = cpu->r[12] + 0x00000094u;
|
|
/* 02464744 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02464748 */ cpu->ctr = cpu->r[0];
|
|
/* 0246474C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464750 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02464750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02464754 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464754 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02464758 */ cpu->lr = cpu->r[0];
|
|
/* 0246475C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464760 */ return;
|
|
L_02464764: ; // 0x2464764
|
|
/* 02464764 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464768 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0246476C */ _t17 = cpu->r[12] + 0x00003498u;
|
|
/* 0246476C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02464770 */ cpu->r[12] = cpu->r[11] + 0x101E0000u;
|
|
/* 02464774 */ cpu->r[4] = 0x00000000u;
|
|
/* 02464778 */ cpu->r[5] = cpu->r[12] + 0x00007B7Cu;
|
|
/* 0246477C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02464780 */ _t18 = cpu->r[31] + 0x00000220u;
|
|
/* 02464780 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02464784 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02464788 */ _t19 = cpu->r[31] + 0x00000220u;
|
|
/* 02464788 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0246478C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0246478C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02464790 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02464794 */ cpu->lr = cpu->r[0];
|
|
/* 02464798 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246479C */ return;
|
|
}
|
|
|
|
// fn_024646E8 @ 0x24646e8
|
|
void Gambit_fn_024646E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_024646E8: ; // 0x24646e8
|
|
/* 024646E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024646E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024646E8 */ cpu->r[1] = _t0;
|
|
/* 024646EC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024646EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024646F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024646F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024646F4 */ _t3 = cpu->r[3] + 0x00000220u;
|
|
/* 024646F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024646F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024646FC */ cpu->r[31] = cpu->r[3];
|
|
/* 02464700 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464700 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02464700 */ if (_t5) goto L_02464764; else goto L_02464704;
|
|
L_02464704: ; // 0x2464704
|
|
/* 02464704 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 02464704 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02464708 */ _t7 = cpu->r[11] + 0x00000184u;
|
|
/* 02464708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246470C */ cpu->ctr = cpu->r[0];
|
|
/* 02464710 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02464718 */ cpu->r[3] = cpu->r[31];
|
|
/* 0246471C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0246471C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02464720 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464720 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02464720 */ if (_t10) goto L_02464744; else goto L_02464724;
|
|
L_02464724: ; // 0x2464724
|
|
/* 02464724 */ _t11 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02464724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02464728 */ cpu->ctr = cpu->r[11];
|
|
/* 0246472C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464730 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02464730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02464734 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464734 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02464738 */ cpu->lr = cpu->r[0];
|
|
/* 0246473C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464740 */ return;
|
|
L_02464744: ; // 0x2464744
|
|
/* 02464744 */ _t14 = cpu->r[12] + 0x00000094u;
|
|
/* 02464744 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02464748 */ cpu->ctr = cpu->r[0];
|
|
/* 0246474C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02464750 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02464750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02464754 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464754 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02464758 */ cpu->lr = cpu->r[0];
|
|
/* 0246475C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464760 */ return;
|
|
L_02464764: ; // 0x2464764
|
|
/* 02464764 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464768 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0246476C */ _t17 = cpu->r[12] + 0x00003498u;
|
|
/* 0246476C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02464770 */ cpu->r[12] = cpu->r[11] + 0x101E0000u;
|
|
/* 02464774 */ cpu->r[4] = 0x00000000u;
|
|
/* 02464778 */ cpu->r[5] = cpu->r[12] + 0x00007B7Cu;
|
|
/* 0246477C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02464780 */ _t18 = cpu->r[31] + 0x00000220u;
|
|
/* 02464780 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02464784 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02464788 */ _t19 = cpu->r[31] + 0x00000220u;
|
|
/* 02464788 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0246478C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0246478C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02464790 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02464794 */ cpu->lr = cpu->r[0];
|
|
/* 02464798 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246479C */ return;
|
|
}
|
|
|
|
// fn_024647A0 @ 0x24647a0
|
|
void Gambit_fn_024647A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024647A0: ; // 0x24647a0
|
|
/* 024647A0 */ _t0 = cpu->r[3] + 0x00000224u;
|
|
/* 024647A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024647A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024647A8 */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024647A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024647A8 */ if (_t2) goto L_024647AC; else goto L_024647B8;
|
|
L_024647AC: ; // 0x24647ac
|
|
/* 024647AC */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024647AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024647B0 */ _t3 = cpu->r[3] + 0x00000224u;
|
|
/* 024647B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024647B4 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024647B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024647B4 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024647B4 */ goto L_024647B8;
|
|
L_024647B8: ; // 0x24647b8
|
|
/* 024647B8 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 024647B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024647BC */ _t7 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024647BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024647C0 */ cpu->ctr = cpu->r[0];
|
|
/* 024647C4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024647C8 @ 0x24647c8
|
|
void Gambit_fn_024647C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024647C8: ; // 0x24647c8
|
|
/* 024647C8 */ cpu->r[0] = cpu->lr;
|
|
/* 024647CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024647CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024647CC */ cpu->r[1] = _t0;
|
|
/* 024647D0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024647D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024647D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024647D8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024647DC */ cpu->r[4] = cpu->r[31];
|
|
/* 024647E0 */ cpu->r[12] = cpu->r[12] + 0x0000349Cu;
|
|
/* 024647E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024647E8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024647E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024647EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024647F0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024647F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024647F4 */ cpu->r[0] = cpu->r[0] + 0x0000345Cu;
|
|
/* 024647F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024647FC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024647FC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02464800 */ Gambit_fn_020A7150(cpu);
|
|
/* 02464804 */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02464804 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02464808 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02464808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0246480C */ cpu->lr = cpu->r[0];
|
|
/* 02464810 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02464810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02464814 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02464818 */ return;
|
|
}
|
|
|
|
// fn_024647CC @ 0x24647cc
|
|
void Gambit_fn_024647CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024647CC: ; // 0x24647cc
|
|
/* 024647CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024647CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024647CC */ cpu->r[1] = _t0;
|
|
/* 024647D0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024647D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024647D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024647D8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024647DC */ cpu->r[4] = cpu->r[31];
|
|
/* 024647E0 */ cpu->r[12] = cpu->r[12] + 0x0000349Cu;
|
|
/* 024647E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024647E8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024647E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024647EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024647F0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024647F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024647F4 */ cpu->r[0] = cpu->r[0] + 0x0000345Cu;
|
|
/* 024647F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024647FC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024647FC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02464800 */ Gambit_fn_020A7150(cpu);
|
|
/* 02464804 */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02464804 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02464808 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02464808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0246480C */ cpu->lr = cpu->r[0];
|
|
/* 02464810 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02464810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02464814 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02464818 */ return;
|
|
}
|
|
|
|
// fn_0246481C @ 0x246481c
|
|
void Gambit_fn_0246481C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0246481C: ; // 0x246481c
|
|
/* 0246481C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0246481C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246481C */ cpu->r[1] = _t0;
|
|
/* 02464820 */ cpu->r[0] = cpu->lr;
|
|
/* 02464824 */ /* nop */
|
|
/* 02464828 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0246482C */ cpu->r[31] = cpu->r[3];
|
|
/* 02464830 */ cpu->r[26] = 0x00000003u;
|
|
/* 02464834 */ cpu->r[30] = cpu->r[30] + 0x0000345Cu;
|
|
/* 02464838 */ cpu->r[27] = 0x00000000u;
|
|
/* 0246483C */ cpu->r[28] = 0x101E0000u;
|
|
/* 02464840 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464840 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02464844 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02464848 */ cpu->r[28] = cpu->r[28] + 0x00007B7Cu;
|
|
/* 0246484C */ cpu->r[29] = cpu->r[29] + 0x000034A8u;
|
|
L_02464850: ; // 0x2464850
|
|
/* 02464850 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464850 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02464854 */ cpu->r[4] = cpu->r[28] + cpu->r[27];
|
|
/* 02464858 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0246485C */ cpu->r[3] = cpu->r[31];
|
|
/* 02464860 */ cpu->r[5] = cpu->r[4];
|
|
/* 02464864 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02464864 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02464868 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0246486C */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 0246486C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02464870 */ cpu->r[27] = cpu->r[27] + 0x00000008u;
|
|
/* 02464874 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464874 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02464874 */ if (_t5) goto L_02464878; else goto L_02464850;
|
|
L_02464878: ; // 0x2464878
|
|
/* 02464878 */ /* nop */
|
|
/* 0246487C */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246487C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02464880 */ cpu->lr = cpu->r[0];
|
|
/* 02464884 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02464888 */ return;
|
|
}
|
|
|
|
// fn_0246488C @ 0x246488c
|
|
void Gambit_fn_0246488C(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_0246488C: ; // 0x246488c
|
|
/* 0246488C */ cpu->r[9] = 0xFFFFFFFDu;
|
|
/* 02464890 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02464890 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464890 */ cpu->r[1] = _t0;
|
|
/* 02464894 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02464898 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0246489C */ cpu->r[7] = 0xFFFFFFFEu;
|
|
/* 024648A0 */ _t1 = cpu->r[10] + 0x00007B68u;
|
|
/* 024648A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024648A0 */ cpu->r[10] = _t1;
|
|
/* 024648A4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 024648A8 */ _t2 = cpu->r[12] + 0x00007B58u;
|
|
/* 024648A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 024648A8 */ cpu->r[12] = _t2;
|
|
/* 024648AC */ cpu->r[7] = 0x101E0000u;
|
|
/* 024648B0 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024648B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 024648B4 */ cpu->r[4] = 0x101E0000u;
|
|
/* 024648B8 */ cpu->r[0] = 0x00000002u;
|
|
/* 024648BC */ _t4 = cpu->r[7] + 0x00007B60u;
|
|
/* 024648BC */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 024648BC */ cpu->r[7] = _t4;
|
|
/* 024648C0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 024648C4 */ cpu->r[6] = 0x101E0000u;
|
|
/* 024648C8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024648C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024648CC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024648CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024648D0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 024648D0 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024648D4 */ cpu->r[5] = 0x100A0000u;
|
|
/* 024648D8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024648DC */ _t8 = cpu->r[6] + 0x00007B50u;
|
|
/* 024648DC */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 024648DC */ cpu->r[6] = _t8;
|
|
/* 024648E0 */ cpu->r[5] = cpu->r[5] + 0x0000345Cu;
|
|
/* 024648E4 */ cpu->r[4] = cpu->r[4] + 0x00007B7Cu;
|
|
/* 024648E8 */ _t9 = cpu->r[6] + 0x00000004u;
|
|
/* 024648E8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 024648EC */ cpu->r[7] = cpu->r[7] + 0x000034B4u;
|
|
/* 024648F0 */ _t10 = cpu->r[4] + 0x00000004u;
|
|
/* 024648F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[5]);
|
|
/* 024648F4 */ cpu->r[11] = cpu->r[11] + 0x00007B70u;
|
|
/* 024648F8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024648FC */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 024648FC */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02464900 */ cpu->r[0] = cpu->r[0] + 0x000034BCu;
|
|
/* 02464904 */ _t12 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02464904 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 02464908 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0246490C */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 0246490C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02464910 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 02464910 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02464914 */ _t15 = cpu->r[4] + 0x00000014u;
|
|
/* 02464914 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 02464918 */ cpu->r[0] = 0x00000004u;
|
|
/* 0246491C */ _t16 = cpu->r[11] + 0x00000000u;
|
|
/* 0246491C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 02464920 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02464924 */ _t17 = cpu->r[7] + 0x00007B78u;
|
|
/* 02464924 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02464928 */ cpu->r[6] = cpu->r[6] + 0x000034C4u;
|
|
/* 0246492C */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 0246492C */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 02464930 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02464934 */ _t19 = cpu->r[4] + 0x00000010u;
|
|
/* 02464934 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 02464938 */ return;
|
|
}
|
|
|
|
// fn_02464890 @ 0x2464890
|
|
void Gambit_fn_02464890(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_02464890: ; // 0x2464890
|
|
/* 02464890 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02464890 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464890 */ cpu->r[1] = _t0;
|
|
/* 02464894 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02464898 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0246489C */ cpu->r[7] = 0xFFFFFFFEu;
|
|
/* 024648A0 */ _t1 = cpu->r[10] + 0x00007B68u;
|
|
/* 024648A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024648A0 */ cpu->r[10] = _t1;
|
|
/* 024648A4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 024648A8 */ _t2 = cpu->r[12] + 0x00007B58u;
|
|
/* 024648A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 024648A8 */ cpu->r[12] = _t2;
|
|
/* 024648AC */ cpu->r[7] = 0x101E0000u;
|
|
/* 024648B0 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024648B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 024648B4 */ cpu->r[4] = 0x101E0000u;
|
|
/* 024648B8 */ cpu->r[0] = 0x00000002u;
|
|
/* 024648BC */ _t4 = cpu->r[7] + 0x00007B60u;
|
|
/* 024648BC */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 024648BC */ cpu->r[7] = _t4;
|
|
/* 024648C0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 024648C4 */ cpu->r[6] = 0x101E0000u;
|
|
/* 024648C8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024648C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024648CC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024648CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024648D0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 024648D0 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024648D4 */ cpu->r[5] = 0x100A0000u;
|
|
/* 024648D8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024648DC */ _t8 = cpu->r[6] + 0x00007B50u;
|
|
/* 024648DC */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 024648DC */ cpu->r[6] = _t8;
|
|
/* 024648E0 */ cpu->r[5] = cpu->r[5] + 0x0000345Cu;
|
|
/* 024648E4 */ cpu->r[4] = cpu->r[4] + 0x00007B7Cu;
|
|
/* 024648E8 */ _t9 = cpu->r[6] + 0x00000004u;
|
|
/* 024648E8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 024648EC */ cpu->r[7] = cpu->r[7] + 0x000034B4u;
|
|
/* 024648F0 */ _t10 = cpu->r[4] + 0x00000004u;
|
|
/* 024648F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[5]);
|
|
/* 024648F4 */ cpu->r[11] = cpu->r[11] + 0x00007B70u;
|
|
/* 024648F8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024648FC */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 024648FC */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02464900 */ cpu->r[0] = cpu->r[0] + 0x000034BCu;
|
|
/* 02464904 */ _t12 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02464904 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 02464908 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0246490C */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 0246490C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02464910 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 02464910 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02464914 */ _t15 = cpu->r[4] + 0x00000014u;
|
|
/* 02464914 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 02464918 */ cpu->r[0] = 0x00000004u;
|
|
/* 0246491C */ _t16 = cpu->r[11] + 0x00000000u;
|
|
/* 0246491C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 02464920 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02464924 */ _t17 = cpu->r[7] + 0x00007B78u;
|
|
/* 02464924 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02464928 */ cpu->r[6] = cpu->r[6] + 0x000034C4u;
|
|
/* 0246492C */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 0246492C */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 02464930 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02464934 */ _t19 = cpu->r[4] + 0x00000010u;
|
|
/* 02464934 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 02464938 */ return;
|
|
}
|
|
|
|
// fn_0246493C @ 0x246493c
|
|
void Gambit_fn_0246493C(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_0246493C: ; // 0x246493c
|
|
/* 0246493C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02464940 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464940 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02464940 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02464940 */ goto L_02464944;
|
|
L_02464944: ; // 0x2464944
|
|
/* 02464944 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02464944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02464948 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464948 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02464948 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02464948 */ goto L_0246494C;
|
|
L_0246494C: ; // 0x246494c
|
|
/* 0246494C */ 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_02464950 @ 0x2464950
|
|
void Gambit_fn_02464950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02464950: ; // 0x2464950
|
|
/* 02464950 */ cpu->r[0] = cpu->lr;
|
|
/* 02464954 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02464954 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464954 */ cpu->r[1] = _t0;
|
|
/* 02464958 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464958 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246495C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0246495C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02464960 */ cpu->r[30] = cpu->r[3];
|
|
/* 02464960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464964 */ cpu->r[31] = cpu->r[4];
|
|
/* 02464968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02464968 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246496C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246496C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246496C */ if (_t5) goto L_024649DC; else goto L_02464970;
|
|
L_02464970: ; // 0x2464970
|
|
/* 02464970 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464974 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464978 */ cpu->r[0] = cpu->r[0] + 0x000036B4u;
|
|
/* 0246497C */ cpu->r[12] = cpu->r[12] + 0x000036D4u;
|
|
/* 02464980 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02464980 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02464984 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464988 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02464988 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0246498C */ cpu->r[11] = cpu->r[11] + 0x000036C4u;
|
|
/* 02464990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464994 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02464994 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02464998 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464998 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02464998 */ if (_t10) goto L_024649CC; else goto L_0246499C;
|
|
L_0246499C: ; // 0x246499c
|
|
/* 0246499C */ cpu->r[10] = 0x10010000u;
|
|
/* 024649A0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024649A4 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 024649A8 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 024649AC */ cpu->r[3] = cpu->r[30];
|
|
/* 024649B0 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024649B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024649B4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024649B8 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024649B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024649BC */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 024649C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024649C4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024649C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024649C8 */ Gambit_fn_02068798(cpu);
|
|
L_024649CC: ; // 0x24649cc
|
|
/* 024649CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024649CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024649D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024649D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024649D0 */ if (_t15) goto L_024649DC; else goto L_024649D4;
|
|
L_024649D4: ; // 0x24649d4
|
|
/* 024649D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024649D8 */ Gambit_fn_02801BB0(cpu);
|
|
L_024649DC: ; // 0x24649dc
|
|
/* 024649DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024649DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024649E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024649E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024649E4 */ cpu->lr = cpu->r[0];
|
|
/* 024649E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024649E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024649EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024649F0 */ return;
|
|
}
|
|
|
|
// fn_02464954 @ 0x2464954
|
|
void Gambit_fn_02464954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02464954: ; // 0x2464954
|
|
/* 02464954 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02464954 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464954 */ cpu->r[1] = _t0;
|
|
/* 02464958 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464958 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246495C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0246495C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02464960 */ cpu->r[30] = cpu->r[3];
|
|
/* 02464960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464964 */ cpu->r[31] = cpu->r[4];
|
|
/* 02464968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02464968 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246496C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246496C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246496C */ if (_t5) goto L_024649DC; else goto L_02464970;
|
|
L_02464970: ; // 0x2464970
|
|
/* 02464970 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464974 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464978 */ cpu->r[0] = cpu->r[0] + 0x000036B4u;
|
|
/* 0246497C */ cpu->r[12] = cpu->r[12] + 0x000036D4u;
|
|
/* 02464980 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02464980 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02464984 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464988 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02464988 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0246498C */ cpu->r[11] = cpu->r[11] + 0x000036C4u;
|
|
/* 02464990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02464994 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02464994 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02464998 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464998 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02464998 */ if (_t10) goto L_024649CC; else goto L_0246499C;
|
|
L_0246499C: ; // 0x246499c
|
|
/* 0246499C */ cpu->r[10] = 0x10010000u;
|
|
/* 024649A0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024649A4 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 024649A8 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 024649AC */ cpu->r[3] = cpu->r[30];
|
|
/* 024649B0 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024649B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024649B4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024649B8 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024649B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024649BC */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 024649C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024649C4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024649C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024649C8 */ Gambit_fn_02068798(cpu);
|
|
L_024649CC: ; // 0x24649cc
|
|
/* 024649CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024649CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024649D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024649D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024649D0 */ if (_t15) goto L_024649DC; else goto L_024649D4;
|
|
L_024649D4: ; // 0x24649d4
|
|
/* 024649D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024649D8 */ Gambit_fn_02801BB0(cpu);
|
|
L_024649DC: ; // 0x24649dc
|
|
/* 024649DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024649DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024649E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024649E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024649E4 */ cpu->lr = cpu->r[0];
|
|
/* 024649E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024649E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024649EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024649F0 */ return;
|
|
}
|
|
|
|
// fn_024649F4 @ 0x24649f4
|
|
void Gambit_fn_024649F4(CPUState* cpu) {
|
|
L_024649F4: ; // 0x24649f4
|
|
/* 024649F4 */ return;
|
|
}
|
|
|
|
// fn_024649F8 @ 0x24649f8
|
|
void Gambit_fn_024649F8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024649F8: ; // 0x24649f8
|
|
/* 024649F8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024649F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024649FC */ return;
|
|
}
|
|
|
|
// fn_02464A00 @ 0x2464a00
|
|
void Gambit_fn_02464A00(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02464A00: ; // 0x2464a00
|
|
/* 02464A00 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02464A00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02464A04 */ return;
|
|
}
|
|
|
|
// fn_02464A08 @ 0x2464a08
|
|
void Gambit_fn_02464A08(CPUState* cpu) {
|
|
L_02464A08: ; // 0x2464a08
|
|
/* 02464A08 */ return;
|
|
}
|
|
|
|
// fn_02464A0C @ 0x2464a0c
|
|
void Gambit_fn_02464A0C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02464A0C: ; // 0x2464a0c
|
|
/* 02464A0C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02464A0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02464A10 */ return;
|
|
}
|
|
|
|
// fn_02464A14 @ 0x2464a14
|
|
void Gambit_fn_02464A14(CPUState* cpu) {
|
|
L_02464A14: ; // 0x2464a14
|
|
/* 02464A14 */ return;
|
|
}
|
|
|
|
// fn_02464A18 @ 0x2464a18
|
|
void Gambit_fn_02464A18(CPUState* cpu) {
|
|
L_02464A18: ; // 0x2464a18
|
|
/* 02464A18 */ return;
|
|
}
|
|
|
|
// fn_02464A1C @ 0x2464a1c
|
|
void Gambit_fn_02464A1C(CPUState* cpu) {
|
|
L_02464A1C: ; // 0x2464a1c
|
|
/* 02464A1C */ return;
|
|
}
|
|
|
|
// fn_02464A20 @ 0x2464a20
|
|
void Gambit_fn_02464A20(CPUState* cpu) {
|
|
L_02464A20: ; // 0x2464a20
|
|
/* 02464A20 */ return;
|
|
}
|
|
|
|
// fn_02464A24 @ 0x2464a24
|
|
void Gambit_fn_02464A24(CPUState* cpu) {
|
|
L_02464A24: ; // 0x2464a24
|
|
/* 02464A24 */ return;
|
|
}
|
|
|
|
// fn_02464A28 @ 0x2464a28
|
|
void Gambit_fn_02464A28(CPUState* cpu) {
|
|
L_02464A28: ; // 0x2464a28
|
|
/* 02464A28 */ cpu->r[3] = 0x00000001u;
|
|
/* 02464A2C */ return;
|
|
}
|
|
|
|
// fn_02464A30 @ 0x2464a30
|
|
void Gambit_fn_02464A30(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02464A30: ; // 0x2464a30
|
|
/* 02464A30 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02464A30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02464A34 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02464A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02464A38 */ cpu->ctr = cpu->r[0];
|
|
/* 02464A3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02464A40 @ 0x2464a40
|
|
void Gambit_fn_02464A40(CPUState* cpu) {
|
|
L_02464A40: ; // 0x2464a40
|
|
/* 02464A40 */ return;
|
|
}
|
|
|
|
// fn_02464A44 @ 0x2464a44
|
|
void Gambit_fn_02464A44(CPUState* cpu) {
|
|
L_02464A44: ; // 0x2464a44
|
|
/* 02464A44 */ cpu->r[3] = 0x00000000u;
|
|
/* 02464A48 */ return;
|
|
}
|
|
|
|
// fn_02464A4C @ 0x2464a4c
|
|
void Gambit_fn_02464A4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02464A4C: ; // 0x2464a4c
|
|
/* 02464A4C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02464A50 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02464A50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02464A50 */ cpu->r[9] = _t0;
|
|
/* 02464A54 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02464A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02464A5C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02464A60 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464A60 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02464A60 */ if (_t2) goto L_02464A64; else goto L_02464A78;
|
|
L_02464A64: ; // 0x2464a64
|
|
/* 02464A64 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02464A68 */ cpu->r[0] = 0x00000001u;
|
|
/* 02464A6C */ cpu->r[7] = cpu->r[7] + 0x00003474u;
|
|
/* 02464A70 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02464A70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02464A74 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02464A74 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02464A78: ; // 0x2464a78
|
|
/* 02464A78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02464A7C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464A7C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02464A7C */ if (_t6) goto L_02464A80; else goto L_02464A88;
|
|
L_02464A80: ; // 0x2464a80
|
|
/* 02464A80 */ cpu->r[3] = 0x00000001u;
|
|
/* 02464A84 */ return;
|
|
L_02464A88: ; // 0x2464a88
|
|
/* 02464A88 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02464A8C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02464A8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02464A8C */ cpu->r[7] = _t7;
|
|
/* 02464A90 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02464A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02464A98 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02464A9C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464A9C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02464A9C */ if (_t9) goto L_02464AA0; else goto L_02464AB4;
|
|
L_02464AA0: ; // 0x2464aa0
|
|
/* 02464AA0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464AA4 */ cpu->r[9] = 0x00000001u;
|
|
/* 02464AA8 */ cpu->r[0] = cpu->r[0] + 0x0000344Cu;
|
|
/* 02464AAC */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02464AAC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02464AB0 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02464AB0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02464AB4: ; // 0x2464ab4
|
|
/* 02464AB4 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02464AB8 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02464ABC */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02464AC0 */ return;
|
|
}
|
|
|
|
// fn_02464AC4 @ 0x2464ac4
|
|
void Gambit_fn_02464AC4(CPUState* cpu) {
|
|
L_02464AC4: ; // 0x2464ac4
|
|
/* 02464AC4 */ return;
|
|
}
|
|
|
|
// fn_02464AC8 @ 0x2464ac8
|
|
void Gambit_fn_02464AC8(CPUState* cpu) {
|
|
L_02464AC8: ; // 0x2464ac8
|
|
/* 02464AC8 */ return;
|
|
}
|
|
|
|
// fn_02464ACC @ 0x2464acc
|
|
void Gambit_fn_02464ACC(CPUState* cpu) {
|
|
L_02464ACC: ; // 0x2464acc
|
|
/* 02464ACC */ cpu->r[3] = 0x00000000u;
|
|
/* 02464AD0 */ return;
|
|
}
|
|
|
|
// fn_02464AD4 @ 0x2464ad4
|
|
void Gambit_fn_02464AD4(CPUState* cpu) {
|
|
L_02464AD4: ; // 0x2464ad4
|
|
/* 02464AD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02464AD8 */ return;
|
|
}
|
|
|
|
// fn_02464ADC @ 0x2464adc
|
|
void Gambit_fn_02464ADC(CPUState* cpu) {
|
|
L_02464ADC: ; // 0x2464adc
|
|
/* 02464ADC */ return;
|
|
}
|
|
|
|
// fn_02464AE0 @ 0x2464ae0
|
|
void Gambit_fn_02464AE0(CPUState* cpu) {
|
|
L_02464AE0: ; // 0x2464ae0
|
|
/* 02464AE0 */ return;
|
|
}
|
|
|
|
// fn_02464AE4 @ 0x2464ae4
|
|
void Gambit_fn_02464AE4(CPUState* cpu) {
|
|
L_02464AE4: ; // 0x2464ae4
|
|
/* 02464AE4 */ return;
|
|
}
|
|
|
|
// fn_02464AE8 @ 0x2464ae8
|
|
void Gambit_fn_02464AE8(CPUState* cpu) {
|
|
L_02464AE8: ; // 0x2464ae8
|
|
/* 02464AE8 */ return;
|
|
}
|
|
|
|
// fn_02464AEC @ 0x2464aec
|
|
void Gambit_fn_02464AEC(CPUState* cpu) {
|
|
L_02464AEC: ; // 0x2464aec
|
|
/* 02464AEC */ return;
|
|
}
|
|
|
|
// fn_02464AF0 @ 0x2464af0
|
|
void Gambit_fn_02464AF0(CPUState* cpu) {
|
|
L_02464AF0: ; // 0x2464af0
|
|
/* 02464AF0 */ return;
|
|
}
|
|
|
|
// fn_02464AF4 @ 0x2464af4
|
|
void Gambit_fn_02464AF4(CPUState* cpu) {
|
|
L_02464AF4: ; // 0x2464af4
|
|
/* 02464AF4 */ return;
|
|
}
|
|
|
|
// fn_02464AF8 @ 0x2464af8
|
|
void Gambit_fn_02464AF8(CPUState* cpu) {
|
|
L_02464AF8: ; // 0x2464af8
|
|
/* 02464AF8 */ return;
|
|
}
|
|
|
|
// fn_02464AFC @ 0x2464afc
|
|
void Gambit_fn_02464AFC(CPUState* cpu) {
|
|
L_02464AFC: ; // 0x2464afc
|
|
/* 02464AFC */ return;
|
|
}
|
|
|
|
// fn_02464B00 @ 0x2464b00
|
|
void Gambit_fn_02464B00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_02464B00: ; // 0x2464b00
|
|
/* 02464B00 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02464B04 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02464B08 @ 0x2464b08
|
|
void Gambit_fn_02464B08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02464B08: ; // 0x2464b08
|
|
/* 02464B08 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02464B0C */ goto L_02465A00;
|
|
L_02465A00: ; // 0x2465a00
|
|
/* 02465A00 */ cpu->r[0] = cpu->lr;
|
|
/* 02465A04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02465A04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465A04 */ cpu->r[1] = _t0;
|
|
/* 02465A08 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465A08 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02465A0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02465A0C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02465A10 */ cpu->r[30] = cpu->r[3];
|
|
/* 02465A10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02465A14 */ cpu->r[31] = cpu->r[4];
|
|
/* 02465A18 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02465A18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02465A1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A1C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02465A1C */ if (_t5) goto L_02465A8C; else goto L_02465A20;
|
|
L_02465A20: ; // 0x2465a20
|
|
/* 02465A20 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465A24 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465A28 */ cpu->r[0] = cpu->r[0] + 0x00003A98u;
|
|
/* 02465A2C */ cpu->r[12] = cpu->r[12] + 0x00003AB8u;
|
|
/* 02465A30 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02465A30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02465A34 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465A38 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02465A38 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02465A3C */ cpu->r[11] = cpu->r[11] + 0x00003AA8u;
|
|
/* 02465A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02465A44 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02465A44 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02465A48 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A48 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02465A48 */ if (_t10) goto L_02465A7C; else goto L_02465A4C;
|
|
L_02465A4C: ; // 0x2465a4c
|
|
/* 02465A4C */ cpu->r[10] = 0x10010000u;
|
|
/* 02465A50 */ cpu->r[0] = 0x10010000u;
|
|
/* 02465A54 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02465A58 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02465A5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02465A60 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02465A60 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02465A64 */ cpu->r[0] = 0x10010000u;
|
|
/* 02465A68 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02465A68 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02465A6C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02465A70 */ cpu->r[4] = 0x00000000u;
|
|
/* 02465A74 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02465A74 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02465A78 */ Gambit_fn_02068798(cpu);
|
|
L_02465A7C: ; // 0x2465a7c
|
|
/* 02465A7C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02465A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02465A80 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A80 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02465A80 */ if (_t15) goto L_02465A8C; else goto L_02465A84;
|
|
L_02465A84: ; // 0x2465a84
|
|
/* 02465A84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465A88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02465A8C: ; // 0x2465a8c
|
|
/* 02465A8C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02465A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465A90 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02465A90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02465A94 */ cpu->lr = cpu->r[0];
|
|
/* 02465A98 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02465A9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02465AA0 */ return;
|
|
}
|
|
|
|
// fn_02464B10 @ 0x2464b10
|
|
void Gambit_fn_02464B10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02464B10: ; // 0x2464b10
|
|
/* 02464B10 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02464B14 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02464B18 @ 0x2464b18
|
|
void Gambit_fn_02464B18(CPUState* cpu) {
|
|
L_02464B18: ; // 0x2464b18
|
|
/* 02464B18 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02464B1C */ goto L_02465AA4;
|
|
L_02465AA4: ; // 0x2465aa4
|
|
/* 02465AA4 */ return;
|
|
}
|
|
|
|
// fn_02464B20 @ 0x2464b20
|
|
void Gambit_fn_02464B20(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02464B20: ; // 0x2464b20
|
|
/* 02464B20 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02464B24 */ goto L_02465AA8;
|
|
L_02465AA8: ; // 0x2465aa8
|
|
/* 02465AA8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02465AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02465AAC */ return;
|
|
}
|
|
|
|
// fn_02464B28 @ 0x2464b28
|
|
void Gambit_fn_02464B28(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_02464B28: ; // 0x2464b28
|
|
/* 02464B28 */ cpu->r[0] = cpu->lr;
|
|
/* 02464B2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02464B2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464B2C */ cpu->r[1] = _t0;
|
|
/* 02464B30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464B30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464B34 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02464B38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02464B38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02464B3C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464B3C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02464B3C */ if (_t4) goto L_02464B40; else goto L_02464B50;
|
|
L_02464B40: ; // 0x2464b40
|
|
/* 02464B40 */ cpu->r[3] = 0x00000238u;
|
|
/* 02464B44 */ Gambit_fn_02801A78(cpu);
|
|
/* 02464B48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02464B4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464B4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02464B4C */ if (_t6) goto L_02464BBC; else goto L_02464B50;
|
|
L_02464B50: ; // 0x2464b50
|
|
/* 02464B50 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02464B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464B58 */ cpu->r[5] = 0x00000004u;
|
|
/* 02464B5C */ cpu->r[4] = cpu->r[4] + 0x0000378Cu;
|
|
/* 02464B60 */ cpu->r[6] = 0x00000000u;
|
|
/* 02464B64 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02464B68 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464B6C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464B70 */ cpu->r[12] = cpu->r[12] + 0x000038B8u;
|
|
/* 02464B74 */ cpu->r[11] = cpu->r[11] + 0x00003AA8u;
|
|
/* 02464B78 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464B7C */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02464B7C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02464B80 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464B84 */ cpu->r[0] = cpu->r[0] + 0x00003A98u;
|
|
/* 02464B88 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02464B88 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02464B8C */ cpu->r[12] = cpu->r[12] + 0x00003AB8u;
|
|
/* 02464B90 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464B90 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02464B94 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02464B98 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02464B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02464B9C */ cpu->r[11] = 0x00000000u;
|
|
/* 02464BA0 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02464BA0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02464BA4 */ _t12 = cpu->r[31] + 0x00000234u;
|
|
/* 02464BA4 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02464BA8 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 02464BA8 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02464BAC */ _t14 = cpu->r[31] + 0x00000230u;
|
|
/* 02464BAC */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02464BB0 */ _t15 = cpu->r[31] + 0x00000224u;
|
|
/* 02464BB0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02464BB4 */ _t16 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02464BB4 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02464BB8 */ _t17 = cpu->r[31] + 0x00000228u;
|
|
/* 02464BB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
L_02464BBC: ; // 0x2464bbc
|
|
/* 02464BBC */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02464BBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02464BC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464BC4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02464BC8 */ cpu->lr = cpu->r[0];
|
|
/* 02464BCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464BD0 */ return;
|
|
}
|
|
|
|
// fn_02464B2C @ 0x2464b2c
|
|
void Gambit_fn_02464B2C(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_02464B2C: ; // 0x2464b2c
|
|
/* 02464B2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02464B2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464B2C */ cpu->r[1] = _t0;
|
|
/* 02464B30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464B30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02464B34 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02464B38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02464B38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02464B3C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464B3C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02464B3C */ if (_t4) goto L_02464B40; else goto L_02464B50;
|
|
L_02464B40: ; // 0x2464b40
|
|
/* 02464B40 */ cpu->r[3] = 0x00000238u;
|
|
/* 02464B44 */ Gambit_fn_02801A78(cpu);
|
|
/* 02464B48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02464B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02464B4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464B4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02464B4C */ if (_t6) goto L_02464BBC; else goto L_02464B50;
|
|
L_02464B50: ; // 0x2464b50
|
|
/* 02464B50 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02464B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464B58 */ cpu->r[5] = 0x00000004u;
|
|
/* 02464B5C */ cpu->r[4] = cpu->r[4] + 0x0000378Cu;
|
|
/* 02464B60 */ cpu->r[6] = 0x00000000u;
|
|
/* 02464B64 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02464B68 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464B6C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464B70 */ cpu->r[12] = cpu->r[12] + 0x000038B8u;
|
|
/* 02464B74 */ cpu->r[11] = cpu->r[11] + 0x00003AA8u;
|
|
/* 02464B78 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464B7C */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02464B7C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02464B80 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464B84 */ cpu->r[0] = cpu->r[0] + 0x00003A98u;
|
|
/* 02464B88 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02464B88 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02464B8C */ cpu->r[12] = cpu->r[12] + 0x00003AB8u;
|
|
/* 02464B90 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02464B90 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02464B94 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02464B98 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02464B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02464B9C */ cpu->r[11] = 0x00000000u;
|
|
/* 02464BA0 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02464BA0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02464BA4 */ _t12 = cpu->r[31] + 0x00000234u;
|
|
/* 02464BA4 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02464BA8 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 02464BA8 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02464BAC */ _t14 = cpu->r[31] + 0x00000230u;
|
|
/* 02464BAC */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02464BB0 */ _t15 = cpu->r[31] + 0x00000224u;
|
|
/* 02464BB0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02464BB4 */ _t16 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02464BB4 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02464BB8 */ _t17 = cpu->r[31] + 0x00000228u;
|
|
/* 02464BB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
L_02464BBC: ; // 0x2464bbc
|
|
/* 02464BBC */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02464BBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02464BC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02464BC4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02464BC8 */ cpu->lr = cpu->r[0];
|
|
/* 02464BCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02464BD0 */ return;
|
|
}
|
|
|
|
// fn_02464BD4 @ 0x2464bd4
|
|
void Gambit_fn_02464BD4(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;
|
|
|
|
L_02464BD4: ; // 0x2464bd4
|
|
/* 02464BD4 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 02464BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02464BD4 */ cpu->r[1] = _t0;
|
|
/* 02464BD8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02464BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02464BDC */ cpu->r[0] = cpu->lr;
|
|
/* 02464BE0 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02464BE0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[28]);
|
|
/* 02464BE4 */ /* nop */
|
|
/* 02464BE8 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 02464BE8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02464BEC */ _t4 = cpu->r[1] + 0x00000048u;
|
|
/* 02464BEC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 02464BF0 */ /* nop */
|
|
/* 02464BF4 */ _t5 = cpu->r[1] + 0x00000060u;
|
|
/* 02464BF4 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02464BF8 */ _t6 = cpu->r[1] + 0x00000058u;
|
|
/* 02464BF8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 02464BFC */ /* nop */
|
|
/* 02464C00 */ _t7 = cpu->r[1] + 0x00000070u;
|
|
/* 02464C00 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02464C04 */ _t8 = cpu->r[1] + 0x00000068u;
|
|
/* 02464C04 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02464C08 */ /* nop */
|
|
/* 02464C0C */ _t9 = cpu->r[1] + 0x00000084u;
|
|
/* 02464C0C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02464C10 */ _t10 = cpu->r[1] + 0x00000038u;
|
|
/* 02464C10 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02464C14 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02464C14 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02464C18 */ _t12 = cpu->r[1] + 0x00000078u;
|
|
/* 02464C18 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 02464C1C */ cpu->r[29] = cpu->r[3];
|
|
/* 02464C20 */ _t13 = cpu->r[4] + 0x00000000u;
|
|
/* 02464C20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02464C24 */ _t14 = cpu->r[29] + 0x00000224u;
|
|
/* 02464C24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02464C28 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02464C28 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02464C2C */ _t16 = cpu->r[4] + 0x00000004u;
|
|
/* 02464C2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02464C30 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464C34 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464C34 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02464C38 */ _t18 = cpu->r[9] + 0x0000003Cu;
|
|
/* 02464C38 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02464C3C */ _t19 = cpu->r[11] + 0x000037A4u;
|
|
/* 02464C3C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02464C40 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02464C40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02464C44 */ cpu->f[29] = cpu->f[7] * cpu->f[9];
|
|
/* 02464C48 */ _t21 = cpu->r[9] + 0x00000040u;
|
|
/* 02464C48 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02464C4C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02464C50 */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464C54 */ _t22 = cpu->r[10] + 0x000037A8u;
|
|
/* 02464C54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02464C58 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02464C5C */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464C60 */ _t23 = cpu->r[31] + 0x00007BBCu;
|
|
/* 02464C60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02464C60 */ cpu->r[31] = _t23;
|
|
/* 02464C64 */ cpu->f[0] = cpu->f[31];
|
|
/* 02464C68 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464C6C */ cpu->f[30] = cpu->f[13] * cpu->f[9];
|
|
/* 02464C70 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464C70 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02464C70 */ if (_t25) goto L_024650D0; else goto L_02464C74;
|
|
L_02464C74: ; // 0x2464c74
|
|
/* 02464C74 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02464C74 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02464C78 */ cpu->f[8] = fabs(cpu->f[11]);
|
|
/* 02464C7C */ cpu->f[9] = cpu->f[8] + cpu->f[30];
|
|
/* 02464C80 */ _t27 = cpu->r[31] + 0x00000004u;
|
|
/* 02464C80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02464C84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 02464C88 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464C88 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02464C88 */ if (_t29) goto L_024650D0; else goto L_02464C8C;
|
|
L_02464C8C: ; // 0x2464c8c
|
|
/* 02464C8C */ cpu->f[10] = -cpu->f[11];
|
|
/* 02464C90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 02464C94 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464C94 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02464C94 */ if (_t31) goto L_02464C98; else goto L_02464CF8;
|
|
L_02464C98: ; // 0x2464c98
|
|
/* 02464C98 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02464C9C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02464C9C */ _t33 = _t32 & 0x00000001u;
|
|
/* 02464C9C */ if (_t33) goto L_02464CA0; else goto L_02464CF8;
|
|
L_02464CA0: ; // 0x2464ca0
|
|
/* 02464CA0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02464CA4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464CA8 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464CA8 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 02464CAC */ cpu->r[0] = 0x43300000u;
|
|
/* 02464CB0 */ _t35 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464CB0 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t35);
|
|
/* 02464CB4 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 02464CB4 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02464CB8 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 02464CB8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 02464CBC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464CC0 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464CC4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464CC8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464CCC */ _t38 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464CCC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02464CD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464CD4 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464CD8 */ _t39 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464CD8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02464CDC */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464CE0 */ cpu->f[28] = cpu->f[31];
|
|
/* 02464CE4 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464CE8 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464CEC */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464CF0 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464CF0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02464CF0 */ if (_t41) goto L_024651AC; else goto L_02464CF4;
|
|
L_02464CF4: ; // 0x2464cf4
|
|
/* 02464CF4 */ goto L_024651C4;
|
|
L_02464CF8: ; // 0x2464cf8
|
|
/* 02464CF8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 02464CFC */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464CFC */ _t43 = _t42 & 0x00000001u;
|
|
/* 02464CFC */ if (_t43) goto L_02464EE4; else goto L_02464D00;
|
|
L_02464D00: ; // 0x2464d00
|
|
/* 02464D00 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02464D04 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464D04 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02464D04 */ if (_t45) goto L_02464DF0; else goto L_02464D08;
|
|
L_02464D08: ; // 0x2464d08
|
|
/* 02464D08 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 02464D0C */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464D0C */ _t47 = _t46 & 0x00000001u;
|
|
/* 02464D0C */ if (_t47) goto L_02464D7C; else goto L_02464D10;
|
|
L_02464D10: ; // 0x2464d10
|
|
/* 02464D10 */ cpu->f[1] = cpu->f[12] / cpu->f[10];
|
|
/* 02464D14 */ Gambit_fn_02827710(cpu);
|
|
/* 02464D18 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464D18 */ rbrew_write32(cpu->mem, _t48, cpu->r[3]);
|
|
/* 02464D1C */ cpu->r[0] = 0x43300000u;
|
|
/* 02464D20 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02464D20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02464D24 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464D28 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 02464D28 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02464D2C */ _t51 = cpu->r[1] + 0x00000028u;
|
|
/* 02464D2C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t51);
|
|
/* 02464D30 */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464D34 */ _t52 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464D34 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 02464D38 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464D3C */ cpu->f[28] = cpu->f[31];
|
|
/* 02464D40 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464D44 */ _t53 = cpu->r[31] + 0x00000000u;
|
|
/* 02464D44 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02464D48 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464D4C */ _t54 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464D4C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02464D50 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464D54 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464D58 */ _t55 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464D58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02464D5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464D60 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464D64 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464D68 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464D6C */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464D70 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464D74 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464D74 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02464D74 */ if (_t57) goto L_024651AC; else goto L_02464D78;
|
|
L_02464D78: ; // 0x2464d78
|
|
/* 02464D78 */ goto L_024651C4;
|
|
L_02464D7C: ; // 0x2464d7c
|
|
/* 02464D7C */ cpu->f[1] = cpu->f[10] / cpu->f[12];
|
|
/* 02464D80 */ Gambit_fn_02827710(cpu);
|
|
/* 02464D84 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464D88 */ cpu->r[0] = 0x43300000u;
|
|
/* 02464D8C */ _t58 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464D8C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 02464D90 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 02464D94 */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 02464D94 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02464D98 */ cpu->r[3] = cpu->r[3] + 0x40000000u;
|
|
/* 02464D9C */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 02464D9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02464DA0 */ cpu->f[28] = cpu->f[31];
|
|
/* 02464DA4 */ _t61 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464DA4 */ rbrew_write32(cpu->mem, _t61, cpu->r[3]);
|
|
/* 02464DA8 */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 02464DA8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 02464DAC */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464DB0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464DB4 */ _t63 = cpu->r[31] + 0x00000000u;
|
|
/* 02464DB4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02464DB8 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464DBC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464DC0 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464DC4 */ _t64 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464DC4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02464DC8 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464DCC */ _t65 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464DCC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02464DD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464DD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464DD8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464DDC */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464DE0 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464DE4 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464DE8 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464DE8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02464DE8 */ if (_t67) goto L_024651AC; else goto L_02464DEC;
|
|
L_02464DEC: ; // 0x2464dec
|
|
/* 02464DEC */ goto L_024651C4;
|
|
L_02464DF0: ; // 0x2464df0
|
|
/* 02464DF0 */ cpu->f[8] = -cpu->f[12];
|
|
/* 02464DF4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[8]);
|
|
/* 02464DF8 */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464DF8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02464DF8 */ if (_t69) goto L_02464E70; else goto L_02464DFC;
|
|
L_02464DFC: ; // 0x2464dfc
|
|
/* 02464DFC */ cpu->f[9] = cpu->f[12] / cpu->f[10];
|
|
/* 02464E00 */ cpu->f[1] = -cpu->f[9];
|
|
/* 02464E04 */ Gambit_fn_02827710(cpu);
|
|
/* 02464E08 */ cpu->r[3] = (uint32_t)(-(int32_t)cpu->r[3]);
|
|
/* 02464E0C */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 02464E0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02464E10 */ cpu->r[0] = 0x43300000u;
|
|
/* 02464E14 */ _t71 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464E14 */ rbrew_write32(cpu->mem, _t71, cpu->r[3]);
|
|
/* 02464E18 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464E1C */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 02464E1C */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 02464E20 */ _t73 = cpu->r[1] + 0x00000028u;
|
|
/* 02464E20 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 02464E24 */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464E28 */ _t74 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464E28 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 02464E2C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464E30 */ cpu->f[28] = cpu->f[31];
|
|
/* 02464E34 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464E38 */ _t75 = cpu->r[31] + 0x00000000u;
|
|
/* 02464E38 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02464E3C */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464E40 */ _t76 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464E40 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02464E44 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464E48 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464E4C */ _t77 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464E4C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02464E50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464E54 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464E58 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464E5C */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464E60 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464E64 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464E68 */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464E68 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02464E68 */ if (_t79) goto L_024651AC; else goto L_02464E6C;
|
|
L_02464E6C: ; // 0x2464e6c
|
|
/* 02464E6C */ goto L_024651C4;
|
|
L_02464E70: ; // 0x2464e70
|
|
/* 02464E70 */ cpu->f[10] = cpu->f[10] / cpu->f[12];
|
|
/* 02464E74 */ cpu->f[1] = -cpu->f[10];
|
|
/* 02464E78 */ Gambit_fn_02827710(cpu);
|
|
/* 02464E7C */ cpu->r[3] = cpu->r[3] + 0xC0000000u;
|
|
/* 02464E80 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 02464E80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02464E84 */ cpu->r[0] = 0x43300000u;
|
|
/* 02464E88 */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464E88 */ rbrew_write32(cpu->mem, _t81, cpu->r[3]);
|
|
/* 02464E8C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464E90 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 02464E90 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 02464E94 */ _t83 = cpu->r[1] + 0x00000028u;
|
|
/* 02464E94 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t83);
|
|
/* 02464E98 */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464E9C */ _t84 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464E9C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t84);
|
|
/* 02464EA0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464EA4 */ cpu->f[28] = cpu->f[31];
|
|
/* 02464EA8 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464EAC */ _t85 = cpu->r[31] + 0x00000000u;
|
|
/* 02464EAC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02464EB0 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464EB4 */ _t86 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464EB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02464EB8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464EBC */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464EC0 */ _t87 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464EC0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02464EC4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464EC8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464ECC */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464ED0 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464ED4 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464ED8 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464EDC */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464EDC */ _t89 = _t88 & 0x00000001u;
|
|
/* 02464EDC */ if (_t89) goto L_024651AC; else goto L_02464EE0;
|
|
L_02464EE0: ; // 0x2464ee0
|
|
/* 02464EE0 */ goto L_024651C4;
|
|
L_02464EE4: ; // 0x2464ee4
|
|
/* 02464EE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02464EE8 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464EE8 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02464EE8 */ if (_t91) goto L_02464FE4; else goto L_02464EEC;
|
|
L_02464EEC: ; // 0x2464eec
|
|
/* 02464EEC */ cpu->f[11] = -cpu->f[10];
|
|
/* 02464EF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 02464EF4 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464EF4 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02464EF4 */ if (_t93) goto L_02464F70; else goto L_02464EF8;
|
|
L_02464EF8: ; // 0x2464ef8
|
|
/* 02464EF8 */ cpu->f[12] = cpu->f[12] / cpu->f[10];
|
|
/* 02464EFC */ cpu->f[1] = -cpu->f[12];
|
|
/* 02464F00 */ Gambit_fn_02827710(cpu);
|
|
/* 02464F04 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464F08 */ cpu->r[0] = 0x43300000u;
|
|
/* 02464F0C */ _t94 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464F0C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t94);
|
|
/* 02464F10 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 02464F14 */ _t95 = cpu->r[1] + 0x00000028u;
|
|
/* 02464F14 */ rbrew_write32(cpu->mem, _t95, cpu->r[0]);
|
|
/* 02464F18 */ cpu->r[3] = cpu->r[3] + 0x80000000u;
|
|
/* 02464F1C */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 02464F1C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02464F20 */ cpu->f[28] = cpu->f[31];
|
|
/* 02464F24 */ _t97 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464F24 */ rbrew_write32(cpu->mem, _t97, cpu->r[3]);
|
|
/* 02464F28 */ _t98 = cpu->r[1] + 0x00000028u;
|
|
/* 02464F28 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t98);
|
|
/* 02464F2C */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464F30 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464F34 */ _t99 = cpu->r[31] + 0x00000000u;
|
|
/* 02464F34 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02464F38 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464F3C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464F40 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464F44 */ _t100 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464F44 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02464F48 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464F4C */ _t101 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464F4C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02464F50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464F54 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464F58 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464F5C */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464F60 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464F64 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464F68 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464F68 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02464F68 */ if (_t103) goto L_024651AC; else goto L_02464F6C;
|
|
L_02464F6C: ; // 0x2464f6c
|
|
/* 02464F6C */ goto L_024651C4;
|
|
L_02464F70: ; // 0x2464f70
|
|
/* 02464F70 */ cpu->f[13] = cpu->f[10] / cpu->f[12];
|
|
/* 02464F74 */ cpu->f[1] = -cpu->f[13];
|
|
/* 02464F78 */ Gambit_fn_02827710(cpu);
|
|
/* 02464F7C */ cpu->r[3] = cpu->r[3] + 0x40000000u;
|
|
/* 02464F80 */ _t104 = cpu->r[1] + 0x00000008u;
|
|
/* 02464F80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02464F84 */ cpu->r[0] = 0x43300000u;
|
|
/* 02464F88 */ _t105 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02464F88 */ rbrew_write32(cpu->mem, _t105, cpu->r[3]);
|
|
/* 02464F8C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02464F90 */ _t106 = cpu->r[1] + 0x00000028u;
|
|
/* 02464F90 */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 02464F94 */ _t107 = cpu->r[1] + 0x00000028u;
|
|
/* 02464F94 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t107);
|
|
/* 02464F98 */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02464F9C */ _t108 = cpu->r[9] + 0x000037B0u;
|
|
/* 02464F9C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t108);
|
|
/* 02464FA0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02464FA4 */ cpu->f[28] = cpu->f[31];
|
|
/* 02464FA8 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02464FAC */ _t109 = cpu->r[31] + 0x00000000u;
|
|
/* 02464FAC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02464FB0 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 02464FB4 */ _t110 = cpu->r[11] + 0x000037ACu;
|
|
/* 02464FB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02464FB8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02464FBC */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02464FC0 */ _t111 = cpu->r[12] + 0x000037B8u;
|
|
/* 02464FC0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 02464FC4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02464FC8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02464FCC */ cpu->r[0] = 0x100A0000u;
|
|
/* 02464FD0 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 02464FD4 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02464FD8 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02464FDC */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02464FDC */ _t113 = _t112 & 0x00000001u;
|
|
/* 02464FDC */ if (_t113) goto L_024651AC; else goto L_02464FE0;
|
|
L_02464FE0: ; // 0x2464fe0
|
|
/* 02464FE0 */ goto L_024651C4;
|
|
L_02464FE4: ; // 0x2464fe4
|
|
/* 02464FE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 02464FE8 */ _t114 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02464FE8 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02464FE8 */ if (_t115) goto L_0246505C; else goto L_02464FEC;
|
|
L_02464FEC: ; // 0x2464fec
|
|
/* 02464FEC */ cpu->f[1] = cpu->f[12] / cpu->f[10];
|
|
/* 02464FF0 */ Gambit_fn_02827710(cpu);
|
|
/* 02464FF4 */ cpu->r[3] = cpu->r[3] + 0x80000000u;
|
|
/* 02464FF8 */ _t116 = cpu->r[1] + 0x00000008u;
|
|
/* 02464FF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02464FFC */ cpu->r[0] = 0x43300000u;
|
|
/* 02465000 */ _t117 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02465000 */ rbrew_write32(cpu->mem, _t117, cpu->r[3]);
|
|
/* 02465004 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02465008 */ _t118 = cpu->r[1] + 0x00000028u;
|
|
/* 02465008 */ rbrew_write32(cpu->mem, _t118, cpu->r[0]);
|
|
/* 0246500C */ _t119 = cpu->r[1] + 0x00000028u;
|
|
/* 0246500C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t119);
|
|
/* 02465010 */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02465014 */ _t120 = cpu->r[9] + 0x000037B0u;
|
|
/* 02465014 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t120);
|
|
/* 02465018 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246501C */ cpu->f[28] = cpu->f[31];
|
|
/* 02465020 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 02465024 */ _t121 = cpu->r[31] + 0x00000000u;
|
|
/* 02465024 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 02465028 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 0246502C */ _t122 = cpu->r[11] + 0x000037ACu;
|
|
/* 0246502C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 02465030 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465034 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 02465038 */ _t123 = cpu->r[12] + 0x000037B8u;
|
|
/* 02465038 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 0246503C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02465040 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02465044 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465048 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 0246504C */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02465050 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02465054 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465054 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02465054 */ if (_t125) goto L_024651AC; else goto L_02465058;
|
|
L_02465058: ; // 0x2465058
|
|
/* 02465058 */ goto L_024651C4;
|
|
L_0246505C: ; // 0x246505c
|
|
/* 0246505C */ cpu->f[1] = cpu->f[10] / cpu->f[12];
|
|
/* 02465060 */ Gambit_fn_02827710(cpu);
|
|
/* 02465064 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02465068 */ cpu->r[0] = 0x43300000u;
|
|
/* 0246506C */ _t126 = cpu->r[9] + 0x000037B0u;
|
|
/* 0246506C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 02465070 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 02465074 */ _t127 = cpu->r[1] + 0x00000028u;
|
|
/* 02465074 */ rbrew_write32(cpu->mem, _t127, cpu->r[0]);
|
|
/* 02465078 */ cpu->r[3] = cpu->r[3] + 0xC0000000u;
|
|
/* 0246507C */ _t128 = cpu->r[1] + 0x00000008u;
|
|
/* 0246507C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02465080 */ cpu->f[28] = cpu->f[31];
|
|
/* 02465084 */ _t129 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02465084 */ rbrew_write32(cpu->mem, _t129, cpu->r[3]);
|
|
/* 02465088 */ _t130 = cpu->r[1] + 0x00000028u;
|
|
/* 02465088 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 0246508C */ cpu->f[10] = fabs(cpu->f[12]);
|
|
/* 02465090 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465094 */ _t131 = cpu->r[31] + 0x00000000u;
|
|
/* 02465094 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02465098 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 0246509C */ cpu->r[11] = 0x100A0000u;
|
|
/* 024650A0 */ cpu->f[7] = cpu->f[10] + cpu->f[29];
|
|
/* 024650A4 */ _t132 = cpu->r[12] + 0x000037B8u;
|
|
/* 024650A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 024650A8 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 024650AC */ _t133 = cpu->r[11] + 0x000037ACu;
|
|
/* 024650AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 024650B0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024650B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 024650B8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024650BC */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 024650C0 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 024650C4 */ cpu->f[0] = -fma(cpu->f[9], cpu->f[10], -(cpu->f[11]));
|
|
/* 024650C8 */ _t134 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024650C8 */ _t135 = _t134 & 0x00000001u;
|
|
/* 024650C8 */ if (_t135) goto L_024651AC; else goto L_024650CC;
|
|
L_024650CC: ; // 0x24650cc
|
|
/* 024650CC */ goto L_024651C4;
|
|
L_024650D0: ; // 0x24650d0
|
|
/* 024650D0 */ cpu->f[11] = cpu->f[12] + cpu->f[29];
|
|
/* 024650D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[6]);
|
|
/* 024650D8 */ _t136 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024650D8 */ _t137 = _t136 & 0x00000001u;
|
|
/* 024650D8 */ if (_t137) goto L_02465104; else goto L_024650DC;
|
|
L_024650DC: ; // 0x24650dc
|
|
/* 024650DC */ cpu->r[10] = 0x100A0000u;
|
|
/* 024650E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 024650E4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024650E8 */ _t138 = cpu->r[10] + 0x000037BCu;
|
|
/* 024650E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 024650EC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024650F0 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 024650F4 */ cpu->f[28] = cpu->f[31];
|
|
/* 024650F8 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 024650FC */ _t139 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024650FC */ _t140 = _t139 & 0x00000001u;
|
|
/* 024650FC */ if (_t140) goto L_024651AC; else goto L_02465100;
|
|
L_02465100: ; // 0x2465100
|
|
/* 02465100 */ goto L_024651C4;
|
|
L_02465104: ; // 0x2465104
|
|
/* 02465104 */ cpu->f[12] = cpu->f[12] - cpu->f[29];
|
|
/* 02465108 */ cpu->f[13] = -cpu->f[6];
|
|
/* 0246510C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02465110 */ _t141 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02465110 */ _t142 = _t141 & 0x00000001u;
|
|
/* 02465110 */ if (_t142) goto L_0246513C; else goto L_02465114;
|
|
L_02465114: ; // 0x2465114
|
|
/* 02465114 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02465118 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 0246511C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465120 */ _t143 = cpu->r[9] + 0x000037C0u;
|
|
/* 02465120 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02465124 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02465128 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 0246512C */ cpu->f[28] = cpu->f[31];
|
|
/* 02465130 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02465134 */ _t144 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465134 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02465134 */ if (_t145) goto L_024651AC; else goto L_02465138;
|
|
L_02465138: ; // 0x2465138
|
|
/* 02465138 */ goto L_024651C4;
|
|
L_0246513C: ; // 0x246513c
|
|
/* 0246513C */ _t146 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246513C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 02465140 */ cpu->f[8] = cpu->f[9] + cpu->f[30];
|
|
/* 02465144 */ _t147 = cpu->r[31] + 0x00000004u;
|
|
/* 02465144 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 02465148 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]);
|
|
/* 0246514C */ _t148 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246514C */ _t149 = _t148 & 0x00000001u;
|
|
/* 0246514C */ if (_t149) goto L_02465178; else goto L_02465150;
|
|
L_02465150: ; // 0x2465150
|
|
/* 02465150 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465154 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 02465158 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246515C */ _t150 = cpu->r[12] + 0x000037C4u;
|
|
/* 0246515C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 02465160 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02465164 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 02465168 */ cpu->f[28] = cpu->f[31];
|
|
/* 0246516C */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 02465170 */ _t151 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465170 */ _t152 = _t151 & 0x00000001u;
|
|
/* 02465170 */ if (_t152) goto L_024651AC; else goto L_02465174;
|
|
L_02465174: ; // 0x2465174
|
|
/* 02465174 */ goto L_024651C4;
|
|
L_02465178: ; // 0x2465178
|
|
/* 02465178 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465178 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0246517C */ _t154 = cpu->r[31] + 0x00000004u;
|
|
/* 0246517C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 02465180 */ cpu->f[8] = cpu->f[9] - cpu->f[30];
|
|
/* 02465184 */ cpu->f[11] = -cpu->f[12];
|
|
/* 02465188 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[6]);
|
|
/* 0246518C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465190 */ cpu->f[13] = cpu->f[11] - cpu->f[8];
|
|
/* 02465194 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02465198 */ cpu->f[28] = cpu->f[31];
|
|
/* 0246519C */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 024651A0 */ cpu->r[0] = cpu->r[0] + 0x000037D0u;
|
|
/* 024651A4 */ /* nop */
|
|
/* 024651A8 */ _t155 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024651A8 */ _t156 = _t155 & 0x00000001u;
|
|
/* 024651A8 */ if (_t156) goto L_024651AC; else goto L_024651C4;
|
|
L_024651AC: ; // 0x24651ac
|
|
/* 024651AC */ _t157 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024651AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 024651B0 */ cpu->f[10] = fabs(cpu->f[11]);
|
|
/* 024651B4 */ cpu->f[12] = cpu->f[10] + cpu->f[30];
|
|
/* 024651B8 */ _t158 = cpu->r[31] + 0x00000004u;
|
|
/* 024651B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 024651BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024651C0 */ _t159 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024651C0 */ _t160 = _t159 & 0x00000001u;
|
|
/* 024651C0 */ if (_t160) goto L_02465204; else goto L_024651C4;
|
|
L_024651C4: ; // 0x24651c4
|
|
/* 024651C4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024651C8 */ _t161 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024651C8 */ rbrew_write32(cpu->mem, _t161, cpu->r[30]);
|
|
/* 024651CC */ cpu->r[4] = 0x00000001u;
|
|
/* 024651D0 */ _t162 = cpu->r[11] + 0x000037C8u;
|
|
/* 024651D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 024651D4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 024651D8 */ cpu->r[3] = cpu->r[29];
|
|
/* 024651DC */ _t163 = cpu->r[1] + 0x00000018u;
|
|
/* 024651DC */ rbrew_write32(cpu->mem, _t163, cpu->r[0]);
|
|
/* 024651E0 */ cpu->f[28] = cpu->f[0];
|
|
/* 024651E4 */ Gambit_fn_027ED914(cpu);
|
|
/* 024651E8 */ _t164 = cpu->r[31] + 0x00000000u;
|
|
/* 024651E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 024651EC */ cpu->f[0] = cpu->f[29] - cpu->f[6];
|
|
/* 024651F0 */ _t165 = cpu->r[1] + 0x00000008u;
|
|
/* 024651F0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 024651F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 024651F8 */ cpu->f[8] = cpu->f[6] - cpu->f[29];
|
|
/* 024651FC */ _t166 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024651FC */ _t167 = _t166 & 0x00000001u;
|
|
/* 024651FC */ if (_t167) goto L_02465238; else goto L_02465200;
|
|
L_02465200: ; // 0x2465200
|
|
/* 02465200 */ goto L_02465260;
|
|
L_02465204: ; // 0x2465204
|
|
/* 02465204 */ cpu->f[1] = cpu->f[31];
|
|
/* 02465208 */ _t168 = cpu->r[1] + 0x00000024u;
|
|
/* 02465208 */ rbrew_write32(cpu->mem, _t168, cpu->r[30]);
|
|
/* 0246520C */ cpu->r[4] = 0x00000001u;
|
|
/* 02465210 */ cpu->r[3] = cpu->r[29];
|
|
/* 02465214 */ _t169 = cpu->r[1] + 0x00000020u;
|
|
/* 02465214 */ rbrew_write32(cpu->mem, _t169, cpu->r[0]);
|
|
/* 02465218 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0246521C */ Gambit_fn_027ED914(cpu);
|
|
/* 02465220 */ _t170 = cpu->r[31] + 0x00000000u;
|
|
/* 02465220 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 02465224 */ cpu->f[0] = cpu->f[29] - cpu->f[6];
|
|
/* 02465228 */ _t171 = cpu->r[1] + 0x00000008u;
|
|
/* 02465228 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0246522C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02465230 */ cpu->f[8] = cpu->f[6] - cpu->f[29];
|
|
/* 02465234 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465234 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02465234 */ if (_t173) goto L_02465238; else goto L_02465260;
|
|
L_02465238: ; // 0x2465238
|
|
/* 02465238 */ _t174 = cpu->r[31] + 0x00000004u;
|
|
/* 02465238 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 0246523C */ cpu->f[11] = cpu->f[30] - cpu->f[12];
|
|
/* 02465240 */ _t175 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465240 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 02465244 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02465248 */ _t176 = cpu->r[1] + 0x00000008u;
|
|
/* 02465248 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[0]);
|
|
/* 0246524C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 02465250 */ _t177 = cpu->r[10] + 0x000037CCu;
|
|
/* 02465250 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02465254 */ cpu->f[13] = cpu->f[13] - cpu->f[30];
|
|
/* 02465258 */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465258 */ _t179 = _t178 & 0x00000001u;
|
|
/* 02465258 */ if (_t179) goto L_02465290; else goto L_0246525C;
|
|
L_0246525C: ; // 0x246525c
|
|
/* 0246525C */ goto L_024652C8;
|
|
L_02465260: ; // 0x2465260
|
|
/* 02465260 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[8]);
|
|
/* 02465264 */ _t180 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02465264 */ _t181 = _t180 & 0x00000001u;
|
|
/* 02465264 */ if (_t181) goto L_02465268; else goto L_0246526C;
|
|
L_02465268: ; // 0x2465268
|
|
/* 02465268 */ cpu->f[7] = cpu->f[8];
|
|
L_0246526C: ; // 0x246526c
|
|
/* 0246526C */ _t182 = cpu->r[31] + 0x00000004u;
|
|
/* 0246526C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02465270 */ cpu->f[11] = cpu->f[30] - cpu->f[12];
|
|
/* 02465274 */ _t183 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465274 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 02465278 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0246527C */ _t184 = cpu->r[1] + 0x00000008u;
|
|
/* 0246527C */ rbrew_write_f32(cpu->mem, _t184, cpu->f[7]);
|
|
/* 02465280 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 02465284 */ _t185 = cpu->r[10] + 0x000037CCu;
|
|
/* 02465284 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 02465288 */ cpu->f[13] = cpu->f[13] - cpu->f[30];
|
|
/* 0246528C */ _t186 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246528C */ _t187 = _t186 & 0x00000001u;
|
|
/* 0246528C */ if (_t187) goto L_02465290; else goto L_024652C8;
|
|
L_02465290: ; // 0x2465290
|
|
/* 02465290 */ _t188 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465290 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[11]);
|
|
/* 02465294 */ cpu->r[3] = cpu->r[29];
|
|
/* 02465298 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246529C */ _t189 = cpu->r[1] + 0x00000014u;
|
|
/* 0246529C */ rbrew_write32(cpu->mem, _t189, cpu->r[30]);
|
|
/* 024652A0 */ cpu->f[1] = cpu->f[28];
|
|
/* 024652A4 */ cpu->r[12] = cpu->r[12] + 0x000037D8u;
|
|
/* 024652A8 */ cpu->r[4] = 0x00000002u;
|
|
/* 024652AC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024652B0 */ _t190 = cpu->r[1] + 0x00000010u;
|
|
/* 024652B0 */ rbrew_write32(cpu->mem, _t190, cpu->r[12]);
|
|
/* 024652B4 */ Gambit_fn_027ED914(cpu);
|
|
/* 024652B8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024652BC */ cpu->r[3] = cpu->r[29];
|
|
/* 024652C0 */ Gambit_fn_020B76CC(cpu);
|
|
/* 024652C4 */ goto L_02465308;
|
|
L_024652C8: ; // 0x24652c8
|
|
/* 024652C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024652CC */ _t191 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024652CC */ _t192 = _t191 & 0x00000001u;
|
|
/* 024652CC */ if (_t192) goto L_024652D0; else goto L_024652D4;
|
|
L_024652D0: ; // 0x24652d0
|
|
/* 024652D0 */ cpu->f[12] = cpu->f[13];
|
|
L_024652D4: ; // 0x24652d4
|
|
/* 024652D4 */ _t193 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024652D4 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[12]);
|
|
/* 024652D8 */ cpu->r[3] = cpu->r[29];
|
|
/* 024652DC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024652E0 */ _t194 = cpu->r[1] + 0x00000014u;
|
|
/* 024652E0 */ rbrew_write32(cpu->mem, _t194, cpu->r[30]);
|
|
/* 024652E4 */ cpu->f[1] = cpu->f[28];
|
|
/* 024652E8 */ cpu->r[12] = cpu->r[12] + 0x000037D8u;
|
|
/* 024652EC */ cpu->r[4] = 0x00000002u;
|
|
/* 024652F0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024652F4 */ _t195 = cpu->r[1] + 0x00000010u;
|
|
/* 024652F4 */ rbrew_write32(cpu->mem, _t195, cpu->r[12]);
|
|
/* 024652F8 */ Gambit_fn_027ED914(cpu);
|
|
/* 024652FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465300 */ cpu->r[3] = cpu->r[29];
|
|
/* 02465304 */ Gambit_fn_020B76CC(cpu);
|
|
L_02465308: ; // 0x2465308
|
|
/* 02465308 */ _t196 = cpu->r[1] + 0x00000034u;
|
|
/* 02465308 */ cpu->r[29] = rbrew_read32(cpu->mem, _t196);
|
|
/* 0246530C */ _t197 = cpu->r[1] + 0x00000078u;
|
|
/* 0246530C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 02465310 */ _t198 = cpu->r[1] + 0x00000058u;
|
|
/* 02465310 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 02465314 */ _t199 = cpu->r[1] + 0x00000070u;
|
|
/* 02465314 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t199);
|
|
/* 02465318 */ _t200 = cpu->r[1] + 0x00000068u;
|
|
/* 02465318 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 0246531C */ _t201 = cpu->r[1] + 0x00000050u;
|
|
/* 0246531C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t201);
|
|
/* 02465320 */ _t202 = cpu->r[1] + 0x00000060u;
|
|
/* 02465320 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t202);
|
|
/* 02465324 */ _t203 = cpu->r[1] + 0x00000048u;
|
|
/* 02465324 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 02465328 */ _t204 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02465328 */ cpu->r[31] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0246532C */ _t205 = cpu->r[1] + 0x00000040u;
|
|
/* 0246532C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t205);
|
|
/* 02465330 */ _t206 = cpu->r[1] + 0x00000038u;
|
|
/* 02465330 */ cpu->r[30] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02465334 */ _t207 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465334 */ _t208 = _t207 & 0x00000001u;
|
|
/* 02465334 */ if (_t208) goto L_02465338; // else: addr-0 trap, fall-through
|
|
L_02465338: ; // 0x2465338
|
|
/* 02465338 */ _t209 = cpu->r[1] + 0x00000084u;
|
|
/* 02465338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t209);
|
|
/* 0246533C */ cpu->lr = cpu->r[0];
|
|
/* 02465340 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 02465344 */ return;
|
|
}
|
|
|
|
// fn_0246534C @ 0x246534c
|
|
void Gambit_fn_0246534C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0246534C: ; // 0x246534c
|
|
/* 0246534C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0246534C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0246534C */ cpu->r[1] = _t0;
|
|
/* 02465350 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465350 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02465354 */ cpu->r[31] = cpu->r[3];
|
|
/* 02465358 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02465358 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246535C */ Gambit_fn_020B76B4(cpu);
|
|
/* 02465360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465364 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465364 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02465364 */ if (_t4) goto L_0246537C; else goto L_02465368;
|
|
L_02465368: ; // 0x2465368
|
|
/* 02465368 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 02465368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0246536C */ _t6 = cpu->r[12] + 0x00000094u;
|
|
/* 0246536C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02465370 */ cpu->ctr = cpu->r[0];
|
|
/* 02465374 */ cpu->r[3] = cpu->r[31];
|
|
/* 02465378 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0246537C: ; // 0x246537c
|
|
/* 0246537C */ _t7 = cpu->r[31] + 0x00000118u;
|
|
/* 0246537C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02465380 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02465380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02465384 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465384 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02465384 */ if (_t9) goto L_0246539C; else goto L_02465388;
|
|
L_02465388: ; // 0x2465388
|
|
/* 02465388 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 02465388 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0246538C */ _t11 = cpu->r[12] + 0x00000164u;
|
|
/* 0246538C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02465390 */ cpu->ctr = cpu->r[10];
|
|
/* 02465394 */ cpu->r[3] = cpu->r[31];
|
|
/* 02465398 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0246539C: ; // 0x246539c
|
|
/* 0246539C */ cpu->r[0] = 0x00000001u;
|
|
/* 024653A0 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 024653A0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024653A4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024653A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024653A8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024653A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024653AC */ cpu->lr = cpu->r[0];
|
|
/* 024653B0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024653B4 */ return;
|
|
}
|
|
|
|
// fn_024653B8 @ 0x24653b8
|
|
void Gambit_fn_024653B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_020B763C: ; // 0x20b763c
|
|
/* 020B763C */ cpu->r[0] = cpu->lr;
|
|
/* 020B7640 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020B7640 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020B7640 */ cpu->r[1] = _t0;
|
|
/* 020B7644 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020B7644 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020B7648 */ cpu->r[31] = cpu->r[3];
|
|
/* 020B764C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 020B7650 */ cpu->r[4] = 0x00000000u;
|
|
/* 020B7654 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020B7654 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020B7658 */ Gambit_fn_02008A64(cpu);
|
|
/* 020B765C */ cpu->r[3] = cpu->r[31];
|
|
/* 020B7660 */ Gambit_fn_0206A310(cpu);
|
|
/* 020B7664 */ cpu->r[0] = 0x00000000u;
|
|
/* 020B7668 */ _t3 = cpu->r[31] + 0x00000215u;
|
|
/* 020B7668 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 020B766C */ _t4 = cpu->r[31] + 0x00000214u;
|
|
/* 020B766C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 020B7670 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 020B7670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020B7674 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020B7674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020B7678 */ cpu->lr = cpu->r[0];
|
|
/* 020B767C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020B7680 */ return;
|
|
L_024653B8: ; // 0x24653b8
|
|
/* 024653B8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024653BC */ _t7 = cpu->r[3] + 0x0000021Cu;
|
|
/* 024653BC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024653C0 */ goto L_020B763C;
|
|
}
|
|
|
|
// fn_024653C4 @ 0x24653c4
|
|
void Gambit_fn_024653C4(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_024653C4: ; // 0x24653c4
|
|
/* 024653C4 */ cpu->r[0] = cpu->lr;
|
|
/* 024653C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024653C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024653C8 */ cpu->r[1] = _t0;
|
|
/* 024653CC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024653CC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024653D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024653D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024653D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024653D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024653DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 024653E0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024653E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024653E4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024653E4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024653E4 */ if (_t5) goto L_02465414; else goto L_024653E8;
|
|
L_024653E8: ; // 0x24653e8
|
|
/* 024653E8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024653EC */ _t6 = cpu->r[7] + 0x000037E4u;
|
|
/* 024653EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024653F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024653F4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024653F4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[11]);
|
|
/* 024653F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024653FC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024653FC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[11]);
|
|
/* 02465400 */ Gambit_fn_020B76D0(cpu);
|
|
/* 02465404 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465408 */ cpu->r[4] = cpu->r[31];
|
|
/* 0246540C */ Gambit_fn_02464BD4(cpu);
|
|
/* 02465410 */ goto L_02465498;
|
|
L_02465414: ; // 0x2465414
|
|
/* 02465414 */ cpu->r[3] = cpu->r[6];
|
|
/* 02465418 */ Gambit_fn_02C69350(cpu);
|
|
/* 0246541C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02465420 */ _t9 = cpu->r[10] + 0x000037E8u;
|
|
/* 02465420 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02465424 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02465428 */ cpu->f[8] = cpu->f[1] / cpu->f[9];
|
|
/* 0246542C */ _t10 = cpu->r[9] + 0x000037A8u;
|
|
/* 0246542C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02465430 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[12]);
|
|
/* 02465434 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465434 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02465434 */ if (_t12) goto L_02465438; else goto L_02465450;
|
|
L_02465438: ; // 0x2465438
|
|
/* 02465438 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246543C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465440 */ _t13 = cpu->r[12] + 0x000037ECu;
|
|
/* 02465440 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02465444 */ _t14 = cpu->r[11] + 0x000037F0u;
|
|
/* 02465444 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02465448 */ cpu->f[11] = fma(cpu->f[13], cpu->f[12], cpu->f[0]);
|
|
/* 0246544C */ goto L_02465478;
|
|
L_02465450: ; // 0x2465450
|
|
/* 02465450 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02465454 */ _t15 = cpu->r[8] + 0x000037C8u;
|
|
/* 02465454 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02465458 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]);
|
|
/* 0246545C */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246545C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0246545C */ if (_t17) goto L_02465460; else goto L_02465464;
|
|
L_02465460: ; // 0x2465460
|
|
/* 02465460 */ cpu->f[8] = cpu->f[10];
|
|
L_02465464: ; // 0x2465464
|
|
/* 02465464 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465468 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246546C */ _t18 = cpu->r[12] + 0x000037ECu;
|
|
/* 0246546C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02465470 */ _t19 = cpu->r[11] + 0x000037F0u;
|
|
/* 02465470 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02465474 */ cpu->f[11] = fma(cpu->f[13], cpu->f[8], cpu->f[0]);
|
|
L_02465478: ; // 0x2465478
|
|
/* 02465478 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02465478 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 0246547C */ cpu->r[3] = cpu->r[30];
|
|
/* 02465480 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465484 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465484 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 02465488 */ Gambit_fn_020B76D0(cpu);
|
|
/* 0246548C */ cpu->r[4] = cpu->r[31];
|
|
/* 02465490 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465494 */ Gambit_fn_02464BD4(cpu);
|
|
L_02465498: ; // 0x2465498
|
|
/* 02465498 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0246549C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0246549C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024654A0 */ cpu->lr = cpu->r[0];
|
|
/* 024654A4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 024654A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024654A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024654AC */ return;
|
|
}
|
|
|
|
// fn_024653C8 @ 0x24653c8
|
|
void Gambit_fn_024653C8(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_024653C8: ; // 0x24653c8
|
|
/* 024653C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024653C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024653C8 */ cpu->r[1] = _t0;
|
|
/* 024653CC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024653CC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024653D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024653D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024653D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024653D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024653DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 024653E0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024653E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024653E4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024653E4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024653E4 */ if (_t5) goto L_02465414; else goto L_024653E8;
|
|
L_024653E8: ; // 0x24653e8
|
|
/* 024653E8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024653EC */ _t6 = cpu->r[7] + 0x000037E4u;
|
|
/* 024653EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024653F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024653F4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024653F4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[11]);
|
|
/* 024653F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024653FC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024653FC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[11]);
|
|
/* 02465400 */ Gambit_fn_020B76D0(cpu);
|
|
/* 02465404 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465408 */ cpu->r[4] = cpu->r[31];
|
|
/* 0246540C */ Gambit_fn_02464BD4(cpu);
|
|
/* 02465410 */ goto L_02465498;
|
|
L_02465414: ; // 0x2465414
|
|
/* 02465414 */ cpu->r[3] = cpu->r[6];
|
|
/* 02465418 */ Gambit_fn_02C69350(cpu);
|
|
/* 0246541C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02465420 */ _t9 = cpu->r[10] + 0x000037E8u;
|
|
/* 02465420 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02465424 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02465428 */ cpu->f[8] = cpu->f[1] / cpu->f[9];
|
|
/* 0246542C */ _t10 = cpu->r[9] + 0x000037A8u;
|
|
/* 0246542C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02465430 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[12]);
|
|
/* 02465434 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465434 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02465434 */ if (_t12) goto L_02465438; else goto L_02465450;
|
|
L_02465438: ; // 0x2465438
|
|
/* 02465438 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246543C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465440 */ _t13 = cpu->r[12] + 0x000037ECu;
|
|
/* 02465440 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02465444 */ _t14 = cpu->r[11] + 0x000037F0u;
|
|
/* 02465444 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02465448 */ cpu->f[11] = fma(cpu->f[13], cpu->f[12], cpu->f[0]);
|
|
/* 0246544C */ goto L_02465478;
|
|
L_02465450: ; // 0x2465450
|
|
/* 02465450 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02465454 */ _t15 = cpu->r[8] + 0x000037C8u;
|
|
/* 02465454 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02465458 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]);
|
|
/* 0246545C */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246545C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0246545C */ if (_t17) goto L_02465460; else goto L_02465464;
|
|
L_02465460: ; // 0x2465460
|
|
/* 02465460 */ cpu->f[8] = cpu->f[10];
|
|
L_02465464: ; // 0x2465464
|
|
/* 02465464 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465468 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246546C */ _t18 = cpu->r[12] + 0x000037ECu;
|
|
/* 0246546C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02465470 */ _t19 = cpu->r[11] + 0x000037F0u;
|
|
/* 02465470 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02465474 */ cpu->f[11] = fma(cpu->f[13], cpu->f[8], cpu->f[0]);
|
|
L_02465478: ; // 0x2465478
|
|
/* 02465478 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02465478 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 0246547C */ cpu->r[3] = cpu->r[30];
|
|
/* 02465480 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465484 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465484 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 02465488 */ Gambit_fn_020B76D0(cpu);
|
|
/* 0246548C */ cpu->r[4] = cpu->r[31];
|
|
/* 02465490 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465494 */ Gambit_fn_02464BD4(cpu);
|
|
L_02465498: ; // 0x2465498
|
|
/* 02465498 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0246549C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0246549C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024654A0 */ cpu->lr = cpu->r[0];
|
|
/* 024654A4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 024654A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024654A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024654AC */ return;
|
|
}
|
|
|
|
// fn_024654B0 @ 0x24654b0
|
|
void Gambit_fn_024654B0(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;
|
|
|
|
L_024654B0: ; // 0x24654b0
|
|
/* 024654B0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 024654B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024654B0 */ cpu->r[1] = _t0;
|
|
/* 024654B4 */ /* nop */
|
|
/* 024654B8 */ cpu->r[0] = cpu->lr;
|
|
/* 024654BC */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 024654BC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024654C0 */ /* nop */
|
|
/* 024654C4 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 024654C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024654C8 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 024654C8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024654CC */ cpu->r[29] = cpu->r[7];
|
|
/* 024654D0 */ cpu->r[25] = cpu->r[3];
|
|
/* 024654D4 */ _t4 = cpu->r[25] + 0x0000021Cu;
|
|
/* 024654D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024654D8 */ cpu->r[26] = cpu->r[4];
|
|
/* 024654DC */ cpu->r[28] = cpu->r[6];
|
|
/* 024654E0 */ cpu->r[27] = cpu->r[5];
|
|
/* 024654E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]);
|
|
/* 024654E8 */ cpu->r[30] = cpu->r[8];
|
|
/* 024654EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024654EC */ _t6 = _t5 & 0x00000001u;
|
|
/* 024654EC */ if (_t6) goto L_02465600; else goto L_024654F0;
|
|
L_024654F0: ; // 0x24654f0
|
|
/* 024654F0 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024654F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024654F8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 024654FC */ cpu->r[9] = cpu->r[9] + 0x000037FCu;
|
|
/* 02465500 */ cpu->r[31] = cpu->r[31] + 0x00003764u;
|
|
/* 02465504 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465504 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02465504 */ if (_t8) goto L_02465508; else goto L_024655A0;
|
|
L_02465508: ; // 0x2465508
|
|
/* 02465508 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02465508 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 0246550C */ cpu->r[3] = cpu->r[25];
|
|
/* 02465510 */ cpu->r[4] = 0x00000003u;
|
|
/* 02465514 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465518 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465518 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0246551C */ Gambit_fn_027ED798(cpu);
|
|
/* 02465520 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02465524 */ _t11 = cpu->r[25] + 0x0000021Cu;
|
|
/* 02465524 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02465528 */ _t12 = cpu->r[29] + 0x00000000u;
|
|
/* 02465528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0246552C */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 0246552C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02465530 */ _t14 = cpu->r[29] + 0x00000004u;
|
|
/* 02465530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02465534 */ cpu->r[4] = cpu->r[27];
|
|
/* 02465538 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0246553C */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 0246553C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02465540 */ _t16 = cpu->r[29] + 0x00000008u;
|
|
/* 02465540 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465544 */ cpu->r[5] = cpu->r[28];
|
|
/* 02465548 */ cpu->r[3] = cpu->r[25];
|
|
/* 0246554C */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246554C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02465550 */ Gambit_fn_024653C4(cpu);
|
|
/* 02465554 */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 02465554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02465558 */ cpu->r[5] = 0x00000000u;
|
|
/* 0246555C */ _t19 = cpu->r[25] + 0x0000022Cu;
|
|
/* 0246555C */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02465560 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465564 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02465564 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02465568 */ Gambit_fn_020E39F8(cpu);
|
|
/* 0246556C */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0246556C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02465570 */ cpu->r[5] = 0x00000000u;
|
|
/* 02465574 */ _t22 = cpu->r[25] + 0x00000230u;
|
|
/* 02465574 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02465578 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246557C */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0246557C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02465580 */ Gambit_fn_020E2B5C(cpu);
|
|
/* 02465584 */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 02465584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02465588 */ cpu->r[5] = 0x00000000u;
|
|
/* 0246558C */ _t25 = cpu->r[25] + 0x00000234u;
|
|
/* 0246558C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02465590 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465594 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02465594 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02465598 */ Gambit_fn_020E2B5C(cpu);
|
|
/* 0246559C */ goto L_02465674;
|
|
L_024655A0: ; // 0x24655a0
|
|
/* 024655A0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024655A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 024655A8 */ _t27 = cpu->r[10] + 0x000037C8u;
|
|
/* 024655A8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024655AC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024655AC */ _t29 = _t28 & 0x00000001u;
|
|
/* 024655AC */ if (_t29) goto L_024655B0; else goto L_024655CC;
|
|
L_024655B0: ; // 0x24655b0
|
|
/* 024655B0 */ cpu->f[1] = cpu->f[31];
|
|
/* 024655B4 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 024655B4 */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 024655B8 */ cpu->r[3] = cpu->r[25];
|
|
/* 024655BC */ cpu->r[4] = 0x00000003u;
|
|
/* 024655C0 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024655C4 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024655C4 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 024655C8 */ Gambit_fn_027ED1E4(cpu);
|
|
L_024655CC: ; // 0x24655cc
|
|
/* 024655CC */ cpu->r[8] = 0x100A0000u;
|
|
/* 024655D0 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 024655D0 */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 024655D4 */ cpu->f[1] = cpu->f[31];
|
|
/* 024655D8 */ cpu->r[8] = cpu->r[8] + 0x000037F4u;
|
|
/* 024655DC */ cpu->r[3] = cpu->r[25];
|
|
/* 024655E0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024655E4 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 024655E4 */ rbrew_write32(cpu->mem, _t33, cpu->r[8]);
|
|
/* 024655E8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024655EC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024655F0 */ _t34 = cpu->r[25] + 0x00000228u;
|
|
/* 024655F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024655F4 */ cpu->r[4] = cpu->r[26];
|
|
/* 024655F8 */ _t35 = cpu->r[25] + 0x0000021Cu;
|
|
/* 024655F8 */ rbrew_write32(cpu->mem, _t35, cpu->r[26]);
|
|
/* 024655FC */ Gambit_fn_020A7EFC(cpu);
|
|
L_02465600: ; // 0x2465600
|
|
/* 02465600 */ _t36 = cpu->r[29] + 0x00000000u;
|
|
/* 02465600 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02465604 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 02465604 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 02465608 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 02465608 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0246560C */ cpu->r[4] = cpu->r[27];
|
|
/* 02465610 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02465614 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 02465614 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02465618 */ _t40 = cpu->r[29] + 0x00000008u;
|
|
/* 02465618 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0246561C */ cpu->r[5] = cpu->r[28];
|
|
/* 02465620 */ cpu->r[3] = cpu->r[25];
|
|
/* 02465624 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02465624 */ rbrew_write32(cpu->mem, _t41, cpu->r[9]);
|
|
/* 02465628 */ Gambit_fn_024653C4(cpu);
|
|
/* 0246562C */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 0246562C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02465630 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465634 */ _t43 = cpu->r[25] + 0x0000022Cu;
|
|
/* 02465634 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02465638 */ cpu->r[5] = 0x00000000u;
|
|
/* 0246563C */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0246563C */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 02465640 */ Gambit_fn_020E39F8(cpu);
|
|
/* 02465644 */ _t45 = cpu->r[30] + 0x00000000u;
|
|
/* 02465644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02465648 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246564C */ _t46 = cpu->r[25] + 0x00000230u;
|
|
/* 0246564C */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02465650 */ cpu->r[5] = 0x00000000u;
|
|
/* 02465654 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02465654 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02465658 */ Gambit_fn_020E2B5C(cpu);
|
|
/* 0246565C */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 0246565C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02465660 */ cpu->r[5] = 0x00000000u;
|
|
/* 02465664 */ _t49 = cpu->r[25] + 0x00000234u;
|
|
/* 02465664 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02465668 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246566C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0246566C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02465670 */ Gambit_fn_020E2B5C(cpu);
|
|
L_02465674: ; // 0x2465674
|
|
/* 02465674 */ /* nop */
|
|
/* 02465678 */ _t51 = cpu->r[1] + 0x00000058u;
|
|
/* 02465678 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0246567C */ _t52 = cpu->r[1] + 0x00000050u;
|
|
/* 0246567C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 02465680 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465680 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02465680 */ if (_t54) goto L_02465684; // else: addr-0 trap, fall-through
|
|
L_02465684: ; // 0x2465684
|
|
/* 02465684 */ _t55 = cpu->r[1] + 0x00000064u;
|
|
/* 02465684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02465688 */ cpu->lr = cpu->r[0];
|
|
/* 0246568C */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02465690 */ return;
|
|
}
|
|
|
|
// fn_02465694 @ 0x2465694
|
|
void Gambit_fn_02465694(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02465694: ; // 0x2465694
|
|
/* 02465694 */ cpu->r[0] = 0x00000001u;
|
|
/* 02465698 */ _t0 = cpu->r[3] + 0x00000220u;
|
|
/* 02465698 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0246569C */ return;
|
|
}
|
|
|
|
// fn_024656A0 @ 0x24656a0
|
|
void Gambit_fn_024656A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024656A0: ; // 0x24656a0
|
|
/* 024656A0 */ _t0 = cpu->r[3] + 0x00000220u;
|
|
/* 024656A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024656A4 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024656A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024656A8 */ _t1 = cpu->r[3] + 0x00000220u;
|
|
/* 024656A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024656AC */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024656AC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024656AC */ _t4 = _t3 ^ 0x00000001u;
|
|
/* 024656AC */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024656AC */ goto L_024656B0;
|
|
L_024656B0: ; // 0x24656b0
|
|
/* 024656B0 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 024656B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024656B4 */ _t6 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024656B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024656B8 */ cpu->ctr = cpu->r[0];
|
|
/* 024656BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024656C0 @ 0x24656c0
|
|
void Gambit_fn_024656C0(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_024656C0: ; // 0x24656c0
|
|
/* 024656C0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024656C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024656C0 */ cpu->r[1] = _t0;
|
|
/* 024656C4 */ cpu->r[0] = cpu->lr;
|
|
/* 024656C8 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024656C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024656CC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024656D0 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024656D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024656D4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024656D8 */ cpu->r[30] = cpu->r[30] + 0x00003764u;
|
|
/* 024656DC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 024656DC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024656E0 */ cpu->r[10] = cpu->r[10] + 0x0000380Cu;
|
|
/* 024656E4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024656E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024656E8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 024656EC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 024656EC */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 024656F0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024656F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 024656F4 */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 024656F4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024656F8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024656FC */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 024656FC */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02465700 */ cpu->r[29] = cpu->r[3];
|
|
/* 02465704 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465704 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02465708 */ cpu->r[0] = cpu->r[0] + 0x00003858u;
|
|
/* 0246570C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02465710 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02465714 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02465714 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02465718 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0246571C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465720 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465720 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 02465724 */ cpu->r[12] = cpu->r[12] + 0x00003864u;
|
|
/* 02465728 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465728 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0246572C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465730 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02465730 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 02465734 */ cpu->r[0] = cpu->r[0] + 0x0000382Cu;
|
|
/* 02465738 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02465738 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 0246573C */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02465740 */ cpu->r[3] = cpu->r[29];
|
|
/* 02465744 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02465744 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02465748 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246574C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02465750 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02465750 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02465754 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02465758 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246575C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0246575C */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 02465760 */ cpu->r[0] = cpu->r[0] + 0x00003818u;
|
|
/* 02465764 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465764 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 02465768 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246576C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246576C */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 02465770 */ cpu->r[9] = cpu->r[9] + 0x0000383Cu;
|
|
/* 02465774 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02465774 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02465778 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246577C */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02465780 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 02465780 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 02465784 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465788 */ cpu->r[3] = cpu->r[29];
|
|
/* 0246578C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0246578C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02465790 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02465794 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465798 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02465798 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 0246579C */ cpu->r[11] = cpu->r[11] + 0x00003870u;
|
|
/* 024657A0 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024657A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 024657A4 */ cpu->r[31] = 0x100A0000u;
|
|
/* 024657A8 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 024657A8 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 024657AC */ cpu->r[31] = cpu->r[31] + 0x00003848u;
|
|
/* 024657B0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024657B4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024657B4 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 024657B8 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024657BC */ cpu->r[3] = cpu->r[29];
|
|
/* 024657C0 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 024657C0 */ rbrew_write32(cpu->mem, _t27, cpu->r[31]);
|
|
/* 024657C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024657C8 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 024657C8 */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 024657CC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024657D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 024657D4 */ cpu->r[4] = 0x00000003u;
|
|
/* 024657D8 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024657D8 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 024657DC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024657E0 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 024657E0 */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 024657E4 */ Gambit_fn_027ED798(cpu);
|
|
/* 024657E8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 024657EC */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024657EC */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 024657F0 */ cpu->r[31] = cpu->r[31] + 0x00003814u;
|
|
/* 024657F4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024657F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024657FC */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 024657FC */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 02465800 */ cpu->r[0] = cpu->r[0] + 0x00003884u;
|
|
/* 02465804 */ cpu->r[4] = cpu->r[29];
|
|
/* 02465808 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02465808 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 0246580C */ cpu->r[3] = 0x00000000u;
|
|
/* 02465810 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02465814 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02465814 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 02465818 */ Gambit_fn_020E2548(cpu);
|
|
/* 0246581C */ cpu->r[4] = cpu->r[29];
|
|
/* 02465820 */ _t35 = cpu->r[29] + 0x00000230u;
|
|
/* 02465820 */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
/* 02465824 */ cpu->r[3] = 0x00000000u;
|
|
/* 02465828 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02465828 */ rbrew_write32(cpu->mem, _t36, cpu->r[30]);
|
|
/* 0246582C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465830 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465830 */ rbrew_write32(cpu->mem, _t37, cpu->r[30]);
|
|
/* 02465834 */ cpu->r[0] = cpu->r[0] + 0x00003820u;
|
|
/* 02465838 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02465838 */ rbrew_write32(cpu->mem, _t38, cpu->r[31]);
|
|
/* 0246583C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02465840 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02465844 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02465844 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02465848 */ Gambit_fn_020E2548(cpu);
|
|
/* 0246584C */ _t40 = cpu->r[29] + 0x00000234u;
|
|
/* 0246584C */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 02465850 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 02465850 */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02465854 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 02465854 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02465858 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02465858 */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0246585C */ cpu->lr = cpu->r[0];
|
|
/* 02465860 */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 02465860 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02465864 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02465868 */ return;
|
|
}
|
|
|
|
// fn_0246586C @ 0x246586c
|
|
void Gambit_fn_0246586C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0246586C: ; // 0x246586c
|
|
/* 0246586C */ cpu->r[0] = cpu->lr;
|
|
/* 02465870 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465874 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02465874 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465874 */ cpu->r[1] = _t0;
|
|
/* 02465878 */ cpu->r[11] = cpu->r[11] + 0x00003764u;
|
|
/* 0246587C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465880 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465880 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02465884 */ cpu->r[12] = cpu->r[12] + 0x00003890u;
|
|
/* 02465888 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465888 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0246588C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246588C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02465890 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02465894 */ cpu->r[31] = cpu->r[3];
|
|
/* 02465898 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02465898 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246589C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024658A0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024658A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 024658A4 */ cpu->r[0] = cpu->r[0] + 0x00003894u;
|
|
/* 024658A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024658AC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024658AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024658B0 */ Gambit_fn_027EBB94(cpu);
|
|
/* 024658B4 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 024658B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 024658B8 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 024658B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024658BC */ cpu->lr = cpu->r[0];
|
|
/* 024658C0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024658C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024658C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024658C8 */ return;
|
|
}
|
|
|
|
// fn_02465874 @ 0x2465874
|
|
void Gambit_fn_02465874(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02465874: ; // 0x2465874
|
|
/* 02465874 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02465874 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465874 */ cpu->r[1] = _t0;
|
|
/* 02465878 */ cpu->r[11] = cpu->r[11] + 0x00003764u;
|
|
/* 0246587C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465880 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465880 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02465884 */ cpu->r[12] = cpu->r[12] + 0x00003890u;
|
|
/* 02465888 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465888 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0246588C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0246588C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02465890 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02465894 */ cpu->r[31] = cpu->r[3];
|
|
/* 02465898 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02465898 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246589C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024658A0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024658A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 024658A4 */ cpu->r[0] = cpu->r[0] + 0x00003894u;
|
|
/* 024658A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024658AC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024658AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024658B0 */ Gambit_fn_027EBB94(cpu);
|
|
/* 024658B4 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 024658B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 024658B8 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 024658B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024658BC */ cpu->lr = cpu->r[0];
|
|
/* 024658C0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024658C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024658C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024658C8 */ return;
|
|
}
|
|
|
|
// fn_024658CC @ 0x24658cc
|
|
void Gambit_fn_024658CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024658CC: ; // 0x24658cc
|
|
/* 024658CC */ cpu->r[0] = cpu->lr;
|
|
/* 024658D0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024658D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024658D0 */ cpu->r[1] = _t0;
|
|
/* 024658D4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024658D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024658D8 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 024658D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024658DC */ cpu->r[31] = cpu->r[3];
|
|
/* 024658E0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024658E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024658E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024658E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024658EC */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024658EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024658F0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024658F4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024658F8 */ cpu->r[29] = cpu->r[29] + 0x00003764u;
|
|
/* 024658FC */ cpu->r[30] = cpu->r[30] + 0x000038A4u;
|
|
/* 02465900 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465900 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02465904 */ cpu->r[4] = cpu->r[31];
|
|
/* 02465908 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02465908 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0246590C */ Gambit_fn_020A7150(cpu);
|
|
/* 02465910 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02465910 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02465914 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465918 */ _t8 = cpu->r[31] + 0x00000228u;
|
|
/* 02465918 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0246591C */ cpu->r[0] = cpu->r[0] + 0x000038A0u;
|
|
/* 02465920 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465920 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02465924 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02465928 */ cpu->r[4] = cpu->r[31];
|
|
/* 0246592C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0246592C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02465930 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02465934 */ cpu->r[3] = 0x00000000u;
|
|
/* 02465938 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02465938 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0246593C */ Gambit_fn_020E382C(cpu);
|
|
/* 02465940 */ _t12 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02465940 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 02465944 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465944 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02465948 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02465948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0246594C */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0246594C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02465950 */ cpu->lr = cpu->r[0];
|
|
/* 02465954 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02465954 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465958 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0246595C */ return;
|
|
}
|
|
|
|
// fn_024658D0 @ 0x24658d0
|
|
void Gambit_fn_024658D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024658D0: ; // 0x24658d0
|
|
/* 024658D0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024658D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024658D0 */ cpu->r[1] = _t0;
|
|
/* 024658D4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024658D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024658D8 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 024658D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024658DC */ cpu->r[31] = cpu->r[3];
|
|
/* 024658E0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024658E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024658E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024658E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024658EC */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024658EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024658F0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024658F4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024658F8 */ cpu->r[29] = cpu->r[29] + 0x00003764u;
|
|
/* 024658FC */ cpu->r[30] = cpu->r[30] + 0x000038A4u;
|
|
/* 02465900 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465900 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02465904 */ cpu->r[4] = cpu->r[31];
|
|
/* 02465908 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02465908 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0246590C */ Gambit_fn_020A7150(cpu);
|
|
/* 02465910 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02465910 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02465914 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465918 */ _t8 = cpu->r[31] + 0x00000228u;
|
|
/* 02465918 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0246591C */ cpu->r[0] = cpu->r[0] + 0x000038A0u;
|
|
/* 02465920 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465920 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02465924 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02465928 */ cpu->r[4] = cpu->r[31];
|
|
/* 0246592C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0246592C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02465930 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02465934 */ cpu->r[3] = 0x00000000u;
|
|
/* 02465938 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02465938 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0246593C */ Gambit_fn_020E382C(cpu);
|
|
/* 02465940 */ _t12 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02465940 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 02465944 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02465944 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02465948 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02465948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0246594C */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0246594C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02465950 */ cpu->lr = cpu->r[0];
|
|
/* 02465954 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02465954 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465958 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0246595C */ return;
|
|
}
|
|
|
|
// fn_02465960 @ 0x2465960
|
|
void Gambit_fn_02465960(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02465960: ; // 0x2465960
|
|
/* 02465960 */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 02465964 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02465964 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465964 */ cpu->r[1] = _t0;
|
|
/* 02465968 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0246596C */ cpu->r[9] = 0x101E0000u;
|
|
/* 02465970 */ _t1 = cpu->r[8] + 0x00007B9Cu;
|
|
/* 02465970 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02465970 */ cpu->r[8] = _t1;
|
|
/* 02465974 */ cpu->r[0] = 0x00000002u;
|
|
/* 02465978 */ cpu->r[12] = 0xFFFFFFFDu;
|
|
/* 0246597C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0246597C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02465980 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02465980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02465984 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02465988 */ _t4 = cpu->r[9] + 0x00007B94u;
|
|
/* 02465988 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02465988 */ cpu->r[9] = _t4;
|
|
/* 0246598C */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 0246598C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02465990 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02465994 */ _t6 = cpu->r[9] + 0x00007BA4u;
|
|
/* 02465994 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02465994 */ cpu->r[9] = _t6;
|
|
/* 02465998 */ _t7 = cpu->r[9] + 0x00000004u;
|
|
/* 02465998 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0246599C */ cpu->r[9] = 0x100A0000u;
|
|
/* 024659A0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024659A4 */ _t8 = cpu->r[8] + 0x00000004u;
|
|
/* 024659A4 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024659A8 */ cpu->r[7] = cpu->r[7] + 0x00007BB4u;
|
|
/* 024659AC */ _t9 = cpu->r[9] + 0x000038B0u;
|
|
/* 024659AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024659B0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024659B4 */ _t10 = cpu->r[7] + 0x00000004u;
|
|
/* 024659B4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024659B8 */ cpu->r[0] = 0x00000004u;
|
|
/* 024659BC */ cpu->r[10] = 0x101E0000u;
|
|
/* 024659C0 */ _t11 = cpu->r[8] + 0x00007BBCu;
|
|
/* 024659C0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 024659C0 */ cpu->r[8] = _t11;
|
|
/* 024659C4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 024659C8 */ _t12 = cpu->r[10] + 0x00007BC4u;
|
|
/* 024659C8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024659CC */ cpu->r[10] = 0x100A0000u;
|
|
/* 024659D0 */ _t13 = cpu->r[9] + 0x00007BACu;
|
|
/* 024659D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 024659D0 */ cpu->r[9] = _t13;
|
|
/* 024659D4 */ _t14 = cpu->r[10] + 0x000038B4u;
|
|
/* 024659D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024659D8 */ _t15 = cpu->r[7] + 0x00000000u;
|
|
/* 024659D8 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 024659DC */ _t16 = cpu->r[9] + 0x00000004u;
|
|
/* 024659DC */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 024659E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024659E4 */ _t17 = cpu->r[8] + 0x00000004u;
|
|
/* 024659E4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 024659E8 */ return;
|
|
}
|
|
|
|
// fn_02465964 @ 0x2465964
|
|
void Gambit_fn_02465964(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02465964: ; // 0x2465964
|
|
/* 02465964 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02465964 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465964 */ cpu->r[1] = _t0;
|
|
/* 02465968 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0246596C */ cpu->r[9] = 0x101E0000u;
|
|
/* 02465970 */ _t1 = cpu->r[8] + 0x00007B9Cu;
|
|
/* 02465970 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02465970 */ cpu->r[8] = _t1;
|
|
/* 02465974 */ cpu->r[0] = 0x00000002u;
|
|
/* 02465978 */ cpu->r[12] = 0xFFFFFFFDu;
|
|
/* 0246597C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0246597C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02465980 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02465980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02465984 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02465988 */ _t4 = cpu->r[9] + 0x00007B94u;
|
|
/* 02465988 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02465988 */ cpu->r[9] = _t4;
|
|
/* 0246598C */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 0246598C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02465990 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02465994 */ _t6 = cpu->r[9] + 0x00007BA4u;
|
|
/* 02465994 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02465994 */ cpu->r[9] = _t6;
|
|
/* 02465998 */ _t7 = cpu->r[9] + 0x00000004u;
|
|
/* 02465998 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0246599C */ cpu->r[9] = 0x100A0000u;
|
|
/* 024659A0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024659A4 */ _t8 = cpu->r[8] + 0x00000004u;
|
|
/* 024659A4 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024659A8 */ cpu->r[7] = cpu->r[7] + 0x00007BB4u;
|
|
/* 024659AC */ _t9 = cpu->r[9] + 0x000038B0u;
|
|
/* 024659AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024659B0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024659B4 */ _t10 = cpu->r[7] + 0x00000004u;
|
|
/* 024659B4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024659B8 */ cpu->r[0] = 0x00000004u;
|
|
/* 024659BC */ cpu->r[10] = 0x101E0000u;
|
|
/* 024659C0 */ _t11 = cpu->r[8] + 0x00007BBCu;
|
|
/* 024659C0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 024659C0 */ cpu->r[8] = _t11;
|
|
/* 024659C4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 024659C8 */ _t12 = cpu->r[10] + 0x00007BC4u;
|
|
/* 024659C8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024659CC */ cpu->r[10] = 0x100A0000u;
|
|
/* 024659D0 */ _t13 = cpu->r[9] + 0x00007BACu;
|
|
/* 024659D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 024659D0 */ cpu->r[9] = _t13;
|
|
/* 024659D4 */ _t14 = cpu->r[10] + 0x000038B4u;
|
|
/* 024659D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024659D8 */ _t15 = cpu->r[7] + 0x00000000u;
|
|
/* 024659D8 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 024659DC */ _t16 = cpu->r[9] + 0x00000004u;
|
|
/* 024659DC */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 024659E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024659E4 */ _t17 = cpu->r[8] + 0x00000004u;
|
|
/* 024659E4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 024659E8 */ return;
|
|
}
|
|
|
|
// fn_024659EC @ 0x24659ec
|
|
void Gambit_fn_024659EC(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_024659EC: ; // 0x24659ec
|
|
/* 024659EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024659F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024659F0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024659F0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024659F0 */ goto L_024659F4;
|
|
L_024659F4: ; // 0x24659f4
|
|
/* 024659F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024659F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024659F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024659F8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024659F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024659F8 */ goto L_024659FC;
|
|
L_024659FC: ; // 0x24659fc
|
|
/* 024659FC */ 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_02465A00 @ 0x2465a00
|
|
void Gambit_fn_02465A00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02465A00: ; // 0x2465a00
|
|
/* 02465A00 */ cpu->r[0] = cpu->lr;
|
|
/* 02465A04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02465A04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465A04 */ cpu->r[1] = _t0;
|
|
/* 02465A08 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465A08 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02465A0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02465A0C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02465A10 */ cpu->r[30] = cpu->r[3];
|
|
/* 02465A10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02465A14 */ cpu->r[31] = cpu->r[4];
|
|
/* 02465A18 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02465A18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02465A1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A1C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02465A1C */ if (_t5) goto L_02465A8C; else goto L_02465A20;
|
|
L_02465A20: ; // 0x2465a20
|
|
/* 02465A20 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465A24 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465A28 */ cpu->r[0] = cpu->r[0] + 0x00003A98u;
|
|
/* 02465A2C */ cpu->r[12] = cpu->r[12] + 0x00003AB8u;
|
|
/* 02465A30 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02465A30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02465A34 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465A38 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02465A38 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02465A3C */ cpu->r[11] = cpu->r[11] + 0x00003AA8u;
|
|
/* 02465A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02465A44 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02465A44 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02465A48 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A48 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02465A48 */ if (_t10) goto L_02465A7C; else goto L_02465A4C;
|
|
L_02465A4C: ; // 0x2465a4c
|
|
/* 02465A4C */ cpu->r[10] = 0x10010000u;
|
|
/* 02465A50 */ cpu->r[0] = 0x10010000u;
|
|
/* 02465A54 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02465A58 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02465A5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02465A60 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02465A60 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02465A64 */ cpu->r[0] = 0x10010000u;
|
|
/* 02465A68 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02465A68 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02465A6C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02465A70 */ cpu->r[4] = 0x00000000u;
|
|
/* 02465A74 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02465A74 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02465A78 */ Gambit_fn_02068798(cpu);
|
|
L_02465A7C: ; // 0x2465a7c
|
|
/* 02465A7C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02465A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02465A80 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A80 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02465A80 */ if (_t15) goto L_02465A8C; else goto L_02465A84;
|
|
L_02465A84: ; // 0x2465a84
|
|
/* 02465A84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465A88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02465A8C: ; // 0x2465a8c
|
|
/* 02465A8C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02465A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465A90 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02465A90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02465A94 */ cpu->lr = cpu->r[0];
|
|
/* 02465A98 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02465A9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02465AA0 */ return;
|
|
}
|
|
|
|
// fn_02465A04 @ 0x2465a04
|
|
void Gambit_fn_02465A04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02465A04: ; // 0x2465a04
|
|
/* 02465A04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02465A04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465A04 */ cpu->r[1] = _t0;
|
|
/* 02465A08 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465A08 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02465A0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02465A0C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02465A10 */ cpu->r[30] = cpu->r[3];
|
|
/* 02465A10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02465A14 */ cpu->r[31] = cpu->r[4];
|
|
/* 02465A18 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02465A18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02465A1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A1C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02465A1C */ if (_t5) goto L_02465A8C; else goto L_02465A20;
|
|
L_02465A20: ; // 0x2465a20
|
|
/* 02465A20 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465A24 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02465A28 */ cpu->r[0] = cpu->r[0] + 0x00003A98u;
|
|
/* 02465A2C */ cpu->r[12] = cpu->r[12] + 0x00003AB8u;
|
|
/* 02465A30 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02465A30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02465A34 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02465A38 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02465A38 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02465A3C */ cpu->r[11] = cpu->r[11] + 0x00003AA8u;
|
|
/* 02465A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02465A44 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02465A44 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02465A48 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A48 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02465A48 */ if (_t10) goto L_02465A7C; else goto L_02465A4C;
|
|
L_02465A4C: ; // 0x2465a4c
|
|
/* 02465A4C */ cpu->r[10] = 0x10010000u;
|
|
/* 02465A50 */ cpu->r[0] = 0x10010000u;
|
|
/* 02465A54 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02465A58 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02465A5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02465A60 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02465A60 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02465A64 */ cpu->r[0] = 0x10010000u;
|
|
/* 02465A68 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02465A68 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02465A6C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02465A70 */ cpu->r[4] = 0x00000000u;
|
|
/* 02465A74 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02465A74 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02465A78 */ Gambit_fn_02068798(cpu);
|
|
L_02465A7C: ; // 0x2465a7c
|
|
/* 02465A7C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02465A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02465A80 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465A80 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02465A80 */ if (_t15) goto L_02465A8C; else goto L_02465A84;
|
|
L_02465A84: ; // 0x2465a84
|
|
/* 02465A84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02465A88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02465A8C: ; // 0x2465a8c
|
|
/* 02465A8C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02465A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465A90 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02465A90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02465A94 */ cpu->lr = cpu->r[0];
|
|
/* 02465A98 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02465A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02465A9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02465AA0 */ return;
|
|
}
|
|
|
|
// fn_02465AA4 @ 0x2465aa4
|
|
void Gambit_fn_02465AA4(CPUState* cpu) {
|
|
L_02465AA4: ; // 0x2465aa4
|
|
/* 02465AA4 */ return;
|
|
}
|
|
|
|
// fn_02465AA8 @ 0x2465aa8
|
|
void Gambit_fn_02465AA8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02465AA8: ; // 0x2465aa8
|
|
/* 02465AA8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02465AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02465AAC */ return;
|
|
}
|
|
|
|
// fn_02465AB0 @ 0x2465ab0
|
|
void Gambit_fn_02465AB0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02465AB0: ; // 0x2465ab0
|
|
/* 02465AB0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02465AB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02465AB4 */ return;
|
|
}
|
|
|
|
// fn_02465AB8 @ 0x2465ab8
|
|
void Gambit_fn_02465AB8(CPUState* cpu) {
|
|
L_02465AB8: ; // 0x2465ab8
|
|
/* 02465AB8 */ return;
|
|
}
|
|
|
|
// fn_02465ABC @ 0x2465abc
|
|
void Gambit_fn_02465ABC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02465ABC: ; // 0x2465abc
|
|
/* 02465ABC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02465ABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02465AC0 */ return;
|
|
}
|
|
|
|
// fn_02465AC4 @ 0x2465ac4
|
|
void Gambit_fn_02465AC4(CPUState* cpu) {
|
|
L_02465AC4: ; // 0x2465ac4
|
|
/* 02465AC4 */ return;
|
|
}
|
|
|
|
// fn_02465AC8 @ 0x2465ac8
|
|
void Gambit_fn_02465AC8(CPUState* cpu) {
|
|
L_02465AC8: ; // 0x2465ac8
|
|
/* 02465AC8 */ return;
|
|
}
|
|
|
|
// fn_02465ACC @ 0x2465acc
|
|
void Gambit_fn_02465ACC(CPUState* cpu) {
|
|
L_02465ACC: ; // 0x2465acc
|
|
/* 02465ACC */ return;
|
|
}
|
|
|
|
// fn_02465AD0 @ 0x2465ad0
|
|
void Gambit_fn_02465AD0(CPUState* cpu) {
|
|
L_02465AD0: ; // 0x2465ad0
|
|
/* 02465AD0 */ return;
|
|
}
|
|
|
|
// fn_02465AD4 @ 0x2465ad4
|
|
void Gambit_fn_02465AD4(CPUState* cpu) {
|
|
L_02465AD4: ; // 0x2465ad4
|
|
/* 02465AD4 */ return;
|
|
}
|
|
|
|
// fn_02465AD8 @ 0x2465ad8
|
|
void Gambit_fn_02465AD8(CPUState* cpu) {
|
|
L_02465AD8: ; // 0x2465ad8
|
|
/* 02465AD8 */ cpu->r[3] = 0x00000001u;
|
|
/* 02465ADC */ return;
|
|
}
|
|
|
|
// fn_02465AE0 @ 0x2465ae0
|
|
void Gambit_fn_02465AE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02465AE0: ; // 0x2465ae0
|
|
/* 02465AE0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02465AE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02465AE4 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02465AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02465AE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02465AEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02465AF0 @ 0x2465af0
|
|
void Gambit_fn_02465AF0(CPUState* cpu) {
|
|
L_02465AF0: ; // 0x2465af0
|
|
/* 02465AF0 */ return;
|
|
}
|
|
|
|
// fn_02465AF4 @ 0x2465af4
|
|
void Gambit_fn_02465AF4(CPUState* cpu) {
|
|
L_02465AF4: ; // 0x2465af4
|
|
/* 02465AF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02465AF8 */ return;
|
|
}
|
|
|
|
// fn_02465AFC @ 0x2465afc
|
|
void Gambit_fn_02465AFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02465AFC: ; // 0x2465afc
|
|
/* 02465AFC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02465B00 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02465B00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02465B00 */ cpu->r[9] = _t0;
|
|
/* 02465B04 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02465B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02465B0C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02465B10 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465B10 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02465B10 */ if (_t2) goto L_02465B14; else goto L_02465B28;
|
|
L_02465B14: ; // 0x2465b14
|
|
/* 02465B14 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02465B18 */ cpu->r[0] = 0x00000001u;
|
|
/* 02465B1C */ cpu->r[7] = cpu->r[7] + 0x0000377Cu;
|
|
/* 02465B20 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02465B20 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02465B24 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02465B24 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02465B28: ; // 0x2465b28
|
|
/* 02465B28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02465B2C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465B2C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02465B2C */ if (_t6) goto L_02465B30; else goto L_02465B38;
|
|
L_02465B30: ; // 0x2465b30
|
|
/* 02465B30 */ cpu->r[3] = 0x00000001u;
|
|
/* 02465B34 */ return;
|
|
L_02465B38: ; // 0x2465b38
|
|
/* 02465B38 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02465B3C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02465B3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02465B3C */ cpu->r[7] = _t7;
|
|
/* 02465B40 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02465B44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02465B48 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02465B4C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465B4C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02465B4C */ if (_t9) goto L_02465B50; else goto L_02465B64;
|
|
L_02465B50: ; // 0x2465b50
|
|
/* 02465B50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02465B54 */ cpu->r[9] = 0x00000001u;
|
|
/* 02465B58 */ cpu->r[0] = cpu->r[0] + 0x00003754u;
|
|
/* 02465B5C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02465B5C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02465B60 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02465B60 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02465B64: ; // 0x2465b64
|
|
/* 02465B64 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02465B68 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02465B6C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02465B70 */ return;
|
|
}
|
|
|
|
// fn_02465B74 @ 0x2465b74
|
|
void Gambit_fn_02465B74(CPUState* cpu) {
|
|
L_02465B74: ; // 0x2465b74
|
|
/* 02465B74 */ return;
|
|
}
|
|
|
|
// fn_02465B78 @ 0x2465b78
|
|
void Gambit_fn_02465B78(CPUState* cpu) {
|
|
L_02465B78: ; // 0x2465b78
|
|
/* 02465B78 */ cpu->r[3] = 0x00000000u;
|
|
/* 02465B7C */ return;
|
|
}
|
|
|
|
// fn_02465B80 @ 0x2465b80
|
|
void Gambit_fn_02465B80(CPUState* cpu) {
|
|
L_02465B80: ; // 0x2465b80
|
|
/* 02465B80 */ cpu->r[3] = 0x00000000u;
|
|
/* 02465B84 */ return;
|
|
}
|
|
|
|
// fn_02465B88 @ 0x2465b88
|
|
void Gambit_fn_02465B88(CPUState* cpu) {
|
|
L_02465B88: ; // 0x2465b88
|
|
/* 02465B88 */ return;
|
|
}
|
|
|
|
// fn_02465B8C @ 0x2465b8c
|
|
void Gambit_fn_02465B8C(CPUState* cpu) {
|
|
L_02465B8C: ; // 0x2465b8c
|
|
/* 02465B8C */ return;
|
|
}
|
|
|
|
// fn_02465B90 @ 0x2465b90
|
|
void Gambit_fn_02465B90(CPUState* cpu) {
|
|
L_02465B90: ; // 0x2465b90
|
|
/* 02465B90 */ return;
|
|
}
|
|
|
|
// fn_02465B94 @ 0x2465b94
|
|
void Gambit_fn_02465B94(CPUState* cpu) {
|
|
L_02465B94: ; // 0x2465b94
|
|
/* 02465B94 */ return;
|
|
}
|
|
|
|
// fn_02465B98 @ 0x2465b98
|
|
void Gambit_fn_02465B98(CPUState* cpu) {
|
|
L_02465B98: ; // 0x2465b98
|
|
/* 02465B98 */ return;
|
|
}
|
|
|
|
// fn_02465B9C @ 0x2465b9c
|
|
void Gambit_fn_02465B9C(CPUState* cpu) {
|
|
L_02465B9C: ; // 0x2465b9c
|
|
/* 02465B9C */ return;
|
|
}
|
|
|
|
// fn_02465BA0 @ 0x2465ba0
|
|
void Gambit_fn_02465BA0(CPUState* cpu) {
|
|
L_02465BA0: ; // 0x2465ba0
|
|
/* 02465BA0 */ return;
|
|
}
|
|
|
|
// fn_02465BA4 @ 0x2465ba4
|
|
void Gambit_fn_02465BA4(CPUState* cpu) {
|
|
L_02465BA4: ; // 0x2465ba4
|
|
/* 02465BA4 */ return;
|
|
}
|
|
|
|
// fn_02465BA8 @ 0x2465ba8
|
|
void Gambit_fn_02465BA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_02465BA8: ; // 0x2465ba8
|
|
/* 02465BA8 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02465BAC */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02465BB0 @ 0x2465bb0
|
|
void Gambit_fn_02465BB0(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;
|
|
|
|
L_02465BB0: ; // 0x2465bb0
|
|
/* 02465BB0 */ _t0 = cpu->r[1] + 0xFFFFFDE0u;
|
|
/* 02465BB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465BB0 */ cpu->r[1] = _t0;
|
|
/* 02465BB4 */ /* nop */
|
|
/* 02465BB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02465BBC */ _t1 = cpu->r[1] + 0x00000224u;
|
|
/* 02465BBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02465BC0 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 02465BC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02465BC4 */ _t3 = cpu->r[7] + 0x00000064u;
|
|
/* 02465BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02465BC8 */ cpu->ctr = cpu->r[12];
|
|
/* 02465BCC */ cpu->r[31] = cpu->r[3];
|
|
/* 02465BD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465BD4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02465BD8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02465BDC */ Gambit_fn_026D6C54(cpu);
|
|
/* 02465BE0 */ _t4 = cpu->r[31] + 0x00000030u;
|
|
/* 02465BE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02465BE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02465BE8 */ cpu->r[5] = 0x00000001u;
|
|
/* 02465BEC */ _t5 = cpu->r[1] + 0x00000084u;
|
|
/* 02465BEC */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 02465BF0 */ _t6 = cpu->r[31] + 0x00000028u;
|
|
/* 02465BF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02465BF4 */ cpu->r[30] = cpu->r[31] + 0x00000028u;
|
|
/* 02465BF8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02465BFC */ cpu->r[3] = 0x00000228u;
|
|
/* 02465C00 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465C08 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465C08 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02465C08 */ if (_t8) goto L_02465C10; else goto L_02465C0C;
|
|
L_02465C0C: ; // 0x2465c0c
|
|
/* 02465C0C */ Gambit_fn_0247056C(cpu);
|
|
L_02465C10: ; // 0x2465c10
|
|
/* 02465C10 */ _t9 = cpu->r[31] + 0x00000088u;
|
|
/* 02465C10 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02465C14 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02465C14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02465C18 */ _t11 = cpu->r[6] + 0x00000034u;
|
|
/* 02465C18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02465C1C */ cpu->ctr = cpu->r[7];
|
|
/* 02465C20 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465C24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465C28 */ cpu->r[3] = 0x00000308u;
|
|
/* 02465C2C */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465C34 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465C34 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02465C34 */ if (_t13) goto L_02465C3C; else goto L_02465C38;
|
|
L_02465C38: ; // 0x2465c38
|
|
/* 02465C38 */ Gambit_fn_0246BDAC(cpu);
|
|
L_02465C3C: ; // 0x2465c3c
|
|
/* 02465C3C */ _t14 = cpu->r[31] + 0x00000038u;
|
|
/* 02465C3C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02465C40 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02465C40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02465C44 */ _t16 = cpu->r[8] + 0x00000034u;
|
|
/* 02465C44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465C48 */ cpu->ctr = cpu->r[9];
|
|
/* 02465C4C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465C50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465C54 */ cpu->r[3] = 0x00000220u;
|
|
/* 02465C58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465C60 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465C60 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02465C60 */ if (_t18) goto L_02465C68; else goto L_02465C64;
|
|
L_02465C64: ; // 0x2465c64
|
|
/* 02465C64 */ Gambit_fn_0247EB34(cpu);
|
|
L_02465C68: ; // 0x2465c68
|
|
/* 02465C68 */ _t19 = cpu->r[31] + 0x00000040u;
|
|
/* 02465C68 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 02465C6C */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02465C6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02465C70 */ _t21 = cpu->r[10] + 0x00000034u;
|
|
/* 02465C70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02465C74 */ cpu->ctr = cpu->r[11];
|
|
/* 02465C78 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465C7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465C80 */ cpu->r[25] = 0x00000000u;
|
|
/* 02465C84 */ cpu->r[29] = cpu->r[31] + 0x00000044u;
|
|
/* 02465C88 */ cpu->r[28] = cpu->r[25];
|
|
L_02465C8C: ; // 0x2465c8c
|
|
/* 02465C8C */ cpu->r[27] = cpu->r[28];
|
|
/* 02465C90 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465C94: ; // 0x2465c94
|
|
/* 02465C94 */ cpu->r[3] = 0x00000238u;
|
|
/* 02465C98 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C9C */ cpu->r[10] = cpu->r[3];
|
|
/* 02465C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02465CA0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465CA0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02465CA0 */ if (_t23) goto L_02465CB0; else goto L_02465CA4;
|
|
L_02465CA4: ; // 0x2465ca4
|
|
/* 02465CA4 */ cpu->r[3] = cpu->r[10];
|
|
/* 02465CA8 */ Gambit_fn_024624E0(cpu);
|
|
/* 02465CAC */ cpu->r[10] = cpu->r[3];
|
|
L_02465CB0: ; // 0x2465cb0
|
|
/* 02465CB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465CB4 */ _t24 = cpu->r[26] + 0x00000000u;
|
|
/* 02465CB4 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 02465CB8 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465CB8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02465CB8 */ if (_t26) goto L_02465CBC; else goto L_02465CF8;
|
|
L_02465CBC: ; // 0x2465cbc
|
|
/* 02465CBC */ _t27 = cpu->r[29] + cpu->r[27];
|
|
/* 02465CBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02465CC0 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02465CC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02465CC4 */ _t29 = cpu->r[12] + 0x00000034u;
|
|
/* 02465CC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02465CC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02465CCC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465CD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465CD4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465CD8 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465CE0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465CE4 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465CE4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02465CE4 */ if (_t31) goto L_02465CE8; else goto L_02465D24;
|
|
L_02465CE8: ; // 0x2465ce8
|
|
/* 02465CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465CEC */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465CEC */ _t33 = _t32 & 0x00000001u;
|
|
/* 02465CEC */ if (_t33) goto L_02465C8C; else goto L_02465CF0;
|
|
L_02465CF0: ; // 0x2465cf0
|
|
/* 02465CF0 */ cpu->r[26] = cpu->r[29];
|
|
/* 02465CF4 */ goto L_02465C94;
|
|
L_02465CF8: ; // 0x2465cf8
|
|
/* 02465CF8 */ _t34 = cpu->r[29] + 0x00000000u;
|
|
/* 02465CF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02465CFC */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 02465CFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02465D00 */ _t36 = cpu->r[12] + 0x00000034u;
|
|
/* 02465D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02465D04 */ cpu->ctr = cpu->r[0];
|
|
/* 02465D08 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465D0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465D10 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465D14 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465D1C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465D20 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D20 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02465D20 */ if (_t38) goto L_02465CE8; else goto L_02465D24;
|
|
L_02465D24: ; // 0x2465d24
|
|
/* 02465D24 */ cpu->r[25] = 0x00000000u;
|
|
/* 02465D28 */ cpu->r[29] = cpu->r[31] + 0x00000064u;
|
|
/* 02465D2C */ cpu->r[28] = cpu->r[25];
|
|
L_02465D30: ; // 0x2465d30
|
|
/* 02465D30 */ cpu->r[27] = cpu->r[28];
|
|
/* 02465D34 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465D38: ; // 0x2465d38
|
|
/* 02465D38 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02465D3C */ Gambit_fn_02801A78(cpu);
|
|
/* 02465D40 */ cpu->r[11] = cpu->r[3];
|
|
/* 02465D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02465D44 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465D44 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02465D44 */ if (_t40) goto L_02465D54; else goto L_02465D48;
|
|
L_02465D48: ; // 0x2465d48
|
|
/* 02465D48 */ cpu->r[3] = cpu->r[11];
|
|
/* 02465D4C */ Gambit_fn_024645B8(cpu);
|
|
/* 02465D50 */ cpu->r[11] = cpu->r[3];
|
|
L_02465D54: ; // 0x2465d54
|
|
/* 02465D54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465D58 */ _t41 = cpu->r[26] + 0x00000000u;
|
|
/* 02465D58 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]);
|
|
/* 02465D5C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D5C */ _t43 = _t42 & 0x00000001u;
|
|
/* 02465D5C */ if (_t43) goto L_02465D60; else goto L_02465D9C;
|
|
L_02465D60: ; // 0x2465d60
|
|
/* 02465D60 */ _t44 = cpu->r[29] + cpu->r[27];
|
|
/* 02465D60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02465D64 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 02465D64 */ cpu->r[5] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02465D68 */ _t46 = cpu->r[5] + 0x00000034u;
|
|
/* 02465D68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02465D6C */ cpu->ctr = cpu->r[6];
|
|
/* 02465D70 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465D74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465D78 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465D7C */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465D84 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465D88 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D88 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02465D88 */ if (_t48) goto L_02465D8C; else goto L_02465DC8;
|
|
L_02465D8C: ; // 0x2465d8c
|
|
/* 02465D8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465D90 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D90 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02465D90 */ if (_t50) goto L_02465D30; else goto L_02465D94;
|
|
L_02465D94: ; // 0x2465d94
|
|
/* 02465D94 */ cpu->r[26] = cpu->r[29];
|
|
/* 02465D98 */ goto L_02465D38;
|
|
L_02465D9C: ; // 0x2465d9c
|
|
/* 02465D9C */ _t51 = cpu->r[29] + 0x00000000u;
|
|
/* 02465D9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02465DA0 */ _t52 = cpu->r[3] + 0x00000000u;
|
|
/* 02465DA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02465DA4 */ _t53 = cpu->r[5] + 0x00000034u;
|
|
/* 02465DA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02465DA8 */ cpu->ctr = cpu->r[6];
|
|
/* 02465DAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465DB4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465DB8 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465DC0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465DC4 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465DC4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02465DC4 */ if (_t55) goto L_02465D8C; else goto L_02465DC8;
|
|
L_02465DC8: ; // 0x2465dc8
|
|
/* 02465DC8 */ cpu->r[3] = 0x0000026Cu;
|
|
/* 02465DCC */ Gambit_fn_02801A78(cpu);
|
|
/* 02465DD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465DD4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465DD4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02465DD4 */ if (_t57) goto L_02465DDC; else goto L_02465DD8;
|
|
L_02465DD8: ; // 0x2465dd8
|
|
/* 02465DD8 */ Gambit_fn_02462A1C(cpu);
|
|
L_02465DDC: ; // 0x2465ddc
|
|
/* 02465DDC */ _t58 = cpu->r[31] + 0x00000084u;
|
|
/* 02465DDC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02465DE0 */ _t59 = cpu->r[3] + 0x00000000u;
|
|
/* 02465DE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02465DE4 */ _t60 = cpu->r[7] + 0x00000034u;
|
|
/* 02465DE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02465DE8 */ cpu->ctr = cpu->r[8];
|
|
/* 02465DEC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465DF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465DF4 */ cpu->r[3] = 0x00000280u;
|
|
/* 02465DF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465E00 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465E00 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02465E00 */ if (_t62) goto L_02465E08; else goto L_02465E04;
|
|
L_02465E04: ; // 0x2465e04
|
|
/* 02465E04 */ Gambit_fn_0247E2CC(cpu);
|
|
L_02465E08: ; // 0x2465e08
|
|
/* 02465E08 */ _t63 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02465E08 */ rbrew_write32(cpu->mem, _t63, cpu->r[3]);
|
|
/* 02465E0C */ _t64 = cpu->r[3] + 0x00000000u;
|
|
/* 02465E0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02465E10 */ _t65 = cpu->r[9] + 0x00000034u;
|
|
/* 02465E10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02465E14 */ cpu->ctr = cpu->r[10];
|
|
/* 02465E18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465E1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465E20 */ cpu->r[25] = 0x00000000u;
|
|
/* 02465E24 */ cpu->r[11] = 0xFFFFFFFEu;
|
|
/* 02465E28 */ cpu->r[29] = cpu->r[31] + 0x000000B0u;
|
|
/* 02465E2C */ cpu->r[28] = cpu->r[25];
|
|
/* 02465E30 */ _t66 = cpu->r[1] + 0x00000084u;
|
|
/* 02465E30 */ rbrew_write32(cpu->mem, _t66, cpu->r[11]);
|
|
L_02465E34: ; // 0x2465e34
|
|
/* 02465E34 */ cpu->r[27] = cpu->r[28];
|
|
/* 02465E38 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465E3C: ; // 0x2465e3c
|
|
/* 02465E3C */ cpu->r[3] = 0x00000244u;
|
|
/* 02465E40 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465E44 */ cpu->r[12] = cpu->r[3];
|
|
/* 02465E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02465E48 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465E48 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02465E48 */ if (_t68) goto L_02465E58; else goto L_02465E4C;
|
|
L_02465E4C: ; // 0x2465e4c
|
|
/* 02465E4C */ cpu->r[3] = cpu->r[12];
|
|
/* 02465E50 */ Gambit_fn_0247D198(cpu);
|
|
/* 02465E54 */ cpu->r[12] = cpu->r[3];
|
|
L_02465E58: ; // 0x2465e58
|
|
/* 02465E58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000010u);
|
|
/* 02465E5C */ _t69 = cpu->r[26] + 0x00000000u;
|
|
/* 02465E5C */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 02465E60 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465E60 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02465E60 */ if (_t71) goto L_02465E64; else goto L_02465EA0;
|
|
L_02465E64: ; // 0x2465e64
|
|
/* 02465E64 */ _t72 = cpu->r[29] + cpu->r[27];
|
|
/* 02465E64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02465E68 */ _t73 = cpu->r[3] + 0x00000000u;
|
|
/* 02465E68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02465E6C */ _t74 = cpu->r[12] + 0x00000034u;
|
|
/* 02465E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02465E70 */ cpu->ctr = cpu->r[0];
|
|
/* 02465E74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465E78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465E7C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465E80 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000010u);
|
|
/* 02465E88 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465E8C */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465E8C */ _t76 = _t75 & 0x00000001u;
|
|
/* 02465E8C */ if (_t76) goto L_02465E90; else goto L_02465ECC;
|
|
L_02465E90: ; // 0x2465e90
|
|
/* 02465E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000010u);
|
|
/* 02465E94 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465E94 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02465E94 */ if (_t78) goto L_02465E34; else goto L_02465E98;
|
|
L_02465E98: ; // 0x2465e98
|
|
/* 02465E98 */ cpu->r[26] = cpu->r[29];
|
|
/* 02465E9C */ goto L_02465E3C;
|
|
L_02465EA0: ; // 0x2465ea0
|
|
/* 02465EA0 */ _t79 = cpu->r[29] + 0x00000000u;
|
|
/* 02465EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02465EA4 */ _t80 = cpu->r[3] + 0x00000000u;
|
|
/* 02465EA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02465EA8 */ _t81 = cpu->r[12] + 0x00000034u;
|
|
/* 02465EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02465EAC */ cpu->ctr = cpu->r[0];
|
|
/* 02465EB0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465EB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465EB8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465EBC */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000010u);
|
|
/* 02465EC4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465EC8 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465EC8 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02465EC8 */ if (_t83) goto L_02465E90; else goto L_02465ECC;
|
|
L_02465ECC: ; // 0x2465ecc
|
|
/* 02465ECC */ cpu->r[25] = 0x00000000u;
|
|
/* 02465ED0 */ cpu->r[29] = cpu->r[31] + 0x00000090u;
|
|
/* 02465ED4 */ cpu->r[28] = cpu->r[25];
|
|
L_02465ED8: ; // 0x2465ed8
|
|
/* 02465ED8 */ cpu->r[27] = cpu->r[28];
|
|
/* 02465EDC */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465EE0: ; // 0x2465ee0
|
|
/* 02465EE0 */ cpu->r[3] = 0x00000244u;
|
|
/* 02465EE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465EE8 */ cpu->r[0] = cpu->r[3];
|
|
/* 02465EE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02465EEC */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465EEC */ _t85 = _t84 & 0x00000001u;
|
|
/* 02465EEC */ if (_t85) goto L_02465EFC; else goto L_02465EF0;
|
|
L_02465EF0: ; // 0x2465ef0
|
|
/* 02465EF0 */ cpu->r[3] = cpu->r[0];
|
|
/* 02465EF4 */ Gambit_fn_0247D198(cpu);
|
|
/* 02465EF8 */ cpu->r[0] = cpu->r[3];
|
|
L_02465EFC: ; // 0x2465efc
|
|
/* 02465EFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465F00 */ _t86 = cpu->r[26] + 0x00000000u;
|
|
/* 02465F00 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 02465F04 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F04 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02465F04 */ if (_t88) goto L_02465F08; else goto L_02465F44;
|
|
L_02465F08: ; // 0x2465f08
|
|
/* 02465F08 */ _t89 = cpu->r[29] + cpu->r[27];
|
|
/* 02465F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02465F0C */ _t90 = cpu->r[3] + 0x00000000u;
|
|
/* 02465F0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02465F10 */ _t91 = cpu->r[5] + 0x00000034u;
|
|
/* 02465F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02465F14 */ cpu->ctr = cpu->r[0];
|
|
/* 02465F18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465F1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465F20 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465F24 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465F2C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465F30 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F30 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02465F30 */ if (_t93) goto L_02465F34; else goto L_02465F70;
|
|
L_02465F34: ; // 0x2465f34
|
|
/* 02465F34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465F38 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F38 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02465F38 */ if (_t95) goto L_02465ED8; else goto L_02465F3C;
|
|
L_02465F3C: ; // 0x2465f3c
|
|
/* 02465F3C */ cpu->r[26] = cpu->r[29];
|
|
/* 02465F40 */ goto L_02465EE0;
|
|
L_02465F44: ; // 0x2465f44
|
|
/* 02465F44 */ _t96 = cpu->r[29] + 0x00000000u;
|
|
/* 02465F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02465F48 */ _t97 = cpu->r[3] + 0x00000000u;
|
|
/* 02465F48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02465F4C */ _t98 = cpu->r[5] + 0x00000034u;
|
|
/* 02465F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02465F50 */ cpu->ctr = cpu->r[0];
|
|
/* 02465F54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465F5C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465F60 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465F68 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465F6C */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F6C */ _t100 = _t99 & 0x00000001u;
|
|
/* 02465F6C */ if (_t100) goto L_02465F34; else goto L_02465F70;
|
|
L_02465F70: ; // 0x2465f70
|
|
/* 02465F70 */ cpu->r[3] = 0x00000238u;
|
|
/* 02465F74 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465F7C */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465F7C */ _t102 = _t101 & 0x00000001u;
|
|
/* 02465F7C */ if (_t102) goto L_02465F84; else goto L_02465F80;
|
|
L_02465F80: ; // 0x2465f80
|
|
/* 02465F80 */ Gambit_fn_02464B28(cpu);
|
|
L_02465F84: ; // 0x2465f84
|
|
/* 02465F84 */ _t103 = cpu->r[31] + 0x000000F0u;
|
|
/* 02465F84 */ rbrew_write32(cpu->mem, _t103, cpu->r[3]);
|
|
/* 02465F88 */ _t104 = cpu->r[3] + 0x00000000u;
|
|
/* 02465F88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02465F8C */ _t105 = cpu->r[7] + 0x00000034u;
|
|
/* 02465F8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02465F90 */ cpu->ctr = cpu->r[0];
|
|
/* 02465F94 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465F98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465F9C */ cpu->r[0] = 0x00000000u;
|
|
/* 02465FA0 */ cpu->r[3] = 0x00000294u;
|
|
/* 02465FA4 */ _t106 = cpu->r[1] + 0x00000084u;
|
|
/* 02465FA4 */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 02465FA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465FB0 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465FB0 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02465FB0 */ if (_t108) goto L_02465FB8; else goto L_02465FB4;
|
|
L_02465FB4: ; // 0x2465fb4
|
|
/* 02465FB4 */ Gambit_fn_02470E68(cpu);
|
|
L_02465FB8: ; // 0x2465fb8
|
|
/* 02465FB8 */ _t109 = cpu->r[31] + 0x000000F8u;
|
|
/* 02465FB8 */ rbrew_write32(cpu->mem, _t109, cpu->r[3]);
|
|
/* 02465FBC */ _t110 = cpu->r[3] + 0x00000000u;
|
|
/* 02465FBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02465FC0 */ _t111 = cpu->r[10] + 0x00000034u;
|
|
/* 02465FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02465FC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02465FC8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465FCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465FD0 */ cpu->r[3] = 0x0000051Cu;
|
|
/* 02465FD4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465FD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465FDC */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465FDC */ _t113 = _t112 & 0x00000001u;
|
|
/* 02465FDC */ if (_t113) goto L_02465FE4; else goto L_02465FE0;
|
|
L_02465FE0: ; // 0x2465fe0
|
|
/* 02465FE0 */ Gambit_fn_02474968(cpu);
|
|
L_02465FE4: ; // 0x2465fe4
|
|
/* 02465FE4 */ _t114 = cpu->r[31] + 0x000000FCu;
|
|
/* 02465FE4 */ rbrew_write32(cpu->mem, _t114, cpu->r[3]);
|
|
/* 02465FE8 */ _t115 = cpu->r[3] + 0x00000000u;
|
|
/* 02465FE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02465FEC */ _t116 = cpu->r[12] + 0x00000034u;
|
|
/* 02465FEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02465FF0 */ cpu->ctr = cpu->r[0];
|
|
/* 02465FF4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465FF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465FFC */ cpu->r[3] = 0x00000268u;
|
|
/* 02466000 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466008 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466008 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02466008 */ if (_t118) goto L_02466010; else goto L_0246600C;
|
|
L_0246600C: ; // 0x246600c
|
|
/* 0246600C */ Gambit_fn_0247A928(cpu);
|
|
L_02466010: ; // 0x2466010
|
|
/* 02466010 */ _t119 = cpu->r[31] + 0x00000100u;
|
|
/* 02466010 */ rbrew_write32(cpu->mem, _t119, cpu->r[3]);
|
|
/* 02466014 */ _t120 = cpu->r[3] + 0x00000000u;
|
|
/* 02466014 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02466018 */ _t121 = cpu->r[4] + 0x00000034u;
|
|
/* 02466018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0246601C */ cpu->ctr = cpu->r[0];
|
|
/* 02466020 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466024 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466028 */ cpu->r[25] = 0x00000000u;
|
|
/* 0246602C */ cpu->r[29] = cpu->r[31] + 0x00000108u;
|
|
/* 02466030 */ cpu->r[28] = cpu->r[25];
|
|
L_02466034: ; // 0x2466034
|
|
/* 02466034 */ cpu->r[27] = cpu->r[28];
|
|
/* 02466038 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_0246603C: ; // 0x246603c
|
|
/* 0246603C */ cpu->r[3] = 0x00000224u;
|
|
/* 02466040 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466048 */ cpu->r[9] = cpu->r[3];
|
|
/* 0246604C */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246604C */ _t123 = _t122 & 0x00000001u;
|
|
/* 0246604C */ if (_t123) goto L_02466058; else goto L_02466050;
|
|
L_02466050: ; // 0x2466050
|
|
/* 02466050 */ Gambit_fn_0247099C(cpu);
|
|
/* 02466054 */ cpu->r[9] = cpu->r[3];
|
|
L_02466058: ; // 0x2466058
|
|
/* 02466058 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 0246605C */ _t124 = cpu->r[26] + 0x00000000u;
|
|
/* 0246605C */ rbrew_write32(cpu->mem, _t124, cpu->r[9]);
|
|
/* 02466060 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466060 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02466060 */ if (_t126) goto L_02466064; else goto L_024660A0;
|
|
L_02466064: ; // 0x2466064
|
|
/* 02466064 */ _t127 = cpu->r[29] + cpu->r[27];
|
|
/* 02466064 */ cpu->r[3] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02466068 */ _t128 = cpu->r[3] + 0x00000000u;
|
|
/* 02466068 */ cpu->r[6] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0246606C */ _t129 = cpu->r[6] + 0x00000034u;
|
|
/* 0246606C */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02466070 */ cpu->ctr = cpu->r[0];
|
|
/* 02466074 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466078 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246607C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02466080 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02466084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02466088 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0246608C */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246608C */ _t131 = _t130 & 0x00000001u;
|
|
/* 0246608C */ if (_t131) goto L_02466090; else goto L_024660CC;
|
|
L_02466090: ; // 0x2466090
|
|
/* 02466090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02466094 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466094 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02466094 */ if (_t133) goto L_02466034; else goto L_02466098;
|
|
L_02466098: ; // 0x2466098
|
|
/* 02466098 */ cpu->r[26] = cpu->r[29];
|
|
/* 0246609C */ goto L_0246603C;
|
|
L_024660A0: ; // 0x24660a0
|
|
/* 024660A0 */ _t134 = cpu->r[29] + 0x00000000u;
|
|
/* 024660A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t134);
|
|
/* 024660A4 */ _t135 = cpu->r[3] + 0x00000000u;
|
|
/* 024660A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t135);
|
|
/* 024660A8 */ _t136 = cpu->r[6] + 0x00000034u;
|
|
/* 024660A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t136);
|
|
/* 024660AC */ cpu->ctr = cpu->r[0];
|
|
/* 024660B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024660B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024660B8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 024660BC */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 024660C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 024660C4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 024660C8 */ _t137 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024660C8 */ _t138 = _t137 & 0x00000001u;
|
|
/* 024660C8 */ if (_t138) goto L_02466090; else goto L_024660CC;
|
|
L_024660CC: ; // 0x24660cc
|
|
/* 024660CC */ _t139 = cpu->r[31] + 0x00000000u;
|
|
/* 024660CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t139);
|
|
/* 024660D0 */ _t140 = cpu->r[8] + 0x00000064u;
|
|
/* 024660D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t140);
|
|
/* 024660D4 */ cpu->ctr = cpu->r[5];
|
|
/* 024660D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024660DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024660E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 024660E4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 024660E8 */ Gambit_fn_026D6C54(cpu);
|
|
/* 024660EC */ cpu->r[5] = 0x00000001u;
|
|
/* 024660F0 */ cpu->r[4] = 0x00000012u;
|
|
/* 024660F4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 024660F8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 024660FC */ cpu->r[6] = 0x00000002u;
|
|
/* 02466100 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 02466104 */ _t141 = cpu->r[1] + 0x000001D4u;
|
|
/* 02466104 */ rbrew_write32(cpu->mem, _t141, cpu->r[6]);
|
|
/* 02466108 */ Gambit_fn_02801A78(cpu);
|
|
/* 0246610C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466110 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466110 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02466110 */ if (_t143) goto L_02466118; else goto L_02466114;
|
|
L_02466114: ; // 0x2466114
|
|
/* 02466114 */ Gambit_fn_02470304(cpu);
|
|
L_02466118: ; // 0x2466118
|
|
/* 02466118 */ _t144 = cpu->r[31] + 0x000000F4u;
|
|
/* 02466118 */ rbrew_write32(cpu->mem, _t144, cpu->r[3]);
|
|
/* 0246611C */ _t145 = cpu->r[3] + 0x00000000u;
|
|
/* 0246611C */ cpu->r[8] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02466120 */ _t146 = cpu->r[8] + 0x00000034u;
|
|
/* 02466120 */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02466124 */ cpu->ctr = cpu->r[9];
|
|
/* 02466128 */ cpu->r[4] = cpu->r[1] + 0x00000158u;
|
|
/* 0246612C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466130 */ _t147 = cpu->r[31] + 0x00000000u;
|
|
/* 02466130 */ cpu->r[10] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02466134 */ _t148 = cpu->r[10] + 0x00000064u;
|
|
/* 02466134 */ cpu->r[11] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02466138 */ cpu->ctr = cpu->r[11];
|
|
/* 0246613C */ cpu->r[3] = cpu->r[31];
|
|
/* 02466140 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466144 */ cpu->r[4] = cpu->r[3];
|
|
/* 02466148 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 0246614C */ Gambit_fn_026D6C54(cpu);
|
|
/* 02466150 */ _t149 = cpu->r[30] + 0x00000008u;
|
|
/* 02466150 */ cpu->r[0] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02466154 */ cpu->r[29] = cpu->r[30] + 0x00000004u;
|
|
/* 02466158 */ cpu->r[5] = 0x00000001u;
|
|
/* 0246615C */ _t150 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0246615C */ rbrew_write32(cpu->mem, _t150, cpu->r[0]);
|
|
/* 02466160 */ _t151 = cpu->r[30] + 0x00000004u;
|
|
/* 02466160 */ cpu->r[4] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02466164 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02466168 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0246616C */ cpu->r[3] = 0x000002DCu;
|
|
/* 02466170 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466178 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466178 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02466178 */ if (_t153) goto L_02466180; else goto L_0246617C;
|
|
L_0246617C: ; // 0x246617c
|
|
/* 0246617C */ Gambit_fn_02469144(cpu);
|
|
L_02466180: ; // 0x2466180
|
|
/* 02466180 */ _t154 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466180 */ rbrew_write32(cpu->mem, _t154, cpu->r[3]);
|
|
/* 02466184 */ _t155 = cpu->r[3] + 0x00000000u;
|
|
/* 02466184 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02466188 */ _t156 = cpu->r[4] + 0x00000034u;
|
|
/* 02466188 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0246618C */ cpu->ctr = cpu->r[5];
|
|
/* 02466190 */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 02466194 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466198 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0246619C */ Gambit_fn_02801A78(cpu);
|
|
/* 024661A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024661A4 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024661A4 */ _t158 = _t157 & 0x00000001u;
|
|
/* 024661A4 */ if (_t158) goto L_024661AC; else goto L_024661A8;
|
|
L_024661A8: ; // 0x24661a8
|
|
/* 024661A8 */ Gambit_fn_02474700(cpu);
|
|
L_024661AC: ; // 0x24661ac
|
|
/* 024661AC */ _t159 = cpu->r[31] + 0x00000104u;
|
|
/* 024661AC */ rbrew_write32(cpu->mem, _t159, cpu->r[3]);
|
|
/* 024661B0 */ _t160 = cpu->r[3] + 0x00000000u;
|
|
/* 024661B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t160);
|
|
/* 024661B4 */ _t161 = cpu->r[6] + 0x00000034u;
|
|
/* 024661B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 024661B8 */ cpu->ctr = cpu->r[0];
|
|
/* 024661BC */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 024661C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024661C4 */ _t162 = cpu->r[29] + 0x00000000u;
|
|
/* 024661C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t162);
|
|
/* 024661C8 */ Gambit_fn_027E6F8C(cpu);
|
|
/* 024661CC */ cpu->r[4] = 0x00000000u;
|
|
/* 024661D0 */ Gambit_fn_027E2334(cpu);
|
|
/* 024661D4 */ /* nop */
|
|
/* 024661D8 */ _t163 = cpu->r[1] + 0x00000224u;
|
|
/* 024661D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 024661DC */ cpu->lr = cpu->r[0];
|
|
/* 024661E0 */ cpu->r[1] = cpu->r[1] + 0x00000220u;
|
|
/* 024661E4 */ return;
|
|
}
|
|
|
|
// fn_024661E8 @ 0x24661e8
|
|
void Gambit_fn_024661E8(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;
|
|
|
|
L_02465BB0: ; // 0x2465bb0
|
|
/* 02465BB0 */ _t0 = cpu->r[1] + 0xFFFFFDE0u;
|
|
/* 02465BB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02465BB0 */ cpu->r[1] = _t0;
|
|
/* 02465BB4 */ /* nop */
|
|
/* 02465BB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02465BBC */ _t1 = cpu->r[1] + 0x00000224u;
|
|
/* 02465BBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02465BC0 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 02465BC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02465BC4 */ _t3 = cpu->r[7] + 0x00000064u;
|
|
/* 02465BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02465BC8 */ cpu->ctr = cpu->r[12];
|
|
/* 02465BCC */ cpu->r[31] = cpu->r[3];
|
|
/* 02465BD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465BD4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02465BD8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02465BDC */ Gambit_fn_026D6C54(cpu);
|
|
/* 02465BE0 */ _t4 = cpu->r[31] + 0x00000030u;
|
|
/* 02465BE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02465BE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02465BE8 */ cpu->r[5] = 0x00000001u;
|
|
/* 02465BEC */ _t5 = cpu->r[1] + 0x00000084u;
|
|
/* 02465BEC */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 02465BF0 */ _t6 = cpu->r[31] + 0x00000028u;
|
|
/* 02465BF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02465BF4 */ cpu->r[30] = cpu->r[31] + 0x00000028u;
|
|
/* 02465BF8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02465BFC */ cpu->r[3] = 0x00000228u;
|
|
/* 02465C00 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465C08 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465C08 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02465C08 */ if (_t8) goto L_02465C10; else goto L_02465C0C;
|
|
L_02465C0C: ; // 0x2465c0c
|
|
/* 02465C0C */ Gambit_fn_0247056C(cpu);
|
|
L_02465C10: ; // 0x2465c10
|
|
/* 02465C10 */ _t9 = cpu->r[31] + 0x00000088u;
|
|
/* 02465C10 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02465C14 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02465C14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02465C18 */ _t11 = cpu->r[6] + 0x00000034u;
|
|
/* 02465C18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02465C1C */ cpu->ctr = cpu->r[7];
|
|
/* 02465C20 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465C24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465C28 */ cpu->r[3] = 0x00000308u;
|
|
/* 02465C2C */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465C34 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465C34 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02465C34 */ if (_t13) goto L_02465C3C; else goto L_02465C38;
|
|
L_02465C38: ; // 0x2465c38
|
|
/* 02465C38 */ Gambit_fn_0246BDAC(cpu);
|
|
L_02465C3C: ; // 0x2465c3c
|
|
/* 02465C3C */ _t14 = cpu->r[31] + 0x00000038u;
|
|
/* 02465C3C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02465C40 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02465C40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02465C44 */ _t16 = cpu->r[8] + 0x00000034u;
|
|
/* 02465C44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02465C48 */ cpu->ctr = cpu->r[9];
|
|
/* 02465C4C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465C50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465C54 */ cpu->r[3] = 0x00000220u;
|
|
/* 02465C58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465C60 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465C60 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02465C60 */ if (_t18) goto L_02465C68; else goto L_02465C64;
|
|
L_02465C64: ; // 0x2465c64
|
|
/* 02465C64 */ Gambit_fn_0247EB34(cpu);
|
|
L_02465C68: ; // 0x2465c68
|
|
/* 02465C68 */ _t19 = cpu->r[31] + 0x00000040u;
|
|
/* 02465C68 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 02465C6C */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02465C6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02465C70 */ _t21 = cpu->r[10] + 0x00000034u;
|
|
/* 02465C70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02465C74 */ cpu->ctr = cpu->r[11];
|
|
/* 02465C78 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465C7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465C80 */ cpu->r[25] = 0x00000000u;
|
|
/* 02465C84 */ cpu->r[29] = cpu->r[31] + 0x00000044u;
|
|
/* 02465C88 */ cpu->r[28] = cpu->r[25];
|
|
L_02465C8C: ; // 0x2465c8c
|
|
/* 02465C8C */ cpu->r[27] = cpu->r[28];
|
|
/* 02465C90 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465C94: ; // 0x2465c94
|
|
/* 02465C94 */ cpu->r[3] = 0x00000238u;
|
|
/* 02465C98 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465C9C */ cpu->r[10] = cpu->r[3];
|
|
/* 02465C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02465CA0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465CA0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02465CA0 */ if (_t23) goto L_02465CB0; else goto L_02465CA4;
|
|
L_02465CA4: ; // 0x2465ca4
|
|
/* 02465CA4 */ cpu->r[3] = cpu->r[10];
|
|
/* 02465CA8 */ Gambit_fn_024624E0(cpu);
|
|
/* 02465CAC */ cpu->r[10] = cpu->r[3];
|
|
L_02465CB0: ; // 0x2465cb0
|
|
/* 02465CB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465CB4 */ _t24 = cpu->r[26] + 0x00000000u;
|
|
/* 02465CB4 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 02465CB8 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465CB8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02465CB8 */ if (_t26) goto L_02465CBC; else goto L_02465CF8;
|
|
L_02465CBC: ; // 0x2465cbc
|
|
/* 02465CBC */ _t27 = cpu->r[29] + cpu->r[27];
|
|
/* 02465CBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02465CC0 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02465CC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02465CC4 */ _t29 = cpu->r[12] + 0x00000034u;
|
|
/* 02465CC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02465CC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02465CCC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465CD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465CD4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465CD8 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465CE0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465CE4 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465CE4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02465CE4 */ if (_t31) goto L_02465CE8; else goto L_02465D24;
|
|
L_02465CE8: ; // 0x2465ce8
|
|
/* 02465CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465CEC */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465CEC */ _t33 = _t32 & 0x00000001u;
|
|
/* 02465CEC */ if (_t33) goto L_02465C8C; else goto L_02465CF0;
|
|
L_02465CF0: ; // 0x2465cf0
|
|
/* 02465CF0 */ cpu->r[26] = cpu->r[29];
|
|
/* 02465CF4 */ goto L_02465C94;
|
|
L_02465CF8: ; // 0x2465cf8
|
|
/* 02465CF8 */ _t34 = cpu->r[29] + 0x00000000u;
|
|
/* 02465CF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02465CFC */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 02465CFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02465D00 */ _t36 = cpu->r[12] + 0x00000034u;
|
|
/* 02465D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02465D04 */ cpu->ctr = cpu->r[0];
|
|
/* 02465D08 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465D0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465D10 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465D14 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465D1C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465D20 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D20 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02465D20 */ if (_t38) goto L_02465CE8; else goto L_02465D24;
|
|
L_02465D24: ; // 0x2465d24
|
|
/* 02465D24 */ cpu->r[25] = 0x00000000u;
|
|
/* 02465D28 */ cpu->r[29] = cpu->r[31] + 0x00000064u;
|
|
/* 02465D2C */ cpu->r[28] = cpu->r[25];
|
|
L_02465D30: ; // 0x2465d30
|
|
/* 02465D30 */ cpu->r[27] = cpu->r[28];
|
|
/* 02465D34 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465D38: ; // 0x2465d38
|
|
/* 02465D38 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02465D3C */ Gambit_fn_02801A78(cpu);
|
|
/* 02465D40 */ cpu->r[11] = cpu->r[3];
|
|
/* 02465D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02465D44 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465D44 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02465D44 */ if (_t40) goto L_02465D54; else goto L_02465D48;
|
|
L_02465D48: ; // 0x2465d48
|
|
/* 02465D48 */ cpu->r[3] = cpu->r[11];
|
|
/* 02465D4C */ Gambit_fn_024645B8(cpu);
|
|
/* 02465D50 */ cpu->r[11] = cpu->r[3];
|
|
L_02465D54: ; // 0x2465d54
|
|
/* 02465D54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465D58 */ _t41 = cpu->r[26] + 0x00000000u;
|
|
/* 02465D58 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]);
|
|
/* 02465D5C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D5C */ _t43 = _t42 & 0x00000001u;
|
|
/* 02465D5C */ if (_t43) goto L_02465D60; else goto L_02465D9C;
|
|
L_02465D60: ; // 0x2465d60
|
|
/* 02465D60 */ _t44 = cpu->r[29] + cpu->r[27];
|
|
/* 02465D60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02465D64 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 02465D64 */ cpu->r[5] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02465D68 */ _t46 = cpu->r[5] + 0x00000034u;
|
|
/* 02465D68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02465D6C */ cpu->ctr = cpu->r[6];
|
|
/* 02465D70 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465D74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465D78 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465D7C */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465D84 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465D88 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D88 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02465D88 */ if (_t48) goto L_02465D8C; else goto L_02465DC8;
|
|
L_02465D8C: ; // 0x2465d8c
|
|
/* 02465D8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465D90 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465D90 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02465D90 */ if (_t50) goto L_02465D30; else goto L_02465D94;
|
|
L_02465D94: ; // 0x2465d94
|
|
/* 02465D94 */ cpu->r[26] = cpu->r[29];
|
|
/* 02465D98 */ goto L_02465D38;
|
|
L_02465D9C: ; // 0x2465d9c
|
|
/* 02465D9C */ _t51 = cpu->r[29] + 0x00000000u;
|
|
/* 02465D9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02465DA0 */ _t52 = cpu->r[3] + 0x00000000u;
|
|
/* 02465DA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02465DA4 */ _t53 = cpu->r[5] + 0x00000034u;
|
|
/* 02465DA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02465DA8 */ cpu->ctr = cpu->r[6];
|
|
/* 02465DAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465DB4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465DB8 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465DC0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465DC4 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465DC4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02465DC4 */ if (_t55) goto L_02465D8C; else goto L_02465DC8;
|
|
L_02465DC8: ; // 0x2465dc8
|
|
/* 02465DC8 */ cpu->r[3] = 0x0000026Cu;
|
|
/* 02465DCC */ Gambit_fn_02801A78(cpu);
|
|
/* 02465DD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465DD4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465DD4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02465DD4 */ if (_t57) goto L_02465DDC; else goto L_02465DD8;
|
|
L_02465DD8: ; // 0x2465dd8
|
|
/* 02465DD8 */ Gambit_fn_02462A1C(cpu);
|
|
L_02465DDC: ; // 0x2465ddc
|
|
/* 02465DDC */ _t58 = cpu->r[31] + 0x00000084u;
|
|
/* 02465DDC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02465DE0 */ _t59 = cpu->r[3] + 0x00000000u;
|
|
/* 02465DE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02465DE4 */ _t60 = cpu->r[7] + 0x00000034u;
|
|
/* 02465DE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02465DE8 */ cpu->ctr = cpu->r[8];
|
|
/* 02465DEC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465DF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465DF4 */ cpu->r[3] = 0x00000280u;
|
|
/* 02465DF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465E00 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465E00 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02465E00 */ if (_t62) goto L_02465E08; else goto L_02465E04;
|
|
L_02465E04: ; // 0x2465e04
|
|
/* 02465E04 */ Gambit_fn_0247E2CC(cpu);
|
|
L_02465E08: ; // 0x2465e08
|
|
/* 02465E08 */ _t63 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02465E08 */ rbrew_write32(cpu->mem, _t63, cpu->r[3]);
|
|
/* 02465E0C */ _t64 = cpu->r[3] + 0x00000000u;
|
|
/* 02465E0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02465E10 */ _t65 = cpu->r[9] + 0x00000034u;
|
|
/* 02465E10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02465E14 */ cpu->ctr = cpu->r[10];
|
|
/* 02465E18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465E1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465E20 */ cpu->r[25] = 0x00000000u;
|
|
/* 02465E24 */ cpu->r[11] = 0xFFFFFFFEu;
|
|
/* 02465E28 */ cpu->r[29] = cpu->r[31] + 0x000000B0u;
|
|
/* 02465E2C */ cpu->r[28] = cpu->r[25];
|
|
/* 02465E30 */ _t66 = cpu->r[1] + 0x00000084u;
|
|
/* 02465E30 */ rbrew_write32(cpu->mem, _t66, cpu->r[11]);
|
|
L_02465E34: ; // 0x2465e34
|
|
/* 02465E34 */ cpu->r[27] = cpu->r[28];
|
|
/* 02465E38 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465E3C: ; // 0x2465e3c
|
|
/* 02465E3C */ cpu->r[3] = 0x00000244u;
|
|
/* 02465E40 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465E44 */ cpu->r[12] = cpu->r[3];
|
|
/* 02465E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02465E48 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465E48 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02465E48 */ if (_t68) goto L_02465E58; else goto L_02465E4C;
|
|
L_02465E4C: ; // 0x2465e4c
|
|
/* 02465E4C */ cpu->r[3] = cpu->r[12];
|
|
/* 02465E50 */ Gambit_fn_0247D198(cpu);
|
|
/* 02465E54 */ cpu->r[12] = cpu->r[3];
|
|
L_02465E58: ; // 0x2465e58
|
|
/* 02465E58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000010u);
|
|
/* 02465E5C */ _t69 = cpu->r[26] + 0x00000000u;
|
|
/* 02465E5C */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 02465E60 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465E60 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02465E60 */ if (_t71) goto L_02465E64; else goto L_02465EA0;
|
|
L_02465E64: ; // 0x2465e64
|
|
/* 02465E64 */ _t72 = cpu->r[29] + cpu->r[27];
|
|
/* 02465E64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02465E68 */ _t73 = cpu->r[3] + 0x00000000u;
|
|
/* 02465E68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02465E6C */ _t74 = cpu->r[12] + 0x00000034u;
|
|
/* 02465E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02465E70 */ cpu->ctr = cpu->r[0];
|
|
/* 02465E74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465E78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465E7C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465E80 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000010u);
|
|
/* 02465E88 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465E8C */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465E8C */ _t76 = _t75 & 0x00000001u;
|
|
/* 02465E8C */ if (_t76) goto L_02465E90; else goto L_02465ECC;
|
|
L_02465E90: ; // 0x2465e90
|
|
/* 02465E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000010u);
|
|
/* 02465E94 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465E94 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02465E94 */ if (_t78) goto L_02465E34; else goto L_02465E98;
|
|
L_02465E98: ; // 0x2465e98
|
|
/* 02465E98 */ cpu->r[26] = cpu->r[29];
|
|
/* 02465E9C */ goto L_02465E3C;
|
|
L_02465EA0: ; // 0x2465ea0
|
|
/* 02465EA0 */ _t79 = cpu->r[29] + 0x00000000u;
|
|
/* 02465EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02465EA4 */ _t80 = cpu->r[3] + 0x00000000u;
|
|
/* 02465EA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02465EA8 */ _t81 = cpu->r[12] + 0x00000034u;
|
|
/* 02465EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02465EAC */ cpu->ctr = cpu->r[0];
|
|
/* 02465EB0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465EB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465EB8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465EBC */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000010u);
|
|
/* 02465EC4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465EC8 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465EC8 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02465EC8 */ if (_t83) goto L_02465E90; else goto L_02465ECC;
|
|
L_02465ECC: ; // 0x2465ecc
|
|
/* 02465ECC */ cpu->r[25] = 0x00000000u;
|
|
/* 02465ED0 */ cpu->r[29] = cpu->r[31] + 0x00000090u;
|
|
/* 02465ED4 */ cpu->r[28] = cpu->r[25];
|
|
L_02465ED8: ; // 0x2465ed8
|
|
/* 02465ED8 */ cpu->r[27] = cpu->r[28];
|
|
/* 02465EDC */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_02465EE0: ; // 0x2465ee0
|
|
/* 02465EE0 */ cpu->r[3] = 0x00000244u;
|
|
/* 02465EE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465EE8 */ cpu->r[0] = cpu->r[3];
|
|
/* 02465EE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02465EEC */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465EEC */ _t85 = _t84 & 0x00000001u;
|
|
/* 02465EEC */ if (_t85) goto L_02465EFC; else goto L_02465EF0;
|
|
L_02465EF0: ; // 0x2465ef0
|
|
/* 02465EF0 */ cpu->r[3] = cpu->r[0];
|
|
/* 02465EF4 */ Gambit_fn_0247D198(cpu);
|
|
/* 02465EF8 */ cpu->r[0] = cpu->r[3];
|
|
L_02465EFC: ; // 0x2465efc
|
|
/* 02465EFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465F00 */ _t86 = cpu->r[26] + 0x00000000u;
|
|
/* 02465F00 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 02465F04 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F04 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02465F04 */ if (_t88) goto L_02465F08; else goto L_02465F44;
|
|
L_02465F08: ; // 0x2465f08
|
|
/* 02465F08 */ _t89 = cpu->r[29] + cpu->r[27];
|
|
/* 02465F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02465F0C */ _t90 = cpu->r[3] + 0x00000000u;
|
|
/* 02465F0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02465F10 */ _t91 = cpu->r[5] + 0x00000034u;
|
|
/* 02465F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02465F14 */ cpu->ctr = cpu->r[0];
|
|
/* 02465F18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465F1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465F20 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465F24 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465F2C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465F30 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F30 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02465F30 */ if (_t93) goto L_02465F34; else goto L_02465F70;
|
|
L_02465F34: ; // 0x2465f34
|
|
/* 02465F34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02465F38 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F38 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02465F38 */ if (_t95) goto L_02465ED8; else goto L_02465F3C;
|
|
L_02465F3C: ; // 0x2465f3c
|
|
/* 02465F3C */ cpu->r[26] = cpu->r[29];
|
|
/* 02465F40 */ goto L_02465EE0;
|
|
L_02465F44: ; // 0x2465f44
|
|
/* 02465F44 */ _t96 = cpu->r[29] + 0x00000000u;
|
|
/* 02465F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02465F48 */ _t97 = cpu->r[3] + 0x00000000u;
|
|
/* 02465F48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02465F4C */ _t98 = cpu->r[5] + 0x00000034u;
|
|
/* 02465F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02465F50 */ cpu->ctr = cpu->r[0];
|
|
/* 02465F54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465F5C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02465F60 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02465F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02465F68 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02465F6C */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02465F6C */ _t100 = _t99 & 0x00000001u;
|
|
/* 02465F6C */ if (_t100) goto L_02465F34; else goto L_02465F70;
|
|
L_02465F70: ; // 0x2465f70
|
|
/* 02465F70 */ cpu->r[3] = 0x00000238u;
|
|
/* 02465F74 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465F7C */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465F7C */ _t102 = _t101 & 0x00000001u;
|
|
/* 02465F7C */ if (_t102) goto L_02465F84; else goto L_02465F80;
|
|
L_02465F80: ; // 0x2465f80
|
|
/* 02465F80 */ Gambit_fn_02464B28(cpu);
|
|
L_02465F84: ; // 0x2465f84
|
|
/* 02465F84 */ _t103 = cpu->r[31] + 0x000000F0u;
|
|
/* 02465F84 */ rbrew_write32(cpu->mem, _t103, cpu->r[3]);
|
|
/* 02465F88 */ _t104 = cpu->r[3] + 0x00000000u;
|
|
/* 02465F88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02465F8C */ _t105 = cpu->r[7] + 0x00000034u;
|
|
/* 02465F8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02465F90 */ cpu->ctr = cpu->r[0];
|
|
/* 02465F94 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465F98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465F9C */ cpu->r[0] = 0x00000000u;
|
|
/* 02465FA0 */ cpu->r[3] = 0x00000294u;
|
|
/* 02465FA4 */ _t106 = cpu->r[1] + 0x00000084u;
|
|
/* 02465FA4 */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 02465FA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465FB0 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465FB0 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02465FB0 */ if (_t108) goto L_02465FB8; else goto L_02465FB4;
|
|
L_02465FB4: ; // 0x2465fb4
|
|
/* 02465FB4 */ Gambit_fn_02470E68(cpu);
|
|
L_02465FB8: ; // 0x2465fb8
|
|
/* 02465FB8 */ _t109 = cpu->r[31] + 0x000000F8u;
|
|
/* 02465FB8 */ rbrew_write32(cpu->mem, _t109, cpu->r[3]);
|
|
/* 02465FBC */ _t110 = cpu->r[3] + 0x00000000u;
|
|
/* 02465FBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02465FC0 */ _t111 = cpu->r[10] + 0x00000034u;
|
|
/* 02465FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02465FC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02465FC8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465FCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465FD0 */ cpu->r[3] = 0x0000051Cu;
|
|
/* 02465FD4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02465FD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02465FDC */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02465FDC */ _t113 = _t112 & 0x00000001u;
|
|
/* 02465FDC */ if (_t113) goto L_02465FE4; else goto L_02465FE0;
|
|
L_02465FE0: ; // 0x2465fe0
|
|
/* 02465FE0 */ Gambit_fn_02474968(cpu);
|
|
L_02465FE4: ; // 0x2465fe4
|
|
/* 02465FE4 */ _t114 = cpu->r[31] + 0x000000FCu;
|
|
/* 02465FE4 */ rbrew_write32(cpu->mem, _t114, cpu->r[3]);
|
|
/* 02465FE8 */ _t115 = cpu->r[3] + 0x00000000u;
|
|
/* 02465FE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02465FEC */ _t116 = cpu->r[12] + 0x00000034u;
|
|
/* 02465FEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02465FF0 */ cpu->ctr = cpu->r[0];
|
|
/* 02465FF4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02465FF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02465FFC */ cpu->r[3] = 0x00000268u;
|
|
/* 02466000 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466008 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466008 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02466008 */ if (_t118) goto L_02466010; else goto L_0246600C;
|
|
L_0246600C: ; // 0x246600c
|
|
/* 0246600C */ Gambit_fn_0247A928(cpu);
|
|
L_02466010: ; // 0x2466010
|
|
/* 02466010 */ _t119 = cpu->r[31] + 0x00000100u;
|
|
/* 02466010 */ rbrew_write32(cpu->mem, _t119, cpu->r[3]);
|
|
/* 02466014 */ _t120 = cpu->r[3] + 0x00000000u;
|
|
/* 02466014 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02466018 */ _t121 = cpu->r[4] + 0x00000034u;
|
|
/* 02466018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0246601C */ cpu->ctr = cpu->r[0];
|
|
/* 02466020 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466024 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466028 */ cpu->r[25] = 0x00000000u;
|
|
/* 0246602C */ cpu->r[29] = cpu->r[31] + 0x00000108u;
|
|
/* 02466030 */ cpu->r[28] = cpu->r[25];
|
|
L_02466034: ; // 0x2466034
|
|
/* 02466034 */ cpu->r[27] = cpu->r[28];
|
|
/* 02466038 */ cpu->r[26] = cpu->r[29] + cpu->r[28];
|
|
L_0246603C: ; // 0x246603c
|
|
/* 0246603C */ cpu->r[3] = 0x00000224u;
|
|
/* 02466040 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466048 */ cpu->r[9] = cpu->r[3];
|
|
/* 0246604C */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246604C */ _t123 = _t122 & 0x00000001u;
|
|
/* 0246604C */ if (_t123) goto L_02466058; else goto L_02466050;
|
|
L_02466050: ; // 0x2466050
|
|
/* 02466050 */ Gambit_fn_0247099C(cpu);
|
|
/* 02466054 */ cpu->r[9] = cpu->r[3];
|
|
L_02466058: ; // 0x2466058
|
|
/* 02466058 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 0246605C */ _t124 = cpu->r[26] + 0x00000000u;
|
|
/* 0246605C */ rbrew_write32(cpu->mem, _t124, cpu->r[9]);
|
|
/* 02466060 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466060 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02466060 */ if (_t126) goto L_02466064; else goto L_024660A0;
|
|
L_02466064: ; // 0x2466064
|
|
/* 02466064 */ _t127 = cpu->r[29] + cpu->r[27];
|
|
/* 02466064 */ cpu->r[3] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02466068 */ _t128 = cpu->r[3] + 0x00000000u;
|
|
/* 02466068 */ cpu->r[6] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0246606C */ _t129 = cpu->r[6] + 0x00000034u;
|
|
/* 0246606C */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02466070 */ cpu->ctr = cpu->r[0];
|
|
/* 02466074 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466078 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246607C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02466080 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02466084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 02466088 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0246608C */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246608C */ _t131 = _t130 & 0x00000001u;
|
|
/* 0246608C */ if (_t131) goto L_02466090; else goto L_024660CC;
|
|
L_02466090: ; // 0x2466090
|
|
/* 02466090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 02466094 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466094 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02466094 */ if (_t133) goto L_02466034; else goto L_02466098;
|
|
L_02466098: ; // 0x2466098
|
|
/* 02466098 */ cpu->r[26] = cpu->r[29];
|
|
/* 0246609C */ goto L_0246603C;
|
|
L_024660A0: ; // 0x24660a0
|
|
/* 024660A0 */ _t134 = cpu->r[29] + 0x00000000u;
|
|
/* 024660A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t134);
|
|
/* 024660A4 */ _t135 = cpu->r[3] + 0x00000000u;
|
|
/* 024660A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t135);
|
|
/* 024660A8 */ _t136 = cpu->r[6] + 0x00000034u;
|
|
/* 024660A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t136);
|
|
/* 024660AC */ cpu->ctr = cpu->r[0];
|
|
/* 024660B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024660B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024660B8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 024660BC */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 024660C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000008u);
|
|
/* 024660C4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 024660C8 */ _t137 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024660C8 */ _t138 = _t137 & 0x00000001u;
|
|
/* 024660C8 */ if (_t138) goto L_02466090; else goto L_024660CC;
|
|
L_024660CC: ; // 0x24660cc
|
|
/* 024660CC */ _t139 = cpu->r[31] + 0x00000000u;
|
|
/* 024660CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t139);
|
|
/* 024660D0 */ _t140 = cpu->r[8] + 0x00000064u;
|
|
/* 024660D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t140);
|
|
/* 024660D4 */ cpu->ctr = cpu->r[5];
|
|
/* 024660D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024660DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024660E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 024660E4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 024660E8 */ Gambit_fn_026D6C54(cpu);
|
|
/* 024660EC */ cpu->r[5] = 0x00000001u;
|
|
/* 024660F0 */ cpu->r[4] = 0x00000012u;
|
|
/* 024660F4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 024660F8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 024660FC */ cpu->r[6] = 0x00000002u;
|
|
/* 02466100 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 02466104 */ _t141 = cpu->r[1] + 0x000001D4u;
|
|
/* 02466104 */ rbrew_write32(cpu->mem, _t141, cpu->r[6]);
|
|
/* 02466108 */ Gambit_fn_02801A78(cpu);
|
|
/* 0246610C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466110 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466110 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02466110 */ if (_t143) goto L_02466118; else goto L_02466114;
|
|
L_02466114: ; // 0x2466114
|
|
/* 02466114 */ Gambit_fn_02470304(cpu);
|
|
L_02466118: ; // 0x2466118
|
|
/* 02466118 */ _t144 = cpu->r[31] + 0x000000F4u;
|
|
/* 02466118 */ rbrew_write32(cpu->mem, _t144, cpu->r[3]);
|
|
/* 0246611C */ _t145 = cpu->r[3] + 0x00000000u;
|
|
/* 0246611C */ cpu->r[8] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02466120 */ _t146 = cpu->r[8] + 0x00000034u;
|
|
/* 02466120 */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02466124 */ cpu->ctr = cpu->r[9];
|
|
/* 02466128 */ cpu->r[4] = cpu->r[1] + 0x00000158u;
|
|
/* 0246612C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466130 */ _t147 = cpu->r[31] + 0x00000000u;
|
|
/* 02466130 */ cpu->r[10] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02466134 */ _t148 = cpu->r[10] + 0x00000064u;
|
|
/* 02466134 */ cpu->r[11] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02466138 */ cpu->ctr = cpu->r[11];
|
|
/* 0246613C */ cpu->r[3] = cpu->r[31];
|
|
/* 02466140 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466144 */ cpu->r[4] = cpu->r[3];
|
|
/* 02466148 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 0246614C */ Gambit_fn_026D6C54(cpu);
|
|
/* 02466150 */ _t149 = cpu->r[30] + 0x00000008u;
|
|
/* 02466150 */ cpu->r[0] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02466154 */ cpu->r[29] = cpu->r[30] + 0x00000004u;
|
|
/* 02466158 */ cpu->r[5] = 0x00000001u;
|
|
/* 0246615C */ _t150 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0246615C */ rbrew_write32(cpu->mem, _t150, cpu->r[0]);
|
|
/* 02466160 */ _t151 = cpu->r[30] + 0x00000004u;
|
|
/* 02466160 */ cpu->r[4] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02466164 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02466168 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0246616C */ cpu->r[3] = 0x000002DCu;
|
|
/* 02466170 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466178 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466178 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02466178 */ if (_t153) goto L_02466180; else goto L_0246617C;
|
|
L_0246617C: ; // 0x246617c
|
|
/* 0246617C */ Gambit_fn_02469144(cpu);
|
|
L_02466180: ; // 0x2466180
|
|
/* 02466180 */ _t154 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466180 */ rbrew_write32(cpu->mem, _t154, cpu->r[3]);
|
|
/* 02466184 */ _t155 = cpu->r[3] + 0x00000000u;
|
|
/* 02466184 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02466188 */ _t156 = cpu->r[4] + 0x00000034u;
|
|
/* 02466188 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0246618C */ cpu->ctr = cpu->r[5];
|
|
/* 02466190 */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 02466194 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466198 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0246619C */ Gambit_fn_02801A78(cpu);
|
|
/* 024661A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024661A4 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024661A4 */ _t158 = _t157 & 0x00000001u;
|
|
/* 024661A4 */ if (_t158) goto L_024661AC; else goto L_024661A8;
|
|
L_024661A8: ; // 0x24661a8
|
|
/* 024661A8 */ Gambit_fn_02474700(cpu);
|
|
L_024661AC: ; // 0x24661ac
|
|
/* 024661AC */ _t159 = cpu->r[31] + 0x00000104u;
|
|
/* 024661AC */ rbrew_write32(cpu->mem, _t159, cpu->r[3]);
|
|
/* 024661B0 */ _t160 = cpu->r[3] + 0x00000000u;
|
|
/* 024661B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t160);
|
|
/* 024661B4 */ _t161 = cpu->r[6] + 0x00000034u;
|
|
/* 024661B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 024661B8 */ cpu->ctr = cpu->r[0];
|
|
/* 024661BC */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 024661C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024661C4 */ _t162 = cpu->r[29] + 0x00000000u;
|
|
/* 024661C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t162);
|
|
/* 024661C8 */ Gambit_fn_027E6F8C(cpu);
|
|
/* 024661CC */ cpu->r[4] = 0x00000000u;
|
|
/* 024661D0 */ Gambit_fn_027E2334(cpu);
|
|
/* 024661D4 */ /* nop */
|
|
/* 024661D8 */ _t163 = cpu->r[1] + 0x00000224u;
|
|
/* 024661D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 024661DC */ cpu->lr = cpu->r[0];
|
|
/* 024661E0 */ cpu->r[1] = cpu->r[1] + 0x00000220u;
|
|
/* 024661E4 */ return;
|
|
L_024661E8: ; // 0x24661e8
|
|
/* 024661E8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024661EC */ goto L_02465BB0;
|
|
}
|
|
|
|
// fn_024661F0 @ 0x24661f0
|
|
void Gambit_fn_024661F0(CPUState* cpu) {
|
|
L_024661F0: ; // 0x24661f0
|
|
/* 024661F0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024661F4 */ goto L_02468800;
|
|
L_02468800: ; // 0x2468800
|
|
/* 02468800 */ return;
|
|
}
|
|
|
|
// fn_024661F8 @ 0x24661f8
|
|
void Gambit_fn_024661F8(CPUState* cpu) {
|
|
L_024661F8: ; // 0x24661f8
|
|
/* 024661F8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024661FC */ goto L_02468804;
|
|
L_02468804: ; // 0x2468804
|
|
/* 02468804 */ return;
|
|
}
|
|
|
|
// fn_02466200 @ 0x2466200
|
|
void Gambit_fn_02466200(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_02466200: ; // 0x2466200
|
|
/* 02466200 */ cpu->r[0] = cpu->lr;
|
|
/* 02466204 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466204 */ cpu->r[1] = _t0;
|
|
/* 02466208 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02466208 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0246620C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246620C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02466210 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02466210 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02466214 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466214 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02466218 */ cpu->r[29] = cpu->r[3];
|
|
/* 0246621C */ _t5 = cpu->r[29] + 0x0000032Cu;
|
|
/* 0246621C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02466220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466224 */ cpu->r[31] = 0x00000000u;
|
|
/* 02466228 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466228 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02466228 */ if (_t7) goto L_02466268; else goto L_0246622C;
|
|
L_0246622C: ; // 0x246622c
|
|
/* 0246622C */ _t8 = cpu->r[29] + 0x0000032Fu;
|
|
/* 0246622C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02466230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466234 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466234 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02466234 */ if (_t10) goto L_02466238; else goto L_02466268;
|
|
L_02466238: ; // 0x2466238
|
|
/* 02466238 */ _t11 = cpu->r[29] + 0x00000328u;
|
|
/* 02466238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246623C */ cpu->r[4] = 0x00000400u;
|
|
/* 02466240 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02466240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466244 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02466248 */ _t13 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02466248 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246624C */ cpu->r[0] = cpu->r[3] & cpu->r[11];
|
|
/* 0246624C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466250 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466250 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02466250 */ if (_t15) goto L_02466268; else goto L_02466254;
|
|
L_02466254: ; // 0x2466254
|
|
/* 02466254 */ _t16 = cpu->r[29] + 0x00000038u;
|
|
/* 02466254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466258 */ Gambit_fn_0246C918(cpu);
|
|
/* 0246625C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466260 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466260 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02466260 */ if (_t18) goto L_02466268; else goto L_02466264;
|
|
L_02466264: ; // 0x2466264
|
|
/* 02466264 */ cpu->r[31] = 0x00000001u;
|
|
L_02466268: ; // 0x2466268
|
|
/* 02466268 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466268 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0246626C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246626C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02466270 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02466274 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02466274 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02466278 */ cpu->lr = cpu->r[0];
|
|
/* 0246627C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0246627C */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02466280 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466284 */ return;
|
|
}
|
|
|
|
// fn_02466204 @ 0x2466204
|
|
void Gambit_fn_02466204(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_02466204: ; // 0x2466204
|
|
/* 02466204 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466204 */ cpu->r[1] = _t0;
|
|
/* 02466208 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02466208 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0246620C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246620C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02466210 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02466210 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02466214 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466214 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02466218 */ cpu->r[29] = cpu->r[3];
|
|
/* 0246621C */ _t5 = cpu->r[29] + 0x0000032Cu;
|
|
/* 0246621C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02466220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466224 */ cpu->r[31] = 0x00000000u;
|
|
/* 02466228 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466228 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02466228 */ if (_t7) goto L_02466268; else goto L_0246622C;
|
|
L_0246622C: ; // 0x246622c
|
|
/* 0246622C */ _t8 = cpu->r[29] + 0x0000032Fu;
|
|
/* 0246622C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02466230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466234 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466234 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02466234 */ if (_t10) goto L_02466238; else goto L_02466268;
|
|
L_02466238: ; // 0x2466238
|
|
/* 02466238 */ _t11 = cpu->r[29] + 0x00000328u;
|
|
/* 02466238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246623C */ cpu->r[4] = 0x00000400u;
|
|
/* 02466240 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02466240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466244 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02466248 */ _t13 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02466248 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246624C */ cpu->r[0] = cpu->r[3] & cpu->r[11];
|
|
/* 0246624C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466250 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466250 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02466250 */ if (_t15) goto L_02466268; else goto L_02466254;
|
|
L_02466254: ; // 0x2466254
|
|
/* 02466254 */ _t16 = cpu->r[29] + 0x00000038u;
|
|
/* 02466254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466258 */ Gambit_fn_0246C918(cpu);
|
|
/* 0246625C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466260 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466260 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02466260 */ if (_t18) goto L_02466268; else goto L_02466264;
|
|
L_02466264: ; // 0x2466264
|
|
/* 02466264 */ cpu->r[31] = 0x00000001u;
|
|
L_02466268: ; // 0x2466268
|
|
/* 02466268 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466268 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0246626C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246626C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02466270 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02466274 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02466274 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02466278 */ cpu->lr = cpu->r[0];
|
|
/* 0246627C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0246627C */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02466280 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466284 */ return;
|
|
}
|
|
|
|
// fn_02466288 @ 0x2466288
|
|
void Gambit_fn_02466288(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02466288: ; // 0x2466288
|
|
/* 02466288 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 02466288 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0246628C */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0246628C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466290 */ _t2 = cpu->r[12] + 0x00000184u;
|
|
/* 02466290 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466294 */ cpu->ctr = cpu->r[0];
|
|
/* 02466298 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0246629C @ 0x246629c
|
|
void Gambit_fn_0246629C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_0246629C: ; // 0x246629c
|
|
/* 0246629C */ cpu->r[0] = cpu->lr;
|
|
/* 024662A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024662A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024662A0 */ cpu->r[1] = _t0;
|
|
/* 024662A4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024662A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024662A8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024662A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024662AC */ cpu->r[31] = 0x00000000u;
|
|
/* 024662B0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 024662B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024662B4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024662B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024662B8 */ cpu->r[29] = cpu->r[3];
|
|
/* 024662BC */ Gambit_fn_02466288(cpu);
|
|
/* 024662C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024662C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024662C4 */ if (_t6) goto L_02466310; else goto L_024662C8;
|
|
L_024662C8: ; // 0x24662c8
|
|
/* 024662C8 */ _t7 = cpu->r[29] + 0x0000032Cu;
|
|
/* 024662C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 024662CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024662D0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662D0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024662D0 */ if (_t9) goto L_024662D4; else goto L_024662E0;
|
|
L_024662D4: ; // 0x24662d4
|
|
/* 024662D4 */ _t10 = cpu->r[29] + 0x0000032Eu;
|
|
/* 024662D4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024662D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024662DC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662DC */ _t12 = _t11 & 0x00000001u;
|
|
/* 024662DC */ if (_t12) goto L_02466310; else goto L_024662E0;
|
|
L_024662E0: ; // 0x24662e0
|
|
/* 024662E0 */ _t13 = cpu->r[29] + 0x00000328u;
|
|
/* 024662E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024662E4 */ cpu->r[4] = 0x00000004u;
|
|
/* 024662E8 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 024662E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024662EC */ Gambit_fn_027DFCF8(cpu);
|
|
/* 024662F0 */ _t15 = cpu->r[30] + 0x0000008Cu;
|
|
/* 024662F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024662F4 */ cpu->r[11] = cpu->r[3] & cpu->r[12];
|
|
/* 024662F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024662F8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662F8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024662F8 */ if (_t17) goto L_02466310; else goto L_024662FC;
|
|
L_024662FC: ; // 0x24662fc
|
|
/* 024662FC */ _t18 = cpu->r[29] + 0x00000038u;
|
|
/* 024662FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02466300 */ _t19 = cpu->r[8] + 0x00000224u;
|
|
/* 02466300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02466308 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466308 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02466308 */ if (_t21) goto L_02466310; else goto L_0246630C;
|
|
L_0246630C: ; // 0x246630c
|
|
/* 0246630C */ cpu->r[31] = 0x00000001u;
|
|
L_02466310: ; // 0x2466310
|
|
/* 02466310 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466310 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02466314 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02466318 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0246631C */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0246631C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02466320 */ cpu->lr = cpu->r[0];
|
|
/* 02466324 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02466324 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02466328 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0246632C */ return;
|
|
}
|
|
|
|
// fn_024662A0 @ 0x24662a0
|
|
void Gambit_fn_024662A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_024662A0: ; // 0x24662a0
|
|
/* 024662A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024662A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024662A0 */ cpu->r[1] = _t0;
|
|
/* 024662A4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024662A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024662A8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024662A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024662AC */ cpu->r[31] = 0x00000000u;
|
|
/* 024662B0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 024662B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024662B4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024662B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024662B8 */ cpu->r[29] = cpu->r[3];
|
|
/* 024662BC */ Gambit_fn_02466288(cpu);
|
|
/* 024662C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024662C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024662C4 */ if (_t6) goto L_02466310; else goto L_024662C8;
|
|
L_024662C8: ; // 0x24662c8
|
|
/* 024662C8 */ _t7 = cpu->r[29] + 0x0000032Cu;
|
|
/* 024662C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 024662CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024662D0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662D0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024662D0 */ if (_t9) goto L_024662D4; else goto L_024662E0;
|
|
L_024662D4: ; // 0x24662d4
|
|
/* 024662D4 */ _t10 = cpu->r[29] + 0x0000032Eu;
|
|
/* 024662D4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024662D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024662DC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662DC */ _t12 = _t11 & 0x00000001u;
|
|
/* 024662DC */ if (_t12) goto L_02466310; else goto L_024662E0;
|
|
L_024662E0: ; // 0x24662e0
|
|
/* 024662E0 */ _t13 = cpu->r[29] + 0x00000328u;
|
|
/* 024662E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024662E4 */ cpu->r[4] = 0x00000004u;
|
|
/* 024662E8 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 024662E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024662EC */ Gambit_fn_027DFCF8(cpu);
|
|
/* 024662F0 */ _t15 = cpu->r[30] + 0x0000008Cu;
|
|
/* 024662F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024662F4 */ cpu->r[11] = cpu->r[3] & cpu->r[12];
|
|
/* 024662F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024662F8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024662F8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024662F8 */ if (_t17) goto L_02466310; else goto L_024662FC;
|
|
L_024662FC: ; // 0x24662fc
|
|
/* 024662FC */ _t18 = cpu->r[29] + 0x00000038u;
|
|
/* 024662FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02466300 */ _t19 = cpu->r[8] + 0x00000224u;
|
|
/* 02466300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02466308 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466308 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02466308 */ if (_t21) goto L_02466310; else goto L_0246630C;
|
|
L_0246630C: ; // 0x246630c
|
|
/* 0246630C */ cpu->r[31] = 0x00000001u;
|
|
L_02466310: ; // 0x2466310
|
|
/* 02466310 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466310 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02466314 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02466318 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0246631C */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0246631C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02466320 */ cpu->lr = cpu->r[0];
|
|
/* 02466324 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02466324 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02466328 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0246632C */ return;
|
|
}
|
|
|
|
// fn_02466330 @ 0x2466330
|
|
void Gambit_fn_02466330(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02466330: ; // 0x2466330
|
|
/* 02466330 */ cpu->r[0] = cpu->lr;
|
|
/* 02466334 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466334 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466334 */ cpu->r[1] = _t0;
|
|
/* 02466338 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02466338 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246633C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246633C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02466340 */ cpu->r[31] = 0x00000000u;
|
|
/* 02466344 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02466344 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02466348 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466348 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246634C */ cpu->r[29] = cpu->r[3];
|
|
/* 02466350 */ Gambit_fn_02466288(cpu);
|
|
/* 02466354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466358 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466358 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466358 */ if (_t6) goto L_024663A4; else goto L_0246635C;
|
|
L_0246635C: ; // 0x246635c
|
|
/* 0246635C */ _t7 = cpu->r[29] + 0x0000032Cu;
|
|
/* 0246635C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02466360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466364 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466364 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02466364 */ if (_t9) goto L_02466368; else goto L_02466374;
|
|
L_02466368: ; // 0x2466368
|
|
/* 02466368 */ _t10 = cpu->r[29] + 0x0000032Du;
|
|
/* 02466368 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0246636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02466370 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466370 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02466370 */ if (_t12) goto L_024663A4; else goto L_02466374;
|
|
L_02466374: ; // 0x2466374
|
|
/* 02466374 */ _t13 = cpu->r[29] + 0x00000328u;
|
|
/* 02466374 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466378 */ cpu->r[4] = 0x00000008u;
|
|
/* 0246637C */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0246637C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466380 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02466384 */ _t15 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02466384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02466388 */ cpu->r[11] = cpu->r[3] & cpu->r[12];
|
|
/* 02466388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0246638C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246638C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0246638C */ if (_t17) goto L_024663A4; else goto L_02466390;
|
|
L_02466390: ; // 0x2466390
|
|
/* 02466390 */ _t18 = cpu->r[29] + 0x00000038u;
|
|
/* 02466390 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02466394 */ _t19 = cpu->r[8] + 0x00000224u;
|
|
/* 02466394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0246639C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246639C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0246639C */ if (_t21) goto L_024663A4; else goto L_024663A0;
|
|
L_024663A0: ; // 0x24663a0
|
|
/* 024663A0 */ cpu->r[31] = 0x00000001u;
|
|
L_024663A4: ; // 0x24663a4
|
|
/* 024663A4 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024663A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024663A8 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024663A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024663AC */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024663B0 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 024663B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024663B4 */ cpu->lr = cpu->r[0];
|
|
/* 024663B8 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 024663B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024663BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024663C0 */ return;
|
|
}
|
|
|
|
// fn_02466334 @ 0x2466334
|
|
void Gambit_fn_02466334(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02466334: ; // 0x2466334
|
|
/* 02466334 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466334 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466334 */ cpu->r[1] = _t0;
|
|
/* 02466338 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02466338 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246633C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246633C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02466340 */ cpu->r[31] = 0x00000000u;
|
|
/* 02466344 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02466344 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02466348 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466348 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246634C */ cpu->r[29] = cpu->r[3];
|
|
/* 02466350 */ Gambit_fn_02466288(cpu);
|
|
/* 02466354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466358 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466358 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466358 */ if (_t6) goto L_024663A4; else goto L_0246635C;
|
|
L_0246635C: ; // 0x246635c
|
|
/* 0246635C */ _t7 = cpu->r[29] + 0x0000032Cu;
|
|
/* 0246635C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02466360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466364 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466364 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02466364 */ if (_t9) goto L_02466368; else goto L_02466374;
|
|
L_02466368: ; // 0x2466368
|
|
/* 02466368 */ _t10 = cpu->r[29] + 0x0000032Du;
|
|
/* 02466368 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0246636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02466370 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466370 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02466370 */ if (_t12) goto L_024663A4; else goto L_02466374;
|
|
L_02466374: ; // 0x2466374
|
|
/* 02466374 */ _t13 = cpu->r[29] + 0x00000328u;
|
|
/* 02466374 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466378 */ cpu->r[4] = 0x00000008u;
|
|
/* 0246637C */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0246637C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466380 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02466384 */ _t15 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02466384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02466388 */ cpu->r[11] = cpu->r[3] & cpu->r[12];
|
|
/* 02466388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0246638C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246638C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0246638C */ if (_t17) goto L_024663A4; else goto L_02466390;
|
|
L_02466390: ; // 0x2466390
|
|
/* 02466390 */ _t18 = cpu->r[29] + 0x00000038u;
|
|
/* 02466390 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02466394 */ _t19 = cpu->r[8] + 0x00000224u;
|
|
/* 02466394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0246639C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246639C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0246639C */ if (_t21) goto L_024663A4; else goto L_024663A0;
|
|
L_024663A0: ; // 0x24663a0
|
|
/* 024663A0 */ cpu->r[31] = 0x00000001u;
|
|
L_024663A4: ; // 0x24663a4
|
|
/* 024663A4 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024663A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024663A8 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024663A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024663AC */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024663B0 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 024663B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024663B4 */ cpu->lr = cpu->r[0];
|
|
/* 024663B8 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 024663B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024663BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024663C0 */ return;
|
|
}
|
|
|
|
// fn_024663E0 @ 0x24663e0
|
|
void Gambit_fn_024663E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76;
|
|
|
|
L_024663E0: ; // 0x24663e0
|
|
/* 024663E0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024663E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024663E0 */ cpu->r[1] = _t0;
|
|
/* 024663E4 */ /* nop */
|
|
/* 024663E8 */ cpu->r[0] = cpu->lr;
|
|
/* 024663EC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024663EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024663F0 */ cpu->r[27] = cpu->r[3];
|
|
/* 024663F4 */ _t2 = cpu->r[27] + 0x00000038u;
|
|
/* 024663F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024663F8 */ Gambit_fn_0246C90C(cpu);
|
|
/* 024663FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466400 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466400 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466400 */ if (_t4) goto L_02466404; else goto L_0246641C;
|
|
L_02466404: ; // 0x2466404
|
|
/* 02466404 */ cpu->r[3] = cpu->r[27];
|
|
/* 02466408 */ Gambit_fn_02466200(cpu);
|
|
/* 0246640C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466410 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466410 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466410 */ if (_t6) goto L_0246641C; else goto L_02466414;
|
|
L_02466414: ; // 0x2466414
|
|
/* 02466414 */ _t7 = cpu->r[27] + 0x00000038u;
|
|
/* 02466414 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466418 */ Gambit_fn_0246C904(cpu);
|
|
L_0246641C: ; // 0x246641c
|
|
/* 0246641C */ cpu->r[3] = cpu->r[27];
|
|
/* 02466420 */ Gambit_fn_0246629C(cpu);
|
|
/* 02466424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466428 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466428 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02466428 */ if (_t9) goto L_02466434; else goto L_0246642C;
|
|
L_0246642C: ; // 0x246642c
|
|
/* 0246642C */ _t10 = cpu->r[27] + 0x00000038u;
|
|
/* 0246642C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466430 */ Gambit_fn_0246E200(cpu);
|
|
L_02466434: ; // 0x2466434
|
|
/* 02466434 */ cpu->r[3] = cpu->r[27];
|
|
/* 02466438 */ Gambit_fn_02466330(cpu);
|
|
/* 0246643C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466440 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466440 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02466440 */ if (_t12) goto L_0246644C; else goto L_02466444;
|
|
L_02466444: ; // 0x2466444
|
|
/* 02466444 */ _t13 = cpu->r[27] + 0x00000038u;
|
|
/* 02466444 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466448 */ Gambit_fn_0246E248(cpu);
|
|
L_0246644C: ; // 0x246644c
|
|
/* 0246644C */ _t14 = cpu->r[27] + 0x00000134u;
|
|
/* 0246644C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466450 */ cpu->r[31] = cpu->r[27] + 0x00000124u;
|
|
/* 02466454 */ cpu->r[30] = cpu->r[31];
|
|
/* 02466458 */ cpu->r[28] = cpu->r[10] + 0xFFFFFFF4u;
|
|
/* 0246645C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 02466460 */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02466460 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02466464 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466464 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02466464 */ if (_t17) goto L_02466514; else goto L_02466468;
|
|
L_02466468: ; // 0x2466468
|
|
/* 02466468 */ _t18 = cpu->r[28] + 0x00000008u;
|
|
/* 02466468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246646C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466470 */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 02466470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466474 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466474 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02466474 */ if (_t21) goto L_024664C0; else goto L_02466478;
|
|
L_02466478: ; // 0x2466478
|
|
/* 02466478 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000010u);
|
|
/* 0246647C */ cpu->r[11] = cpu->r[27] + 0x000000B0u;
|
|
/* 02466480 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466480 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02466480 */ if (_t23) goto L_02466484; else goto L_0246648C;
|
|
L_02466484: ; // 0x2466484
|
|
/* 02466484 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02466488 */ cpu->r[11] = cpu->r[11] + cpu->r[4];
|
|
L_0246648C: ; // 0x246648c
|
|
/* 0246648C */ _t24 = cpu->r[11] + 0x00000000u;
|
|
/* 0246648C */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02466490 */ _t25 = cpu->r[4] + 0x00000118u;
|
|
/* 02466490 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02466494 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02466494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02466498 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466498 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02466498 */ if (_t27) goto L_02466504; else goto L_0246649C;
|
|
L_0246649C: ; // 0x246649c
|
|
/* 0246649C */ cpu->r[3] = cpu->r[28] + 0x0000000Cu;
|
|
/* 024664A0 */ Gambit_fn_02801EDC(cpu);
|
|
/* 024664A4 */ _t28 = cpu->r[27] + 0x00000138u;
|
|
/* 024664A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024664A8 */ _t29 = cpu->r[27] + 0x0000013Cu;
|
|
/* 024664A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024664AC */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 024664B0 */ _t30 = cpu->r[27] + 0x00000138u;
|
|
/* 024664B0 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 024664B4 */ _t31 = cpu->r[28] + 0x00000000u;
|
|
/* 024664B4 */ rbrew_write32(cpu->mem, _t31, cpu->r[4]);
|
|
/* 024664B8 */ _t32 = cpu->r[27] + 0x0000013Cu;
|
|
/* 024664B8 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 024664BC */ goto L_02466504;
|
|
L_024664C0: ; // 0x24664c0
|
|
/* 024664C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 024664C4 */ cpu->r[7] = cpu->r[27] + 0x00000090u;
|
|
/* 024664C8 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024664C8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024664C8 */ if (_t34) goto L_024664CC; else goto L_024664D4;
|
|
L_024664CC: ; // 0x24664cc
|
|
/* 024664CC */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024664D0 */ cpu->r[7] = cpu->r[7] + cpu->r[6];
|
|
L_024664D4: ; // 0x24664d4
|
|
/* 024664D4 */ _t35 = cpu->r[7] + 0x00000000u;
|
|
/* 024664D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024664D8 */ _t36 = cpu->r[12] + 0x00000118u;
|
|
/* 024664D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024664DC */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024664DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024664E0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024664E0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 024664E0 */ if (_t38) goto L_02466504; else goto L_024664E4;
|
|
L_024664E4: ; // 0x24664e4
|
|
/* 024664E4 */ cpu->r[3] = cpu->r[28] + 0x0000000Cu;
|
|
/* 024664E8 */ Gambit_fn_02801EDC(cpu);
|
|
/* 024664EC */ _t39 = cpu->r[27] + 0x00000138u;
|
|
/* 024664EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024664F0 */ _t40 = cpu->r[27] + 0x0000013Cu;
|
|
/* 024664F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024664F4 */ cpu->r[8] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 024664F8 */ _t41 = cpu->r[27] + 0x00000138u;
|
|
/* 024664F8 */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 024664FC */ _t42 = cpu->r[28] + 0x00000000u;
|
|
/* 024664FC */ rbrew_write32(cpu->mem, _t42, cpu->r[4]);
|
|
/* 02466500 */ _t43 = cpu->r[27] + 0x0000013Cu;
|
|
/* 02466500 */ rbrew_write32(cpu->mem, _t43, cpu->r[28]);
|
|
L_02466504: ; // 0x2466504
|
|
/* 02466504 */ cpu->r[28] = cpu->r[29] + 0xFFFFFFF4u;
|
|
/* 02466508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 0246650C */ _t44 = cpu->r[29] + 0x00000004u;
|
|
/* 0246650C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02466510 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466510 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02466510 */ if (_t46) goto L_02466514; else goto L_02466468;
|
|
L_02466514: ; // 0x2466514
|
|
/* 02466514 */ cpu->r[5] = 0x02460000u;
|
|
/* 02466518 */ cpu->r[3] = cpu->r[27] + 0x00000130u;
|
|
/* 0246651C */ cpu->r[4] = 0x0000000Cu;
|
|
/* 02466520 */ cpu->r[5] = cpu->r[5] + 0x000063C4u;
|
|
/* 02466524 */ Gambit_fn_02801F44(cpu);
|
|
/* 02466528 */ _t47 = cpu->r[27] + 0x00000134u;
|
|
/* 02466528 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0246652C */ cpu->r[4] = cpu->r[10] + 0xFFFFFFF4u;
|
|
/* 02466530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02466534 */ cpu->r[10] = 0x00000000u;
|
|
/* 02466538 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466538 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02466538 */ if (_t49) goto L_024665F8; else goto L_0246653C;
|
|
L_0246653C: ; // 0x246653c
|
|
/* 0246653C */ _t50 = cpu->r[4] + 0x00000008u;
|
|
/* 0246653C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02466540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466544 */ _t51 = cpu->r[4] + 0x00000000u;
|
|
/* 02466544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02466548 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466548 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02466548 */ if (_t53) goto L_024665A4; else goto L_0246654C;
|
|
L_0246654C: ; // 0x246654c
|
|
/* 0246654C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000010u);
|
|
/* 02466550 */ cpu->r[8] = cpu->r[27] + 0x000000B0u;
|
|
/* 02466554 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466554 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02466554 */ if (_t55) goto L_02466558; else goto L_02466560;
|
|
L_02466558: ; // 0x2466558
|
|
/* 02466558 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0246655C */ cpu->r[8] = cpu->r[8] + cpu->r[5];
|
|
L_02466560: ; // 0x2466560
|
|
/* 02466560 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02466564 */ cpu->r[6] = 0x43300000u;
|
|
/* 02466568 */ _t56 = cpu->r[7] + 0x00003B60u;
|
|
/* 02466568 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 0246656C */ cpu->r[7] = cpu->r[10] ^ 0x80000000u;
|
|
/* 02466570 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02466570 */ rbrew_write32(cpu->mem, _t57, cpu->r[6]);
|
|
/* 02466574 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466574 */ rbrew_write32(cpu->mem, _t58, cpu->r[7]);
|
|
/* 02466578 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02466578 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 0246657C */ cpu->f[11] = cpu->f[10] - cpu->f[8];
|
|
/* 02466580 */ cpu->f[6] = (double)(float)cpu->f[11];
|
|
/* 02466584 */ _t60 = cpu->r[8] + 0x00000000u;
|
|
/* 02466584 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02466588 */ _t61 = cpu->r[12] + 0x00000104u;
|
|
/* 02466588 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[6]);
|
|
/* 0246658C */ _t62 = cpu->r[4] + 0x00000010u;
|
|
/* 0246658C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02466590 */ cpu->r[4] = cpu->r[9] + 0xFFFFFFF4u;
|
|
/* 02466594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02466598 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0246659C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246659C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0246659C */ if (_t64) goto L_024665A0; else goto L_0246653C;
|
|
L_024665A0: ; // 0x24665a0
|
|
/* 024665A0 */ goto L_024665F8;
|
|
L_024665A4: ; // 0x24665a4
|
|
/* 024665A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 024665A8 */ cpu->r[12] = cpu->r[27] + 0x00000090u;
|
|
/* 024665AC */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024665AC */ _t66 = _t65 & 0x00000001u;
|
|
/* 024665AC */ if (_t66) goto L_024665B0; else goto L_024665B8;
|
|
L_024665B0: ; // 0x24665b0
|
|
/* 024665B0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024665B4 */ cpu->r[12] = cpu->r[12] + cpu->r[9];
|
|
L_024665B8: ; // 0x24665b8
|
|
/* 024665B8 */ cpu->r[5] = 0x100A0000u;
|
|
/* 024665BC */ cpu->r[0] = cpu->r[10] ^ 0x80000000u;
|
|
/* 024665C0 */ _t67 = cpu->r[5] + 0x00003B60u;
|
|
/* 024665C0 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 024665C4 */ cpu->r[11] = 0x43300000u;
|
|
/* 024665C8 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024665C8 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 024665CC */ _t69 = cpu->r[1] + 0x00000008u;
|
|
/* 024665CC */ rbrew_write32(cpu->mem, _t69, cpu->r[11]);
|
|
/* 024665D0 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 024665D0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 024665D4 */ cpu->f[0] = cpu->f[13] - cpu->f[7];
|
|
/* 024665D8 */ cpu->f[6] = (double)(float)cpu->f[0];
|
|
/* 024665DC */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 024665DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024665E0 */ _t72 = cpu->r[12] + 0x00000104u;
|
|
/* 024665E0 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[6]);
|
|
/* 024665E4 */ _t73 = cpu->r[4] + 0x00000010u;
|
|
/* 024665E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024665E8 */ cpu->r[4] = cpu->r[9] + 0xFFFFFFF4u;
|
|
/* 024665EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 024665F0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 024665F4 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024665F4 */ _t75 = _t74 & 0x00000001u;
|
|
/* 024665F4 */ if (_t75) goto L_024665F8; else goto L_0246653C;
|
|
L_024665F8: ; // 0x24665f8
|
|
/* 024665F8 */ /* nop */
|
|
/* 024665FC */ _t76 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024665FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02466600 */ cpu->lr = cpu->r[0];
|
|
/* 02466604 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02466608 */ return;
|
|
}
|
|
|
|
// fn_0246660C @ 0x246660c
|
|
void Gambit_fn_0246660C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76;
|
|
|
|
L_024663E0: ; // 0x24663e0
|
|
/* 024663E0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024663E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024663E0 */ cpu->r[1] = _t0;
|
|
/* 024663E4 */ /* nop */
|
|
/* 024663E8 */ cpu->r[0] = cpu->lr;
|
|
/* 024663EC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024663EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024663F0 */ cpu->r[27] = cpu->r[3];
|
|
/* 024663F4 */ _t2 = cpu->r[27] + 0x00000038u;
|
|
/* 024663F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024663F8 */ Gambit_fn_0246C90C(cpu);
|
|
/* 024663FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466400 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466400 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466400 */ if (_t4) goto L_02466404; else goto L_0246641C;
|
|
L_02466404: ; // 0x2466404
|
|
/* 02466404 */ cpu->r[3] = cpu->r[27];
|
|
/* 02466408 */ Gambit_fn_02466200(cpu);
|
|
/* 0246640C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466410 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466410 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466410 */ if (_t6) goto L_0246641C; else goto L_02466414;
|
|
L_02466414: ; // 0x2466414
|
|
/* 02466414 */ _t7 = cpu->r[27] + 0x00000038u;
|
|
/* 02466414 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466418 */ Gambit_fn_0246C904(cpu);
|
|
L_0246641C: ; // 0x246641c
|
|
/* 0246641C */ cpu->r[3] = cpu->r[27];
|
|
/* 02466420 */ Gambit_fn_0246629C(cpu);
|
|
/* 02466424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466428 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466428 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02466428 */ if (_t9) goto L_02466434; else goto L_0246642C;
|
|
L_0246642C: ; // 0x246642c
|
|
/* 0246642C */ _t10 = cpu->r[27] + 0x00000038u;
|
|
/* 0246642C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466430 */ Gambit_fn_0246E200(cpu);
|
|
L_02466434: ; // 0x2466434
|
|
/* 02466434 */ cpu->r[3] = cpu->r[27];
|
|
/* 02466438 */ Gambit_fn_02466330(cpu);
|
|
/* 0246643C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466440 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466440 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02466440 */ if (_t12) goto L_0246644C; else goto L_02466444;
|
|
L_02466444: ; // 0x2466444
|
|
/* 02466444 */ _t13 = cpu->r[27] + 0x00000038u;
|
|
/* 02466444 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466448 */ Gambit_fn_0246E248(cpu);
|
|
L_0246644C: ; // 0x246644c
|
|
/* 0246644C */ _t14 = cpu->r[27] + 0x00000134u;
|
|
/* 0246644C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466450 */ cpu->r[31] = cpu->r[27] + 0x00000124u;
|
|
/* 02466454 */ cpu->r[30] = cpu->r[31];
|
|
/* 02466458 */ cpu->r[28] = cpu->r[10] + 0xFFFFFFF4u;
|
|
/* 0246645C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 02466460 */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02466460 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02466464 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466464 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02466464 */ if (_t17) goto L_02466514; else goto L_02466468;
|
|
L_02466468: ; // 0x2466468
|
|
/* 02466468 */ _t18 = cpu->r[28] + 0x00000008u;
|
|
/* 02466468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246646C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466470 */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 02466470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466474 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466474 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02466474 */ if (_t21) goto L_024664C0; else goto L_02466478;
|
|
L_02466478: ; // 0x2466478
|
|
/* 02466478 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000010u);
|
|
/* 0246647C */ cpu->r[11] = cpu->r[27] + 0x000000B0u;
|
|
/* 02466480 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466480 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02466480 */ if (_t23) goto L_02466484; else goto L_0246648C;
|
|
L_02466484: ; // 0x2466484
|
|
/* 02466484 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02466488 */ cpu->r[11] = cpu->r[11] + cpu->r[4];
|
|
L_0246648C: ; // 0x246648c
|
|
/* 0246648C */ _t24 = cpu->r[11] + 0x00000000u;
|
|
/* 0246648C */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02466490 */ _t25 = cpu->r[4] + 0x00000118u;
|
|
/* 02466490 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02466494 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02466494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02466498 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466498 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02466498 */ if (_t27) goto L_02466504; else goto L_0246649C;
|
|
L_0246649C: ; // 0x246649c
|
|
/* 0246649C */ cpu->r[3] = cpu->r[28] + 0x0000000Cu;
|
|
/* 024664A0 */ Gambit_fn_02801EDC(cpu);
|
|
/* 024664A4 */ _t28 = cpu->r[27] + 0x00000138u;
|
|
/* 024664A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024664A8 */ _t29 = cpu->r[27] + 0x0000013Cu;
|
|
/* 024664A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024664AC */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 024664B0 */ _t30 = cpu->r[27] + 0x00000138u;
|
|
/* 024664B0 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 024664B4 */ _t31 = cpu->r[28] + 0x00000000u;
|
|
/* 024664B4 */ rbrew_write32(cpu->mem, _t31, cpu->r[4]);
|
|
/* 024664B8 */ _t32 = cpu->r[27] + 0x0000013Cu;
|
|
/* 024664B8 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 024664BC */ goto L_02466504;
|
|
L_024664C0: ; // 0x24664c0
|
|
/* 024664C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 024664C4 */ cpu->r[7] = cpu->r[27] + 0x00000090u;
|
|
/* 024664C8 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024664C8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024664C8 */ if (_t34) goto L_024664CC; else goto L_024664D4;
|
|
L_024664CC: ; // 0x24664cc
|
|
/* 024664CC */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024664D0 */ cpu->r[7] = cpu->r[7] + cpu->r[6];
|
|
L_024664D4: ; // 0x24664d4
|
|
/* 024664D4 */ _t35 = cpu->r[7] + 0x00000000u;
|
|
/* 024664D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024664D8 */ _t36 = cpu->r[12] + 0x00000118u;
|
|
/* 024664D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024664DC */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024664DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024664E0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024664E0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 024664E0 */ if (_t38) goto L_02466504; else goto L_024664E4;
|
|
L_024664E4: ; // 0x24664e4
|
|
/* 024664E4 */ cpu->r[3] = cpu->r[28] + 0x0000000Cu;
|
|
/* 024664E8 */ Gambit_fn_02801EDC(cpu);
|
|
/* 024664EC */ _t39 = cpu->r[27] + 0x00000138u;
|
|
/* 024664EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024664F0 */ _t40 = cpu->r[27] + 0x0000013Cu;
|
|
/* 024664F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024664F4 */ cpu->r[8] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 024664F8 */ _t41 = cpu->r[27] + 0x00000138u;
|
|
/* 024664F8 */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 024664FC */ _t42 = cpu->r[28] + 0x00000000u;
|
|
/* 024664FC */ rbrew_write32(cpu->mem, _t42, cpu->r[4]);
|
|
/* 02466500 */ _t43 = cpu->r[27] + 0x0000013Cu;
|
|
/* 02466500 */ rbrew_write32(cpu->mem, _t43, cpu->r[28]);
|
|
L_02466504: ; // 0x2466504
|
|
/* 02466504 */ cpu->r[28] = cpu->r[29] + 0xFFFFFFF4u;
|
|
/* 02466508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 0246650C */ _t44 = cpu->r[29] + 0x00000004u;
|
|
/* 0246650C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02466510 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466510 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02466510 */ if (_t46) goto L_02466514; else goto L_02466468;
|
|
L_02466514: ; // 0x2466514
|
|
/* 02466514 */ cpu->r[5] = 0x02460000u;
|
|
/* 02466518 */ cpu->r[3] = cpu->r[27] + 0x00000130u;
|
|
/* 0246651C */ cpu->r[4] = 0x0000000Cu;
|
|
/* 02466520 */ cpu->r[5] = cpu->r[5] + 0x000063C4u;
|
|
/* 02466524 */ Gambit_fn_02801F44(cpu);
|
|
/* 02466528 */ _t47 = cpu->r[27] + 0x00000134u;
|
|
/* 02466528 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0246652C */ cpu->r[4] = cpu->r[10] + 0xFFFFFFF4u;
|
|
/* 02466530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02466534 */ cpu->r[10] = 0x00000000u;
|
|
/* 02466538 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466538 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02466538 */ if (_t49) goto L_024665F8; else goto L_0246653C;
|
|
L_0246653C: ; // 0x246653c
|
|
/* 0246653C */ _t50 = cpu->r[4] + 0x00000008u;
|
|
/* 0246653C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02466540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466544 */ _t51 = cpu->r[4] + 0x00000000u;
|
|
/* 02466544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02466548 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466548 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02466548 */ if (_t53) goto L_024665A4; else goto L_0246654C;
|
|
L_0246654C: ; // 0x246654c
|
|
/* 0246654C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000010u);
|
|
/* 02466550 */ cpu->r[8] = cpu->r[27] + 0x000000B0u;
|
|
/* 02466554 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466554 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02466554 */ if (_t55) goto L_02466558; else goto L_02466560;
|
|
L_02466558: ; // 0x2466558
|
|
/* 02466558 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0246655C */ cpu->r[8] = cpu->r[8] + cpu->r[5];
|
|
L_02466560: ; // 0x2466560
|
|
/* 02466560 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02466564 */ cpu->r[6] = 0x43300000u;
|
|
/* 02466568 */ _t56 = cpu->r[7] + 0x00003B60u;
|
|
/* 02466568 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 0246656C */ cpu->r[7] = cpu->r[10] ^ 0x80000000u;
|
|
/* 02466570 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02466570 */ rbrew_write32(cpu->mem, _t57, cpu->r[6]);
|
|
/* 02466574 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466574 */ rbrew_write32(cpu->mem, _t58, cpu->r[7]);
|
|
/* 02466578 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02466578 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 0246657C */ cpu->f[11] = cpu->f[10] - cpu->f[8];
|
|
/* 02466580 */ cpu->f[6] = (double)(float)cpu->f[11];
|
|
/* 02466584 */ _t60 = cpu->r[8] + 0x00000000u;
|
|
/* 02466584 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02466588 */ _t61 = cpu->r[12] + 0x00000104u;
|
|
/* 02466588 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[6]);
|
|
/* 0246658C */ _t62 = cpu->r[4] + 0x00000010u;
|
|
/* 0246658C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02466590 */ cpu->r[4] = cpu->r[9] + 0xFFFFFFF4u;
|
|
/* 02466594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02466598 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0246659C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246659C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0246659C */ if (_t64) goto L_024665A0; else goto L_0246653C;
|
|
L_024665A0: ; // 0x24665a0
|
|
/* 024665A0 */ goto L_024665F8;
|
|
L_024665A4: ; // 0x24665a4
|
|
/* 024665A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 024665A8 */ cpu->r[12] = cpu->r[27] + 0x00000090u;
|
|
/* 024665AC */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024665AC */ _t66 = _t65 & 0x00000001u;
|
|
/* 024665AC */ if (_t66) goto L_024665B0; else goto L_024665B8;
|
|
L_024665B0: ; // 0x24665b0
|
|
/* 024665B0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024665B4 */ cpu->r[12] = cpu->r[12] + cpu->r[9];
|
|
L_024665B8: ; // 0x24665b8
|
|
/* 024665B8 */ cpu->r[5] = 0x100A0000u;
|
|
/* 024665BC */ cpu->r[0] = cpu->r[10] ^ 0x80000000u;
|
|
/* 024665C0 */ _t67 = cpu->r[5] + 0x00003B60u;
|
|
/* 024665C0 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 024665C4 */ cpu->r[11] = 0x43300000u;
|
|
/* 024665C8 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024665C8 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 024665CC */ _t69 = cpu->r[1] + 0x00000008u;
|
|
/* 024665CC */ rbrew_write32(cpu->mem, _t69, cpu->r[11]);
|
|
/* 024665D0 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 024665D0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 024665D4 */ cpu->f[0] = cpu->f[13] - cpu->f[7];
|
|
/* 024665D8 */ cpu->f[6] = (double)(float)cpu->f[0];
|
|
/* 024665DC */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 024665DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024665E0 */ _t72 = cpu->r[12] + 0x00000104u;
|
|
/* 024665E0 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[6]);
|
|
/* 024665E4 */ _t73 = cpu->r[4] + 0x00000010u;
|
|
/* 024665E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024665E8 */ cpu->r[4] = cpu->r[9] + 0xFFFFFFF4u;
|
|
/* 024665EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 024665F0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 024665F4 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024665F4 */ _t75 = _t74 & 0x00000001u;
|
|
/* 024665F4 */ if (_t75) goto L_024665F8; else goto L_0246653C;
|
|
L_024665F8: ; // 0x24665f8
|
|
/* 024665F8 */ /* nop */
|
|
/* 024665FC */ _t76 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024665FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02466600 */ cpu->lr = cpu->r[0];
|
|
/* 02466604 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02466608 */ return;
|
|
L_0246660C: ; // 0x246660c
|
|
/* 0246660C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466610 */ goto L_024663E0;
|
|
}
|
|
|
|
// fn_02466614 @ 0x2466614
|
|
void Gambit_fn_02466614(CPUState* cpu) {
|
|
L_02466614: ; // 0x2466614
|
|
/* 02466614 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466618 */ goto L_02468808;
|
|
L_02468808: ; // 0x2468808
|
|
/* 02468808 */ return;
|
|
}
|
|
|
|
// fn_0246661C @ 0x246661c
|
|
void Gambit_fn_0246661C(CPUState* cpu) {
|
|
L_0246661C: ; // 0x246661c
|
|
/* 0246661C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466620 */ goto L_0246880C;
|
|
L_0246880C: ; // 0x246880c
|
|
/* 0246880C */ return;
|
|
}
|
|
|
|
// fn_02466624 @ 0x2466624
|
|
void Gambit_fn_02466624(CPUState* cpu) {
|
|
L_02466624: ; // 0x2466624
|
|
/* 02466624 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466628 */ goto L_02468810;
|
|
L_02468810: ; // 0x2468810
|
|
/* 02468810 */ cpu->r[3] = 0x00000001u;
|
|
/* 02468814 */ return;
|
|
}
|
|
|
|
// fn_0246662C @ 0x246662c
|
|
void Gambit_fn_0246662C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0246662C: ; // 0x246662c
|
|
/* 0246662C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466630 */ goto L_02468818;
|
|
L_02468818: ; // 0x2468818
|
|
/* 02468818 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 02468818 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0246881C */ return;
|
|
}
|
|
|
|
// fn_02466634 @ 0x2466634
|
|
void Gambit_fn_02466634(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02466634: ; // 0x2466634
|
|
/* 02466634 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466638 */ goto L_02468828;
|
|
L_02468828: ; // 0x2468828
|
|
/* 02468828 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 02468828 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0246882C */ return;
|
|
}
|
|
|
|
// fn_0246663C @ 0x246663c
|
|
void Gambit_fn_0246663C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0246663C: ; // 0x246663c
|
|
/* 0246663C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02466640 */ goto L_02468830;
|
|
L_02468830: ; // 0x2468830
|
|
/* 02468830 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 02468830 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02468834 */ return;
|
|
}
|
|
|
|
// fn_02466644 @ 0x2466644
|
|
void Gambit_fn_02466644(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;
|
|
|
|
L_02466644: ; // 0x2466644
|
|
/* 02466644 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02466644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466644 */ cpu->r[1] = _t0;
|
|
/* 02466648 */ cpu->r[0] = cpu->lr;
|
|
/* 0246664C */ /* nop */
|
|
/* 02466650 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02466654 */ cpu->r[30] = cpu->r[4];
|
|
/* 02466658 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02466658 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0246665C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246665C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0246665C */ if (_t3) goto L_02466660; else goto L_02466670;
|
|
L_02466660: ; // 0x2466660
|
|
/* 02466660 */ cpu->r[3] = 0x00000330u;
|
|
/* 02466664 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466668 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0246666C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246666C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246666C */ if (_t5) goto L_024668A8; else goto L_02466670;
|
|
L_02466670: ; // 0x2466670
|
|
/* 02466670 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02466674 */ cpu->r[3] = cpu->r[31];
|
|
/* 02466678 */ cpu->r[5] = 0x00000020u;
|
|
/* 0246667C */ cpu->r[4] = cpu->r[4] + 0x00003B68u;
|
|
/* 02466680 */ Gambit_fn_026DD9F0(cpu);
|
|
/* 02466684 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02466688 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0246668C */ cpu->r[9] = cpu->r[9] + 0x00003BA4u;
|
|
/* 02466690 */ cpu->r[8] = cpu->r[8] + 0x00003C2Cu;
|
|
/* 02466694 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 02466694 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02466698 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246669C */ _t7 = cpu->r[31] + 0x00000010u;
|
|
/* 0246669C */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024666A0 */ cpu->r[0] = cpu->r[0] + 0x00003C1Cu;
|
|
/* 024666A4 */ cpu->r[3] = cpu->r[31] + 0x00000028u;
|
|
/* 024666A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024666A8 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024666A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024666AC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024666AC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024666AC */ if (_t10) goto L_024666B0; else goto L_024666C0;
|
|
L_024666B0: ; // 0x24666b0
|
|
/* 024666B0 */ cpu->r[3] = 0x00000010u;
|
|
/* 024666B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024666B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024666BC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024666BC */ _t12 = _t11 & 0x00000001u;
|
|
/* 024666BC */ if (_t12) goto L_024666E4; else goto L_024666C0;
|
|
L_024666C0: ; // 0x24666c0
|
|
/* 024666C0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024666C4 */ cpu->r[10] = cpu->r[10] + 0x00003B4Cu;
|
|
/* 024666C8 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024666C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 024666CC */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 024666CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024666D0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 024666D0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 024666D4 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 024666D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024666D8 */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 024666D8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 024666DC */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 024666DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024666E0 */ _t19 = cpu->r[3] + 0x00000008u;
|
|
/* 024666E0 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]);
|
|
L_024666E4: ; // 0x24666e4
|
|
/* 024666E4 */ cpu->r[30] = 0x00000000u;
|
|
/* 024666E8 */ cpu->r[29] = cpu->r[31] + 0x00000130u;
|
|
/* 024666E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024666EC */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024666F0 */ _t20 = cpu->r[31] + 0x000000F4u;
|
|
/* 024666F0 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024666F4 */ cpu->r[27] = cpu->r[29];
|
|
/* 024666F8 */ _t21 = cpu->r[31] + 0x0000012Cu;
|
|
/* 024666F8 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 024666FC */ _t22 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024666FC */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02466700 */ _t23 = cpu->r[31] + 0x000000FCu;
|
|
/* 02466700 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 02466704 */ _t24 = cpu->r[31] + 0x000000F0u;
|
|
/* 02466704 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02466708 */ _t25 = cpu->r[31] + 0x000000F8u;
|
|
/* 02466708 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 0246670C */ _t26 = cpu->r[31] + 0x00000128u;
|
|
/* 0246670C */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02466710 */ _t27 = cpu->r[31] + 0x00000084u;
|
|
/* 02466710 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02466714 */ _t28 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466714 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 02466718 */ _t29 = cpu->r[31] + 0x00000100u;
|
|
/* 02466718 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 0246671C */ _t30 = cpu->r[31] + 0x00000088u;
|
|
/* 0246671C */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
/* 02466720 */ _t31 = cpu->r[31] + 0x00000104u;
|
|
/* 02466720 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 02466724 */ _t32 = cpu->r[31] + 0x00000038u;
|
|
/* 02466724 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 02466728 */ _t33 = cpu->r[31] + 0x00000040u;
|
|
/* 02466728 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 0246672C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246672C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0246672C */ if (_t35) goto L_02466730; else goto L_02466740;
|
|
L_02466730: ; // 0x2466730
|
|
/* 02466730 */ cpu->r[3] = 0x000001F8u;
|
|
/* 02466734 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466738 */ cpu->r[27] = cpu->r[3];
|
|
/* 02466738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0246673C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246673C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0246673C */ if (_t37) goto L_024667C0; else goto L_02466740;
|
|
L_02466740: ; // 0x2466740
|
|
/* 02466740 */ cpu->r[28] = cpu->r[27];
|
|
/* 02466740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02466744 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466744 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02466744 */ if (_t39) goto L_02466748; else goto L_02466758;
|
|
L_02466748: ; // 0x2466748
|
|
/* 02466748 */ cpu->r[3] = 0x00000018u;
|
|
/* 0246674C */ Gambit_fn_02801A78(cpu);
|
|
/* 02466750 */ cpu->r[28] = cpu->r[3];
|
|
/* 02466750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02466754 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466754 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02466754 */ if (_t41) goto L_02466788; else goto L_02466758;
|
|
L_02466758: ; // 0x2466758
|
|
/* 02466758 */ cpu->r[3] = cpu->r[28];
|
|
/* 02466758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246675C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246675C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0246675C */ if (_t43) goto L_02466760; else goto L_02466770;
|
|
L_02466760: ; // 0x2466760
|
|
/* 02466760 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02466764 */ Gambit_fn_02801A78(cpu);
|
|
/* 02466768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246676C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246676C */ _t45 = _t44 & 0x00000001u;
|
|
/* 0246676C */ if (_t45) goto L_0246677C; else goto L_02466770;
|
|
L_02466770: ; // 0x2466770
|
|
/* 02466770 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 02466770 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 02466774 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 02466774 */ rbrew_write32(cpu->mem, _t47, cpu->r[30]);
|
|
/* 02466778 */ _t48 = cpu->r[3] + 0x00000000u;
|
|
/* 02466778 */ rbrew_write32(cpu->mem, _t48, cpu->r[3]);
|
|
L_0246677C: ; // 0x246677c
|
|
/* 0246677C */ _t49 = cpu->r[28] + 0x00000010u;
|
|
/* 0246677C */ rbrew_write32(cpu->mem, _t49, cpu->r[30]);
|
|
/* 02466780 */ _t50 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02466780 */ rbrew_write32(cpu->mem, _t50, cpu->r[30]);
|
|
/* 02466784 */ _t51 = cpu->r[28] + 0x00000014u;
|
|
/* 02466784 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]);
|
|
L_02466788: ; // 0x2466788
|
|
/* 02466788 */ cpu->r[0] = 0x00000017u;
|
|
/* 0246678C */ cpu->r[11] = cpu->r[27] + 0x00000018u;
|
|
/* 02466790 */ cpu->r[12] = 0x00000000u;
|
|
/* 02466794 */ cpu->ctr = cpu->r[0];
|
|
/* 02466798 */ cpu->r[7] = cpu->r[11] + 0x00000014u;
|
|
/* 0246679C */ _t52 = cpu->r[27] + 0x0000000Cu;
|
|
/* 0246679C */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
L_024667A0: ; // 0x24667a0
|
|
/* 024667A0 */ _t53 = cpu->r[11] + cpu->r[12];
|
|
/* 024667A0 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 024667A4 */ cpu->r[12] = cpu->r[12] + 0x00000014u;
|
|
/* 024667A8 */ cpu->r[7] = cpu->r[7] + 0x00000014u;
|
|
/* 024667AC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024667AC */ _t54 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024667AC */ _t55 = _t54 >> (0x00000002u & 31u);
|
|
/* 024667AC */ _t56 = _t55 & 0x00000001u;
|
|
/* 024667AC */ if (_t56) goto L_024667A0; else goto L_024667B0;
|
|
L_024667B0: ; // 0x24667b0
|
|
/* 024667B0 */ _t57 = cpu->r[11] + 0x000001CCu;
|
|
/* 024667B0 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 024667B4 */ cpu->r[0] = 0x00000018u;
|
|
/* 024667B8 */ _t58 = cpu->r[27] + 0x00000010u;
|
|
/* 024667B8 */ rbrew_write32(cpu->mem, _t58, cpu->r[11]);
|
|
/* 024667BC */ _t59 = cpu->r[27] + 0x00000014u;
|
|
/* 024667BC */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
L_024667C0: ; // 0x24667c0
|
|
/* 024667C0 */ _t60 = cpu->r[31] + 0x00000328u;
|
|
/* 024667C0 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 024667C4 */ cpu->r[10] = 0x00000001u;
|
|
/* 024667C8 */ _t61 = cpu->r[31] + 0x0000032Fu;
|
|
/* 024667C8 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[30]);
|
|
/* 024667CC */ cpu->r[9] = 0x00000008u;
|
|
/* 024667D0 */ _t62 = cpu->r[31] + 0x0000032Cu;
|
|
/* 024667D0 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[10]);
|
|
/* 024667D4 */ cpu->r[10] = cpu->r[31] + 0x00000040u;
|
|
/* 024667D8 */ cpu->r[0] = 0x00000000u;
|
|
/* 024667DC */ _t63 = cpu->r[31] + 0x0000032Du;
|
|
/* 024667DC */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[30]);
|
|
/* 024667E0 */ cpu->ctr = cpu->r[9];
|
|
/* 024667E4 */ _t64 = cpu->r[31] + 0x0000032Eu;
|
|
/* 024667E4 */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[30]);
|
|
L_024667E8: ; // 0x24667e8
|
|
/* 024667E8 */ _t65 = cpu->r[10] + 0x00000004u;
|
|
/* 024667E8 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 024667E8 */ cpu->r[10] = _t65;
|
|
/* 024667EC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024667EC */ _t66 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024667EC */ _t67 = _t66 >> (0x00000002u & 31u);
|
|
/* 024667EC */ _t68 = _t67 & 0x00000001u;
|
|
/* 024667EC */ if (_t68) goto L_024667E8; else goto L_024667F0;
|
|
L_024667F0: ; // 0x24667f0
|
|
/* 024667F0 */ cpu->r[7] = 0x00000008u;
|
|
/* 024667F4 */ cpu->r[8] = cpu->r[31] + 0x00000060u;
|
|
/* 024667F8 */ cpu->ctr = cpu->r[7];
|
|
/* 024667FC */ cpu->r[9] = 0x00000000u;
|
|
L_02466800: ; // 0x2466800
|
|
/* 02466800 */ _t69 = cpu->r[8] + 0x00000004u;
|
|
/* 02466800 */ rbrew_write32(cpu->mem, _t69, cpu->r[9]);
|
|
/* 02466800 */ cpu->r[8] = _t69;
|
|
/* 02466804 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02466804 */ _t70 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02466804 */ _t71 = _t70 >> (0x00000002u & 31u);
|
|
/* 02466804 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02466804 */ if (_t72) goto L_02466800; else goto L_02466808;
|
|
L_02466808: ; // 0x2466808
|
|
/* 02466808 */ cpu->r[0] = 0x00000008u;
|
|
/* 0246680C */ cpu->r[12] = cpu->r[31] + 0x00000104u;
|
|
/* 02466810 */ cpu->ctr = cpu->r[0];
|
|
/* 02466814 */ cpu->r[7] = 0x00000000u;
|
|
L_02466818: ; // 0x2466818
|
|
/* 02466818 */ _t73 = cpu->r[12] + 0x00000004u;
|
|
/* 02466818 */ rbrew_write32(cpu->mem, _t73, cpu->r[7]);
|
|
/* 02466818 */ cpu->r[12] = _t73;
|
|
/* 0246681C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0246681C */ _t74 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0246681C */ _t75 = _t74 >> (0x00000002u & 31u);
|
|
/* 0246681C */ _t76 = _t75 & 0x00000001u;
|
|
/* 0246681C */ if (_t76) goto L_02466818; else goto L_02466820;
|
|
L_02466820: ; // 0x2466820
|
|
/* 02466820 */ _t77 = cpu->r[29] + 0x00000004u;
|
|
/* 02466820 */ cpu->r[28] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02466824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02466828 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466828 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02466828 */ if (_t79) goto L_02466860; else goto L_0246682C;
|
|
L_0246682C: ; // 0x246682c
|
|
/* 0246682C */ cpu->r[3] = cpu->r[28];
|
|
/* 02466830 */ _t80 = cpu->r[28] + 0x00000004u;
|
|
/* 02466830 */ cpu->r[30] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02466834 */ Gambit_fn_02801EDC(cpu);
|
|
/* 02466838 */ _t81 = cpu->r[29] + 0x00000008u;
|
|
/* 02466838 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0246683C */ _t82 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0246683C */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02466840 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02466844 */ _t83 = cpu->r[29] + 0x00000008u;
|
|
/* 02466844 */ rbrew_write32(cpu->mem, _t83, cpu->r[11]);
|
|
/* 02466848 */ cpu->r[9] = cpu->r[28] + 0xFFFFFFF4u;
|
|
/* 0246684C */ _t84 = cpu->r[28] + 0xFFFFFFF4u;
|
|
/* 0246684C */ rbrew_write32(cpu->mem, _t84, cpu->r[12]);
|
|
/* 02466850 */ cpu->r[28] = cpu->r[30];
|
|
/* 02466854 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02466858 */ _t85 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02466858 */ rbrew_write32(cpu->mem, _t85, cpu->r[9]);
|
|
/* 0246685C */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246685C */ _t87 = _t86 & 0x00000001u;
|
|
/* 0246685C */ if (_t87) goto L_02466860; else goto L_0246682C;
|
|
L_02466860: ; // 0x2466860
|
|
/* 02466860 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02466864 */ _t88 = cpu->r[12] + 0x00001D34u;
|
|
/* 02466864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02466868 */ _t89 = cpu->r[12] + 0x00000178u;
|
|
/* 02466868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0246686C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466870 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466870 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02466870 */ if (_t91) goto L_0246689C; else goto L_02466874;
|
|
L_02466874: ; // 0x2466874
|
|
/* 02466874 */ _t92 = cpu->r[12] + 0x00000174u;
|
|
/* 02466874 */ cpu->r[11] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02466878 */ _t93 = cpu->r[12] + 0x00000170u;
|
|
/* 02466878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0246687C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 02466880 */ _t94 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02466880 */ cpu->r[8] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02466884 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466884 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02466884 */ if (_t96) goto L_0246688C; else goto L_02466888;
|
|
L_02466888: ; // 0x2466888
|
|
/* 02466888 */ cpu->r[11] = cpu->r[11] - cpu->r[0];
|
|
L_0246688C: ; // 0x246688c
|
|
/* 0246688C */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02466890 */ _t97 = cpu->r[8] + cpu->r[0];
|
|
/* 02466890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02466894 */ _t98 = cpu->r[31] + 0x00000328u;
|
|
/* 02466894 */ rbrew_write32(cpu->mem, _t98, cpu->r[12]);
|
|
/* 02466898 */ goto L_024668A8;
|
|
L_0246689C: ; // 0x246689c
|
|
/* 0246689C */ _t99 = cpu->r[12] + 0x0000016Cu;
|
|
/* 0246689C */ cpu->r[10] = rbrew_read32(cpu->mem, _t99);
|
|
/* 024668A0 */ _t100 = cpu->r[10] + 0x00000000u;
|
|
/* 024668A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 024668A4 */ _t101 = cpu->r[31] + 0x00000328u;
|
|
/* 024668A4 */ rbrew_write32(cpu->mem, _t101, cpu->r[12]);
|
|
L_024668A8: ; // 0x24668a8
|
|
/* 024668A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024668AC */ /* nop */
|
|
/* 024668B0 */ _t102 = cpu->r[1] + 0x00000024u;
|
|
/* 024668B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 024668B4 */ cpu->lr = cpu->r[0];
|
|
/* 024668B8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024668BC */ return;
|
|
}
|
|
|
|
// fn_024668C0 @ 0x24668c0
|
|
void Gambit_fn_024668C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024668C0: ; // 0x24668c0
|
|
/* 024668C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024668C4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024668C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024668C8 */ cpu->r[12] = cpu->r[3];
|
|
/* 024668CC */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024668CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024668CC */ cpu->r[1] = _t1;
|
|
/* 024668D0 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 024668D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024668D4 */ _t3 = cpu->r[12] + 0x0000012Cu;
|
|
/* 024668D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024668D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 024668DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024668DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024668DC */ if (_t5) goto L_024668FC; else goto L_024668E0;
|
|
L_024668E0: ; // 0x24668e0
|
|
/* 024668E0 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 024668E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024668E4 */ _t7 = cpu->r[12] + 0x00000038u;
|
|
/* 024668E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024668E8 */ _t8 = cpu->r[12] + 0x0000012Cu;
|
|
/* 024668E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 024668EC */ _t9 = cpu->r[12] + 0x0000012Cu;
|
|
/* 024668EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024668F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024668F4 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024668F4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024668F8 */ Gambit_fn_0246C79C(cpu);
|
|
L_024668FC: ; // 0x24668fc
|
|
/* 024668FC */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024668FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466900 */ cpu->lr = cpu->r[0];
|
|
/* 02466904 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466908 */ return;
|
|
}
|
|
|
|
// fn_024668CC @ 0x24668cc
|
|
void Gambit_fn_024668CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024668CC: ; // 0x24668cc
|
|
/* 024668CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024668CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024668CC */ cpu->r[1] = _t0;
|
|
/* 024668D0 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 024668D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024668D4 */ _t2 = cpu->r[12] + 0x0000012Cu;
|
|
/* 024668D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024668D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 024668DC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024668DC */ _t4 = _t3 & 0x00000001u;
|
|
/* 024668DC */ if (_t4) goto L_024668FC; else goto L_024668E0;
|
|
L_024668E0: ; // 0x24668e0
|
|
/* 024668E0 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 024668E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024668E4 */ _t6 = cpu->r[12] + 0x00000038u;
|
|
/* 024668E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024668E8 */ _t7 = cpu->r[12] + 0x0000012Cu;
|
|
/* 024668E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 024668EC */ _t8 = cpu->r[12] + 0x0000012Cu;
|
|
/* 024668EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024668F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024668F4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 024668F4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024668F8 */ Gambit_fn_0246C79C(cpu);
|
|
L_024668FC: ; // 0x24668fc
|
|
/* 024668FC */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024668FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466900 */ cpu->lr = cpu->r[0];
|
|
/* 02466904 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466908 */ return;
|
|
}
|
|
|
|
// fn_0246690C @ 0x246690c
|
|
void Gambit_fn_0246690C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0246690C: ; // 0x246690c
|
|
/* 0246690C */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 0246690C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466910 */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 02466910 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466914 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02466918 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0246691C */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 02466920 */ return;
|
|
}
|
|
|
|
// fn_02466924 @ 0x2466924
|
|
void Gambit_fn_02466924(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02466924: ; // 0x2466924
|
|
/* 02466924 */ cpu->r[0] = cpu->lr;
|
|
/* 02466928 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466928 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466928 */ cpu->r[1] = _t0;
|
|
/* 0246692C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246692C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466930 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466934 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02466938 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466938 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246693C */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0246693C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466940 */ Gambit_fn_0206C030(cpu);
|
|
/* 02466944 */ _t4 = cpu->r[31] + 0x00000028u;
|
|
/* 02466944 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466948 */ cpu->r[5] = 0x00000001u;
|
|
/* 0246694C */ _t5 = cpu->r[31] + 0x00000038u;
|
|
/* 0246694C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466950 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02466954 */ _t6 = cpu->r[31] + 0x00000038u;
|
|
/* 02466954 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466958 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02466958 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246695C */ _t8 = cpu->r[10] + 0x00000164u;
|
|
/* 0246695C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466960 */ cpu->ctr = cpu->r[0];
|
|
/* 02466964 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466968 */ _t9 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466968 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246696C */ _t10 = cpu->r[3] + 0x00000118u;
|
|
/* 0246696C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466970 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02466970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466974 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466974 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02466974 */ if (_t12) goto L_02466998; else goto L_02466978;
|
|
L_02466978: ; // 0x2466978
|
|
/* 02466978 */ _t13 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02466978 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246697C */ cpu->r[5] = 0x00000001u;
|
|
/* 02466980 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02466984 */ _t14 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466984 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466988 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02466988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0246698C */ _t16 = cpu->r[12] + 0x00000164u;
|
|
/* 0246698C */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466990 */ cpu->ctr = cpu->r[9];
|
|
/* 02466994 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02466998: ; // 0x2466998
|
|
/* 02466998 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02466998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246699C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246699C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024669A0 */ cpu->lr = cpu->r[0];
|
|
/* 024669A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024669A8 */ return;
|
|
}
|
|
|
|
// fn_02466928 @ 0x2466928
|
|
void Gambit_fn_02466928(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02466928: ; // 0x2466928
|
|
/* 02466928 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466928 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466928 */ cpu->r[1] = _t0;
|
|
/* 0246692C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246692C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466930 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466934 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02466938 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466938 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0246693C */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 0246693C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466940 */ Gambit_fn_0206C030(cpu);
|
|
/* 02466944 */ _t4 = cpu->r[31] + 0x00000028u;
|
|
/* 02466944 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466948 */ cpu->r[5] = 0x00000001u;
|
|
/* 0246694C */ _t5 = cpu->r[31] + 0x00000038u;
|
|
/* 0246694C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466950 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02466954 */ _t6 = cpu->r[31] + 0x00000038u;
|
|
/* 02466954 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466958 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02466958 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246695C */ _t8 = cpu->r[10] + 0x00000164u;
|
|
/* 0246695C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466960 */ cpu->ctr = cpu->r[0];
|
|
/* 02466964 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466968 */ _t9 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466968 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246696C */ _t10 = cpu->r[3] + 0x00000118u;
|
|
/* 0246696C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466970 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02466970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466974 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466974 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02466974 */ if (_t12) goto L_02466998; else goto L_02466978;
|
|
L_02466978: ; // 0x2466978
|
|
/* 02466978 */ _t13 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02466978 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0246697C */ cpu->r[5] = 0x00000001u;
|
|
/* 02466980 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02466984 */ _t14 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466984 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466988 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02466988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0246698C */ _t16 = cpu->r[12] + 0x00000164u;
|
|
/* 0246698C */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466990 */ cpu->ctr = cpu->r[9];
|
|
/* 02466994 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02466998: ; // 0x2466998
|
|
/* 02466998 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02466998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246699C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246699C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024669A0 */ cpu->lr = cpu->r[0];
|
|
/* 024669A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024669A8 */ return;
|
|
}
|
|
|
|
// fn_024669AC @ 0x24669ac
|
|
void Gambit_fn_024669AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_024669AC: ; // 0x24669ac
|
|
/* 024669AC */ cpu->r[0] = cpu->lr;
|
|
/* 024669B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024669B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024669B0 */ cpu->r[1] = _t0;
|
|
/* 024669B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024669B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024669B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024669BC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024669C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024669C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024669C4 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024669C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024669C8 */ Gambit_fn_0206C030(cpu);
|
|
/* 024669CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024669D0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024669D0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024669D0 */ if (_t5) goto L_024669DC; else goto L_024669D4;
|
|
L_024669D4: ; // 0x24669d4
|
|
/* 024669D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024669D8 */ Gambit_fn_02466288(cpu);
|
|
L_024669DC: ; // 0x24669dc
|
|
/* 024669DC */ _t6 = cpu->r[31] + 0x00000038u;
|
|
/* 024669DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024669E0 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024669E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024669E4 */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024669E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024669E8 */ cpu->ctr = cpu->r[7];
|
|
/* 024669EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024669F0 */ _t9 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024669F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024669F4 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 024669F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024669F8 */ _t11 = cpu->r[8] + 0x00000184u;
|
|
/* 024669F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024669FC */ cpu->ctr = cpu->r[9];
|
|
/* 02466A00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A04 */ _t12 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466A04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466A0C */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 02466A0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466A10 */ cpu->r[3] = cpu->r[11];
|
|
/* 02466A14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466A14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02466A14 */ if (_t15) goto L_02466A38; else goto L_02466A18;
|
|
L_02466A18: ; // 0x2466a18
|
|
/* 02466A18 */ _t16 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02466A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466A1C */ cpu->ctr = cpu->r[0];
|
|
/* 02466A20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A24 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02466A28 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02466A2C */ cpu->lr = cpu->r[0];
|
|
/* 02466A30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466A34 */ return;
|
|
L_02466A38: ; // 0x2466a38
|
|
/* 02466A38 */ _t19 = cpu->r[12] + 0x00000094u;
|
|
/* 02466A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466A3C */ cpu->ctr = cpu->r[0];
|
|
/* 02466A40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A44 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02466A48 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02466A4C */ cpu->lr = cpu->r[0];
|
|
/* 02466A50 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466A54 */ return;
|
|
}
|
|
|
|
// fn_024669B0 @ 0x24669b0
|
|
void Gambit_fn_024669B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_024669B0: ; // 0x24669b0
|
|
/* 024669B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024669B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024669B0 */ cpu->r[1] = _t0;
|
|
/* 024669B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024669B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024669B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024669BC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024669C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024669C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024669C4 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024669C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024669C8 */ Gambit_fn_0206C030(cpu);
|
|
/* 024669CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024669D0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024669D0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024669D0 */ if (_t5) goto L_024669DC; else goto L_024669D4;
|
|
L_024669D4: ; // 0x24669d4
|
|
/* 024669D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024669D8 */ Gambit_fn_02466288(cpu);
|
|
L_024669DC: ; // 0x24669dc
|
|
/* 024669DC */ _t6 = cpu->r[31] + 0x00000038u;
|
|
/* 024669DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024669E0 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024669E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024669E4 */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024669E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024669E8 */ cpu->ctr = cpu->r[7];
|
|
/* 024669EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024669F0 */ _t9 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024669F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024669F4 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 024669F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024669F8 */ _t11 = cpu->r[8] + 0x00000184u;
|
|
/* 024669F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024669FC */ cpu->ctr = cpu->r[9];
|
|
/* 02466A00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A04 */ _t12 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466A04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466A0C */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 02466A0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466A10 */ cpu->r[3] = cpu->r[11];
|
|
/* 02466A14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466A14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02466A14 */ if (_t15) goto L_02466A38; else goto L_02466A18;
|
|
L_02466A18: ; // 0x2466a18
|
|
/* 02466A18 */ _t16 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02466A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466A1C */ cpu->ctr = cpu->r[0];
|
|
/* 02466A20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A24 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02466A28 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02466A2C */ cpu->lr = cpu->r[0];
|
|
/* 02466A30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466A34 */ return;
|
|
L_02466A38: ; // 0x2466a38
|
|
/* 02466A38 */ _t19 = cpu->r[12] + 0x00000094u;
|
|
/* 02466A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02466A3C */ cpu->ctr = cpu->r[0];
|
|
/* 02466A40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A44 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02466A48 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02466A4C */ cpu->lr = cpu->r[0];
|
|
/* 02466A50 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466A54 */ return;
|
|
}
|
|
|
|
// fn_02466A58 @ 0x2466a58
|
|
void Gambit_fn_02466A58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02466A58: ; // 0x2466a58
|
|
/* 02466A58 */ cpu->r[0] = cpu->lr;
|
|
/* 02466A5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466A5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466A5C */ cpu->r[1] = _t0;
|
|
/* 02466A60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466A64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466A68 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466A6C */ _t3 = cpu->r[31] + 0x00000038u;
|
|
/* 02466A6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466A70 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02466A70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466A74 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 02466A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466A78 */ cpu->ctr = cpu->r[0];
|
|
/* 02466A7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A80 */ _t6 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466A80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466A84 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02466A84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466A88 */ _t8 = cpu->r[12] + 0x00000094u;
|
|
/* 02466A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466A8C */ cpu->ctr = cpu->r[0];
|
|
/* 02466A90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A94 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466A98 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466A9C */ cpu->lr = cpu->r[0];
|
|
/* 02466AA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466AA4 */ return;
|
|
}
|
|
|
|
// fn_02466A5C @ 0x2466a5c
|
|
void Gambit_fn_02466A5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02466A5C: ; // 0x2466a5c
|
|
/* 02466A5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466A5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466A5C */ cpu->r[1] = _t0;
|
|
/* 02466A60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466A64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466A68 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466A6C */ _t3 = cpu->r[31] + 0x00000038u;
|
|
/* 02466A6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466A70 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02466A70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466A74 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 02466A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466A78 */ cpu->ctr = cpu->r[0];
|
|
/* 02466A7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A80 */ _t6 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466A80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466A84 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02466A84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466A88 */ _t8 = cpu->r[12] + 0x00000094u;
|
|
/* 02466A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466A8C */ cpu->ctr = cpu->r[0];
|
|
/* 02466A90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466A94 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02466A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466A98 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466A9C */ cpu->lr = cpu->r[0];
|
|
/* 02466AA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466AA4 */ return;
|
|
}
|
|
|
|
// fn_02466AA8 @ 0x2466aa8
|
|
void Gambit_fn_02466AA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02466AA8: ; // 0x2466aa8
|
|
/* 02466AA8 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466AA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466AAC */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 02466AAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466AB0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02466AB4 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02466AB8 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 02466ABC */ return;
|
|
}
|
|
|
|
// fn_02466AC0 @ 0x2466ac0
|
|
void Gambit_fn_02466AC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02466AC0: ; // 0x2466ac0
|
|
/* 02466AC0 */ cpu->r[0] = cpu->lr;
|
|
/* 02466AC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466AC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466AC4 */ cpu->r[1] = _t0;
|
|
/* 02466AC8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466AC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466ACC */ cpu->r[31] = cpu->r[3];
|
|
/* 02466AD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466AD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466AD4 */ Gambit_fn_02466288(cpu);
|
|
/* 02466AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466ADC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466ADC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466ADC */ if (_t4) goto L_02466B28; else goto L_02466AE0;
|
|
L_02466AE0: ; // 0x2466ae0
|
|
/* 02466AE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02466AE4 */ Gambit_fn_02466AA8(cpu);
|
|
/* 02466AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466AEC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466AEC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466AEC */ if (_t6) goto L_02466AF0; else goto L_02466B04;
|
|
L_02466AF0: ; // 0x2466af0
|
|
/* 02466AF0 */ _t7 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466AF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466AF4 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 02466AF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466AF8 */ _t9 = cpu->r[12] + 0x00000094u;
|
|
/* 02466AF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466AFC */ cpu->ctr = cpu->r[0];
|
|
/* 02466B00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02466B04: ; // 0x2466b04
|
|
/* 02466B04 */ _t10 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02466B04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466B08 */ cpu->r[5] = 0x00000001u;
|
|
/* 02466B0C */ _t11 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466B10 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02466B14 */ _t12 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466B14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466B18 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02466B18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466B1C */ _t14 = cpu->r[10] + 0x00000164u;
|
|
/* 02466B1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466B20 */ cpu->ctr = cpu->r[11];
|
|
/* 02466B24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02466B28: ; // 0x2466b28
|
|
/* 02466B28 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02466B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02466B2C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466B2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466B30 */ cpu->lr = cpu->r[0];
|
|
/* 02466B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466B38 */ return;
|
|
}
|
|
|
|
// fn_02466AC4 @ 0x2466ac4
|
|
void Gambit_fn_02466AC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02466AC4: ; // 0x2466ac4
|
|
/* 02466AC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466AC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466AC4 */ cpu->r[1] = _t0;
|
|
/* 02466AC8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466AC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466ACC */ cpu->r[31] = cpu->r[3];
|
|
/* 02466AD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466AD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466AD4 */ Gambit_fn_02466288(cpu);
|
|
/* 02466AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466ADC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466ADC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466ADC */ if (_t4) goto L_02466B28; else goto L_02466AE0;
|
|
L_02466AE0: ; // 0x2466ae0
|
|
/* 02466AE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02466AE4 */ Gambit_fn_02466AA8(cpu);
|
|
/* 02466AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466AEC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466AEC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466AEC */ if (_t6) goto L_02466AF0; else goto L_02466B04;
|
|
L_02466AF0: ; // 0x2466af0
|
|
/* 02466AF0 */ _t7 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466AF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466AF4 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 02466AF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466AF8 */ _t9 = cpu->r[12] + 0x00000094u;
|
|
/* 02466AF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466AFC */ cpu->ctr = cpu->r[0];
|
|
/* 02466B00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02466B04: ; // 0x2466b04
|
|
/* 02466B04 */ _t10 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02466B04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466B08 */ cpu->r[5] = 0x00000001u;
|
|
/* 02466B0C */ _t11 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466B10 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02466B14 */ _t12 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466B14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466B18 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02466B18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466B1C */ _t14 = cpu->r[10] + 0x00000164u;
|
|
/* 02466B1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02466B20 */ cpu->ctr = cpu->r[11];
|
|
/* 02466B24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02466B28: ; // 0x2466b28
|
|
/* 02466B28 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02466B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02466B2C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466B2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02466B30 */ cpu->lr = cpu->r[0];
|
|
/* 02466B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466B38 */ return;
|
|
}
|
|
|
|
// fn_02466B3C @ 0x2466b3c
|
|
void Gambit_fn_02466B3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02466B3C: ; // 0x2466b3c
|
|
/* 02466B3C */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466B3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466B40 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02466B40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466B44 */ _t2 = cpu->r[12] + 0x00000184u;
|
|
/* 02466B44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466B48 */ cpu->ctr = cpu->r[0];
|
|
/* 02466B4C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02466B50 @ 0x2466b50
|
|
void Gambit_fn_02466B50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466B50: ; // 0x2466b50
|
|
/* 02466B50 */ cpu->r[0] = cpu->lr;
|
|
/* 02466B54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466B54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466B54 */ cpu->r[1] = _t0;
|
|
/* 02466B58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466B58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466B5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02466B60 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466B60 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466B64 */ Gambit_fn_02466B3C(cpu);
|
|
/* 02466B68 */ _t3 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466B68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466B70 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02466B70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466B74 */ cpu->r[3] = cpu->r[12];
|
|
/* 02466B78 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466B78 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466B78 */ if (_t6) goto L_02466B7C; else goto L_02466B9C;
|
|
L_02466B7C: ; // 0x2466b7c
|
|
/* 02466B7C */ _t7 = cpu->r[11] + 0x00000094u;
|
|
/* 02466B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466B80 */ cpu->ctr = cpu->r[0];
|
|
/* 02466B84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466B88 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02466B88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466B8C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466B8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466B90 */ cpu->lr = cpu->r[0];
|
|
/* 02466B94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466B98 */ return;
|
|
L_02466B9C: ; // 0x2466b9c
|
|
/* 02466B9C */ _t10 = cpu->r[11] + 0x0000016Cu;
|
|
/* 02466B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466BA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02466BA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466BA8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466BAC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466BAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466BB0 */ cpu->lr = cpu->r[0];
|
|
/* 02466BB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466BB8 */ return;
|
|
}
|
|
|
|
// fn_02466B54 @ 0x2466b54
|
|
void Gambit_fn_02466B54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466B54: ; // 0x2466b54
|
|
/* 02466B54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466B54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466B54 */ cpu->r[1] = _t0;
|
|
/* 02466B58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466B58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466B5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02466B60 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466B60 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466B64 */ Gambit_fn_02466B3C(cpu);
|
|
/* 02466B68 */ _t3 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466B68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466B70 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02466B70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466B74 */ cpu->r[3] = cpu->r[12];
|
|
/* 02466B78 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466B78 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466B78 */ if (_t6) goto L_02466B7C; else goto L_02466B9C;
|
|
L_02466B7C: ; // 0x2466b7c
|
|
/* 02466B7C */ _t7 = cpu->r[11] + 0x00000094u;
|
|
/* 02466B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466B80 */ cpu->ctr = cpu->r[0];
|
|
/* 02466B84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466B88 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02466B88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466B8C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466B8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466B90 */ cpu->lr = cpu->r[0];
|
|
/* 02466B94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466B98 */ return;
|
|
L_02466B9C: ; // 0x2466b9c
|
|
/* 02466B9C */ _t10 = cpu->r[11] + 0x0000016Cu;
|
|
/* 02466B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466BA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02466BA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02466BA8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466BAC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466BAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466BB0 */ cpu->lr = cpu->r[0];
|
|
/* 02466BB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466BB8 */ return;
|
|
}
|
|
|
|
// fn_02466BBC @ 0x2466bbc
|
|
void Gambit_fn_02466BBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466BBC: ; // 0x2466bbc
|
|
/* 02466BBC */ cpu->r[0] = cpu->lr;
|
|
/* 02466BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466BC0 */ cpu->r[1] = _t0;
|
|
/* 02466BC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466BC8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466BCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466BD0 */ _t3 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466BD0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466BD4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02466BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466BDC */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466BDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466BE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466BE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466BE0 */ if (_t6) goto L_02466BE8; else goto L_02466BE4;
|
|
L_02466BE4: ; // 0x2466be4
|
|
/* 02466BE4 */ _t7 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466BE4 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_02466BE8: ; // 0x2466be8
|
|
/* 02466BE8 */ _t8 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466BE8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 02466BEC */ _t9 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466BEC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 02466BF0 */ Gambit_fn_0246A3A4(cpu);
|
|
/* 02466BF4 */ _t10 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466BF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466BF8 */ Gambit_fn_0246A680(cpu);
|
|
/* 02466BFC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466C00 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466C04 */ cpu->lr = cpu->r[0];
|
|
/* 02466C08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466C0C */ return;
|
|
}
|
|
|
|
// fn_02466BC0 @ 0x2466bc0
|
|
void Gambit_fn_02466BC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466BC0: ; // 0x2466bc0
|
|
/* 02466BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466BC0 */ cpu->r[1] = _t0;
|
|
/* 02466BC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466BC8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466BCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466BD0 */ _t3 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466BD0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466BD4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02466BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466BDC */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466BDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466BE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466BE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466BE0 */ if (_t6) goto L_02466BE8; else goto L_02466BE4;
|
|
L_02466BE4: ; // 0x2466be4
|
|
/* 02466BE4 */ _t7 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466BE4 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_02466BE8: ; // 0x2466be8
|
|
/* 02466BE8 */ _t8 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466BE8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 02466BEC */ _t9 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466BEC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 02466BF0 */ Gambit_fn_0246A3A4(cpu);
|
|
/* 02466BF4 */ _t10 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466BF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466BF8 */ Gambit_fn_0246A680(cpu);
|
|
/* 02466BFC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466C00 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466C04 */ cpu->lr = cpu->r[0];
|
|
/* 02466C08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466C0C */ return;
|
|
}
|
|
|
|
// fn_02466C10 @ 0x2466c10
|
|
void Gambit_fn_02466C10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466C10: ; // 0x2466c10
|
|
/* 02466C10 */ cpu->r[0] = cpu->lr;
|
|
/* 02466C14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466C14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466C14 */ cpu->r[1] = _t0;
|
|
/* 02466C18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466C1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02466C20 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466C24 */ _t3 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466C24 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466C2C */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466C30 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466C30 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466C30 */ if (_t6) goto L_02466C34; else goto L_02466C48;
|
|
L_02466C34: ; // 0x2466c34
|
|
/* 02466C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466C38 */ cpu->r[12] = 0x00000000u;
|
|
/* 02466C3C */ _t7 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466C3C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 02466C40 */ _t8 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466C40 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 02466C44 */ _t9 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466C44 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
L_02466C48: ; // 0x2466c48
|
|
/* 02466C48 */ Gambit_fn_0246A328(cpu);
|
|
/* 02466C4C */ _t10 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466C4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466C50 */ Gambit_fn_0246A66C(cpu);
|
|
/* 02466C54 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466C58 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466C5C */ cpu->lr = cpu->r[0];
|
|
/* 02466C60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466C64 */ return;
|
|
}
|
|
|
|
// fn_02466C14 @ 0x2466c14
|
|
void Gambit_fn_02466C14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466C14: ; // 0x2466c14
|
|
/* 02466C14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466C14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466C14 */ cpu->r[1] = _t0;
|
|
/* 02466C18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466C1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02466C20 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466C24 */ _t3 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466C24 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466C2C */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466C30 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466C30 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466C30 */ if (_t6) goto L_02466C34; else goto L_02466C48;
|
|
L_02466C34: ; // 0x2466c34
|
|
/* 02466C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466C38 */ cpu->r[12] = 0x00000000u;
|
|
/* 02466C3C */ _t7 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466C3C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 02466C40 */ _t8 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466C40 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 02466C44 */ _t9 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466C44 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
L_02466C48: ; // 0x2466c48
|
|
/* 02466C48 */ Gambit_fn_0246A328(cpu);
|
|
/* 02466C4C */ _t10 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466C4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466C50 */ Gambit_fn_0246A66C(cpu);
|
|
/* 02466C54 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466C58 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466C5C */ cpu->lr = cpu->r[0];
|
|
/* 02466C60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466C64 */ return;
|
|
}
|
|
|
|
// fn_02466C68 @ 0x2466c68
|
|
void Gambit_fn_02466C68(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_02466BBC: ; // 0x2466bbc
|
|
/* 02466BBC */ cpu->r[0] = cpu->lr;
|
|
/* 02466BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466BC0 */ cpu->r[1] = _t0;
|
|
/* 02466BC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466BC8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466BCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466BD0 */ _t3 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466BD0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466BD4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02466BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466BDC */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466BDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466BE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466BE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02466BE0 */ if (_t6) goto L_02466BE8; else goto L_02466BE4;
|
|
L_02466BE4: ; // 0x2466be4
|
|
/* 02466BE4 */ _t7 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466BE4 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_02466BE8: ; // 0x2466be8
|
|
/* 02466BE8 */ _t8 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466BE8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 02466BEC */ _t9 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466BEC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 02466BF0 */ Gambit_fn_0246A3A4(cpu);
|
|
/* 02466BF4 */ _t10 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466BF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466BF8 */ Gambit_fn_0246A680(cpu);
|
|
/* 02466BFC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02466BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02466C00 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466C04 */ cpu->lr = cpu->r[0];
|
|
/* 02466C08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466C0C */ return;
|
|
L_02466C10: ; // 0x2466c10
|
|
/* 02466C10 */ cpu->r[0] = cpu->lr;
|
|
/* 02466C14 */ _t13 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466C14 */ rbrew_write32(cpu->mem, _t13, cpu->r[1]);
|
|
/* 02466C14 */ cpu->r[1] = _t13;
|
|
/* 02466C18 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C18 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 02466C1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02466C20 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C20 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02466C24 */ _t16 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466C24 */ cpu->r[12] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02466C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02466C2C */ _t17 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02466C30 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466C30 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02466C30 */ if (_t19) goto L_02466C34; else goto L_02466C48;
|
|
L_02466C34: ; // 0x2466c34
|
|
/* 02466C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466C38 */ cpu->r[12] = 0x00000000u;
|
|
/* 02466C3C */ _t20 = cpu->r[31] + 0x0000032Cu;
|
|
/* 02466C3C */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
/* 02466C40 */ _t21 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466C40 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[12]);
|
|
/* 02466C44 */ _t22 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466C44 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[12]);
|
|
L_02466C48: ; // 0x2466c48
|
|
/* 02466C48 */ Gambit_fn_0246A328(cpu);
|
|
/* 02466C4C */ _t23 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02466C4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02466C50 */ Gambit_fn_0246A66C(cpu);
|
|
/* 02466C54 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02466C58 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02466C5C */ cpu->lr = cpu->r[0];
|
|
/* 02466C60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466C64 */ return;
|
|
L_02466C68: ; // 0x2466c68
|
|
/* 02466C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02466C6C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466C6C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02466C6C */ if (_t27) goto L_02466C74; else goto L_02466C70;
|
|
L_02466C70: ; // 0x2466c70
|
|
/* 02466C70 */ goto L_02466BBC;
|
|
L_02466C74: ; // 0x2466c74
|
|
/* 02466C74 */ goto L_02466C10;
|
|
}
|
|
|
|
// fn_02466C78 @ 0x2466c78
|
|
void Gambit_fn_02466C78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02466C78: ; // 0x2466c78
|
|
/* 02466C78 */ cpu->r[0] = cpu->lr;
|
|
/* 02466C7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466C7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466C7C */ cpu->r[1] = _t0;
|
|
/* 02466C80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466C84 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02466C8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466C90 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466C90 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466C90 */ if (_t4) goto L_02466CBC; else goto L_02466C94;
|
|
L_02466C94: ; // 0x2466c94
|
|
/* 02466C94 */ Gambit_fn_02466BBC(cpu);
|
|
/* 02466C98 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466C9C */ cpu->r[12] = 0x00000000u;
|
|
/* 02466CA0 */ _t5 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466CA0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02466CA4 */ _t6 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466CA4 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02466CA8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02466CA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466CAC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466CAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466CB0 */ cpu->lr = cpu->r[0];
|
|
/* 02466CB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466CB8 */ return;
|
|
L_02466CBC: ; // 0x2466cbc
|
|
/* 02466CBC */ Gambit_fn_02466C10(cpu);
|
|
/* 02466CC0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02466CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466CC4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466CC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466CC8 */ cpu->lr = cpu->r[0];
|
|
/* 02466CCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466CD0 */ return;
|
|
}
|
|
|
|
// fn_02466C7C @ 0x2466c7c
|
|
void Gambit_fn_02466C7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02466C7C: ; // 0x2466c7c
|
|
/* 02466C7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466C7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466C7C */ cpu->r[1] = _t0;
|
|
/* 02466C80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466C80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466C84 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02466C8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466C8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466C90 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466C90 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466C90 */ if (_t4) goto L_02466CBC; else goto L_02466C94;
|
|
L_02466C94: ; // 0x2466c94
|
|
/* 02466C94 */ Gambit_fn_02466BBC(cpu);
|
|
/* 02466C98 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466C9C */ cpu->r[12] = 0x00000000u;
|
|
/* 02466CA0 */ _t5 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466CA0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02466CA4 */ _t6 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466CA4 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02466CA8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02466CA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466CAC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466CAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466CB0 */ cpu->lr = cpu->r[0];
|
|
/* 02466CB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466CB8 */ return;
|
|
L_02466CBC: ; // 0x2466cbc
|
|
/* 02466CBC */ Gambit_fn_02466C10(cpu);
|
|
/* 02466CC0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02466CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466CC4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466CC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466CC8 */ cpu->lr = cpu->r[0];
|
|
/* 02466CCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466CD0 */ return;
|
|
}
|
|
|
|
// fn_02466CD4 @ 0x2466cd4
|
|
void Gambit_fn_02466CD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02466CD4: ; // 0x2466cd4
|
|
/* 02466CD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02466CD8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466CD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466CD8 */ cpu->r[1] = _t0;
|
|
/* 02466CDC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466CDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466CE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466CE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02466CE8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466CE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466CEC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466CEC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466CEC */ if (_t4) goto L_02466D14; else goto L_02466CF0;
|
|
L_02466CF0: ; // 0x2466cf0
|
|
/* 02466CF0 */ Gambit_fn_02466BBC(cpu);
|
|
/* 02466CF4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466CF8 */ _t5 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466CF8 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02466CFC */ _t6 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466CFC */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02466D00 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02466D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466D04 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466D04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466D08 */ cpu->lr = cpu->r[0];
|
|
/* 02466D0C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466D10 */ return;
|
|
L_02466D14: ; // 0x2466d14
|
|
/* 02466D14 */ Gambit_fn_02466C10(cpu);
|
|
/* 02466D18 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02466D18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466D1C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466D1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466D20 */ cpu->lr = cpu->r[0];
|
|
/* 02466D24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466D28 */ return;
|
|
}
|
|
|
|
// fn_02466CD8 @ 0x2466cd8
|
|
void Gambit_fn_02466CD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02466CD8: ; // 0x2466cd8
|
|
/* 02466CD8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466CD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466CD8 */ cpu->r[1] = _t0;
|
|
/* 02466CDC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466CDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466CE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466CE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02466CE8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02466CE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02466CEC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466CEC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466CEC */ if (_t4) goto L_02466D14; else goto L_02466CF0;
|
|
L_02466CF0: ; // 0x2466cf0
|
|
/* 02466CF0 */ Gambit_fn_02466BBC(cpu);
|
|
/* 02466CF4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02466CF8 */ _t5 = cpu->r[31] + 0x0000032Eu;
|
|
/* 02466CF8 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02466CFC */ _t6 = cpu->r[31] + 0x0000032Du;
|
|
/* 02466CFC */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02466D00 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02466D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466D04 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466D04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466D08 */ cpu->lr = cpu->r[0];
|
|
/* 02466D0C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466D10 */ return;
|
|
L_02466D14: ; // 0x2466d14
|
|
/* 02466D14 */ Gambit_fn_02466C10(cpu);
|
|
/* 02466D18 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02466D18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466D1C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466D1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02466D20 */ cpu->lr = cpu->r[0];
|
|
/* 02466D24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466D28 */ return;
|
|
}
|
|
|
|
// fn_02466D2C @ 0x2466d2c
|
|
void Gambit_fn_02466D2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02466D2C: ; // 0x2466d2c
|
|
/* 02466D2C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02466D2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466D2C */ cpu->r[1] = _t0;
|
|
/* 02466D30 */ /* nop */
|
|
/* 02466D34 */ cpu->r[0] = cpu->lr;
|
|
/* 02466D38 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02466D38 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02466D3C */ cpu->r[27] = cpu->r[3];
|
|
/* 02466D40 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02466D40 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02466D44 */ Gambit_fn_02466AA8(cpu);
|
|
/* 02466D48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02466D4C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466D4C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02466D4C */ if (_t4) goto L_02466D50; else goto L_02466D9C;
|
|
L_02466D50: ; // 0x2466d50
|
|
/* 02466D50 */ cpu->r[31] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02466D54 */ cpu->r[29] = 0x00000008u;
|
|
/* 02466D58 */ cpu->r[30] = 0x00000001u;
|
|
/* 02466D5C */ cpu->r[28] = 0x00000000u;
|
|
L_02466D60: ; // 0x2466d60
|
|
/* 02466D60 */ /* nop */
|
|
/* 02466D64 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02466D68 */ _t5 = cpu->r[27] + 0x0000003Cu;
|
|
/* 02466D68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466D6C */ cpu->r[0] = cpu->r[31] & cpu->r[8];
|
|
/* 02466D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02466D70 */ cpu->r[4] = cpu->r[28];
|
|
/* 02466D74 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466D74 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02466D74 */ if (_t7) goto L_02466D8C; else goto L_02466D78;
|
|
L_02466D78: ; // 0x2466d78
|
|
/* 02466D78 */ Gambit_fn_0246A284(cpu);
|
|
/* 02466D7C */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu;
|
|
/* 02466D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02466D80 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02466D84 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466D84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02466D84 */ if (_t9) goto L_02466D88; else goto L_02466D60;
|
|
L_02466D88: ; // 0x2466d88
|
|
/* 02466D88 */ goto L_02466D9C;
|
|
L_02466D8C: ; // 0x2466d8c
|
|
/* 02466D8C */ Gambit_fn_0246A1E0(cpu);
|
|
/* 02466D90 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu;
|
|
/* 02466D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02466D94 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02466D98 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02466D98 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02466D98 */ if (_t11) goto L_02466D9C; else goto L_02466D60;
|
|
L_02466D9C: ; // 0x2466d9c
|
|
/* 02466D9C */ /* nop */
|
|
/* 02466DA0 */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 02466DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02466DA4 */ cpu->lr = cpu->r[0];
|
|
/* 02466DA8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02466DAC */ return;
|
|
}
|
|
|
|
// fn_02466DB0 @ 0x2466db0
|
|
void Gambit_fn_02466DB0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02466DB0: ; // 0x2466db0
|
|
/* 02466DB0 */ _t0 = cpu->r[3] + 0x0000032Fu;
|
|
/* 02466DB0 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[4]);
|
|
/* 02466DB4 */ return;
|
|
}
|
|
|
|
// fn_02466DB8 @ 0x2466db8
|
|
void Gambit_fn_02466DB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0245F2FC: ; // 0x245f2fc
|
|
/* 0245F2FC */ cpu->r[0] = cpu->lr;
|
|
/* 0245F300 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0245F300 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F300 */ cpu->r[1] = _t0;
|
|
/* 0245F304 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F304 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F308 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F30C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F30C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245F310 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0245F314 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F318 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F318 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245F318 */ if (_t5) goto L_0245F344; else goto L_0245F31C;
|
|
L_0245F31C: ; // 0x245f31c
|
|
/* 0245F31C */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F31C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0245F320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F324 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F324 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245F324 */ if (_t8) goto L_0245F344; else goto L_0245F328;
|
|
L_0245F328: ; // 0x245f328
|
|
/* 0245F328 */ cpu->r[6] = 0x00060000u;
|
|
/* 0245F32C */ cpu->r[6] = cpu->r[6] + 0xFFFF8764u;
|
|
/* 0245F330 */ Gambit_fn_020D4A50(cpu);
|
|
/* 0245F334 */ _t9 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F334 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245F338 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F33C */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F33C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[4]);
|
|
/* 0245F340 */ Gambit_fn_020D4CF4(cpu);
|
|
L_0245F344: ; // 0x245f344
|
|
/* 0245F344 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F348 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245F34C */ cpu->lr = cpu->r[0];
|
|
/* 0245F350 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F354 */ return;
|
|
L_02466DB8: ; // 0x2466db8
|
|
/* 02466DB8 */ _t13 = cpu->r[3] + 0x00000038u;
|
|
/* 02466DB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02466DBC */ goto L_0246C8E4;
|
|
L_0246C8E4: ; // 0x246c8e4
|
|
/* 0246C8E4 */ _t14 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C8E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0246C8E8 */ goto L_0245F2FC;
|
|
}
|
|
|
|
// fn_02466DC0 @ 0x2466dc0
|
|
void Gambit_fn_02466DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_0245F358: ; // 0x245f358
|
|
/* 0245F358 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F35C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245F35C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F35C */ cpu->r[1] = _t0;
|
|
/* 0245F360 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F360 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0245F364 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F368 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F368 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0245F36C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F36C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0245F370 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F370 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0245F374 */ cpu->r[29] = cpu->r[4];
|
|
/* 0245F378 */ _t5 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F378 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245F37C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F37C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F380 */ cpu->r[30] = cpu->r[5];
|
|
/* 0245F384 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F384 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245F384 */ if (_t7) goto L_0245F3D4; else goto L_0245F388;
|
|
L_0245F388: ; // 0x245f388
|
|
/* 0245F388 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F388 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245F38C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0245F390 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F390 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245F390 */ if (_t10) goto L_0245F3D4; else goto L_0245F394;
|
|
L_0245F394: ; // 0x245f394
|
|
/* 0245F394 */ cpu->r[4] = cpu->r[29];
|
|
/* 0245F398 */ Gambit_fn_020D4A94(cpu);
|
|
/* 0245F39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0245F3A0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F3A4 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F3A4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t11);
|
|
/* 0245F3A8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F3A8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245F3A8 */ if (_t13) goto L_0245F3B8; else goto L_0245F3AC;
|
|
L_0245F3AC: ; // 0x245f3ac
|
|
/* 0245F3AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0245F3B0 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F3B0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F3B0 */ if (_t15) goto L_0245F3B8; else goto L_0245F3B4;
|
|
L_0245F3B4: ; // 0x245f3b4
|
|
/* 0245F3B4 */ cpu->r[0] = 0x00000001u;
|
|
L_0245F3B8: ; // 0x245f3b8
|
|
/* 0245F3B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0245F3BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0245F3C0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F3C0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0245F3C0 */ if (_t17) goto L_0245F3D4; else goto L_0245F3C4;
|
|
L_0245F3C4: ; // 0x245f3c4
|
|
/* 0245F3C4 */ _t18 = cpu->r[31] + 0x00000014u;
|
|
/* 0245F3C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0245F3C8 */ cpu->r[4] = cpu->r[0];
|
|
/* 0245F3CC */ _t19 = cpu->r[31] + 0x00000018u;
|
|
/* 0245F3CC */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 0245F3D0 */ Gambit_fn_020D4D68(cpu);
|
|
L_0245F3D4: ; // 0x245f3d4
|
|
/* 0245F3D4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F3D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245F3D8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F3D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245F3DC */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F3DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245F3E0 */ cpu->lr = cpu->r[0];
|
|
/* 0245F3E4 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F3E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0245F3E8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F3EC */ return;
|
|
L_02466DC0: ; // 0x2466dc0
|
|
/* 02466DC0 */ _t24 = cpu->r[3] + 0x00000038u;
|
|
/* 02466DC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02466DC4 */ goto L_0246C8EC;
|
|
L_0246C8EC: ; // 0x246c8ec
|
|
/* 0246C8EC */ _t25 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C8EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0246C8F0 */ goto L_0245F358;
|
|
}
|
|
|
|
// fn_02466DC8 @ 0x2466dc8
|
|
void Gambit_fn_02466DC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95;
|
|
|
|
L_0245F3F0: ; // 0x245f3f0
|
|
/* 0245F3F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F3F4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0245F3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F3F4 */ cpu->r[1] = _t0;
|
|
/* 0245F3F8 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0245F3F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0245F3FC */ /* nop */
|
|
/* 0245F400 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0245F400 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0245F404 */ /* nop */
|
|
/* 0245F408 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0245F408 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0245F40C */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 0245F40C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0245F410 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 0245F410 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0245F414 */ _t6 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0245F414 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245F418 */ _t7 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F418 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0245F41C */ _t8 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F41C */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0245F420 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245F424 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F424 */ rbrew_write32(cpu->mem, _t9, cpu->r[28]);
|
|
/* 0245F428 */ _t10 = cpu->r[30] + 0x00000010u;
|
|
/* 0245F428 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0245F42C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F430 */ cpu->f[30] = cpu->f[1];
|
|
/* 0245F434 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F434 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0245F434 */ if (_t12) goto L_0245F694; else goto L_0245F438;
|
|
L_0245F438: ; // 0x245f438
|
|
/* 0245F438 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245F43C */ cpu->r[31] = 0x100A0000u;
|
|
/* 0245F440 */ _t13 = cpu->r[8] + 0x00002968u;
|
|
/* 0245F440 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0245F444 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F448 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245F44C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F450 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0245F454 */ cpu->r[31] = cpu->r[31] + 0x000028B4u;
|
|
/* 0245F458 */ cpu->r[28] = cpu->r[28] + 0x00002994u;
|
|
/* 0245F45C */ cpu->r[0] = cpu->r[0] + 0x00002980u;
|
|
/* 0245F460 */ cpu->r[29] = cpu->r[29] + 0x00002970u;
|
|
/* 0245F464 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F464 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F464 */ if (_t15) goto L_0245F598; else goto L_0245F468;
|
|
L_0245F468: ; // 0x245f468
|
|
/* 0245F468 */ _t16 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F468 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0245F46C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245F470 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F470 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245F470 */ if (_t18) goto L_0245F4B4; else goto L_0245F474;
|
|
L_0245F474: ; // 0x245f474
|
|
/* 0245F474 */ _t19 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F474 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245F478 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F47C */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F480 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F480 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 0245F484 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F488 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F488 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 0245F48C */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F490 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F494 */ _t22 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245F498 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F49C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F49C */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 0245F4A0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F4A4 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F4A4 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 0245F4A8 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F4AC */ _t25 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F4AC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[30]);
|
|
/* 0245F4B0 */ goto L_0245F694;
|
|
L_0245F4B4: ; // 0x245f4b4
|
|
/* 0245F4B4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F4B4 */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 0245F4B8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F4BC */ _t27 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F4BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0245F4C0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4C4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F4C8 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4C8 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0245F4CC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F4D0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F4D4 */ _t29 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F4D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245F4D8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F4DC */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F4DC */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 0245F4E0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4E4 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4E4 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 0245F4E8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F4EC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F4F0 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4F0 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 0245F4F4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4F8 */ _t33 = cpu->r[12] + 0x0000296Cu;
|
|
/* 0245F4F8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0245F4FC */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F500 */ _t34 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0245F504 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F504 */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 0245F508 */ Gambit_fn_027ED380(cpu);
|
|
/* 0245F50C */ _t36 = cpu->r[30] + 0x00000026u;
|
|
/* 0245F50C */ cpu->r[6] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0245F510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0245F514 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F514 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245F514 */ if (_t38) goto L_0245F518; else goto L_0245F544;
|
|
L_0245F518: ; // 0x245f518
|
|
/* 0245F518 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245F51C */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F51C */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 0245F520 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F524 */ cpu->r[7] = cpu->r[7] + 0x0000298Cu;
|
|
/* 0245F528 */ _t40 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F528 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0245F52C */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0245F530 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F534 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F534 */ rbrew_write32(cpu->mem, _t41, cpu->r[7]);
|
|
/* 0245F538 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F53C */ cpu->r[9] = 0x00000001u;
|
|
/* 0245F540 */ _t42 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F540 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[9]);
|
|
L_0245F544: ; // 0x245f544
|
|
/* 0245F544 */ _t43 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F544 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0245F548 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F54C */ _t44 = cpu->r[9] + 0x000001ACu;
|
|
/* 0245F54C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0245F550 */ cpu->r[4] = cpu->r[4] + 0x00007A54u;
|
|
/* 0245F554 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F558 */ _t45 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F558 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0245F55C */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F560 */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F564 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F564 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 0245F568 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F56C */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F56C */ rbrew_write32(cpu->mem, _t47, cpu->r[31]);
|
|
/* 0245F570 */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F574 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F578 */ _t48 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0245F57C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F580 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F580 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 0245F584 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F588 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F588 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 0245F58C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F590 */ _t51 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F590 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[30]);
|
|
/* 0245F594 */ goto L_0245F694;
|
|
L_0245F598: ; // 0x245f598
|
|
/* 0245F598 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F598 */ rbrew_write32(cpu->mem, _t52, cpu->r[31]);
|
|
/* 0245F59C */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F5A0 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5A0 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 0245F5A4 */ cpu->r[10] = 0x00000000u;
|
|
/* 0245F5A8 */ _t54 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F5A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0245F5AC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5B0 */ _t55 = cpu->r[30] + 0x00000024u;
|
|
/* 0245F5B0 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[10]);
|
|
/* 0245F5B4 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F5B8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F5BC */ _t56 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F5BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0245F5C0 */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F5C0 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 0245F5C4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5C8 */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5C8 */ rbrew_write32(cpu->mem, _t58, cpu->r[29]);
|
|
/* 0245F5CC */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F5D0 */ _t59 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F5D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0245F5D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0245F5D8 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F5D8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245F5D8 */ if (_t61) goto L_0245F620; else goto L_0245F5DC;
|
|
L_0245F5DC: ; // 0x245f5dc
|
|
/* 0245F5DC */ _t62 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F5DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0245F5E0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F5E4 */ _t63 = cpu->r[7] + 0x000001ACu;
|
|
/* 0245F5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0245F5E8 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 0245F5EC */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F5F0 */ _t64 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F5F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0245F5F4 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245F5F8 */ _t65 = cpu->r[7] + 0x000001ACu;
|
|
/* 0245F5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0245F5FC */ cpu->r[4] = cpu->r[4] + 0x000029A0u;
|
|
/* 0245F600 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0245F604 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F604 */ rbrew_write32(cpu->mem, _t66, cpu->r[31]);
|
|
/* 0245F608 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F60C */ _t67 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F60C */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0245F610 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0245F614 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F618 */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F618 */ rbrew_write32(cpu->mem, _t68, cpu->r[28]);
|
|
/* 0245F61C */ Gambit_fn_027ED380(cpu);
|
|
L_0245F620: ; // 0x245f620
|
|
/* 0245F620 */ _t69 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F620 */ cpu->r[11] = rbrew_read8(cpu->mem, _t69);
|
|
/* 0245F624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F628 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F628 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0245F628 */ if (_t71) goto L_0245F658; else goto L_0245F62C;
|
|
L_0245F62C: ; // 0x245f62c
|
|
/* 0245F62C */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F630 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F630 */ rbrew_write32(cpu->mem, _t72, cpu->r[31]);
|
|
/* 0245F634 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F638 */ cpu->r[12] = cpu->r[12] + 0x00002978u;
|
|
/* 0245F63C */ _t73 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F63C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0245F640 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 0245F644 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F648 */ _t74 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F648 */ rbrew_write32(cpu->mem, _t74, cpu->r[12]);
|
|
/* 0245F64C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F650 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F654 */ _t75 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F654 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[0]);
|
|
L_0245F658: ; // 0x245f658
|
|
/* 0245F658 */ _t76 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F658 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0245F65C */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F660 */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F664 */ _t77 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F664 */ rbrew_write32(cpu->mem, _t77, cpu->r[29]);
|
|
/* 0245F668 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F66C */ _t78 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F66C */ rbrew_write32(cpu->mem, _t78, cpu->r[31]);
|
|
/* 0245F670 */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F674 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F678 */ _t79 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F678 */ cpu->r[3] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0245F67C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F680 */ _t80 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F680 */ rbrew_write32(cpu->mem, _t80, cpu->r[31]);
|
|
/* 0245F684 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F688 */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F688 */ rbrew_write32(cpu->mem, _t81, cpu->r[29]);
|
|
/* 0245F68C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F690 */ _t82 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F690 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[30]);
|
|
L_0245F694: ; // 0x245f694
|
|
/* 0245F694 */ _t83 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F694 */ cpu->r[28] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0245F698 */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F698 */ cpu->r[29] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0245F69C */ _t85 = cpu->r[1] + 0x00000060u;
|
|
/* 0245F69C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0245F6A0 */ _t86 = cpu->r[1] + 0x00000050u;
|
|
/* 0245F6A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0245F6A4 */ _t87 = cpu->r[1] + 0x00000058u;
|
|
/* 0245F6A4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 0245F6A8 */ _t88 = cpu->r[1] + 0x00000048u;
|
|
/* 0245F6A8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 0245F6AC */ _t89 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F6AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0245F6B0 */ _t90 = cpu->r[1] + 0x00000040u;
|
|
/* 0245F6B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0245F6B4 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F6B4 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0245F6B4 */ if (_t92) goto L_0245F6B8; // else: addr-0 trap, fall-through
|
|
L_0245F6B8: ; // 0x245f6b8
|
|
/* 0245F6B8 */ _t93 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0245F6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0245F6BC */ cpu->lr = cpu->r[0];
|
|
/* 0245F6C0 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0245F6C4 */ return;
|
|
L_02466DC8: ; // 0x2466dc8
|
|
/* 02466DC8 */ _t94 = cpu->r[3] + 0x00000038u;
|
|
/* 02466DC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02466DCC */ goto L_0246C8F4;
|
|
L_0246C8F4: ; // 0x246c8f4
|
|
/* 0246C8F4 */ _t95 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C8F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0246C8F8 */ goto L_0245F3F0;
|
|
}
|
|
|
|
// fn_02466DD0 @ 0x2466dd0
|
|
void Gambit_fn_02466DD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_0245F6C8: ; // 0x245f6c8
|
|
/* 0245F6C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F6CC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0245F6CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F6CC */ cpu->r[1] = _t0;
|
|
/* 0245F6D0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F6D0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0245F6D4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F6D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0245F6D8 */ /* nop */
|
|
/* 0245F6DC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F6DC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0245F6E0 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F6E0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0245F6E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F6E8 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F6E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0245F6EC */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F6EC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245F6F0 */ _t7 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F6F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245F6F4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F6F8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F6F8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245F6F8 */ if (_t9) goto L_0245F800; else goto L_0245F6FC;
|
|
L_0245F6FC: ; // 0x245f6fc
|
|
/* 0245F6FC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F700 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F704 */ _t10 = cpu->r[11] + 0x00002964u;
|
|
/* 0245F704 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0245F708 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F70C */ cpu->r[0] = cpu->r[0] + 0x000029C0u;
|
|
/* 0245F710 */ cpu->r[29] = cpu->r[29] + 0x000028B4u;
|
|
/* 0245F714 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245F718 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F718 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0245F71C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F720 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F720 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0245F724 */ cpu->r[4] = cpu->r[30];
|
|
/* 0245F728 */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F728 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245F72C */ _t14 = cpu->r[31] + 0x00000020u;
|
|
/* 0245F72C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[1]);
|
|
/* 0245F730 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F734 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F738 */ _t15 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F738 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[30]);
|
|
/* 0245F73C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F740 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F740 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0245F744 */ cpu->r[0] = cpu->r[0] + 0x000029BCu;
|
|
/* 0245F748 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F748 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0245F74C */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F750 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F750 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0245F754 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F758 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245F75C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F75C */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0245F760 */ cpu->r[8] = cpu->r[8] + 0x000029ACu;
|
|
/* 0245F764 */ _t20 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F764 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0245F768 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F76C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F770 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F770 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 0245F774 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F778 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245F77C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F780 */ _t22 = cpu->r[9] + 0x00002968u;
|
|
/* 0245F780 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0245F784 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0245F788 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F788 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 0245F78C */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F790 */ _t24 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F790 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0245F794 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F798 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F79C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F79C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0245F7A0 */ Gambit_fn_027ED380(cpu);
|
|
/* 0245F7A4 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F7A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0245F7A8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F7AC */ _t27 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245F7AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0245F7B0 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 0245F7B4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F7B8 */ _t28 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0245F7BC */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245F7C0 */ _t29 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245F7C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245F7C4 */ cpu->r[4] = cpu->r[4] + 0x000029D4u;
|
|
/* 0245F7C8 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0245F7CC */ _t30 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F7CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0245F7D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F7D4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F7D4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0245F7D4 */ if (_t32) goto L_0245F800; else goto L_0245F7D8;
|
|
L_0245F7D8: ; // 0x245f7d8
|
|
/* 0245F7D8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F7DC */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F7DC */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0245F7E0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F7E4 */ cpu->r[0] = cpu->r[0] + 0x000029B4u;
|
|
/* 0245F7E8 */ _t34 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F7E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0245F7EC */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F7F0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F7F4 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F7F4 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0245F7F8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F7FC */ _t36 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F7FC */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[30]);
|
|
L_0245F800: ; // 0x245f800
|
|
/* 0245F800 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F800 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0245F804 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F804 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0245F808 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F808 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0245F80C */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F80C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 0245F810 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0245F814 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F814 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0245F814 */ if (_t43) goto L_0245F818; // else: addr-0 trap, fall-through
|
|
L_0245F818: ; // 0x245f818
|
|
/* 0245F818 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0245F81C */ cpu->lr = cpu->r[0];
|
|
/* 0245F820 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0245F824 */ return;
|
|
L_02466DD0: ; // 0x2466dd0
|
|
/* 02466DD0 */ _t45 = cpu->r[3] + 0x00000038u;
|
|
/* 02466DD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02466DD4 */ goto L_0246C8FC;
|
|
L_0246C8FC: ; // 0x246c8fc
|
|
/* 0246C8FC */ _t46 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C8FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0246C900 */ goto L_0245F6C8;
|
|
}
|
|
|
|
// fn_02466DE8 @ 0x2466de8
|
|
void Gambit_fn_02466DE8(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;
|
|
|
|
L_0245F8DC: ; // 0x245f8dc
|
|
/* 0245F8DC */ cpu->r[0] = cpu->lr;
|
|
/* 0245F8E0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0245F8E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0245F8E0 */ cpu->r[1] = _t0;
|
|
/* 0245F8E4 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F8E4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0245F8E8 */ /* nop */
|
|
/* 0245F8EC */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F8EC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0245F8F0 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F8F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245F8F4 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F8F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 0245F8F8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F8F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0245F8FC */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F8FC */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0245F900 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F900 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0245F904 */ cpu->r[29] = cpu->r[3];
|
|
/* 0245F908 */ _t8 = cpu->r[29] + 0x00000010u;
|
|
/* 0245F908 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245F90C */ cpu->r[30] = cpu->r[4];
|
|
/* 0245F910 */ cpu->r[10] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245F914 */ cpu->r[31] = cpu->r[5];
|
|
/* 0245F918 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F918 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0245F918 */ if (_t10) goto L_0245FC3C; else goto L_0245F91C;
|
|
L_0245F91C: ; // 0x245f91c
|
|
/* 0245F91C */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245F920 */ cpu->r[6] = 0x00000000u;
|
|
/* 0245F924 */ _t11 = cpu->r[29] + 0x00000028u;
|
|
/* 0245F924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F928 */ cpu->r[28] = cpu->r[28] + 0x000028B4u;
|
|
/* 0245F92C */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F930 */ _t12 = cpu->r[29] + 0x00000024u;
|
|
/* 0245F930 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[6]);
|
|
/* 0245F934 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0245F938 */ _t13 = cpu->r[12] + 0x00002968u;
|
|
/* 0245F938 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0245F93C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F93C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0245F93C */ if (_t15) goto L_0245F940; else goto L_0245F94C;
|
|
L_0245F940: ; // 0x245f940
|
|
/* 0245F940 */ _t16 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0245F940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0245F944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0245F948 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F948 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0245F948 */ if (_t18) goto L_0245FBC4; else goto L_0245F94C;
|
|
L_0245F94C: ; // 0x245f94c
|
|
/* 0245F94C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000004u);
|
|
/* 0245F950 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F954 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F954 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0245F954 */ if (_t20) goto L_0245FB38; else goto L_0245F958;
|
|
L_0245F958: ; // 0x245f958
|
|
/* 0245F958 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F958 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0245F958 */ if (_t22) goto L_0245F9B8; else goto L_0245F95C;
|
|
L_0245F95C: ; // 0x245f95c
|
|
/* 0245F95C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000007u);
|
|
/* 0245F960 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F960 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0245F960 */ if (_t24) goto L_0245F964; else goto L_0245FADC;
|
|
L_0245F964: ; // 0x245f964
|
|
/* 0245F964 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F968 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245F96C */ _t25 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245F96C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 0245F970 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245F974 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F974 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 0245F978 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F97C */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F97C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 0245F980 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F980 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 0245F984 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245F988 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F988 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 0245F98C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245F990 */ _t30 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245F990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0245F994 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245F998 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F998 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0245F99C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F9A0 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245F9A4 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F9A8 */ _t32 = cpu->r[29] + 0x00000020u;
|
|
/* 0245F9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0245F9AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245F9B0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F9B0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0245F9B0 */ if (_t34) goto L_0245F9B4; else goto L_0245FBBC;
|
|
L_0245F9B4: ; // 0x245f9b4
|
|
/* 0245F9B4 */ goto L_0245FB90;
|
|
L_0245F9B8: ; // 0x245f9b8
|
|
/* 0245F9B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0245F9BC */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F9BC */ _t36 = _t35 & 0x00000001u;
|
|
/* 0245F9BC */ if (_t36) goto L_0245F9C0; else goto L_0245FA24;
|
|
L_0245F9C0: ; // 0x245f9c0
|
|
/* 0245F9C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000000Au);
|
|
/* 0245F9C4 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F9C4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0245F9C4 */ if (_t38) goto L_0245FB40; else goto L_0245F9C8;
|
|
L_0245F9C8: ; // 0x245f9c8
|
|
/* 0245F9C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000015u);
|
|
/* 0245F9CC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245F9CC */ _t40 = _t39 & 0x00000001u;
|
|
/* 0245F9CC */ if (_t40) goto L_0245F9D0; else goto L_0245FA80;
|
|
L_0245F9D0: ; // 0x245f9d0
|
|
/* 0245F9D0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F9D4 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245F9D8 */ _t41 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245F9D8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0245F9DC */ cpu->r[7] = 0x43300000u;
|
|
/* 0245F9E0 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F9E0 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0245F9E4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F9E8 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F9E8 */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 0245F9EC */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F9EC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 0245F9F0 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245F9F4 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F9F4 */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 0245F9F8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245F9FC */ _t46 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245F9FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0245FA00 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FA04 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA04 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0245FA08 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA0C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FA10 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FA14 */ _t48 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FA14 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0245FA18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FA1C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FA1C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0245FA1C */ if (_t50) goto L_0245FA20; else goto L_0245FBBC;
|
|
L_0245FA20: ; // 0x245fa20
|
|
/* 0245FA20 */ goto L_0245FB90;
|
|
L_0245FA24: ; // 0x245fa24
|
|
/* 0245FA24 */ cpu->r[9] = cpu->r[31] + 0x100A0000u;
|
|
/* 0245FA28 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FA2C */ _t51 = cpu->r[9] + 0x00002A00u;
|
|
/* 0245FA2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 0245FA30 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FA34 */ _t52 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FA34 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 0245FA38 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FA3C */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA3C */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 0245FA40 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FA44 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FA44 */ rbrew_write32(cpu->mem, _t54, cpu->r[9]);
|
|
/* 0245FA48 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA48 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 0245FA4C */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FA50 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FA50 */ rbrew_write32(cpu->mem, _t56, cpu->r[28]);
|
|
/* 0245FA54 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FA58 */ _t57 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FA58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0245FA5C */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FA60 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA60 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0245FA64 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FA68 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FA6C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FA70 */ _t59 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FA70 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0245FA74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FA78 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FA78 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0245FA78 */ if (_t61) goto L_0245FA7C; else goto L_0245FBBC;
|
|
L_0245FA7C: ; // 0x245fa7c
|
|
/* 0245FA7C */ goto L_0245FB90;
|
|
L_0245FA80: ; // 0x245fa80
|
|
/* 0245FA80 */ cpu->r[10] = cpu->r[31] + 0x100A0000u;
|
|
/* 0245FA84 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FA88 */ _t62 = cpu->r[10] + 0x00002A06u;
|
|
/* 0245FA88 */ cpu->r[0] = rbrew_read8(cpu->mem, _t62);
|
|
/* 0245FA8C */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FA90 */ _t63 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FA90 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 0245FA94 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FA98 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FA98 */ rbrew_write32(cpu->mem, _t64, cpu->r[7]);
|
|
/* 0245FA9C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FAA0 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FAA0 */ rbrew_write32(cpu->mem, _t65, cpu->r[9]);
|
|
/* 0245FAA4 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FAA4 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0245FAA8 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FAAC */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FAAC */ rbrew_write32(cpu->mem, _t67, cpu->r[28]);
|
|
/* 0245FAB0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FAB4 */ _t68 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FAB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0245FAB8 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FABC */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FABC */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 0245FAC0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FAC4 */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FAC8 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FACC */ _t70 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FACC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0245FAD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FAD4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FAD4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0245FAD4 */ if (_t72) goto L_0245FAD8; else goto L_0245FBBC;
|
|
L_0245FAD8: ; // 0x245fad8
|
|
/* 0245FAD8 */ goto L_0245FB90;
|
|
L_0245FADC: ; // 0x245fadc
|
|
/* 0245FADC */ cpu->r[11] = cpu->r[30] + 0x100A0000u;
|
|
/* 0245FAE0 */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FAE4 */ _t73 = cpu->r[11] + 0x00002A07u;
|
|
/* 0245FAE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t73);
|
|
/* 0245FAE8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FAEC */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FAEC */ rbrew_write32(cpu->mem, _t74, cpu->r[7]);
|
|
/* 0245FAF0 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FAF4 */ _t75 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FAF4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 0245FAF8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FAFC */ _t76 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FAFC */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 0245FB00 */ _t77 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB00 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 0245FB04 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FB08 */ _t78 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FB08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0245FB0C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FB10 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FB10 */ rbrew_write32(cpu->mem, _t79, cpu->r[28]);
|
|
/* 0245FB14 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FB18 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB18 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0245FB1C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FB20 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB24 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FB28 */ _t81 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FB28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0245FB2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FB30 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB30 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0245FB30 */ if (_t83) goto L_0245FB34; else goto L_0245FBBC;
|
|
L_0245FB34: ; // 0x245fb34
|
|
/* 0245FB34 */ goto L_0245FB90;
|
|
L_0245FB38: ; // 0x245fb38
|
|
/* 0245FB38 */ cpu->r[12] = cpu->r[30] + 0x100A0000u;
|
|
/* 0245FB3C */ _t84 = cpu->r[12] + 0x000029FCu;
|
|
/* 0245FB3C */ cpu->r[0] = rbrew_read8(cpu->mem, _t84);
|
|
L_0245FB40: ; // 0x245fb40
|
|
/* 0245FB40 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FB44 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 0245FB48 */ _t85 = cpu->r[11] + 0x000029E8u;
|
|
/* 0245FB48 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t85);
|
|
/* 0245FB4C */ cpu->r[7] = 0x43300000u;
|
|
/* 0245FB50 */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FB50 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0245FB54 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FB58 */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB58 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0245FB5C */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 0245FB5C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 0245FB60 */ cpu->r[0] = cpu->r[0] + 0x00002A04u;
|
|
/* 0245FB64 */ _t89 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FB64 */ rbrew_write32(cpu->mem, _t89, cpu->r[28]);
|
|
/* 0245FB68 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0245FB6C */ _t90 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FB6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0245FB70 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 0245FB74 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB74 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 0245FB78 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FB7C */ cpu->r[4] = 0x00000006u;
|
|
/* 0245FB80 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245FB84 */ _t92 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FB84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0245FB88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245FB8C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB8C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0245FB8C */ if (_t94) goto L_0245FB90; else goto L_0245FBBC;
|
|
L_0245FB90: ; // 0x245fb90
|
|
/* 0245FB90 */ _t95 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0245FB90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0245FB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000004u);
|
|
/* 0245FB98 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FB98 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0245FB98 */ if (_t97) goto L_0245FBBC; else goto L_0245FB9C;
|
|
L_0245FB9C: ; // 0x245fb9c
|
|
/* 0245FB9C */ _t98 = cpu->r[29] + 0x00000028u;
|
|
/* 0245FB9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0245FBA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0245FBA4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FBA4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0245FBA4 */ if (_t100) goto L_0245FBBC; else goto L_0245FBA8;
|
|
L_0245FBA8: ; // 0x245fba8
|
|
/* 0245FBA8 */ _t101 = cpu->r[29] + 0x00000008u;
|
|
/* 0245FBA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0245FBAC */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245FBB0 */ _t102 = cpu->r[8] + 0x000001ACu;
|
|
/* 0245FBB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0245FBB4 */ cpu->r[4] = cpu->r[4] + 0x00007A54u;
|
|
/* 0245FBB8 */ Gambit_fn_027B70F0(cpu);
|
|
L_0245FBBC: ; // 0x245fbbc
|
|
/* 0245FBBC */ _t103 = cpu->r[29] + 0x00000028u;
|
|
/* 0245FBBC */ rbrew_write32(cpu->mem, _t103, cpu->r[30]);
|
|
/* 0245FBC0 */ _t104 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0245FBC0 */ rbrew_write32(cpu->mem, _t104, cpu->r[31]);
|
|
L_0245FBC4: ; // 0x245fbc4
|
|
/* 0245FBC4 */ _t105 = cpu->r[29] + 0x00000020u;
|
|
/* 0245FBC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0245FBC8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0245FBCC */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FBCC */ _t107 = _t106 & 0x00000001u;
|
|
/* 0245FBCC */ if (_t107) goto L_0245FBD0; else goto L_0245FC3C;
|
|
L_0245FBD0: ; // 0x245fbd0
|
|
/* 0245FBD0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245FBD4 */ _t108 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FBD4 */ rbrew_write32(cpu->mem, _t108, cpu->r[28]);
|
|
/* 0245FBD8 */ cpu->r[11] = cpu->r[11] + 0x000029F8u;
|
|
/* 0245FBDC */ _t109 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FBDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0245FBE0 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245FBE4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FBE8 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FBE8 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 0245FBEC */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FBF0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245FBF4 */ _t111 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FBF4 */ rbrew_write32(cpu->mem, _t111, cpu->r[28]);
|
|
/* 0245FBF8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245FBFC */ cpu->r[12] = cpu->r[12] + 0x000029F0u;
|
|
/* 0245FC00 */ _t112 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FC00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0245FC04 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC08 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245FC0C */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC0C */ rbrew_write32(cpu->mem, _t113, cpu->r[12]);
|
|
/* 0245FC10 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245FC14 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245FC18 */ _t114 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0245FC18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0245FC1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC20 */ _t115 = cpu->r[8] + 0x0000296Cu;
|
|
/* 0245FC20 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0245FC24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FC28 */ _t116 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FC28 */ rbrew_write32(cpu->mem, _t116, cpu->r[28]);
|
|
/* 0245FC2C */ cpu->r[0] = cpu->r[0] + 0x00002A1Cu;
|
|
/* 0245FC30 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245FC34 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FC34 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 0245FC38 */ Gambit_fn_027ED380(cpu);
|
|
L_0245FC3C: ; // 0x245fc3c
|
|
/* 0245FC3C */ _t118 = cpu->r[1] + 0x00000020u;
|
|
/* 0245FC3C */ cpu->r[28] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0245FC40 */ _t119 = cpu->r[1] + 0x00000024u;
|
|
/* 0245FC40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0245FC44 */ _t120 = cpu->r[1] + 0x00000038u;
|
|
/* 0245FC44 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0245FC48 */ _t121 = cpu->r[1] + 0x00000028u;
|
|
/* 0245FC48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0245FC4C */ _t122 = cpu->r[1] + 0x00000030u;
|
|
/* 0245FC4C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 0245FC50 */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245FC50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0245FC54 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FC54 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0245FC54 */ if (_t125) goto L_0245FC58; // else: addr-0 trap, fall-through
|
|
L_0245FC58: ; // 0x245fc58
|
|
/* 0245FC58 */ _t126 = cpu->r[1] + 0x00000044u;
|
|
/* 0245FC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0245FC5C */ cpu->lr = cpu->r[0];
|
|
/* 0245FC60 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0245FC64 */ return;
|
|
L_0245FC68: ; // 0x245fc68
|
|
/* 0245FC68 */ _t127 = cpu->r[3] + 0x00000010u;
|
|
/* 0245FC68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0245FC6C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FC70 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FC70 */ _t129 = _t128 & 0x00000001u;
|
|
/* 0245FC70 */ if (_t129) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FC70 */ goto L_0245FC74;
|
|
L_0245FC74: ; // 0x245fc74
|
|
/* 0245FC74 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0245FC78 */ cpu->r[12] = 0x00000000u;
|
|
/* 0245FC7C */ _t130 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0245FC7C */ rbrew_write32(cpu->mem, _t130, cpu->r[0]);
|
|
/* 0245FC80 */ _t131 = cpu->r[3] + 0x00000024u;
|
|
/* 0245FC80 */ rbrew_write8(cpu->mem, _t131, (uint8_t)cpu->r[12]);
|
|
/* 0245FC84 */ _t132 = cpu->r[3] + 0x00000028u;
|
|
/* 0245FC84 */ rbrew_write32(cpu->mem, _t132, cpu->r[0]);
|
|
/* 0245FC88 */ return;
|
|
L_02466DD8: ; // 0x2466dd8
|
|
/* 02466DD8 */ _t133 = cpu->r[3] + 0x00000038u;
|
|
/* 02466DD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02466DDC */ goto L_0246C920;
|
|
L_02466DE0: ; // 0x2466de0
|
|
/* 02466DE0 */ _t134 = cpu->r[3] + 0x00000038u;
|
|
/* 02466DE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02466DE4 */ goto L_0246C928;
|
|
L_02466DE8: ; // 0x2466de8
|
|
/* 02466DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02466DEC */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02466DEC */ _t136 = _t135 & 0x00000001u;
|
|
/* 02466DEC */ if (_t136) goto L_02466DF0; else goto L_02466DF4;
|
|
L_02466DF0: ; // 0x2466df0
|
|
/* 02466DF0 */ goto L_02466DE0;
|
|
L_02466DF4: ; // 0x2466df4
|
|
/* 02466DF4 */ goto L_02466DD8;
|
|
L_0246C920: ; // 0x246c920
|
|
/* 0246C920 */ _t137 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C920 */ cpu->r[3] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0246C924 */ goto L_0245F8DC;
|
|
L_0246C928: ; // 0x246c928
|
|
/* 0246C928 */ _t138 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C928 */ cpu->r[3] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0246C92C */ goto L_0245FC68;
|
|
}
|
|
|
|
// fn_02466DF8 @ 0x2466df8
|
|
void Gambit_fn_02466DF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02466DF8: ; // 0x2466df8
|
|
/* 02466DF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02466DFC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466DFC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466E00 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466E00 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466E00 */ cpu->r[1] = _t1;
|
|
/* 02466E04 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02466E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466E08 */ _t3 = cpu->r[3] + 0x00000038u;
|
|
/* 02466E08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466E0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466E10 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02466E10 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02466E14 */ Gambit_fn_0246D464(cpu);
|
|
/* 02466E18 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466E1C */ cpu->lr = cpu->r[0];
|
|
/* 02466E20 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466E24 */ return;
|
|
}
|
|
|
|
// fn_02466E00 @ 0x2466e00
|
|
void Gambit_fn_02466E00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02466E00: ; // 0x2466e00
|
|
/* 02466E00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466E00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466E00 */ cpu->r[1] = _t0;
|
|
/* 02466E04 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02466E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466E08 */ _t2 = cpu->r[3] + 0x00000038u;
|
|
/* 02466E08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466E0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466E10 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02466E10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02466E14 */ Gambit_fn_0246D464(cpu);
|
|
/* 02466E18 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466E1C */ cpu->lr = cpu->r[0];
|
|
/* 02466E20 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466E24 */ return;
|
|
}
|
|
|
|
// fn_02466E28 @ 0x2466e28
|
|
void Gambit_fn_02466E28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02466E28: ; // 0x2466e28
|
|
/* 02466E28 */ cpu->r[0] = cpu->lr;
|
|
/* 02466E2C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466E2C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466E30 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466E30 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466E30 */ cpu->r[1] = _t1;
|
|
/* 02466E34 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02466E34 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02466E38 */ _t3 = cpu->r[5] + 0x00000000u;
|
|
/* 02466E38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466E3C */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 02466E40 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02466E40 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02466E44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466E48 */ _t5 = cpu->r[3] + 0x00000038u;
|
|
/* 02466E48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466E4C */ _t6 = cpu->r[1] + 0x00000009u;
|
|
/* 02466E4C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02466E50 */ Gambit_fn_0246C938(cpu);
|
|
/* 02466E54 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466E58 */ cpu->lr = cpu->r[0];
|
|
/* 02466E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466E60 */ return;
|
|
}
|
|
|
|
// fn_02466E30 @ 0x2466e30
|
|
void Gambit_fn_02466E30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02466E30: ; // 0x2466e30
|
|
/* 02466E30 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466E30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466E30 */ cpu->r[1] = _t0;
|
|
/* 02466E34 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02466E34 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02466E38 */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 02466E38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02466E3C */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 02466E40 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02466E40 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[12]);
|
|
/* 02466E44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466E48 */ _t4 = cpu->r[3] + 0x00000038u;
|
|
/* 02466E48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466E4C */ _t5 = cpu->r[1] + 0x00000009u;
|
|
/* 02466E4C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02466E50 */ Gambit_fn_0246C938(cpu);
|
|
/* 02466E54 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466E58 */ cpu->lr = cpu->r[0];
|
|
/* 02466E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466E60 */ return;
|
|
}
|
|
|
|
// fn_02466E64 @ 0x2466e64
|
|
void Gambit_fn_02466E64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02466E64: ; // 0x2466e64
|
|
/* 02466E64 */ cpu->r[0] = cpu->lr;
|
|
/* 02466E68 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466E68 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466E6C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466E6C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466E6C */ cpu->r[1] = _t1;
|
|
/* 02466E70 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02466E70 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02466E74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466E78 */ _t3 = cpu->r[6] + 0x00000000u;
|
|
/* 02466E78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466E7C */ _t4 = cpu->r[5] + 0x00000000u;
|
|
/* 02466E7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02466E80 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466E80 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02466E84 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02466E84 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02466E88 */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 02466E8C */ _t7 = cpu->r[3] + 0x00000038u;
|
|
/* 02466E8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466E90 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466E94 */ _t8 = cpu->r[1] + 0x00000009u;
|
|
/* 02466E94 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 02466E98 */ Gambit_fn_0246D284(cpu);
|
|
/* 02466E9C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466E9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02466EA0 */ cpu->lr = cpu->r[0];
|
|
/* 02466EA4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466EA8 */ return;
|
|
}
|
|
|
|
// fn_02466E6C @ 0x2466e6c
|
|
void Gambit_fn_02466E6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02466E6C: ; // 0x2466e6c
|
|
/* 02466E6C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466E6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466E6C */ cpu->r[1] = _t0;
|
|
/* 02466E70 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02466E70 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02466E74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466E78 */ _t2 = cpu->r[6] + 0x00000000u;
|
|
/* 02466E78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466E7C */ _t3 = cpu->r[5] + 0x00000000u;
|
|
/* 02466E7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466E80 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466E80 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 02466E84 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02466E84 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 02466E88 */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 02466E8C */ _t6 = cpu->r[3] + 0x00000038u;
|
|
/* 02466E8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466E90 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466E94 */ _t7 = cpu->r[1] + 0x00000009u;
|
|
/* 02466E94 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 02466E98 */ Gambit_fn_0246D284(cpu);
|
|
/* 02466E9C */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466E9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466EA0 */ cpu->lr = cpu->r[0];
|
|
/* 02466EA4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466EA8 */ return;
|
|
}
|
|
|
|
// fn_02466EAC @ 0x2466eac
|
|
void Gambit_fn_02466EAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02466EAC: ; // 0x2466eac
|
|
/* 02466EAC */ cpu->r[0] = cpu->lr;
|
|
/* 02466EB0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466EB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466EB4 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466EB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466EB4 */ cpu->r[1] = _t1;
|
|
/* 02466EB8 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02466EB8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02466EBC */ _t3 = cpu->r[5] + 0x00000000u;
|
|
/* 02466EBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02466EC0 */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 02466EC4 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02466EC4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02466EC8 */ _t5 = cpu->r[3] + 0x00000038u;
|
|
/* 02466EC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466ECC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466ED0 */ _t6 = cpu->r[1] + 0x00000009u;
|
|
/* 02466ED0 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02466ED4 */ Gambit_fn_0246D364(cpu);
|
|
/* 02466ED8 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466EDC */ cpu->lr = cpu->r[0];
|
|
/* 02466EE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466EE4 */ return;
|
|
}
|
|
|
|
// fn_02466EB4 @ 0x2466eb4
|
|
void Gambit_fn_02466EB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02466EB4: ; // 0x2466eb4
|
|
/* 02466EB4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466EB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466EB4 */ cpu->r[1] = _t0;
|
|
/* 02466EB8 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02466EB8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02466EBC */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 02466EBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02466EC0 */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 02466EC4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02466EC4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[12]);
|
|
/* 02466EC8 */ _t4 = cpu->r[3] + 0x00000038u;
|
|
/* 02466EC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466ECC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466ED0 */ _t5 = cpu->r[1] + 0x00000009u;
|
|
/* 02466ED0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02466ED4 */ Gambit_fn_0246D364(cpu);
|
|
/* 02466ED8 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466EDC */ cpu->lr = cpu->r[0];
|
|
/* 02466EE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466EE4 */ return;
|
|
}
|
|
|
|
// fn_02466EE8 @ 0x2466ee8
|
|
void Gambit_fn_02466EE8(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_020D61EC: ; // 0x20d61ec
|
|
/* 020D61EC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 020D61EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D61EC */ cpu->r[1] = _t0;
|
|
/* 020D61F0 */ /* nop */
|
|
/* 020D61F4 */ cpu->r[0] = cpu->lr;
|
|
/* 020D61F8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D61F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020D61FC */ cpu->r[29] = cpu->r[3];
|
|
/* 020D6200 */ _t2 = cpu->r[29] + 0x0000023Cu;
|
|
/* 020D6200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020D6204 */ cpu->r[30] = cpu->r[4];
|
|
/* 020D6208 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 020D620C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D620C */ _t4 = _t3 & 0x00000001u;
|
|
/* 020D620C */ if (_t4) goto L_020D639C; else goto L_020D6210;
|
|
L_020D6210: ; // 0x20d6210
|
|
/* 020D6210 */ cpu->r[5] = 0x10020000u;
|
|
/* 020D6214 */ _t5 = cpu->r[29] + 0x00000218u;
|
|
/* 020D6214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020D6218 */ cpu->r[26] = 0x00000000u;
|
|
/* 020D621C */ _t6 = cpu->r[5] + 0xFFFF8D1Cu;
|
|
/* 020D621C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 020D6220 */ cpu->r[25] = cpu->r[26];
|
|
/* 020D6224 */ cpu->r[24] = 0x00000001u;
|
|
/* 020D6228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 020D622C */ _t7 = cpu->r[29] + 0x00000244u;
|
|
/* 020D622C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 020D6230 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6230 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020D6230 */ if (_t9) goto L_020D6234; else goto L_020D632C;
|
|
L_020D6234: ; // 0x20d6234
|
|
/* 020D6234 */ cpu->r[28] = 0x00000000u;
|
|
L_020D6238: ; // 0x20d6238
|
|
/* 020D6238 */ cpu->r[3] = cpu->r[30];
|
|
/* 020D623C */ cpu->r[4] = cpu->r[25];
|
|
/* 020D6240 */ Gambit_fn_027F0D58(cpu);
|
|
/* 020D6244 */ cpu->r[27] = cpu->r[3];
|
|
/* 020D6248 */ _t10 = cpu->r[29] + 0x0000023Cu;
|
|
/* 020D6248 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020D624C */ cpu->r[4] = cpu->r[25];
|
|
/* 020D6250 */ Gambit_fn_027F0D58(cpu);
|
|
/* 020D6254 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[3]);
|
|
/* 020D6258 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D6258 */ _t12 = _t11 & 0x00000001u;
|
|
/* 020D6258 */ if (_t12) goto L_020D6314; else goto L_020D625C;
|
|
L_020D625C: ; // 0x20d625c
|
|
/* 020D625C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 020D6260 */ cpu->r[31] = cpu->r[29] + 0x0000021Cu;
|
|
/* 020D6264 */ cpu->r[26] = cpu->r[25];
|
|
/* 020D6268 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020D6268 */ _t14 = _t13 & 0x00000001u;
|
|
/* 020D6268 */ if (_t14) goto L_020D6278; else goto L_020D626C;
|
|
L_020D626C: ; // 0x20d626c
|
|
/* 020D626C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D6270 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6270 */ _t16 = _t15 & 0x00000001u;
|
|
/* 020D6270 */ if (_t16) goto L_020D62D8; else goto L_020D6274;
|
|
L_020D6274: ; // 0x20d6274
|
|
/* 020D6274 */ goto L_020D62EC;
|
|
L_020D6278: ; // 0x20d6278
|
|
/* 020D6278 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D627C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D627C */ _t18 = _t17 & 0x00000001u;
|
|
/* 020D627C */ if (_t18) goto L_020D6280; else goto L_020D6294;
|
|
L_020D6280: ; // 0x20d6280
|
|
/* 020D6280 */ _t19 = cpu->r[31] + cpu->r[28];
|
|
/* 020D6280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020D6284 */ _t20 = cpu->r[12] + 0x000001E9u;
|
|
/* 020D6284 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 020D6288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D628C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D628C */ _t22 = _t21 & 0x00000001u;
|
|
/* 020D628C */ if (_t22) goto L_020D62D0; else goto L_020D6290;
|
|
L_020D6290: ; // 0x20d6290
|
|
/* 020D6290 */ goto L_020D62A4;
|
|
L_020D6294: ; // 0x20d6294
|
|
/* 020D6294 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020D6298 */ _t24 = cpu->r[12] + 0x000001E9u;
|
|
/* 020D6298 */ cpu->r[0] = rbrew_read8(cpu->mem, _t24);
|
|
/* 020D629C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D62A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D62A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 020D62A0 */ if (_t26) goto L_020D62D0; else goto L_020D62A4;
|
|
L_020D62A4: ; // 0x20d62a4
|
|
/* 020D62A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[30]);
|
|
/* 020D62A8 */ /* nop */
|
|
/* 020D62AC */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020D62B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D62B4 */ cpu->r[4] = cpu->r[4] ^ 0x00000001u;
|
|
/* 020D62B8 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D62B8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 020D62B8 */ if (_t28) goto L_020D62BC; else goto L_020D62C8;
|
|
L_020D62BC: ; // 0x20d62bc
|
|
/* 020D62BC */ _t29 = cpu->r[31] + cpu->r[28];
|
|
/* 020D62BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 020D62C0 */ Gambit_fn_020D781C(cpu);
|
|
/* 020D62C4 */ goto L_020D62D0;
|
|
L_020D62C8: ; // 0x20d62c8
|
|
/* 020D62C8 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 020D62C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 020D62CC */ Gambit_fn_020D781C(cpu);
|
|
L_020D62D0: ; // 0x20d62d0
|
|
/* 020D62D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D62D4 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D62D4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 020D62D4 */ if (_t32) goto L_020D62D8; else goto L_020D62EC;
|
|
L_020D62D8: ; // 0x20d62d8
|
|
/* 020D62D8 */ _t33 = cpu->r[31] + cpu->r[28];
|
|
/* 020D62D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 020D62DC */ Gambit_fn_020D76C0(cpu);
|
|
/* 020D62E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D62E4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D62E4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 020D62E4 */ if (_t35) goto L_020D6314; else goto L_020D62E8;
|
|
L_020D62E8: ; // 0x20d62e8
|
|
/* 020D62E8 */ goto L_020D62FC;
|
|
L_020D62EC: ; // 0x20d62ec
|
|
/* 020D62EC */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 020D62EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 020D62F0 */ Gambit_fn_020D76C0(cpu);
|
|
/* 020D62F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D62F8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D62F8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 020D62F8 */ if (_t38) goto L_020D6314; else goto L_020D62FC;
|
|
L_020D62FC: ; // 0x20d62fc
|
|
/* 020D62FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D6300 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6300 */ _t40 = _t39 & 0x00000001u;
|
|
/* 020D6300 */ if (_t40) goto L_020D6304; else goto L_020D6308;
|
|
L_020D6304: ; // 0x20d6304
|
|
/* 020D6304 */ cpu->r[31] = cpu->r[31] + cpu->r[28];
|
|
L_020D6308: ; // 0x20d6308
|
|
/* 020D6308 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6308 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020D630C */ cpu->r[4] = cpu->r[27];
|
|
/* 020D6310 */ Gambit_fn_020D788C(cpu);
|
|
L_020D6314: ; // 0x20d6314
|
|
/* 020D6314 */ _t42 = cpu->r[29] + 0x00000218u;
|
|
/* 020D6314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 020D6318 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 020D631C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 020D6320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 020D6324 */ cpu->r[24] = (uint32_t)((int32_t)cpu->r[24] * (int32_t)0x0000000Au);
|
|
/* 020D6328 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6328 */ _t44 = _t43 & 0x00000001u;
|
|
/* 020D6328 */ if (_t44) goto L_020D6238; else goto L_020D632C;
|
|
L_020D632C: ; // 0x20d632c
|
|
/* 020D632C */ cpu->r[27] = 0x00000000u;
|
|
/* 020D6330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 020D6334 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6334 */ _t46 = _t45 & 0x00000001u;
|
|
/* 020D6334 */ if (_t46) goto L_020D6338; else goto L_020D639C;
|
|
L_020D6338: ; // 0x20d6338
|
|
/* 020D6338 */ cpu->r[28] = 0x00000000u;
|
|
L_020D633C: ; // 0x20d633c
|
|
/* 020D633C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[26]);
|
|
/* 020D6340 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020D6340 */ _t48 = _t47 & 0x00000001u;
|
|
/* 020D6340 */ if (_t48) goto L_020D638C; else goto L_020D6344;
|
|
L_020D6344: ; // 0x20d6344
|
|
/* 020D6344 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000008u);
|
|
/* 020D6348 */ cpu->r[31] = cpu->r[29] + 0x0000021Cu;
|
|
/* 020D634C */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D634C */ _t50 = _t49 & 0x00000001u;
|
|
/* 020D634C */ if (_t50) goto L_020D6350; else goto L_020D6364;
|
|
L_020D6350: ; // 0x20d6350
|
|
/* 020D6350 */ _t51 = cpu->r[31] + cpu->r[28];
|
|
/* 020D6350 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020D6354 */ _t52 = cpu->r[9] + 0x000001E8u;
|
|
/* 020D6354 */ cpu->r[12] = rbrew_read8(cpu->mem, _t52);
|
|
/* 020D6358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020D635C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D635C */ _t54 = _t53 & 0x00000001u;
|
|
/* 020D635C */ if (_t54) goto L_020D638C; else goto L_020D6360;
|
|
L_020D6360: ; // 0x20d6360
|
|
/* 020D6360 */ goto L_020D6374;
|
|
L_020D6364: ; // 0x20d6364
|
|
/* 020D6364 */ _t55 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6364 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 020D6368 */ _t56 = cpu->r[9] + 0x000001E8u;
|
|
/* 020D6368 */ cpu->r[12] = rbrew_read8(cpu->mem, _t56);
|
|
/* 020D636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020D6370 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D6370 */ _t58 = _t57 & 0x00000001u;
|
|
/* 020D6370 */ if (_t58) goto L_020D638C; else goto L_020D6374;
|
|
L_020D6374: ; // 0x20d6374
|
|
/* 020D6374 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000008u);
|
|
/* 020D6378 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6378 */ _t60 = _t59 & 0x00000001u;
|
|
/* 020D6378 */ if (_t60) goto L_020D637C; else goto L_020D6380;
|
|
L_020D637C: ; // 0x20d637c
|
|
/* 020D637C */ cpu->r[31] = cpu->r[31] + cpu->r[28];
|
|
L_020D6380: ; // 0x20d6380
|
|
/* 020D6380 */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6380 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020D6384 */ Gambit_fn_020D7764(cpu);
|
|
/* 020D6388 */ _t62 = cpu->r[29] + 0x00000218u;
|
|
/* 020D6388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
L_020D638C: ; // 0x20d638c
|
|
/* 020D638C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 020D6390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 020D6394 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 020D6398 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6398 */ _t64 = _t63 & 0x00000001u;
|
|
/* 020D6398 */ if (_t64) goto L_020D633C; else goto L_020D639C;
|
|
L_020D639C: ; // 0x20d639c
|
|
/* 020D639C */ _t65 = cpu->r[29] + 0x0000023Cu;
|
|
/* 020D639C */ rbrew_write32(cpu->mem, _t65, cpu->r[30]);
|
|
/* 020D63A0 */ /* nop */
|
|
/* 020D63A4 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D63A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 020D63A8 */ cpu->lr = cpu->r[0];
|
|
/* 020D63AC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020D63B0 */ return;
|
|
L_0245FFA0: ; // 0x245ffa0
|
|
/* 0245FFA0 */ _t67 = cpu->r[3] + 0x00000010u;
|
|
/* 0245FFA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0245FFA4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FFA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245FFA8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FFA8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0245FFA8 */ if (_t69) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FFA8 */ goto L_0245FFAC;
|
|
L_0245FFAC: ; // 0x245ffac
|
|
/* 0245FFAC */ _t70 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0245FFAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0245FFB0 */ goto L_020D61EC;
|
|
L_02466EE8: ; // 0x2466ee8
|
|
/* 02466EE8 */ _t71 = cpu->r[3] + 0x00000038u;
|
|
/* 02466EE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02466EEC */ goto L_0246C930;
|
|
L_0246C930: ; // 0x246c930
|
|
/* 0246C930 */ _t72 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246C930 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0246C934 */ goto L_0245FFA0;
|
|
}
|
|
|
|
// fn_02466EF0 @ 0x2466ef0
|
|
void Gambit_fn_02466EF0(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_02466EF0: ; // 0x2466ef0
|
|
/* 02466EF0 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 02466EF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466EF4 */ goto L_0246D49C;
|
|
L_0246D49C: ; // 0x246d49c
|
|
/* 0246D49C */ _t1 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0246D49C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0246D49C */ cpu->r[1] = _t1;
|
|
/* 0246D4A0 */ /* nop */
|
|
/* 0246D4A4 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 0246D4A4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0246D4A8 */ /* nop */
|
|
/* 0246D4AC */ cpu->r[0] = cpu->lr;
|
|
/* 0246D4B0 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0246D4B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246D4B4 */ _t4 = cpu->r[1] + 0x00000050u;
|
|
/* 0246D4B4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0246D4B8 */ cpu->r[29] = cpu->r[5];
|
|
/* 0246D4BC */ cpu->r[27] = cpu->r[3];
|
|
/* 0246D4C0 */ cpu->r[23] = cpu->r[6];
|
|
/* 0246D4C4 */ _t5 = cpu->r[27] + 0x000002ECu;
|
|
/* 0246D4C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0246D4C8 */ cpu->r[5] = 0x00000001u;
|
|
/* 0246D4CC */ cpu->r[28] = cpu->r[4];
|
|
/* 0246D4D0 */ cpu->r[24] = cpu->r[7];
|
|
/* 0246D4D4 */ Gambit_fn_020A8390(cpu);
|
|
/* 0246D4D8 */ _t6 = cpu->r[27] + 0x000002F0u;
|
|
/* 0246D4D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0246D4DC */ cpu->r[4] = cpu->r[29];
|
|
/* 0246D4E0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0246D4E4 */ Gambit_fn_020A8390(cpu);
|
|
/* 0246D4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0246D4EC */ cpu->r[25] = cpu->r[23];
|
|
/* 0246D4F0 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D4F0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0246D4F0 */ if (_t8) goto L_0246D4F4; else goto L_0246D50C;
|
|
L_0246D4F4: ; // 0x246d4f4
|
|
/* 0246D4F4 */ cpu->r[25] = 0x00000000u;
|
|
/* 0246D4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246D4FC */ cpu->r[26] = cpu->r[24];
|
|
/* 0246D500 */ _t9 = cpu->r[27] + 0x000002F4u;
|
|
/* 0246D500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246D504 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D504 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0246D504 */ if (_t11) goto L_0246D528; else goto L_0246D508;
|
|
L_0246D508: ; // 0x246d508
|
|
/* 0246D508 */ goto L_0246D554;
|
|
L_0246D50C: ; // 0x246d50c
|
|
/* 0246D50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000063u);
|
|
/* 0246D510 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D510 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0246D510 */ if (_t13) goto L_0246D514; else goto L_0246D518;
|
|
L_0246D514: ; // 0x246d514
|
|
/* 0246D514 */ cpu->r[25] = 0x00000063u;
|
|
L_0246D518: ; // 0x246d518
|
|
/* 0246D518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246D51C */ cpu->r[26] = cpu->r[24];
|
|
/* 0246D520 */ _t14 = cpu->r[27] + 0x000002F4u;
|
|
/* 0246D520 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0246D524 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D524 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0246D524 */ if (_t16) goto L_0246D528; else goto L_0246D554;
|
|
L_0246D528: ; // 0x246d528
|
|
/* 0246D528 */ cpu->r[4] = cpu->r[25];
|
|
/* 0246D52C */ cpu->r[26] = 0x00000000u;
|
|
/* 0246D530 */ Gambit_fn_020A7EFC(cpu);
|
|
/* 0246D534 */ _t17 = cpu->r[27] + 0x000002F8u;
|
|
/* 0246D534 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246D538 */ cpu->r[4] = cpu->r[26];
|
|
/* 0246D53C */ Gambit_fn_020A7EFC(cpu);
|
|
/* 0246D540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0246D544 */ _t18 = cpu->r[27] + 0x000002E4u;
|
|
/* 0246D544 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246D548 */ cpu->r[30] = cpu->r[27] + 0x000002E4u;
|
|
/* 0246D54C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D54C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0246D54C */ if (_t20) goto L_0246D550; else goto L_0246D5D4;
|
|
L_0246D550: ; // 0x246d550
|
|
/* 0246D550 */ goto L_0246D584;
|
|
L_0246D554: ; // 0x246d554
|
|
/* 0246D554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000063u);
|
|
/* 0246D558 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D558 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0246D558 */ if (_t22) goto L_0246D55C; else goto L_0246D560;
|
|
L_0246D55C: ; // 0x246d55c
|
|
/* 0246D55C */ cpu->r[26] = 0x00000063u;
|
|
L_0246D560: ; // 0x246d560
|
|
/* 0246D560 */ cpu->r[4] = cpu->r[25];
|
|
/* 0246D564 */ Gambit_fn_020A7EFC(cpu);
|
|
/* 0246D568 */ _t23 = cpu->r[27] + 0x000002F8u;
|
|
/* 0246D568 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0246D56C */ cpu->r[4] = cpu->r[26];
|
|
/* 0246D570 */ Gambit_fn_020A7EFC(cpu);
|
|
/* 0246D574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0246D578 */ _t24 = cpu->r[27] + 0x000002E4u;
|
|
/* 0246D578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0246D57C */ cpu->r[30] = cpu->r[27] + 0x000002E4u;
|
|
/* 0246D580 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D580 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0246D580 */ if (_t26) goto L_0246D584; else goto L_0246D5D4;
|
|
L_0246D584: ; // 0x246d584
|
|
/* 0246D584 */ _t27 = cpu->r[3] + 0x00000118u;
|
|
/* 0246D584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0246D588 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0246D588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0246D58C */ _t28 = cpu->r[30] + 0x00000000u;
|
|
/* 0246D58C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0246D590 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D590 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0246D590 */ if (_t30) goto L_0246D5AC; else goto L_0246D594;
|
|
L_0246D594: ; // 0x246d594
|
|
/* 0246D594 */ Gambit_fn_020D0998(cpu);
|
|
/* 0246D598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246D59C */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 0246D59C */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0246D5A0 */ cpu->r[31] = cpu->r[30] + 0x00000004u;
|
|
/* 0246D5A4 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D5A4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0246D5A4 */ if (_t33) goto L_0246D5A8; else goto L_0246D698;
|
|
L_0246D5A8: ; // 0x246d5a8
|
|
/* 0246D5A8 */ goto L_0246D620;
|
|
L_0246D5AC: ; // 0x246d5ac
|
|
/* 0246D5AC */ Gambit_fn_020D0B68(cpu);
|
|
/* 0246D5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246D5B4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D5B4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0246D5B4 */ if (_t35) goto L_0246D610; else goto L_0246D5B8;
|
|
L_0246D5B8: ; // 0x246d5b8
|
|
/* 0246D5B8 */ _t36 = cpu->r[30] + 0x00000000u;
|
|
/* 0246D5B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0246D5BC */ Gambit_fn_020D0A90(cpu);
|
|
/* 0246D5C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246D5C4 */ _t37 = cpu->r[30] + 0x00000004u;
|
|
/* 0246D5C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0246D5C8 */ cpu->r[31] = cpu->r[30] + 0x00000004u;
|
|
/* 0246D5CC */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D5CC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0246D5CC */ if (_t39) goto L_0246D5D0; else goto L_0246D698;
|
|
L_0246D5D0: ; // 0x246d5d0
|
|
/* 0246D5D0 */ goto L_0246D620;
|
|
L_0246D5D4: ; // 0x246d5d4
|
|
/* 0246D5D4 */ Gambit_fn_020D0A1C(cpu);
|
|
/* 0246D5D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246D5DC */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 0246D5DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0246D5E0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D5E0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0246D5E0 */ if (_t42) goto L_0246D5FC; else goto L_0246D5E4;
|
|
L_0246D5E4: ; // 0x246d5e4
|
|
/* 0246D5E4 */ Gambit_fn_020D0A34(cpu);
|
|
/* 0246D5E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246D5EC */ _t43 = cpu->r[30] + 0x00000004u;
|
|
/* 0246D5EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0246D5F0 */ cpu->r[31] = cpu->r[30] + 0x00000004u;
|
|
/* 0246D5F4 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D5F4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0246D5F4 */ if (_t45) goto L_0246D5F8; else goto L_0246D698;
|
|
L_0246D5F8: ; // 0x246d5f8
|
|
/* 0246D5F8 */ goto L_0246D620;
|
|
L_0246D5FC: ; // 0x246d5fc
|
|
/* 0246D5FC */ Gambit_fn_020D0B50(cpu);
|
|
/* 0246D600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246D604 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D604 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0246D604 */ if (_t47) goto L_0246D610; else goto L_0246D608;
|
|
L_0246D608: ; // 0x246d608
|
|
/* 0246D608 */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 0246D608 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0246D60C */ Gambit_fn_020D0A7C(cpu);
|
|
L_0246D610: ; // 0x246d610
|
|
/* 0246D610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0246D614 */ _t49 = cpu->r[30] + 0x00000004u;
|
|
/* 0246D614 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0246D618 */ cpu->r[31] = cpu->r[30] + 0x00000004u;
|
|
/* 0246D61C */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D61C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0246D61C */ if (_t51) goto L_0246D620; else goto L_0246D698;
|
|
L_0246D620: ; // 0x246d620
|
|
/* 0246D620 */ _t52 = cpu->r[3] + 0x00000118u;
|
|
/* 0246D620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0246D624 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0246D624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0246D628 */ _t53 = cpu->r[31] + 0x00000000u;
|
|
/* 0246D628 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0246D62C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D62C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0246D62C */ if (_t55) goto L_0246D65C; else goto L_0246D630;
|
|
L_0246D630: ; // 0x246d630
|
|
/* 0246D630 */ Gambit_fn_020D0998(cpu);
|
|
/* 0246D634 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0246D638 */ cpu->r[22] = 0x100A0000u;
|
|
/* 0246D63C */ _t56 = cpu->r[27] + 0x000002C0u;
|
|
/* 0246D63C */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0246D640 */ cpu->r[21] = 0x100A0000u;
|
|
/* 0246D644 */ cpu->r[22] = cpu->r[22] + 0x000043D4u;
|
|
/* 0246D648 */ _t57 = cpu->r[8] + 0x000043B0u;
|
|
/* 0246D648 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0246D64C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]);
|
|
/* 0246D650 */ cpu->r[21] = cpu->r[21] + 0x00004240u;
|
|
/* 0246D654 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D654 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0246D654 */ if (_t59) goto L_0246D658; else goto L_0246D744;
|
|
L_0246D658: ; // 0x246d658
|
|
/* 0246D658 */ goto L_0246D70C;
|
|
L_0246D65C: ; // 0x246d65c
|
|
/* 0246D65C */ Gambit_fn_020D0B68(cpu);
|
|
/* 0246D660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246D664 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D664 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0246D664 */ if (_t61) goto L_0246D6E8; else goto L_0246D668;
|
|
L_0246D668: ; // 0x246d668
|
|
/* 0246D668 */ _t62 = cpu->r[31] + 0x00000000u;
|
|
/* 0246D668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0246D66C */ Gambit_fn_020D0A90(cpu);
|
|
/* 0246D670 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0246D674 */ cpu->r[22] = 0x100A0000u;
|
|
/* 0246D678 */ _t63 = cpu->r[27] + 0x000002C0u;
|
|
/* 0246D678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0246D67C */ cpu->r[21] = 0x100A0000u;
|
|
/* 0246D680 */ cpu->r[22] = cpu->r[22] + 0x000043D4u;
|
|
/* 0246D684 */ _t64 = cpu->r[8] + 0x000043B0u;
|
|
/* 0246D684 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0246D688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]);
|
|
/* 0246D68C */ cpu->r[21] = cpu->r[21] + 0x00004240u;
|
|
/* 0246D690 */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D690 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0246D690 */ if (_t66) goto L_0246D694; else goto L_0246D744;
|
|
L_0246D694: ; // 0x246d694
|
|
/* 0246D694 */ goto L_0246D70C;
|
|
L_0246D698: ; // 0x246d698
|
|
/* 0246D698 */ Gambit_fn_020D0A1C(cpu);
|
|
/* 0246D69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246D6A0 */ _t67 = cpu->r[31] + 0x00000000u;
|
|
/* 0246D6A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0246D6A4 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D6A4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0246D6A4 */ if (_t69) goto L_0246D6D4; else goto L_0246D6A8;
|
|
L_0246D6A8: ; // 0x246d6a8
|
|
/* 0246D6A8 */ Gambit_fn_020D0A34(cpu);
|
|
/* 0246D6AC */ cpu->r[8] = 0x100A0000u;
|
|
/* 0246D6B0 */ cpu->r[22] = 0x100A0000u;
|
|
/* 0246D6B4 */ _t70 = cpu->r[27] + 0x000002C0u;
|
|
/* 0246D6B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0246D6B8 */ cpu->r[21] = 0x100A0000u;
|
|
/* 0246D6BC */ cpu->r[22] = cpu->r[22] + 0x000043D4u;
|
|
/* 0246D6C0 */ _t71 = cpu->r[8] + 0x000043B0u;
|
|
/* 0246D6C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0246D6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]);
|
|
/* 0246D6C8 */ cpu->r[21] = cpu->r[21] + 0x00004240u;
|
|
/* 0246D6CC */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D6CC */ _t73 = _t72 & 0x00000001u;
|
|
/* 0246D6CC */ if (_t73) goto L_0246D6D0; else goto L_0246D744;
|
|
L_0246D6D0: ; // 0x246d6d0
|
|
/* 0246D6D0 */ goto L_0246D70C;
|
|
L_0246D6D4: ; // 0x246d6d4
|
|
/* 0246D6D4 */ Gambit_fn_020D0B50(cpu);
|
|
/* 0246D6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246D6DC */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246D6DC */ _t75 = _t74 & 0x00000001u;
|
|
/* 0246D6DC */ if (_t75) goto L_0246D6E8; else goto L_0246D6E0;
|
|
L_0246D6E0: ; // 0x246d6e0
|
|
/* 0246D6E0 */ _t76 = cpu->r[31] + 0x00000000u;
|
|
/* 0246D6E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0246D6E4 */ Gambit_fn_020D0A7C(cpu);
|
|
L_0246D6E8: ; // 0x246d6e8
|
|
/* 0246D6E8 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0246D6EC */ cpu->r[22] = 0x100A0000u;
|
|
/* 0246D6F0 */ _t77 = cpu->r[27] + 0x000002C0u;
|
|
/* 0246D6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0246D6F4 */ cpu->r[21] = 0x100A0000u;
|
|
/* 0246D6F8 */ cpu->r[22] = cpu->r[22] + 0x000043D4u;
|
|
/* 0246D6FC */ _t78 = cpu->r[8] + 0x000043B0u;
|
|
/* 0246D6FC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0246D700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]);
|
|
/* 0246D704 */ cpu->r[21] = cpu->r[21] + 0x00004240u;
|
|
/* 0246D708 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D708 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0246D708 */ if (_t80) goto L_0246D70C; else goto L_0246D744;
|
|
L_0246D70C: ; // 0x246d70c
|
|
/* 0246D70C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246D710 */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D710 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0246D710 */ if (_t82) goto L_0246D744; else goto L_0246D714;
|
|
L_0246D714: ; // 0x246d714
|
|
/* 0246D714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000063u);
|
|
/* 0246D718 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D718 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0246D718 */ if (_t84) goto L_0246D71C; else goto L_0246D720;
|
|
L_0246D71C: ; // 0x246d71c
|
|
/* 0246D71C */ cpu->r[0] = 0x00000063u;
|
|
L_0246D720: ; // 0x246d720
|
|
/* 0246D720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 0246D724 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D724 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0246D724 */ if (_t86) goto L_0246D728; else goto L_0246D744;
|
|
L_0246D728: ; // 0x246d728
|
|
/* 0246D728 */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246D728 */ rbrew_write32(cpu->mem, _t87, cpu->r[21]);
|
|
/* 0246D72C */ cpu->f[1] = cpu->f[31];
|
|
/* 0246D730 */ _t88 = cpu->r[1] + 0x00000008u;
|
|
/* 0246D730 */ rbrew_write32(cpu->mem, _t88, cpu->r[22]);
|
|
/* 0246D734 */ _t89 = cpu->r[30] + 0x00000000u;
|
|
/* 0246D734 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0246D738 */ cpu->r[4] = 0x00000000u;
|
|
/* 0246D73C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246D740 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0246D744: ; // 0x246d744
|
|
/* 0246D744 */ _t90 = cpu->r[27] + 0x000002C4u;
|
|
/* 0246D744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0246D748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[12]);
|
|
/* 0246D74C */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D74C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0246D74C */ if (_t92) goto L_0246D750; else goto L_0246D788;
|
|
L_0246D750: ; // 0x246d750
|
|
/* 0246D750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0246D754 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D754 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0246D754 */ if (_t94) goto L_0246D788; else goto L_0246D758;
|
|
L_0246D758: ; // 0x246d758
|
|
/* 0246D758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000063u);
|
|
/* 0246D75C */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0246D75C */ _t96 = _t95 & 0x00000001u;
|
|
/* 0246D75C */ if (_t96) goto L_0246D760; else goto L_0246D764;
|
|
L_0246D760: ; // 0x246d760
|
|
/* 0246D760 */ cpu->r[12] = 0x00000063u;
|
|
L_0246D764: ; // 0x246d764
|
|
/* 0246D764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[12]);
|
|
/* 0246D768 */ _t97 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D768 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0246D768 */ if (_t98) goto L_0246D76C; else goto L_0246D788;
|
|
L_0246D76C: ; // 0x246d76c
|
|
/* 0246D76C */ _t99 = cpu->r[1] + 0x00000014u;
|
|
/* 0246D76C */ rbrew_write32(cpu->mem, _t99, cpu->r[21]);
|
|
/* 0246D770 */ cpu->f[1] = cpu->f[31];
|
|
/* 0246D774 */ _t100 = cpu->r[1] + 0x00000010u;
|
|
/* 0246D774 */ rbrew_write32(cpu->mem, _t100, cpu->r[22]);
|
|
/* 0246D778 */ _t101 = cpu->r[31] + 0x00000000u;
|
|
/* 0246D778 */ cpu->r[3] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0246D77C */ cpu->r[4] = 0x00000000u;
|
|
/* 0246D780 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246D784 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0246D788: ; // 0x246d788
|
|
/* 0246D788 */ _t102 = cpu->r[27] + 0x000002BCu;
|
|
/* 0246D788 */ rbrew_write32(cpu->mem, _t102, cpu->r[29]);
|
|
/* 0246D78C */ _t103 = cpu->r[27] + 0x000002C0u;
|
|
/* 0246D78C */ rbrew_write32(cpu->mem, _t103, cpu->r[23]);
|
|
/* 0246D790 */ _t104 = cpu->r[27] + 0x000002B8u;
|
|
/* 0246D790 */ rbrew_write32(cpu->mem, _t104, cpu->r[28]);
|
|
/* 0246D794 */ _t105 = cpu->r[27] + 0x000002C4u;
|
|
/* 0246D794 */ rbrew_write32(cpu->mem, _t105, cpu->r[24]);
|
|
/* 0246D798 */ /* nop */
|
|
/* 0246D79C */ _t106 = cpu->r[1] + 0x00000050u;
|
|
/* 0246D79C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0246D7A0 */ _t107 = cpu->r[1] + 0x00000048u;
|
|
/* 0246D7A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t107);
|
|
/* 0246D7A4 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246D7A4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0246D7A4 */ if (_t109) goto L_0246D7A8; // else: addr-0 trap, fall-through
|
|
L_0246D7A8: ; // 0x246d7a8
|
|
/* 0246D7A8 */ _t110 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0246D7A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0246D7AC */ cpu->lr = cpu->r[0];
|
|
/* 0246D7B0 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0246D7B4 */ return;
|
|
}
|
|
|
|
// fn_02466EF8 @ 0x2466ef8
|
|
void Gambit_fn_02466EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02466EF8: ; // 0x2466ef8
|
|
/* 02466EF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02466EFC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466EFC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466F00 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466F00 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466F00 */ cpu->r[1] = _t1;
|
|
/* 02466F04 */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 02466F04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466F08 */ _t3 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466F0C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02466F10 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F10 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02466F14 */ Gambit_fn_0246D7B8(cpu);
|
|
/* 02466F18 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466F18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466F1C */ cpu->lr = cpu->r[0];
|
|
/* 02466F20 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466F24 */ return;
|
|
}
|
|
|
|
// fn_02466F00 @ 0x2466f00
|
|
void Gambit_fn_02466F00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02466F00: ; // 0x2466f00
|
|
/* 02466F00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466F00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466F00 */ cpu->r[1] = _t0;
|
|
/* 02466F04 */ _t1 = cpu->r[5] + 0x00000000u;
|
|
/* 02466F04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466F08 */ _t2 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466F0C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02466F10 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02466F14 */ Gambit_fn_0246D7B8(cpu);
|
|
/* 02466F18 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466F18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466F1C */ cpu->lr = cpu->r[0];
|
|
/* 02466F20 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466F24 */ return;
|
|
}
|
|
|
|
// fn_02466F28 @ 0x2466f28
|
|
void Gambit_fn_02466F28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02466F28: ; // 0x2466f28
|
|
/* 02466F28 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466F2C */ goto L_0246DC78;
|
|
L_0246DC78: ; // 0x246dc78
|
|
/* 0246DC78 */ cpu->r[0] = cpu->lr;
|
|
/* 0246DC7C */ _t1 = cpu->r[1] + 0x00000004u;
|
|
/* 0246DC7C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0246DC80 */ _t2 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0246DC80 */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 0246DC80 */ cpu->r[1] = _t2;
|
|
/* 0246DC84 */ _t3 = cpu->r[3] + 0x000002B4u;
|
|
/* 0246DC84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246DC88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0246DC8C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246DC8C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246DC8C */ if (_t5) goto L_0246DCE0; else goto L_0246DC90;
|
|
L_0246DC90: ; // 0x246dc90
|
|
/* 0246DC90 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246DC94 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0246DC98 */ _t6 = cpu->r[3] + 0x000002B4u;
|
|
/* 0246DC98 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 0246DC9C */ cpu->r[12] = cpu->r[12] + 0x00004240u;
|
|
/* 0246DCA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000001u);
|
|
/* 0246DCA4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0246DCA8 */ cpu->r[11] = cpu->r[11] + 0x00004434u;
|
|
/* 0246DCAC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246DCAC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0246DCAC */ if (_t8) goto L_0246DCB0; else goto L_0246DCD0;
|
|
L_0246DCB0: ; // 0x246dcb0
|
|
/* 0246DCB0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246DCB0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0246DCB4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246DCB8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0246DCB8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0246DCBC */ Gambit_fn_027ED798(cpu);
|
|
/* 0246DCC0 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246DCC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246DCC4 */ cpu->lr = cpu->r[0];
|
|
/* 0246DCC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0246DCCC */ return;
|
|
L_0246DCD0: ; // 0x246dcd0
|
|
/* 0246DCD0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0246DCD0 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0246DCD4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246DCD8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0246DCD8 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0246DCDC */ Gambit_fn_027ED624(cpu);
|
|
L_0246DCE0: ; // 0x246dce0
|
|
/* 0246DCE0 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246DCE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0246DCE4 */ cpu->lr = cpu->r[0];
|
|
/* 0246DCE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0246DCEC */ return;
|
|
}
|
|
|
|
// fn_02466F30 @ 0x2466f30
|
|
void Gambit_fn_02466F30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02466F30: ; // 0x2466f30
|
|
/* 02466F30 */ cpu->r[0] = cpu->lr;
|
|
/* 02466F34 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466F34 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466F38 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466F38 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466F38 */ cpu->r[1] = _t1;
|
|
/* 02466F3C */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02466F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466F40 */ _t3 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466F44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466F48 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F48 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02466F4C */ Gambit_fn_0246DAF4(cpu);
|
|
/* 02466F50 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466F50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466F54 */ cpu->lr = cpu->r[0];
|
|
/* 02466F58 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466F5C */ return;
|
|
}
|
|
|
|
// fn_02466F38 @ 0x2466f38
|
|
void Gambit_fn_02466F38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02466F38: ; // 0x2466f38
|
|
/* 02466F38 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466F38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466F38 */ cpu->r[1] = _t0;
|
|
/* 02466F3C */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02466F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466F40 */ _t2 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466F44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02466F48 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02466F4C */ Gambit_fn_0246DAF4(cpu);
|
|
/* 02466F50 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466F50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466F54 */ cpu->lr = cpu->r[0];
|
|
/* 02466F58 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466F5C */ return;
|
|
}
|
|
|
|
// fn_02466F60 @ 0x2466f60
|
|
void Gambit_fn_02466F60(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_02466F60: ; // 0x2466f60
|
|
/* 02466F60 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466F64 */ goto L_0246E080;
|
|
L_0246E080: ; // 0x246e080
|
|
/* 0246E080 */ cpu->r[0] = cpu->lr;
|
|
/* 0246E084 */ _t1 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0246E084 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0246E084 */ cpu->r[1] = _t1;
|
|
/* 0246E088 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0246E088 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0246E08C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0246E08C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0246E090 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246E094 */ cpu->r[30] = cpu->r[4];
|
|
/* 0246E098 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246E098 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246E09C */ Gambit_fn_0246DCF0(cpu);
|
|
/* 0246E0A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246E0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000001u);
|
|
/* 0246E0A8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0246E0AC */ cpu->r[0] = cpu->r[0] + 0x000044A8u;
|
|
/* 0246E0B0 */ cpu->r[10] = cpu->r[10] + 0x00004240u;
|
|
/* 0246E0B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246E0B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246E0B4 */ if (_t6) goto L_0246E0B8; else goto L_0246E0DC;
|
|
L_0246E0B8: ; // 0x246e0b8
|
|
/* 0246E0B8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246E0BC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246E0BC */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0246E0C0 */ cpu->r[4] = 0x00000006u;
|
|
/* 0246E0C4 */ _t8 = cpu->r[9] + 0x000043B0u;
|
|
/* 0246E0C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0246E0C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246E0CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0246E0D0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0246E0D0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0246E0D4 */ Gambit_fn_027ED914(cpu);
|
|
/* 0246E0D8 */ goto L_0246E128;
|
|
L_0246E0DC: ; // 0x246e0dc
|
|
/* 0246E0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0246E0E0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246E0E0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0246E0E0 */ if (_t11) goto L_0246E0E4; else goto L_0246E108;
|
|
L_0246E0E4: ; // 0x246e0e4
|
|
/* 0246E0E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246E0E8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0246E0E8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0246E0EC */ cpu->r[4] = 0x00000006u;
|
|
/* 0246E0F0 */ _t13 = cpu->r[12] + 0x000044A4u;
|
|
/* 0246E0F0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0246E0F4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246E0F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0246E0FC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0246E0FC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0246E100 */ Gambit_fn_027ED914(cpu);
|
|
/* 0246E104 */ goto L_0246E128;
|
|
L_0246E108: ; // 0x246e108
|
|
/* 0246E108 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246E10C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246E10C */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0246E110 */ cpu->r[4] = 0x00000006u;
|
|
/* 0246E114 */ _t16 = cpu->r[12] + 0x00004448u;
|
|
/* 0246E114 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0246E118 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0246E11C */ cpu->r[3] = cpu->r[31];
|
|
/* 0246E120 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 0246E120 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0246E124 */ Gambit_fn_027ED914(cpu);
|
|
L_0246E128: ; // 0x246e128
|
|
/* 0246E128 */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246E128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246E12C */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 0246E12C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0246E130 */ cpu->lr = cpu->r[0];
|
|
/* 0246E134 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 0246E134 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0246E138 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0246E13C */ return;
|
|
}
|
|
|
|
// fn_02466F68 @ 0x2466f68
|
|
void Gambit_fn_02466F68(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_02466F68: ; // 0x2466f68
|
|
/* 02466F68 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 02466F68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466F6C */ goto L_0246E140;
|
|
L_0246E140: ; // 0x246e140
|
|
/* 0246E140 */ cpu->r[0] = cpu->lr;
|
|
/* 0246E144 */ _t1 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0246E144 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0246E144 */ cpu->r[1] = _t1;
|
|
/* 0246E148 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0246E148 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0246E14C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0246E14C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0246E150 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246E154 */ cpu->r[30] = cpu->r[4];
|
|
/* 0246E158 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246E158 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246E15C */ Gambit_fn_0246DCF0(cpu);
|
|
/* 0246E160 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246E164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000001u);
|
|
/* 0246E168 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0246E16C */ cpu->r[0] = cpu->r[0] + 0x000044B4u;
|
|
/* 0246E170 */ cpu->r[10] = cpu->r[10] + 0x00004240u;
|
|
/* 0246E174 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246E174 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0246E174 */ if (_t6) goto L_0246E178; else goto L_0246E19C;
|
|
L_0246E178: ; // 0x246e178
|
|
/* 0246E178 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246E17C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246E17C */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0246E180 */ cpu->r[4] = 0x00000006u;
|
|
/* 0246E184 */ _t8 = cpu->r[9] + 0x000043B0u;
|
|
/* 0246E184 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0246E188 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246E18C */ cpu->r[3] = cpu->r[31];
|
|
/* 0246E190 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0246E190 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0246E194 */ Gambit_fn_027ED914(cpu);
|
|
/* 0246E198 */ goto L_0246E1E8;
|
|
L_0246E19C: ; // 0x246e19c
|
|
/* 0246E19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0246E1A0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246E1A0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0246E1A0 */ if (_t11) goto L_0246E1A4; else goto L_0246E1C8;
|
|
L_0246E1A4: ; // 0x246e1a4
|
|
/* 0246E1A4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246E1A8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0246E1A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0246E1AC */ cpu->r[4] = 0x00000006u;
|
|
/* 0246E1B0 */ _t13 = cpu->r[12] + 0x000044A4u;
|
|
/* 0246E1B0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0246E1B4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246E1B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0246E1BC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0246E1BC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0246E1C0 */ Gambit_fn_027ED914(cpu);
|
|
/* 0246E1C4 */ goto L_0246E1E8;
|
|
L_0246E1C8: ; // 0x246e1c8
|
|
/* 0246E1C8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0246E1CC */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246E1CC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0246E1D0 */ cpu->r[4] = 0x00000006u;
|
|
/* 0246E1D4 */ _t16 = cpu->r[12] + 0x00004448u;
|
|
/* 0246E1D4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0246E1D8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0246E1DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0246E1E0 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 0246E1E0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0246E1E4 */ Gambit_fn_027ED914(cpu);
|
|
L_0246E1E8: ; // 0x246e1e8
|
|
/* 0246E1E8 */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0246E1E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246E1EC */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 0246E1EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0246E1F0 */ cpu->lr = cpu->r[0];
|
|
/* 0246E1F4 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 0246E1F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0246E1F8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0246E1FC */ return;
|
|
}
|
|
|
|
// fn_02466F70 @ 0x2466f70
|
|
void Gambit_fn_02466F70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02466F70: ; // 0x2466f70
|
|
/* 02466F70 */ cpu->r[0] = cpu->lr;
|
|
/* 02466F74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466F74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466F74 */ cpu->r[1] = _t0;
|
|
/* 02466F78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466F78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466F7C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F7C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02466F80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02466F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02466F88 */ _t4 = cpu->r[31] + 0x00000038u;
|
|
/* 02466F88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466F8C */ cpu->r[30] = cpu->r[4];
|
|
/* 02466F90 */ Gambit_fn_0246C88C(cpu);
|
|
/* 02466F94 */ _t5 = cpu->r[31] + 0x00000128u;
|
|
/* 02466F94 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02466F98 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02466F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466F9C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466FA0 */ cpu->lr = cpu->r[0];
|
|
/* 02466FA4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466FAC */ return;
|
|
}
|
|
|
|
// fn_02466F74 @ 0x2466f74
|
|
void Gambit_fn_02466F74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02466F74: ; // 0x2466f74
|
|
/* 02466F74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02466F74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466F74 */ cpu->r[1] = _t0;
|
|
/* 02466F78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466F78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02466F7C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F7C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02466F80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02466F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02466F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02466F88 */ _t4 = cpu->r[31] + 0x00000038u;
|
|
/* 02466F88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466F8C */ cpu->r[30] = cpu->r[4];
|
|
/* 02466F90 */ Gambit_fn_0246C88C(cpu);
|
|
/* 02466F94 */ _t5 = cpu->r[31] + 0x00000128u;
|
|
/* 02466F94 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02466F98 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02466F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02466F9C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02466F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02466FA0 */ cpu->lr = cpu->r[0];
|
|
/* 02466FA4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02466FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02466FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02466FAC */ return;
|
|
}
|
|
|
|
// fn_02466FB0 @ 0x2466fb0
|
|
void Gambit_fn_02466FB0(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;
|
|
|
|
L_02466FB0: ; // 0x2466fb0
|
|
/* 02466FB0 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466FB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466FB4 */ goto L_02469AAC;
|
|
L_02469AAC: ; // 0x2469aac
|
|
/* 02469AAC */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02469AAC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02469AAC */ cpu->r[1] = _t1;
|
|
/* 02469AB0 */ cpu->r[0] = cpu->lr;
|
|
/* 02469AB4 */ /* nop */
|
|
/* 02469AB8 */ cpu->r[27] = cpu->r[4];
|
|
/* 02469ABC */ cpu->r[30] = cpu->r[5];
|
|
/* 02469AC0 */ cpu->r[28] = 0x00000000u;
|
|
/* 02469AC4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02469AC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02469AC8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02469ACC */ cpu->r[6] = cpu->r[28];
|
|
/* 02469AD0 */ cpu->r[31] = cpu->r[29] + 0x0000021Cu;
|
|
/* 02469AD4 */ goto L_02469AE0;
|
|
L_02469AD8: ; // 0x2469ad8
|
|
/* 02469AD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469ADC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469ADC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02469ADC */ if (_t4) goto L_02469AE0; else goto L_02469AEC;
|
|
L_02469AE0: ; // 0x2469ae0
|
|
/* 02469AE0 */ cpu->r[12] = cpu->r[31] + cpu->r[6];
|
|
/* 02469AE4 */ cpu->r[5] = cpu->r[6];
|
|
/* 02469AE8 */ goto L_02469AF0;
|
|
L_02469AEC: ; // 0x2469aec
|
|
/* 02469AEC */ cpu->r[12] = cpu->r[31];
|
|
L_02469AF0: ; // 0x2469af0
|
|
/* 02469AF0 */ _t5 = cpu->r[12] + 0x00000000u;
|
|
/* 02469AF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02469AF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[27]);
|
|
/* 02469AF8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469AF8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02469AF8 */ if (_t7) goto L_02469DE4; else goto L_02469AFC;
|
|
L_02469AFC: ; // 0x2469afc
|
|
/* 02469AFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469B00 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469B00 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02469B00 */ if (_t9) goto L_02469B04; else goto L_02469B14;
|
|
L_02469B04: ; // 0x2469b04
|
|
/* 02469B04 */ _t10 = cpu->r[31] + cpu->r[5];
|
|
/* 02469B04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02469B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 02469B0C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469B0C */ _t12 = _t11 & 0x00000001u;
|
|
/* 02469B0C */ if (_t12) goto L_02469B10; else goto L_02469DD0;
|
|
L_02469B10: ; // 0x2469b10
|
|
/* 02469B10 */ goto L_02469B20;
|
|
L_02469B14: ; // 0x2469b14
|
|
/* 02469B14 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02469B14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02469B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 02469B1C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469B1C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02469B1C */ if (_t15) goto L_02469B20; else goto L_02469DD0;
|
|
L_02469B20: ; // 0x2469b20
|
|
/* 02469B20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469B24 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469B24 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02469B24 */ if (_t17) goto L_02469B28; else goto L_02469B40;
|
|
L_02469B28: ; // 0x2469b28
|
|
/* 02469B28 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469B2C */ cpu->r[8] = cpu->r[31] + cpu->r[0];
|
|
/* 02469B30 */ _t18 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02469B30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02469B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02469B38 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469B38 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02469B38 */ if (_t20) goto L_02469BAC; else goto L_02469B3C;
|
|
L_02469B3C: ; // 0x2469b3c
|
|
/* 02469B3C */ goto L_02469B4C;
|
|
L_02469B40: ; // 0x2469b40
|
|
/* 02469B40 */ _t21 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02469B40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02469B44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02469B48 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469B48 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02469B48 */ if (_t23) goto L_02469BAC; else goto L_02469B4C;
|
|
L_02469B4C: ; // 0x2469b4c
|
|
/* 02469B4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469B50 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469B50 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02469B50 */ if (_t25) goto L_02469B54; else goto L_02469B70;
|
|
L_02469B54: ; // 0x2469b54
|
|
/* 02469B54 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469B58 */ cpu->r[10] = cpu->r[31] + cpu->r[12];
|
|
/* 02469B5C */ _t26 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02469B5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02469B60 */ Gambit_fn_024618B4(cpu);
|
|
/* 02469B64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02469B68 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469B68 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02469B68 */ if (_t28) goto L_02469DE4; else goto L_02469B6C;
|
|
L_02469B6C: ; // 0x2469b6c
|
|
/* 02469B6C */ goto L_02469B80;
|
|
L_02469B70: ; // 0x2469b70
|
|
/* 02469B70 */ _t29 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02469B70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02469B74 */ Gambit_fn_024618B4(cpu);
|
|
/* 02469B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02469B7C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469B7C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02469B7C */ if (_t31) goto L_02469DE4; else goto L_02469B80;
|
|
L_02469B80: ; // 0x2469b80
|
|
/* 02469B80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469B84 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469B84 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02469B84 */ if (_t33) goto L_02469B88; else goto L_02469BA0;
|
|
L_02469B88: ; // 0x2469b88
|
|
/* 02469B88 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469B8C */ cpu->r[12] = cpu->r[31] + cpu->r[0];
|
|
/* 02469B90 */ _t34 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02469B90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02469B94 */ cpu->r[4] = cpu->r[27];
|
|
/* 02469B98 */ Gambit_fn_024619C8(cpu);
|
|
/* 02469B9C */ goto L_02469BAC;
|
|
L_02469BA0: ; // 0x2469ba0
|
|
/* 02469BA0 */ _t35 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02469BA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02469BA4 */ cpu->r[4] = cpu->r[27];
|
|
/* 02469BA8 */ Gambit_fn_024619C8(cpu);
|
|
L_02469BAC: ; // 0x2469bac
|
|
/* 02469BAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469BB0 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469BB0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02469BB0 */ if (_t37) goto L_02469BB4; else goto L_02469BC8;
|
|
L_02469BB4: ; // 0x2469bb4
|
|
/* 02469BB4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469BB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469BBC */ _t38 = cpu->r[31] + cpu->r[4];
|
|
/* 02469BBC */ rbrew_write32(cpu->mem, _t38, cpu->r[27]);
|
|
/* 02469BC0 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469BC0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02469BC0 */ if (_t40) goto L_02469BD4; else goto L_02469BC4;
|
|
L_02469BC4: ; // 0x2469bc4
|
|
/* 02469BC4 */ goto L_02469BEC;
|
|
L_02469BC8: ; // 0x2469bc8
|
|
/* 02469BC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469BCC */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 02469BCC */ rbrew_write32(cpu->mem, _t41, cpu->r[27]);
|
|
/* 02469BD0 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469BD0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02469BD0 */ if (_t43) goto L_02469BD4; else goto L_02469BEC;
|
|
L_02469BD4: ; // 0x2469bd4
|
|
/* 02469BD4 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469BD8 */ cpu->r[6] = cpu->r[31] + cpu->r[5];
|
|
/* 02469BDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469BE0 */ _t44 = cpu->r[6] + 0x00000004u;
|
|
/* 02469BE0 */ rbrew_write32(cpu->mem, _t44, cpu->r[30]);
|
|
/* 02469BE4 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469BE4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02469BE4 */ if (_t46) goto L_02469BF8; else goto L_02469BE8;
|
|
L_02469BE8: ; // 0x2469be8
|
|
/* 02469BE8 */ goto L_02469C10;
|
|
L_02469BEC: ; // 0x2469bec
|
|
/* 02469BEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469BF0 */ _t47 = cpu->r[31] + 0x00000004u;
|
|
/* 02469BF0 */ rbrew_write32(cpu->mem, _t47, cpu->r[30]);
|
|
/* 02469BF4 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469BF4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02469BF4 */ if (_t49) goto L_02469BF8; else goto L_02469C10;
|
|
L_02469BF8: ; // 0x2469bf8
|
|
/* 02469BF8 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469BFC */ cpu->r[7] = cpu->r[31] + cpu->r[6];
|
|
/* 02469C00 */ _t50 = cpu->r[7] + 0x00000010u;
|
|
/* 02469C00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02469C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02469C08 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469C08 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02469C08 */ if (_t52) goto L_02469C48; else goto L_02469C0C;
|
|
L_02469C0C: ; // 0x2469c0c
|
|
/* 02469C0C */ goto L_02469C1C;
|
|
L_02469C10: ; // 0x2469c10
|
|
/* 02469C10 */ _t53 = cpu->r[31] + 0x00000010u;
|
|
/* 02469C10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02469C14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02469C18 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469C18 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02469C18 */ if (_t55) goto L_02469C48; else goto L_02469C1C;
|
|
L_02469C1C: ; // 0x2469c1c
|
|
/* 02469C1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469C20 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469C20 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02469C20 */ if (_t57) goto L_02469C24; else goto L_02469C3C;
|
|
L_02469C24: ; // 0x2469c24
|
|
/* 02469C24 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469C28 */ cpu->r[8] = cpu->r[31] + cpu->r[8];
|
|
/* 02469C2C */ _t58 = cpu->r[8] + 0x00000010u;
|
|
/* 02469C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02469C30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02469C34 */ Gambit_fn_020A84C8(cpu);
|
|
/* 02469C38 */ goto L_02469C48;
|
|
L_02469C3C: ; // 0x2469c3c
|
|
/* 02469C3C */ _t59 = cpu->r[31] + 0x00000010u;
|
|
/* 02469C3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02469C40 */ cpu->r[4] = cpu->r[30];
|
|
/* 02469C44 */ Gambit_fn_020A84C8(cpu);
|
|
L_02469C48: ; // 0x2469c48
|
|
/* 02469C48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469C4C */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469C4C */ _t61 = _t60 & 0x00000001u;
|
|
/* 02469C4C */ if (_t61) goto L_02469C50; else goto L_02469C70;
|
|
L_02469C50: ; // 0x2469c50
|
|
/* 02469C50 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469C54 */ cpu->r[9] = cpu->r[31] + cpu->r[9];
|
|
/* 02469C58 */ cpu->r[10] = 0x00000001u;
|
|
/* 02469C5C */ _t62 = cpu->r[9] + 0x00000008u;
|
|
/* 02469C5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02469C60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469C64 */ _t63 = cpu->r[6] + 0x00000100u;
|
|
/* 02469C64 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[10]);
|
|
/* 02469C68 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469C68 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02469C68 */ if (_t65) goto L_02469C84; else goto L_02469C6C;
|
|
L_02469C6C: ; // 0x2469c6c
|
|
/* 02469C6C */ goto L_02469CB8;
|
|
L_02469C70: ; // 0x2469c70
|
|
/* 02469C70 */ _t66 = cpu->r[31] + 0x00000008u;
|
|
/* 02469C70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02469C74 */ cpu->r[10] = 0x00000001u;
|
|
/* 02469C78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469C7C */ _t67 = cpu->r[6] + 0x00000100u;
|
|
/* 02469C7C */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[10]);
|
|
/* 02469C80 */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469C80 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02469C80 */ if (_t69) goto L_02469C84; else goto L_02469CB8;
|
|
L_02469C84: ; // 0x2469c84
|
|
/* 02469C84 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469C88 */ cpu->r[10] = cpu->r[31] + cpu->r[0];
|
|
/* 02469C8C */ _t70 = cpu->r[10] + 0x00000014u;
|
|
/* 02469C8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02469C90 */ cpu->r[4] = 0x00000001u;
|
|
/* 02469C94 */ Gambit_fn_027EEDF0(cpu);
|
|
/* 02469C98 */ _t71 = cpu->r[29] + 0x00000000u;
|
|
/* 02469C98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02469C9C */ _t72 = cpu->r[12] + 0x00000184u;
|
|
/* 02469C9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02469CA0 */ cpu->ctr = cpu->r[8];
|
|
/* 02469CA4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02469CA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02469CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02469CB0 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469CB0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02469CB0 */ if (_t74) goto L_02469D74; else goto L_02469CB4;
|
|
L_02469CB4: ; // 0x2469cb4
|
|
/* 02469CB4 */ goto L_02469CE0;
|
|
L_02469CB8: ; // 0x2469cb8
|
|
/* 02469CB8 */ _t75 = cpu->r[31] + 0x00000014u;
|
|
/* 02469CB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02469CBC */ cpu->r[4] = 0x00000001u;
|
|
/* 02469CC0 */ Gambit_fn_027EEDF0(cpu);
|
|
/* 02469CC4 */ _t76 = cpu->r[29] + 0x00000000u;
|
|
/* 02469CC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02469CC8 */ _t77 = cpu->r[12] + 0x00000184u;
|
|
/* 02469CC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02469CCC */ cpu->ctr = cpu->r[8];
|
|
/* 02469CD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02469CD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02469CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02469CDC */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469CDC */ _t79 = _t78 & 0x00000001u;
|
|
/* 02469CDC */ if (_t79) goto L_02469D74; else goto L_02469CE0;
|
|
L_02469CE0: ; // 0x2469ce0
|
|
/* 02469CE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469CE4 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469CE4 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02469CE4 */ if (_t81) goto L_02469CE8; else goto L_02469D00;
|
|
L_02469CE8: ; // 0x2469ce8
|
|
/* 02469CE8 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469CEC */ cpu->r[11] = cpu->r[31] + cpu->r[10];
|
|
/* 02469CF0 */ _t82 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02469CF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02469CF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02469CF8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469CF8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02469CF8 */ if (_t84) goto L_02469D74; else goto L_02469CFC;
|
|
L_02469CFC: ; // 0x2469cfc
|
|
/* 02469CFC */ goto L_02469D0C;
|
|
L_02469D00: ; // 0x2469d00
|
|
/* 02469D00 */ _t85 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02469D00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02469D04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02469D08 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469D08 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02469D08 */ if (_t87) goto L_02469D74; else goto L_02469D0C;
|
|
L_02469D0C: ; // 0x2469d0c
|
|
/* 02469D0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469D10 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469D10 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02469D10 */ if (_t89) goto L_02469D14; else goto L_02469D30;
|
|
L_02469D14: ; // 0x2469d14
|
|
/* 02469D14 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469D18 */ cpu->r[12] = cpu->r[31] + cpu->r[0];
|
|
/* 02469D1C */ _t90 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02469D1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02469D20 */ _t91 = cpu->r[9] + 0x00000000u;
|
|
/* 02469D20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02469D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02469D28 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469D28 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02469D28 */ if (_t93) goto L_02469D2C; else goto L_02469D40;
|
|
L_02469D2C: ; // 0x2469d2c
|
|
/* 02469D2C */ goto L_02469D50;
|
|
L_02469D30: ; // 0x2469d30
|
|
/* 02469D30 */ _t94 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02469D30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02469D34 */ _t95 = cpu->r[9] + 0x00000000u;
|
|
/* 02469D34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02469D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02469D3C */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469D3C */ _t97 = _t96 & 0x00000001u;
|
|
/* 02469D3C */ if (_t97) goto L_02469D50; else goto L_02469D40;
|
|
L_02469D40: ; // 0x2469d40
|
|
/* 02469D40 */ _t98 = cpu->r[9] + 0x00000004u;
|
|
/* 02469D40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02469D44 */ _t99 = cpu->r[7] + 0x00000014u;
|
|
/* 02469D44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02469D48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]);
|
|
/* 02469D4C */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469D4C */ _t101 = _t100 & 0x00000001u;
|
|
/* 02469D4C */ if (_t101) goto L_02469D68; else goto L_02469D50;
|
|
L_02469D50: ; // 0x2469d50
|
|
/* 02469D50 */ cpu->r[3] = cpu->r[29];
|
|
/* 02469D54 */ cpu->r[4] = cpu->r[28];
|
|
/* 02469D58 */ Gambit_fn_0246996C(cpu);
|
|
/* 02469D5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469D60 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469D60 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02469D60 */ if (_t103) goto L_02469D7C; else goto L_02469D64;
|
|
L_02469D64: ; // 0x2469d64
|
|
/* 02469D64 */ goto L_02469D94;
|
|
L_02469D68: ; // 0x2469d68
|
|
/* 02469D68 */ cpu->r[3] = cpu->r[29];
|
|
/* 02469D6C */ cpu->r[4] = cpu->r[28];
|
|
/* 02469D70 */ Gambit_fn_024698C4(cpu);
|
|
L_02469D74: ; // 0x2469d74
|
|
/* 02469D74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469D78 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469D78 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02469D78 */ if (_t105) goto L_02469D7C; else goto L_02469D94;
|
|
L_02469D7C: ; // 0x2469d7c
|
|
/* 02469D7C */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469D80 */ cpu->r[4] = cpu->r[31] + cpu->r[9];
|
|
/* 02469D84 */ _t106 = cpu->r[4] + 0x00000034u;
|
|
/* 02469D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02469D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02469D8C */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469D8C */ _t108 = _t107 & 0x00000001u;
|
|
/* 02469D8C */ if (_t108) goto L_02469DE4; else goto L_02469D90;
|
|
L_02469D90: ; // 0x2469d90
|
|
/* 02469D90 */ goto L_02469DA0;
|
|
L_02469D94: ; // 0x2469d94
|
|
/* 02469D94 */ _t109 = cpu->r[31] + 0x00000034u;
|
|
/* 02469D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02469D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02469D9C */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469D9C */ _t111 = _t110 & 0x00000001u;
|
|
/* 02469D9C */ if (_t111) goto L_02469DE4; else goto L_02469DA0;
|
|
L_02469DA0: ; // 0x2469da0
|
|
/* 02469DA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02469DA4 */ _t112 = cpu->r[30] + 0x00000040u;
|
|
/* 02469DA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02469DA8 */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469DA8 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02469DA8 */ if (_t114) goto L_02469DAC; else goto L_02469DB4;
|
|
L_02469DAC: ; // 0x2469dac
|
|
/* 02469DAC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000003Cu);
|
|
/* 02469DB0 */ cpu->r[31] = cpu->r[31] + cpu->r[0];
|
|
L_02469DB4: ; // 0x2469db4
|
|
/* 02469DB4 */ _t115 = cpu->r[31] + 0x00000034u;
|
|
/* 02469DB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02469DB8 */ Gambit_fn_020CEDAC(cpu);
|
|
/* 02469DBC */ /* nop */
|
|
/* 02469DC0 */ _t116 = cpu->r[1] + 0x00000024u;
|
|
/* 02469DC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02469DC4 */ cpu->lr = cpu->r[0];
|
|
/* 02469DC8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02469DCC */ return;
|
|
L_02469DD0: ; // 0x2469dd0
|
|
/* 02469DD0 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02469DD4 */ cpu->r[5] = cpu->r[5] + 0x0000003Cu;
|
|
/* 02469DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000003u);
|
|
/* 02469DDC */ cpu->r[6] = cpu->r[6] + 0x0000003Cu;
|
|
/* 02469DE0 */ _t117 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469DE0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02469DE0 */ if (_t118) goto L_02469AD8; else goto L_02469DE4;
|
|
L_02469DE4: ; // 0x2469de4
|
|
/* 02469DE4 */ /* nop */
|
|
/* 02469DE8 */ _t119 = cpu->r[1] + 0x00000024u;
|
|
/* 02469DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02469DEC */ cpu->lr = cpu->r[0];
|
|
/* 02469DF0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02469DF4 */ return;
|
|
}
|
|
|
|
// fn_02466FB8 @ 0x2466fb8
|
|
void Gambit_fn_02466FB8(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_02466FB8: ; // 0x2466fb8
|
|
/* 02466FB8 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466FBC */ goto L_02469DF8;
|
|
L_02469DF8: ; // 0x2469df8
|
|
/* 02469DF8 */ _t1 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02469DF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02469DF8 */ cpu->r[1] = _t1;
|
|
/* 02469DFC */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02469DFC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02469E00 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02469E00 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02469E04 */ /* nop */
|
|
/* 02469E08 */ cpu->r[0] = cpu->lr;
|
|
/* 02469E0C */ /* nop */
|
|
/* 02469E10 */ cpu->r[31] = cpu->r[5];
|
|
/* 02469E14 */ cpu->r[30] = cpu->r[4];
|
|
/* 02469E18 */ /* nop */
|
|
/* 02469E1C */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 02469E1C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02469E20 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02469E24 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 02469E24 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02469E28 */ cpu->r[26] = 0x00000000u;
|
|
/* 02469E2C */ _t6 = cpu->r[12] + 0x00003E18u;
|
|
/* 02469E2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02469E30 */ cpu->r[28] = cpu->r[26];
|
|
/* 02469E34 */ _t7 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02469E34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02469E38 */ cpu->r[29] = cpu->r[3] + 0x0000021Cu;
|
|
/* 02469E3C */ goto L_02469E48;
|
|
L_02469E40: ; // 0x2469e40
|
|
/* 02469E40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469E44 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469E44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02469E44 */ if (_t9) goto L_02469E48; else goto L_02469E58;
|
|
L_02469E48: ; // 0x2469e48
|
|
/* 02469E48 */ cpu->r[9] = cpu->r[29] + cpu->r[28];
|
|
/* 02469E4C */ cpu->r[27] = cpu->r[28];
|
|
/* 02469E50 */ cpu->f[30] = cpu->f[31];
|
|
/* 02469E54 */ goto L_02469E5C;
|
|
L_02469E58: ; // 0x2469e58
|
|
/* 02469E58 */ cpu->r[9] = cpu->r[29];
|
|
L_02469E5C: ; // 0x2469e5c
|
|
/* 02469E5C */ _t10 = cpu->r[9] + 0x00000000u;
|
|
/* 02469E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02469E60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02469E64 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469E64 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02469E64 */ if (_t12) goto L_02469E68; else goto L_02469EC0;
|
|
L_02469E68: ; // 0x2469e68
|
|
/* 02469E68 */ cpu->r[3] = 0x00000007u;
|
|
/* 02469E6C */ Gambit_fn_027E6EEC(cpu);
|
|
/* 02469E70 */ cpu->r[10] = cpu->r[3];
|
|
/* 02469E70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02469E74 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469E74 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02469E74 */ if (_t14) goto L_02469EC0; else goto L_02469E78;
|
|
L_02469E78: ; // 0x2469e78
|
|
/* 02469E78 */ _t15 = cpu->r[10] + 0x00000048u;
|
|
/* 02469E78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02469E7C */ cpu->r[7] = cpu->r[10] + 0x00000018u;
|
|
/* 02469E80 */ _t16 = cpu->r[10] + 0x0000004Cu;
|
|
/* 02469E80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02469E84 */ cpu->r[5] = cpu->r[31];
|
|
/* 02469E88 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02469E8C */ Gambit_fn_0281AAB4(cpu);
|
|
/* 02469E90 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02469E90 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02469E94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469E98 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02469E98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02469E9C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469E9C */ _t20 = _t19 & 0x00000001u;
|
|
/* 02469E9C */ if (_t20) goto L_02469EA0; else goto L_02469EB4;
|
|
L_02469EA0: ; // 0x2469ea0
|
|
/* 02469EA0 */ cpu->r[11] = cpu->r[29] + cpu->r[27];
|
|
/* 02469EA4 */ _t21 = cpu->r[11] + 0x00000028u;
|
|
/* 02469EA4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[30]);
|
|
/* 02469EA8 */ _t22 = cpu->r[11] + 0x00000020u;
|
|
/* 02469EA8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 02469EAC */ _t23 = cpu->r[11] + 0x00000024u;
|
|
/* 02469EAC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 02469EB0 */ goto L_02469EC0;
|
|
L_02469EB4: ; // 0x2469eb4
|
|
/* 02469EB4 */ _t24 = cpu->r[29] + 0x00000020u;
|
|
/* 02469EB4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 02469EB8 */ _t25 = cpu->r[29] + 0x00000024u;
|
|
/* 02469EB8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 02469EBC */ _t26 = cpu->r[29] + 0x00000028u;
|
|
/* 02469EBC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[30]);
|
|
L_02469EC0: ; // 0x2469ec0
|
|
/* 02469EC0 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02469EC4 */ cpu->r[27] = cpu->r[27] + 0x0000003Cu;
|
|
/* 02469EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 02469ECC */ cpu->r[28] = cpu->r[28] + 0x0000003Cu;
|
|
/* 02469ED0 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469ED0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02469ED0 */ if (_t28) goto L_02469E40; else goto L_02469ED4;
|
|
L_02469ED4: ; // 0x2469ed4
|
|
/* 02469ED4 */ /* nop */
|
|
/* 02469ED8 */ _t29 = cpu->r[1] + 0x00000030u;
|
|
/* 02469ED8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02469EDC */ _t30 = cpu->r[1] + 0x00000040u;
|
|
/* 02469EDC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02469EE0 */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 02469EE0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 02469EE4 */ _t32 = cpu->r[1] + 0x00000038u;
|
|
/* 02469EE4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 02469EE8 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469EE8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02469EE8 */ if (_t34) goto L_02469EEC; // else: addr-0 trap, fall-through
|
|
L_02469EEC: ; // 0x2469eec
|
|
/* 02469EEC */ _t35 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02469EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02469EF0 */ cpu->lr = cpu->r[0];
|
|
/* 02469EF4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02469EF8 */ return;
|
|
}
|
|
|
|
// fn_02466FC0 @ 0x2466fc0
|
|
void Gambit_fn_02466FC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02466FC0: ; // 0x2466fc0
|
|
/* 02466FC0 */ cpu->r[0] = cpu->lr;
|
|
/* 02466FC4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02466FC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02466FC8 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466FC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02466FC8 */ cpu->r[1] = _t1;
|
|
/* 02466FCC */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 02466FCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466FD0 */ _t3 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466FD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02466FD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02466FD8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02466FD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02466FDC */ Gambit_fn_0246BC34(cpu);
|
|
/* 02466FE0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466FE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02466FE4 */ cpu->lr = cpu->r[0];
|
|
/* 02466FE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466FEC */ return;
|
|
}
|
|
|
|
// fn_02466FC8 @ 0x2466fc8
|
|
void Gambit_fn_02466FC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02466FC8: ; // 0x2466fc8
|
|
/* 02466FC8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02466FC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02466FC8 */ cpu->r[1] = _t0;
|
|
/* 02466FCC */ _t1 = cpu->r[5] + 0x00000000u;
|
|
/* 02466FCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02466FD0 */ _t2 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466FD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02466FD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02466FD8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02466FD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02466FDC */ Gambit_fn_0246BC34(cpu);
|
|
/* 02466FE0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02466FE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02466FE4 */ cpu->lr = cpu->r[0];
|
|
/* 02466FE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02466FEC */ return;
|
|
}
|
|
|
|
// fn_02466FF0 @ 0x2466ff0
|
|
void Gambit_fn_02466FF0(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_02466FF0: ; // 0x2466ff0
|
|
/* 02466FF0 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466FF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466FF4 */ goto L_0246A0B0;
|
|
L_0246A0B0: ; // 0x246a0b0
|
|
/* 0246A0B0 */ cpu->r[7] = 0x00000000u;
|
|
/* 0246A0B4 */ cpu->r[12] = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246A0B8 */ cpu->r[5] = cpu->r[7];
|
|
/* 0246A0BC */ goto L_0246A0C8;
|
|
L_0246A0C0: ; // 0x246a0c0
|
|
/* 0246A0C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 0246A0C4 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A0C4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0246A0C4 */ if (_t2) goto L_0246A0C8; else goto L_0246A0D4;
|
|
L_0246A0C8: ; // 0x246a0c8
|
|
/* 0246A0C8 */ cpu->r[11] = cpu->r[12] + cpu->r[5];
|
|
/* 0246A0CC */ cpu->r[10] = cpu->r[5];
|
|
/* 0246A0D0 */ goto L_0246A0D8;
|
|
L_0246A0D4: ; // 0x246a0d4
|
|
/* 0246A0D4 */ cpu->r[11] = cpu->r[12];
|
|
L_0246A0D8: ; // 0x246a0d8
|
|
/* 0246A0D8 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 0246A0D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246A0DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[4]);
|
|
/* 0246A0E0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A0E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246A0E0 */ if (_t5) goto L_0246A0E4; else goto L_0246A12C;
|
|
L_0246A0E4: ; // 0x246a0e4
|
|
/* 0246A0E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 0246A0E8 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A0E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246A0E8 */ if (_t7) goto L_0246A0EC; else goto L_0246A100;
|
|
L_0246A0EC: ; // 0x246a0ec
|
|
/* 0246A0EC */ cpu->r[6] = cpu->r[12] + cpu->r[10];
|
|
/* 0246A0F0 */ _t8 = cpu->r[6] + 0x00000008u;
|
|
/* 0246A0F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246A0F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0246A0F8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A0F8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0246A0F8 */ if (_t10) goto L_0246A12C; else goto L_0246A0FC;
|
|
L_0246A0FC: ; // 0x246a0fc
|
|
/* 0246A0FC */ goto L_0246A10C;
|
|
L_0246A100: ; // 0x246a100
|
|
/* 0246A100 */ _t11 = cpu->r[12] + 0x00000008u;
|
|
/* 0246A100 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246A104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0246A108 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A108 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0246A108 */ if (_t13) goto L_0246A12C; else goto L_0246A10C;
|
|
L_0246A10C: ; // 0x246a10c
|
|
/* 0246A10C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 0246A110 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A110 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0246A110 */ if (_t15) goto L_0246A114; else goto L_0246A118;
|
|
L_0246A114: ; // 0x246a114
|
|
/* 0246A114 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
L_0246A118: ; // 0x246a118
|
|
/* 0246A118 */ _t16 = cpu->r[12] + 0x00000008u;
|
|
/* 0246A118 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246A11C */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 0246A11C */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246A120 */ _t18 = cpu->r[10] + 0x0000008Cu;
|
|
/* 0246A120 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246A124 */ cpu->ctr = cpu->r[0];
|
|
/* 0246A128 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0246A12C: ; // 0x246a12c
|
|
/* 0246A12C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0246A130 */ cpu->r[10] = cpu->r[10] + 0x0000003Cu;
|
|
/* 0246A134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0246A138 */ cpu->r[5] = cpu->r[5] + 0x0000003Cu;
|
|
/* 0246A13C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A13C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0246A13C */ if (_t20) goto L_0246A0C0; else goto L_0246A140;
|
|
L_0246A140: ; // 0x246a140
|
|
/* 0246A140 */ cpu->r[3] = 0x00000000u;
|
|
/* 0246A144 */ return;
|
|
}
|
|
|
|
// fn_02466FF8 @ 0x2466ff8
|
|
void Gambit_fn_02466FF8(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_02466FF8: ; // 0x2466ff8
|
|
/* 02466FF8 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02466FF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02466FFC */ goto L_0246A148;
|
|
L_0246A148: ; // 0x246a148
|
|
/* 0246A148 */ cpu->r[7] = 0x00000000u;
|
|
/* 0246A14C */ cpu->r[12] = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246A150 */ cpu->r[5] = cpu->r[7];
|
|
/* 0246A154 */ goto L_0246A160;
|
|
L_0246A158: ; // 0x246a158
|
|
/* 0246A158 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 0246A15C */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A15C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0246A15C */ if (_t2) goto L_0246A160; else goto L_0246A16C;
|
|
L_0246A160: ; // 0x246a160
|
|
/* 0246A160 */ cpu->r[11] = cpu->r[12] + cpu->r[5];
|
|
/* 0246A164 */ cpu->r[10] = cpu->r[5];
|
|
/* 0246A168 */ goto L_0246A170;
|
|
L_0246A16C: ; // 0x246a16c
|
|
/* 0246A16C */ cpu->r[11] = cpu->r[12];
|
|
L_0246A170: ; // 0x246a170
|
|
/* 0246A170 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 0246A170 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246A174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[4]);
|
|
/* 0246A178 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A178 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0246A178 */ if (_t5) goto L_0246A17C; else goto L_0246A1C4;
|
|
L_0246A17C: ; // 0x246a17c
|
|
/* 0246A17C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 0246A180 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A180 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246A180 */ if (_t7) goto L_0246A184; else goto L_0246A198;
|
|
L_0246A184: ; // 0x246a184
|
|
/* 0246A184 */ cpu->r[6] = cpu->r[12] + cpu->r[10];
|
|
/* 0246A188 */ _t8 = cpu->r[6] + 0x00000008u;
|
|
/* 0246A188 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246A18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0246A190 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A190 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0246A190 */ if (_t10) goto L_0246A1C4; else goto L_0246A194;
|
|
L_0246A194: ; // 0x246a194
|
|
/* 0246A194 */ goto L_0246A1A4;
|
|
L_0246A198: ; // 0x246a198
|
|
/* 0246A198 */ _t11 = cpu->r[12] + 0x00000008u;
|
|
/* 0246A198 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246A19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0246A1A0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A1A0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0246A1A0 */ if (_t13) goto L_0246A1C4; else goto L_0246A1A4;
|
|
L_0246A1A4: ; // 0x246a1a4
|
|
/* 0246A1A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 0246A1A8 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A1A8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0246A1A8 */ if (_t15) goto L_0246A1AC; else goto L_0246A1B0;
|
|
L_0246A1AC: ; // 0x246a1ac
|
|
/* 0246A1AC */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
L_0246A1B0: ; // 0x246a1b0
|
|
/* 0246A1B0 */ _t16 = cpu->r[12] + 0x00000008u;
|
|
/* 0246A1B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0246A1B4 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 0246A1B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0246A1B8 */ _t18 = cpu->r[10] + 0x000000D4u;
|
|
/* 0246A1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0246A1BC */ cpu->ctr = cpu->r[0];
|
|
/* 0246A1C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0246A1C4: ; // 0x246a1c4
|
|
/* 0246A1C4 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0246A1C8 */ cpu->r[10] = cpu->r[10] + 0x0000003Cu;
|
|
/* 0246A1CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0246A1D0 */ cpu->r[5] = cpu->r[5] + 0x0000003Cu;
|
|
/* 0246A1D4 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A1D4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0246A1D4 */ if (_t20) goto L_0246A158; else goto L_0246A1D8;
|
|
L_0246A1D8: ; // 0x246a1d8
|
|
/* 0246A1D8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0246A1DC */ return;
|
|
}
|
|
|
|
// fn_02467000 @ 0x2467000
|
|
void Gambit_fn_02467000(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_02467000: ; // 0x2467000
|
|
/* 02467000 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02467000 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02467004 */ goto L_02469EFC;
|
|
L_02469EFC: ; // 0x2469efc
|
|
/* 02469EFC */ _t1 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02469EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02469EFC */ cpu->r[1] = _t1;
|
|
/* 02469F00 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02469F00 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02469F04 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02469F04 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02469F08 */ /* nop */
|
|
/* 02469F0C */ cpu->r[0] = cpu->lr;
|
|
/* 02469F10 */ /* nop */
|
|
/* 02469F14 */ cpu->r[31] = cpu->r[5];
|
|
/* 02469F18 */ cpu->r[30] = cpu->r[4];
|
|
/* 02469F1C */ /* nop */
|
|
/* 02469F20 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 02469F20 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02469F24 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02469F28 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 02469F28 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02469F2C */ cpu->r[26] = 0x00000000u;
|
|
/* 02469F30 */ _t6 = cpu->r[9] + 0x00003E34u;
|
|
/* 02469F30 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02469F34 */ cpu->r[28] = cpu->r[26];
|
|
/* 02469F38 */ _t7 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02469F38 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02469F3C */ cpu->r[29] = cpu->r[3] + 0x0000021Cu;
|
|
/* 02469F40 */ goto L_02469F4C;
|
|
L_02469F44: ; // 0x2469f44
|
|
/* 02469F44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469F48 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469F48 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02469F48 */ if (_t9) goto L_02469F4C; else goto L_02469F5C;
|
|
L_02469F4C: ; // 0x2469f4c
|
|
/* 02469F4C */ cpu->r[12] = cpu->r[29] + cpu->r[28];
|
|
/* 02469F50 */ cpu->r[27] = cpu->r[28];
|
|
/* 02469F54 */ cpu->f[30] = cpu->f[31];
|
|
/* 02469F58 */ goto L_02469F60;
|
|
L_02469F5C: ; // 0x2469f5c
|
|
/* 02469F5C */ cpu->r[12] = cpu->r[29];
|
|
L_02469F60: ; // 0x2469f60
|
|
/* 02469F60 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 02469F60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02469F64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02469F68 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469F68 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02469F68 */ if (_t12) goto L_02469F6C; else goto L_0246A074;
|
|
L_02469F6C: ; // 0x2469f6c
|
|
/* 02469F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469F70 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469F70 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02469F70 */ if (_t14) goto L_02469F74; else goto L_02469F88;
|
|
L_02469F74: ; // 0x2469f74
|
|
/* 02469F74 */ cpu->r[5] = cpu->r[29] + cpu->r[27];
|
|
/* 02469F78 */ _t15 = cpu->r[5] + 0x00000008u;
|
|
/* 02469F78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02469F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02469F80 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469F80 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02469F80 */ if (_t17) goto L_0246A074; else goto L_02469F84;
|
|
L_02469F84: ; // 0x2469f84
|
|
/* 02469F84 */ goto L_02469F94;
|
|
L_02469F88: ; // 0x2469f88
|
|
/* 02469F88 */ _t18 = cpu->r[29] + 0x00000008u;
|
|
/* 02469F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02469F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02469F90 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469F90 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02469F90 */ if (_t20) goto L_0246A074; else goto L_02469F94;
|
|
L_02469F94: ; // 0x2469f94
|
|
/* 02469F94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469F98 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469F98 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02469F98 */ if (_t22) goto L_02469F9C; else goto L_02469FB0;
|
|
L_02469F9C: ; // 0x2469f9c
|
|
/* 02469F9C */ cpu->r[6] = cpu->r[29] + cpu->r[27];
|
|
/* 02469FA0 */ _t23 = cpu->r[6] + 0x00000018u;
|
|
/* 02469FA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02469FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02469FA8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469FA8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02469FA8 */ if (_t25) goto L_02469FAC; else goto L_02469FBC;
|
|
L_02469FAC: ; // 0x2469fac
|
|
/* 02469FAC */ goto L_02469FF4;
|
|
L_02469FB0: ; // 0x2469fb0
|
|
/* 02469FB0 */ _t26 = cpu->r[29] + 0x00000018u;
|
|
/* 02469FB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02469FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02469FB8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469FB8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02469FB8 */ if (_t28) goto L_02469FF4; else goto L_02469FBC;
|
|
L_02469FBC: ; // 0x2469fbc
|
|
/* 02469FBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469FC0 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469FC0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02469FC0 */ if (_t30) goto L_02469FC4; else goto L_02469FE0;
|
|
L_02469FC4: ; // 0x2469fc4
|
|
/* 02469FC4 */ cpu->r[8] = cpu->r[29] + cpu->r[27];
|
|
/* 02469FC8 */ _t31 = cpu->r[8] + 0x00000008u;
|
|
/* 02469FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02469FCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02469FD0 */ Gambit_fn_027EDF24(cpu);
|
|
/* 02469FD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02469FD8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469FD8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02469FD8 */ if (_t33) goto L_0246A05C; else goto L_02469FDC;
|
|
L_02469FDC: ; // 0x2469fdc
|
|
/* 02469FDC */ goto L_02469FF4;
|
|
L_02469FE0: ; // 0x2469fe0
|
|
/* 02469FE0 */ _t34 = cpu->r[29] + 0x00000008u;
|
|
/* 02469FE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02469FE4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02469FE8 */ Gambit_fn_027EDF24(cpu);
|
|
/* 02469FEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02469FF0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02469FF0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02469FF0 */ if (_t36) goto L_0246A05C; else goto L_02469FF4;
|
|
L_02469FF4: ; // 0x2469ff4
|
|
/* 02469FF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 02469FF8 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02469FF8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02469FF8 */ if (_t38) goto L_02469FFC; else goto L_0246A030;
|
|
L_02469FFC: ; // 0x2469ffc
|
|
/* 02469FFC */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246A000 */ cpu->r[11] = cpu->r[29] + cpu->r[27];
|
|
/* 0246A004 */ cpu->r[9] = cpu->r[9] + 0x00003D48u;
|
|
/* 0246A008 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246A00C */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246A00C */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
/* 0246A010 */ cpu->r[0] = cpu->r[0] + 0x00003E48u;
|
|
/* 0246A014 */ cpu->f[1] = cpu->f[30];
|
|
/* 0246A018 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 0246A018 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0246A01C */ _t41 = cpu->r[11] + 0x00000008u;
|
|
/* 0246A01C */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0246A020 */ cpu->r[4] = 0x00000000u;
|
|
/* 0246A024 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246A028 */ Gambit_fn_027EDCA8(cpu);
|
|
/* 0246A02C */ goto L_0246A05C;
|
|
L_0246A030: ; // 0x246a030
|
|
/* 0246A030 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0246A034 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246A038 */ cpu->r[9] = cpu->r[9] + 0x00003D48u;
|
|
/* 0246A03C */ cpu->r[0] = cpu->r[0] + 0x00003E48u;
|
|
/* 0246A040 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246A040 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0246A044 */ cpu->f[1] = cpu->f[30];
|
|
/* 0246A048 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 0246A048 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0246A04C */ _t44 = cpu->r[29] + 0x00000008u;
|
|
/* 0246A04C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0246A050 */ cpu->r[4] = 0x00000000u;
|
|
/* 0246A054 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246A058 */ Gambit_fn_027EDCA8(cpu);
|
|
L_0246A05C: ; // 0x246a05c
|
|
/* 0246A05C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A060 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A060 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0246A060 */ if (_t46) goto L_0246A064; else goto L_0246A070;
|
|
L_0246A064: ; // 0x246a064
|
|
/* 0246A064 */ cpu->r[12] = cpu->r[29] + cpu->r[27];
|
|
/* 0246A068 */ _t47 = cpu->r[12] + 0x00000018u;
|
|
/* 0246A068 */ rbrew_write32(cpu->mem, _t47, cpu->r[31]);
|
|
/* 0246A06C */ goto L_0246A074;
|
|
L_0246A070: ; // 0x246a070
|
|
/* 0246A070 */ _t48 = cpu->r[29] + 0x00000018u;
|
|
/* 0246A070 */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
L_0246A074: ; // 0x246a074
|
|
/* 0246A074 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0246A078 */ cpu->r[27] = cpu->r[27] + 0x0000003Cu;
|
|
/* 0246A07C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 0246A080 */ cpu->r[28] = cpu->r[28] + 0x0000003Cu;
|
|
/* 0246A084 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A084 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0246A084 */ if (_t50) goto L_02469F44; else goto L_0246A088;
|
|
L_0246A088: ; // 0x246a088
|
|
/* 0246A088 */ /* nop */
|
|
/* 0246A08C */ _t51 = cpu->r[1] + 0x00000030u;
|
|
/* 0246A08C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0246A090 */ _t52 = cpu->r[1] + 0x00000040u;
|
|
/* 0246A090 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0246A094 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 0246A094 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 0246A098 */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 0246A098 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t54);
|
|
/* 0246A09C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A09C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0246A09C */ if (_t56) goto L_0246A0A0; // else: addr-0 trap, fall-through
|
|
L_0246A0A0: ; // 0x246a0a0
|
|
/* 0246A0A0 */ _t57 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0246A0A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0246A0A4 */ cpu->lr = cpu->r[0];
|
|
/* 0246A0A8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0246A0AC */ return;
|
|
}
|
|
|
|
// fn_02467008 @ 0x2467008
|
|
void Gambit_fn_02467008(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_02467008: ; // 0x2467008
|
|
/* 02467008 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02467008 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0246700C */ goto L_0246A420;
|
|
L_0246A420: ; // 0x246a420
|
|
/* 0246A420 */ _t1 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0246A420 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0246A420 */ cpu->r[1] = _t1;
|
|
/* 0246A424 */ /* nop */
|
|
/* 0246A428 */ cpu->r[26] = 0x00000000u;
|
|
/* 0246A42C */ cpu->r[0] = cpu->lr;
|
|
/* 0246A430 */ cpu->r[31] = cpu->r[26];
|
|
/* 0246A434 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0246A438 */ cpu->r[27] = cpu->r[3] + 0x0000021Cu;
|
|
/* 0246A43C */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0246A43C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0246A440 */ /* nop */
|
|
/* 0246A444 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0246A448 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0246A448 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0246A44C */ cpu->r[28] = cpu->r[28] + 0x00003D48u;
|
|
/* 0246A450 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0246A450 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246A454 */ cpu->r[29] = cpu->r[4];
|
|
/* 0246A458 */ cpu->r[30] = cpu->r[5];
|
|
/* 0246A458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0246A45C */ _t5 = cpu->r[10] + 0x00003E34u;
|
|
/* 0246A45C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0246A460 */ cpu->r[10] = cpu->r[27];
|
|
/* 0246A464 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A464 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0246A464 */ if (_t7) goto L_0246A468; else goto L_0246A498;
|
|
L_0246A468: ; // 0x246a468
|
|
/* 0246A468 */ cpu->r[25] = 0x00000000u;
|
|
/* 0246A46C */ goto L_0246A56C;
|
|
L_0246A470: ; // 0x246a470
|
|
/* 0246A470 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A474 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A474 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0246A474 */ if (_t9) goto L_0246A478; else goto L_0246A568;
|
|
L_0246A478: ; // 0x246a478
|
|
/* 0246A478 */ cpu->r[31] = (uint32_t)((int32_t)cpu->r[26] * (int32_t)0x0000003Cu);
|
|
/* 0246A47C */ cpu->r[10] = 0x100A0000u;
|
|
/* 0246A480 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0246A484 */ _t10 = cpu->r[10] + 0x00003E34u;
|
|
/* 0246A484 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0246A488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0246A48C */ cpu->r[10] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A490 */ cpu->r[28] = cpu->r[28] + 0x00003D48u;
|
|
/* 0246A494 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A494 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0246A494 */ if (_t12) goto L_0246A468; else goto L_0246A498;
|
|
L_0246A498: ; // 0x246a498
|
|
/* 0246A498 */ cpu->r[25] = 0x00000001u;
|
|
/* 0246A49C */ goto L_0246A4AC;
|
|
L_0246A4A0: ; // 0x246a4a0
|
|
/* 0246A4A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A4A4 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A4A4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0246A4A4 */ if (_t14) goto L_0246A478; else goto L_0246A4A8;
|
|
L_0246A4A8: ; // 0x246a4a8
|
|
/* 0246A4A8 */ cpu->r[10] = cpu->r[27];
|
|
L_0246A4AC: ; // 0x246a4ac
|
|
/* 0246A4AC */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0246A4AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0246A4B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0246A4B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A4B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0246A4B4 */ if (_t17) goto L_0246A4B8; else goto L_0246A554;
|
|
L_0246A4B8: ; // 0x246a4b8
|
|
/* 0246A4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A4BC */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A4BC */ _t19 = _t18 & 0x00000001u;
|
|
/* 0246A4BC */ if (_t19) goto L_0246A4C0; else goto L_0246A4D4;
|
|
L_0246A4C0: ; // 0x246a4c0
|
|
/* 0246A4C0 */ cpu->r[12] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A4C4 */ _t20 = cpu->r[12] + 0x00000038u;
|
|
/* 0246A4C4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0246A4C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0246A4CC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A4CC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0246A4CC */ if (_t22) goto L_0246A4E0; else goto L_0246A4D0;
|
|
L_0246A4D0: ; // 0x246a4d0
|
|
/* 0246A4D0 */ goto L_0246A554;
|
|
L_0246A4D4: ; // 0x246a4d4
|
|
/* 0246A4D4 */ _t23 = cpu->r[27] + 0x00000038u;
|
|
/* 0246A4D4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t23);
|
|
/* 0246A4D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0246A4DC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A4DC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0246A4DC */ if (_t25) goto L_0246A4E0; else goto L_0246A554;
|
|
L_0246A4E0: ; // 0x246a4e0
|
|
/* 0246A4E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A4E4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A4E4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0246A4E4 */ if (_t27) goto L_0246A4E8; else goto L_0246A520;
|
|
L_0246A4E8: ; // 0x246a4e8
|
|
/* 0246A4E8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246A4EC */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246A4EC */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 0246A4F0 */ cpu->r[8] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A4F4 */ cpu->r[0] = cpu->r[0] + 0x00003E68u;
|
|
/* 0246A4F8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0246A4FC */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0246A4FC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0246A500 */ _t30 = cpu->r[8] + 0x00000008u;
|
|
/* 0246A500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0246A504 */ cpu->r[4] = 0x00000001u;
|
|
/* 0246A508 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246A50C */ Gambit_fn_027EDCA8(cpu);
|
|
/* 0246A510 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A514 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A514 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0246A514 */ if (_t32) goto L_0246A54C; else goto L_0246A518;
|
|
L_0246A518: ; // 0x246a518
|
|
/* 0246A518 */ _t33 = cpu->r[27] + 0x00000038u;
|
|
/* 0246A518 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[25]);
|
|
/* 0246A51C */ goto L_0246A554;
|
|
L_0246A520: ; // 0x246a520
|
|
/* 0246A520 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246A524 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246A524 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 0246A528 */ cpu->r[0] = cpu->r[0] + 0x00003E68u;
|
|
/* 0246A52C */ cpu->f[1] = cpu->f[31];
|
|
/* 0246A530 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 0246A530 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0246A534 */ _t36 = cpu->r[27] + 0x00000008u;
|
|
/* 0246A534 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0246A538 */ cpu->r[4] = 0x00000001u;
|
|
/* 0246A53C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246A540 */ Gambit_fn_027EDCA8(cpu);
|
|
/* 0246A544 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A548 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A548 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0246A548 */ if (_t38) goto L_0246A54C; else goto L_0246A518;
|
|
L_0246A54C: ; // 0x246a54c
|
|
/* 0246A54C */ cpu->r[9] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A550 */ _t39 = cpu->r[9] + 0x00000038u;
|
|
/* 0246A550 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[25]);
|
|
L_0246A554: ; // 0x246a554
|
|
/* 0246A554 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0246A558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 0246A55C */ cpu->r[31] = cpu->r[31] + 0x0000003Cu;
|
|
/* 0246A560 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A560 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0246A560 */ if (_t41) goto L_0246A4A0; else goto L_0246A564;
|
|
L_0246A564: ; // 0x246a564
|
|
/* 0246A564 */ goto L_0246A624;
|
|
L_0246A568: ; // 0x246a568
|
|
/* 0246A568 */ cpu->r[10] = cpu->r[27];
|
|
L_0246A56C: ; // 0x246a56c
|
|
/* 0246A56C */ _t42 = cpu->r[10] + 0x00000000u;
|
|
/* 0246A56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0246A570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0246A574 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A574 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0246A574 */ if (_t44) goto L_0246A578; else goto L_0246A614;
|
|
L_0246A578: ; // 0x246a578
|
|
/* 0246A578 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A57C */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A57C */ _t46 = _t45 & 0x00000001u;
|
|
/* 0246A57C */ if (_t46) goto L_0246A580; else goto L_0246A594;
|
|
L_0246A580: ; // 0x246a580
|
|
/* 0246A580 */ cpu->r[11] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A584 */ _t47 = cpu->r[11] + 0x00000038u;
|
|
/* 0246A584 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 0246A588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246A58C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A58C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0246A58C */ if (_t49) goto L_0246A614; else goto L_0246A590;
|
|
L_0246A590: ; // 0x246a590
|
|
/* 0246A590 */ goto L_0246A5A0;
|
|
L_0246A594: ; // 0x246a594
|
|
/* 0246A594 */ _t50 = cpu->r[27] + 0x00000038u;
|
|
/* 0246A594 */ cpu->r[0] = rbrew_read8(cpu->mem, _t50);
|
|
/* 0246A598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0246A59C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246A59C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0246A59C */ if (_t52) goto L_0246A614; else goto L_0246A5A0;
|
|
L_0246A5A0: ; // 0x246a5a0
|
|
/* 0246A5A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A5A4 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A5A4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0246A5A4 */ if (_t54) goto L_0246A5A8; else goto L_0246A5E0;
|
|
L_0246A5A8: ; // 0x246a5a8
|
|
/* 0246A5A8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246A5AC */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 0246A5AC */ rbrew_write32(cpu->mem, _t55, cpu->r[28]);
|
|
/* 0246A5B0 */ cpu->r[12] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A5B4 */ cpu->r[0] = cpu->r[0] + 0x00003E5Cu;
|
|
/* 0246A5B8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0246A5BC */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0246A5BC */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 0246A5C0 */ _t57 = cpu->r[12] + 0x00000008u;
|
|
/* 0246A5C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0246A5C4 */ cpu->r[4] = 0x00000001u;
|
|
/* 0246A5C8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246A5CC */ Gambit_fn_027EDCA8(cpu);
|
|
/* 0246A5D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A5D4 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A5D4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0246A5D4 */ if (_t59) goto L_0246A60C; else goto L_0246A5D8;
|
|
L_0246A5D8: ; // 0x246a5d8
|
|
/* 0246A5D8 */ _t60 = cpu->r[27] + 0x00000038u;
|
|
/* 0246A5D8 */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[25]);
|
|
/* 0246A5DC */ goto L_0246A614;
|
|
L_0246A5E0: ; // 0x246a5e0
|
|
/* 0246A5E0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0246A5E4 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 0246A5E4 */ rbrew_write32(cpu->mem, _t61, cpu->r[28]);
|
|
/* 0246A5E8 */ cpu->r[0] = cpu->r[0] + 0x00003E5Cu;
|
|
/* 0246A5EC */ cpu->f[1] = cpu->f[31];
|
|
/* 0246A5F0 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 0246A5F0 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 0246A5F4 */ _t63 = cpu->r[27] + 0x00000008u;
|
|
/* 0246A5F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0246A5F8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0246A5FC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0246A600 */ Gambit_fn_027EDCA8(cpu);
|
|
/* 0246A604 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000003u);
|
|
/* 0246A608 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A608 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0246A608 */ if (_t65) goto L_0246A60C; else goto L_0246A5D8;
|
|
L_0246A60C: ; // 0x246a60c
|
|
/* 0246A60C */ cpu->r[11] = cpu->r[27] + cpu->r[31];
|
|
/* 0246A610 */ _t66 = cpu->r[11] + 0x00000038u;
|
|
/* 0246A610 */ rbrew_write8(cpu->mem, _t66, (uint8_t)cpu->r[25]);
|
|
L_0246A614: ; // 0x246a614
|
|
/* 0246A614 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0246A618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000003u);
|
|
/* 0246A61C */ cpu->r[31] = cpu->r[31] + 0x0000003Cu;
|
|
/* 0246A620 */ _t67 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A620 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0246A620 */ if (_t68) goto L_0246A470; else goto L_0246A624;
|
|
L_0246A624: ; // 0x246a624
|
|
/* 0246A624 */ /* nop */
|
|
/* 0246A628 */ _t69 = cpu->r[1] + 0x00000040u;
|
|
/* 0246A628 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0246A62C */ _t70 = cpu->r[1] + 0x00000038u;
|
|
/* 0246A62C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 0246A630 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246A630 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0246A630 */ if (_t72) goto L_0246A634; // else: addr-0 trap, fall-through
|
|
L_0246A634: ; // 0x246a634
|
|
/* 0246A634 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0246A634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0246A638 */ cpu->lr = cpu->r[0];
|
|
/* 0246A63C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0246A640 */ return;
|
|
}
|
|
|
|
// fn_02467010 @ 0x2467010
|
|
void Gambit_fn_02467010(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02467010: ; // 0x2467010
|
|
/* 02467010 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02467010 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02467014 */ goto L_0246A644;
|
|
L_0246A644: ; // 0x246a644
|
|
/* 0246A644 */ _t1 = cpu->r[3] + 0x000002D0u;
|
|
/* 0246A644 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0246A648 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0246A648 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0246A64C */ _t3 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0246A64C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246A650 */ cpu->ctr = cpu->r[0];
|
|
/* 0246A654 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02467018 @ 0x2467018
|
|
void Gambit_fn_02467018(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02467018: ; // 0x2467018
|
|
/* 02467018 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02467018 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0246701C */ goto L_0246A658;
|
|
L_0246A658: ; // 0x246a658
|
|
/* 0246A658 */ _t1 = cpu->r[3] + 0x000002D0u;
|
|
/* 0246A658 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0246A65C */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0246A65C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0246A660 */ _t3 = cpu->r[12] + 0x000000D4u;
|
|
/* 0246A660 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246A664 */ cpu->ctr = cpu->r[0];
|
|
/* 0246A668 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02467020 @ 0x2467020
|
|
void Gambit_fn_02467020(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02467020: ; // 0x2467020
|
|
/* 02467020 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02467020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02467024 */ goto L_0246A680;
|
|
L_0246A680: ; // 0x246a680
|
|
/* 0246A680 */ _t1 = cpu->r[3] + 0x000002D0u;
|
|
/* 0246A680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0246A684 */ _t2 = cpu->r[12] + 0x00000160u;
|
|
/* 0246A684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0246A688 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 0246A68C */ _t3 = cpu->r[12] + 0x00000160u;
|
|
/* 0246A68C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246A690 */ return;
|
|
}
|
|
|
|
// fn_02467028 @ 0x2467028
|
|
void Gambit_fn_02467028(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_020DA900: ; // 0x20da900
|
|
/* 020DA900 */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 020DA900 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020DA900 */ cpu->r[1] = _t0;
|
|
/* 020DA904 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 020DA904 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020DA908 */ cpu->r[0] = cpu->lr;
|
|
/* 020DA90C */ _t2 = cpu->r[1] + 0x000000B0u;
|
|
/* 020DA90C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 020DA910 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 020DA910 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[27]);
|
|
/* 020DA914 */ _t4 = cpu->r[1] + 0x0000008Cu;
|
|
/* 020DA914 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 020DA918 */ _t5 = cpu->r[1] + 0x000000D0u;
|
|
/* 020DA918 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 020DA91C */ _t6 = cpu->r[1] + 0x000000C0u;
|
|
/* 020DA91C */ rbrew_write_f64(cpu->mem, _t6, cpu->f[30]);
|
|
/* 020DA920 */ /* nop */
|
|
/* 020DA924 */ _t7 = cpu->r[1] + 0x000000A0u;
|
|
/* 020DA924 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 020DA928 */ _t8 = cpu->r[1] + 0x000000E4u;
|
|
/* 020DA928 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 020DA92C */ /* nop */
|
|
/* 020DA930 */ _t9 = cpu->r[1] + 0x000000D8u;
|
|
/* 020DA930 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 020DA934 */ /* nop */
|
|
/* 020DA938 */ _t10 = cpu->r[1] + 0x000000A8u;
|
|
/* 020DA938 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[28]);
|
|
/* 020DA93C */ /* nop */
|
|
/* 020DA940 */ _t11 = cpu->r[1] + 0x000000C8u;
|
|
/* 020DA940 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 020DA944 */ /* nop */
|
|
/* 020DA948 */ _t12 = cpu->r[1] + 0x000000B8u;
|
|
/* 020DA948 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[29]);
|
|
/* 020DA94C */ cpu->r[30] = cpu->r[3];
|
|
/* 020DA950 */ _t13 = cpu->r[1] + 0x00000098u;
|
|
/* 020DA950 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[27]);
|
|
/* 020DA954 */ cpu->r[31] = cpu->r[4];
|
|
/* 020DA958 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 020DA958 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 020DA95C */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 020DA960 */ Gambit_fn_027EE274(cpu);
|
|
/* 020DA964 */ _t15 = cpu->r[1] + 0x00000078u;
|
|
/* 020DA964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 020DA968 */ _t16 = cpu->r[1] + 0x0000007Cu;
|
|
/* 020DA968 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 020DA96C */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 020DA96C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 020DA970 */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020DA970 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 020DA974 */ _t19 = cpu->r[1] + 0x0000006Cu;
|
|
/* 020DA974 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 020DA978 */ _t20 = cpu->r[1] + 0x0000005Cu;
|
|
/* 020DA978 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 020DA97C */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 020DA97C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 020DA980 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 020DA980 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 020DA984 */ _t23 = cpu->r[1] + 0x00000058u;
|
|
/* 020DA984 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 020DA988 */ _t24 = cpu->r[1] + 0x00000064u;
|
|
/* 020DA988 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 020DA98C */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 020DA98C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 020DA990 */ _t26 = cpu->r[1] + 0x00000074u;
|
|
/* 020DA990 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 020DA994 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020DA994 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 020DA998 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 020DA99C */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 020DA99C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 020DA9A0 */ Gambit_fn_02C69350(cpu);
|
|
/* 020DA9A4 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 020DA9A8 */ cpu->f[27] = cpu->f[1];
|
|
/* 020DA9AC */ Gambit_fn_02C69350(cpu);
|
|
/* 020DA9B0 */ cpu->r[12] = 0x10020000u;
|
|
/* 020DA9B4 */ _t29 = cpu->r[12] + 0xFFFF971Cu;
|
|
/* 020DA9B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 020DA9B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[0]);
|
|
/* 020DA9BC */ cpu->f[28] = cpu->f[1];
|
|
/* 020DA9C0 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020DA9C0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 020DA9C0 */ if (_t31) goto L_020DAADC; else goto L_020DA9C4;
|
|
L_020DA9C4: ; // 0x20da9c4
|
|
/* 020DA9C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[28], cpu->f[0]);
|
|
/* 020DA9C8 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020DA9C8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 020DA9C8 */ if (_t33) goto L_020DAADC; else goto L_020DA9CC;
|
|
L_020DA9CC: ; // 0x20da9cc
|
|
/* 020DA9CC */ cpu->r[11] = 0x10020000u;
|
|
/* 020DA9D0 */ _t34 = cpu->r[11] + 0xFFFF9720u;
|
|
/* 020DA9D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 020DA9D4 */ _t35 = cpu->r[30] + 0x00000000u;
|
|
/* 020DA9D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 020DA9D8 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 020DA9D8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[30]);
|
|
/* 020DA9DC */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 020DA9DC */ rbrew_write_f32(cpu->mem, _t37, cpu->f[30]);
|
|
/* 020DA9E0 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 020DA9E0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[30]);
|
|
/* 020DA9E4 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 020DA9E8 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020DA9E8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[30]);
|
|
/* 020DA9EC */ Gambit_fn_0285F9C8(cpu);
|
|
/* 020DA9F0 */ _t40 = cpu->r[1] + 0x00000050u;
|
|
/* 020DA9F0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 020DA9F4 */ _t41 = cpu->r[31] + 0x00000004u;
|
|
/* 020DA9F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 020DA9F8 */ cpu->f[5] = cpu->f[11] * cpu->f[27];
|
|
/* 020DA9FC */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 020DA9FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 020DAA00 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 020DAA00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 020DAA04 */ cpu->f[8] = cpu->f[11] - cpu->f[29];
|
|
/* 020DAA08 */ _t44 = cpu->r[1] + 0x0000004Cu;
|
|
/* 020DAA08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 020DAA0C */ _t45 = cpu->r[1] + 0x00000030u;
|
|
/* 020DAA0C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[8]);
|
|
/* 020DAA10 */ cpu->f[13] = cpu->f[7] - cpu->f[31];
|
|
/* 020DAA14 */ /* nop */
|
|
/* 020DAA18 */ cpu->f[4] = cpu->f[12] * cpu->f[27];
|
|
/* 020DAA1C */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 020DAA1C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 020DAA20 */ /* nop */
|
|
/* 020DAA24 */ cpu->f[6] = cpu->f[0] * cpu->f[28];
|
|
/* 020DAA28 */ /* nop */
|
|
/* 020DAA2C */ /* nop */
|
|
/* 020DAA30 */ _t47 = cpu->r[1] + 0x00000054u;
|
|
/* 020DAA30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 020DAA34 */ /* nop */
|
|
/* 020DAA38 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 020DAA38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 020DAA3C */ cpu->f[12] = cpu->f[10];
|
|
/* 020DAA40 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 020DAA40 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[5]);
|
|
/* 020DAA44 */ /* nop */
|
|
/* 020DAA48 */ cpu->f[7] = cpu->f[9] * cpu->f[28];
|
|
/* 020DAA4C */ cpu->f[12] = fma(cpu->f[30], cpu->f[11], cpu->f[12]);
|
|
/* 020DAA50 */ cpu->f[13] = cpu->f[12] / cpu->f[27];
|
|
/* 020DAA54 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 020DAA54 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[4]);
|
|
/* 020DAA58 */ _t51 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020DAA58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 020DAA5C */ /* nop */
|
|
/* 020DAA60 */ cpu->f[11] = fma(cpu->f[30], cpu->f[10], cpu->f[8]);
|
|
/* 020DAA64 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020DAA64 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[6]);
|
|
/* 020DAA68 */ cpu->f[12] = cpu->f[11] / cpu->f[28];
|
|
/* 020DAA6C */ _t53 = cpu->r[1] + 0x00000038u;
|
|
/* 020DAA6C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[30]);
|
|
/* 020DAA70 */ _t54 = cpu->r[1] + 0x00000044u;
|
|
/* 020DAA70 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[30]);
|
|
/* 020DAA74 */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020DAA74 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 020DAA78 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 020DAA78 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[7]);
|
|
/* 020DAA7C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 020DAA80 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020DAA84 */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 020DAA84 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 020DAA88 */ Gambit_fn_020DA8B8(cpu);
|
|
/* 020DAA8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020DAA90 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020DAA90 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020DAA90 */ if (_t59) goto L_020DAADC; else goto L_020DAA94;
|
|
L_020DAA94: ; // 0x20daa94
|
|
/* 020DAA94 */ _t60 = cpu->r[1] + 0x000000B8u;
|
|
/* 020DAA94 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 020DAA98 */ _t61 = cpu->r[1] + 0x0000008Cu;
|
|
/* 020DAA98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020DAA9C */ _t62 = cpu->r[1] + 0x000000B0u;
|
|
/* 020DAA9C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 020DAAA0 */ _t63 = cpu->r[1] + 0x000000D8u;
|
|
/* 020DAAA0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 020DAAA4 */ _t64 = cpu->r[1] + 0x000000A8u;
|
|
/* 020DAAA4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 020DAAA8 */ _t65 = cpu->r[1] + 0x000000D0u;
|
|
/* 020DAAA8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 020DAAAC */ _t66 = cpu->r[1] + 0x000000A0u;
|
|
/* 020DAAAC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 020DAAB0 */ _t67 = cpu->r[1] + 0x000000C8u;
|
|
/* 020DAAB0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 020DAAB4 */ _t68 = cpu->r[1] + 0x00000098u;
|
|
/* 020DAAB4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 020DAAB8 */ _t69 = cpu->r[1] + 0x000000C0u;
|
|
/* 020DAAB8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 020DAABC */ cpu->r[3] = 0x00000001u;
|
|
/* 020DAAC0 */ _t70 = cpu->r[1] + 0x00000090u;
|
|
/* 020DAAC0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 020DAAC4 */ _t71 = cpu->r[1] + 0x00000088u;
|
|
/* 020DAAC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 020DAAC8 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020DAAC8 */ _t73 = _t72 & 0x00000001u;
|
|
/* 020DAAC8 */ if (_t73) goto L_020DAACC; // else: addr-0 trap, fall-through
|
|
L_020DAACC: ; // 0x20daacc
|
|
/* 020DAACC */ _t74 = cpu->r[1] + 0x000000E4u;
|
|
/* 020DAACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 020DAAD0 */ cpu->lr = cpu->r[0];
|
|
/* 020DAAD4 */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 020DAAD8 */ return;
|
|
L_020DAADC: ; // 0x20daadc
|
|
/* 020DAADC */ _t75 = cpu->r[1] + 0x000000B8u;
|
|
/* 020DAADC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 020DAAE0 */ _t76 = cpu->r[1] + 0x0000008Cu;
|
|
/* 020DAAE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 020DAAE4 */ _t77 = cpu->r[1] + 0x000000B0u;
|
|
/* 020DAAE4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 020DAAE8 */ _t78 = cpu->r[1] + 0x000000D8u;
|
|
/* 020DAAE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 020DAAEC */ _t79 = cpu->r[1] + 0x000000A8u;
|
|
/* 020DAAEC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 020DAAF0 */ _t80 = cpu->r[1] + 0x000000D0u;
|
|
/* 020DAAF0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 020DAAF4 */ _t81 = cpu->r[1] + 0x000000A0u;
|
|
/* 020DAAF4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t81);
|
|
/* 020DAAF8 */ _t82 = cpu->r[1] + 0x000000C8u;
|
|
/* 020DAAF8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 020DAAFC */ _t83 = cpu->r[1] + 0x00000098u;
|
|
/* 020DAAFC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 020DAB00 */ _t84 = cpu->r[1] + 0x000000C0u;
|
|
/* 020DAB00 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t84);
|
|
/* 020DAB04 */ cpu->r[3] = 0x00000000u;
|
|
/* 020DAB08 */ _t85 = cpu->r[1] + 0x00000090u;
|
|
/* 020DAB08 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t85);
|
|
/* 020DAB0C */ _t86 = cpu->r[1] + 0x00000088u;
|
|
/* 020DAB0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t86);
|
|
/* 020DAB10 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020DAB10 */ _t88 = _t87 & 0x00000001u;
|
|
/* 020DAB10 */ if (_t88) goto L_020DAB14; // else: addr-0 trap, fall-through
|
|
L_020DAB14: ; // 0x20dab14
|
|
/* 020DAB14 */ _t89 = cpu->r[1] + 0x000000E4u;
|
|
/* 020DAB14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 020DAB18 */ cpu->lr = cpu->r[0];
|
|
/* 020DAB1C */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 020DAB20 */ return;
|
|
L_020DAB24: ; // 0x20dab24
|
|
/* 020DAB24 */ cpu->r[12] = cpu->r[3];
|
|
/* 020DAB28 */ _t90 = cpu->r[12] + 0x00000000u;
|
|
/* 020DAB28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 020DAB2C */ cpu->r[3] = 0x00000000u;
|
|
/* 020DAB30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020DAB34 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020DAB34 */ _t92 = _t91 & 0x00000001u;
|
|
/* 020DAB34 */ if (_t92) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020DAB34 */ goto L_020DAB38;
|
|
L_020DAB38: ; // 0x20dab38
|
|
/* 020DAB38 */ cpu->r[3] = cpu->r[12];
|
|
/* 020DAB3C */ goto L_020DA900;
|
|
L_02467028: ; // 0x2467028
|
|
/* 02467028 */ _t93 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02467028 */ cpu->r[3] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0246702C */ goto L_0246A694;
|
|
L_0246A694: ; // 0x246a694
|
|
/* 0246A694 */ _t94 = cpu->r[3] + 0x000002D8u;
|
|
/* 0246A694 */ cpu->r[3] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0246A698 */ goto L_020DAB24;
|
|
}
|
|
|
|
// fn_02467030 @ 0x2467030
|
|
void Gambit_fn_02467030(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02467030: ; // 0x2467030
|
|
/* 02467030 */ cpu->r[0] = cpu->lr;
|
|
/* 02467034 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02467034 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467034 */ cpu->r[1] = _t0;
|
|
/* 02467038 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467038 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246703C */ cpu->r[31] = cpu->r[3];
|
|
/* 02467040 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02467040 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02467044 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02467048 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02467048 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246704C */ _t4 = cpu->r[3] + 0x00003400u;
|
|
/* 0246704C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02467050 */ cpu->r[30] = cpu->r[4];
|
|
/* 02467054 */ Gambit_fn_0206C030(cpu);
|
|
/* 02467058 */ _t5 = cpu->r[31] + 0x00000028u;
|
|
/* 02467058 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0246705C */ cpu->r[5] = 0x00000001u;
|
|
/* 02467060 */ _t6 = cpu->r[31] + 0x00000040u;
|
|
/* 02467060 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02467064 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02467068 */ _t7 = cpu->r[31] + 0x00000040u;
|
|
/* 02467068 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246706C */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0246706C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02467070 */ _t9 = cpu->r[12] + 0x00000164u;
|
|
/* 02467070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467074 */ cpu->ctr = cpu->r[0];
|
|
/* 02467078 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246707C */ _t10 = cpu->r[31] + 0x00000040u;
|
|
/* 0246707C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02467080 */ cpu->r[4] = cpu->r[30];
|
|
/* 02467084 */ Gambit_fn_0247EBC4(cpu);
|
|
/* 02467088 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02467088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246708C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0246708C */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02467090 */ cpu->lr = cpu->r[0];
|
|
/* 02467094 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02467098 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246709C */ return;
|
|
}
|
|
|
|
// fn_02467034 @ 0x2467034
|
|
void Gambit_fn_02467034(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02467034: ; // 0x2467034
|
|
/* 02467034 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02467034 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467034 */ cpu->r[1] = _t0;
|
|
/* 02467038 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467038 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0246703C */ cpu->r[31] = cpu->r[3];
|
|
/* 02467040 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02467040 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02467044 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02467048 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02467048 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0246704C */ _t4 = cpu->r[3] + 0x00003400u;
|
|
/* 0246704C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02467050 */ cpu->r[30] = cpu->r[4];
|
|
/* 02467054 */ Gambit_fn_0206C030(cpu);
|
|
/* 02467058 */ _t5 = cpu->r[31] + 0x00000028u;
|
|
/* 02467058 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0246705C */ cpu->r[5] = 0x00000001u;
|
|
/* 02467060 */ _t6 = cpu->r[31] + 0x00000040u;
|
|
/* 02467060 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02467064 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02467068 */ _t7 = cpu->r[31] + 0x00000040u;
|
|
/* 02467068 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0246706C */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0246706C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02467070 */ _t9 = cpu->r[12] + 0x00000164u;
|
|
/* 02467070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467074 */ cpu->ctr = cpu->r[0];
|
|
/* 02467078 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0246707C */ _t10 = cpu->r[31] + 0x00000040u;
|
|
/* 0246707C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02467080 */ cpu->r[4] = cpu->r[30];
|
|
/* 02467084 */ Gambit_fn_0247EBC4(cpu);
|
|
/* 02467088 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02467088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0246708C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0246708C */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02467090 */ cpu->lr = cpu->r[0];
|
|
/* 02467094 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02467098 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246709C */ return;
|
|
}
|
|
|
|
// fn_024670A0 @ 0x24670a0
|
|
void Gambit_fn_024670A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024670A0: ; // 0x24670a0
|
|
/* 024670A0 */ _t0 = cpu->r[3] + 0x00000040u;
|
|
/* 024670A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024670A4 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024670A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024670A8 */ _t2 = cpu->r[12] + 0x00000184u;
|
|
/* 024670A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024670AC */ cpu->ctr = cpu->r[0];
|
|
/* 024670B0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024670B4 @ 0x24670b4
|
|
void Gambit_fn_024670B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024670B4: ; // 0x24670b4
|
|
/* 024670B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024670B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024670B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024670B8 */ cpu->r[1] = _t0;
|
|
/* 024670BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024670BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024670C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024670C4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024670C8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024670C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024670CC */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024670CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024670D0 */ Gambit_fn_0206C030(cpu);
|
|
/* 024670D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024670D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024670D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024670D8 */ if (_t5) goto L_024670E4; else goto L_024670DC;
|
|
L_024670DC: ; // 0x24670dc
|
|
/* 024670DC */ cpu->r[3] = cpu->r[31];
|
|
/* 024670E0 */ Gambit_fn_024670A0(cpu);
|
|
L_024670E4: ; // 0x24670e4
|
|
/* 024670E4 */ _t6 = cpu->r[31] + 0x00000040u;
|
|
/* 024670E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024670E8 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024670E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024670EC */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024670EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024670F0 */ cpu->ctr = cpu->r[0];
|
|
/* 024670F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024670F8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024670F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024670FC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024670FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02467100 */ cpu->lr = cpu->r[0];
|
|
/* 02467104 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02467108 */ return;
|
|
}
|
|
|
|
// fn_024670B8 @ 0x24670b8
|
|
void Gambit_fn_024670B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024670B8: ; // 0x24670b8
|
|
/* 024670B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024670B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024670B8 */ cpu->r[1] = _t0;
|
|
/* 024670BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024670BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024670C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024670C4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024670C8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024670C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024670CC */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024670CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024670D0 */ Gambit_fn_0206C030(cpu);
|
|
/* 024670D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024670D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024670D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024670D8 */ if (_t5) goto L_024670E4; else goto L_024670DC;
|
|
L_024670DC: ; // 0x24670dc
|
|
/* 024670DC */ cpu->r[3] = cpu->r[31];
|
|
/* 024670E0 */ Gambit_fn_024670A0(cpu);
|
|
L_024670E4: ; // 0x24670e4
|
|
/* 024670E4 */ _t6 = cpu->r[31] + 0x00000040u;
|
|
/* 024670E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024670E8 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024670E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024670EC */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024670EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024670F0 */ cpu->ctr = cpu->r[0];
|
|
/* 024670F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024670F8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024670F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024670FC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024670FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02467100 */ cpu->lr = cpu->r[0];
|
|
/* 02467104 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02467108 */ return;
|
|
}
|
|
|
|
// fn_0246710C @ 0x246710c
|
|
void Gambit_fn_0246710C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0246710C: ; // 0x246710c
|
|
/* 0246710C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 02467110 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467110 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02467110 */ if (_t1) goto L_0246711C; else goto L_02467114;
|
|
L_02467114: ; // 0x2467114
|
|
/* 02467114 */ cpu->r[3] = 0x00000000u;
|
|
/* 02467118 */ return;
|
|
L_0246711C: ; // 0x246711c
|
|
/* 0246711C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 02467120 */ cpu->r[12] = cpu->r[3] + 0x00000044u;
|
|
/* 02467124 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467124 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02467124 */ if (_t3) goto L_02467128; else goto L_02467130;
|
|
L_02467128: ; // 0x2467128
|
|
/* 02467128 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0246712C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02467130: ; // 0x2467130
|
|
/* 02467130 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02467130 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02467134 */ return;
|
|
}
|
|
|
|
// fn_02467138 @ 0x2467138
|
|
void Gambit_fn_02467138(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02467138: ; // 0x2467138
|
|
/* 02467138 */ cpu->r[0] = cpu->lr;
|
|
/* 0246713C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0246713C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02467140 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02467140 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02467140 */ cpu->r[1] = _t1;
|
|
/* 02467144 */ Gambit_fn_0246710C(cpu);
|
|
/* 02467148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246714C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246714C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0246714C */ if (_t3) goto L_02467158; else goto L_02467150;
|
|
L_02467150: ; // 0x2467150
|
|
/* 02467150 */ cpu->r[4] = cpu->r[5];
|
|
/* 02467154 */ Gambit_fn_024625B4(cpu);
|
|
L_02467158: ; // 0x2467158
|
|
/* 02467158 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0246715C */ cpu->lr = cpu->r[0];
|
|
/* 02467160 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02467164 */ return;
|
|
}
|
|
|
|
// fn_02467140 @ 0x2467140
|
|
void Gambit_fn_02467140(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02467140: ; // 0x2467140
|
|
/* 02467140 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02467140 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467140 */ cpu->r[1] = _t0;
|
|
/* 02467144 */ Gambit_fn_0246710C(cpu);
|
|
/* 02467148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0246714C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246714C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0246714C */ if (_t2) goto L_02467158; else goto L_02467150;
|
|
L_02467150: ; // 0x2467150
|
|
/* 02467150 */ cpu->r[4] = cpu->r[5];
|
|
/* 02467154 */ Gambit_fn_024625B4(cpu);
|
|
L_02467158: ; // 0x2467158
|
|
/* 02467158 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0246715C */ cpu->lr = cpu->r[0];
|
|
/* 02467160 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02467164 */ return;
|
|
}
|
|
|
|
// fn_02467168 @ 0x2467168
|
|
void Gambit_fn_02467168(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02467168: ; // 0x2467168
|
|
/* 02467168 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02467168 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467168 */ cpu->r[1] = _t0;
|
|
/* 0246716C */ /* nop */
|
|
/* 02467170 */ cpu->r[26] = cpu->r[4];
|
|
/* 02467174 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02467178 */ cpu->r[12] = cpu->r[12] + 0x00003B34u;
|
|
/* 0246717C */ cpu->r[0] = cpu->lr;
|
|
/* 02467180 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02467180 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02467184 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02467188 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246718C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246718C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02467190 */ cpu->r[0] = cpu->r[0] + 0x00003B7Cu;
|
|
/* 02467194 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02467198 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0246719C */ _t3 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 0246719C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024671A0 */ cpu->r[5] = 0x00000001u;
|
|
/* 024671A4 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024671A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024671A8 */ Gambit_fn_028095AC(cpu);
|
|
/* 024671AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024671B0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024671B0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024671B0 */ if (_t6) goto L_024671C0; else goto L_024671B4;
|
|
L_024671B4: ; // 0x24671b4
|
|
/* 024671B4 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024671B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 024671B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024671BC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024671BC */ _t9 = _t8 & 0x00000001u;
|
|
/* 024671BC */ if (_t9) goto L_024671C0; else goto L_024672A4;
|
|
L_024671C0: ; // 0x24671c0
|
|
/* 024671C0 */ cpu->r[27] = 0x00000000u;
|
|
/* 024671C4 */ cpu->r[31] = cpu->r[31] + 0x00000064u;
|
|
/* 024671C8 */ cpu->r[28] = cpu->r[27];
|
|
/* 024671CC */ cpu->r[30] = cpu->r[27];
|
|
L_024671D0: ; // 0x24671d0
|
|
/* 024671D0 */ cpu->r[29] = cpu->r[30];
|
|
/* 024671D4 */ cpu->r[10] = cpu->r[31] + cpu->r[30];
|
|
L_024671D8: ; // 0x24671d8
|
|
/* 024671D8 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 024671D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024671DC */ _t11 = cpu->r[9] + 0x00000118u;
|
|
/* 024671DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024671E0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024671E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 024671E4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024671E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024671E4 */ if (_t13) goto L_02467274; else goto L_024671E8;
|
|
L_024671E8: ; // 0x24671e8
|
|
/* 024671E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024671EC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024671EC */ _t15 = _t14 & 0x00000001u;
|
|
/* 024671EC */ if (_t15) goto L_024671F0; else goto L_02467290;
|
|
L_024671F0: ; // 0x24671f0
|
|
/* 024671F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000008u);
|
|
/* 024671F4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024671F4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024671F4 */ if (_t17) goto L_024671F8; else goto L_0246723C;
|
|
L_024671F8: ; // 0x24671f8
|
|
/* 024671F8 */ _t18 = cpu->r[31] + cpu->r[29];
|
|
/* 024671F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024671FC */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 024671FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02467200 */ _t20 = cpu->r[7] + 0x000001E4u;
|
|
/* 02467200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02467204 */ cpu->ctr = cpu->r[0];
|
|
/* 02467208 */ cpu->r[5] = 0x0000012Cu;
|
|
/* 0246720C */ cpu->r[4] = cpu->r[26];
|
|
/* 02467210 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467214 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02467218 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 0246721C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000008u);
|
|
/* 02467220 */ cpu->r[27] = 0x00000001u;
|
|
/* 02467224 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02467228 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467228 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02467228 */ if (_t22) goto L_0246722C; else goto L_024672A4;
|
|
L_0246722C: ; // 0x246722c
|
|
/* 0246722C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000008u);
|
|
/* 02467230 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467230 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02467230 */ if (_t24) goto L_024671D0; else goto L_02467234;
|
|
L_02467234: ; // 0x2467234
|
|
/* 02467234 */ cpu->r[10] = cpu->r[31];
|
|
/* 02467238 */ goto L_024671D8;
|
|
L_0246723C: ; // 0x246723c
|
|
/* 0246723C */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 0246723C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02467240 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 02467240 */ cpu->r[7] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02467244 */ _t27 = cpu->r[7] + 0x000001E4u;
|
|
/* 02467244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02467248 */ cpu->ctr = cpu->r[0];
|
|
/* 0246724C */ cpu->r[5] = 0x0000012Cu;
|
|
/* 02467250 */ cpu->r[4] = cpu->r[26];
|
|
/* 02467254 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467258 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0246725C */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02467260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000008u);
|
|
/* 02467264 */ cpu->r[27] = 0x00000001u;
|
|
/* 02467268 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 0246726C */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0246726C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0246726C */ if (_t29) goto L_0246722C; else goto L_02467270;
|
|
L_02467270: ; // 0x2467270
|
|
/* 02467270 */ goto L_024672A4;
|
|
L_02467274: ; // 0x2467274
|
|
/* 02467274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000008u);
|
|
/* 02467278 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467278 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02467278 */ if (_t31) goto L_0246727C; else goto L_02467288;
|
|
L_0246727C: ; // 0x246727c
|
|
/* 0246727C */ _t32 = cpu->r[31] + cpu->r[29];
|
|
/* 0246727C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02467280 */ Gambit_fn_024646E4(cpu);
|
|
/* 02467284 */ goto L_02467290;
|
|
L_02467288: ; // 0x2467288
|
|
/* 02467288 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 02467288 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0246728C */ Gambit_fn_024646E4(cpu);
|
|
L_02467290: ; // 0x2467290
|
|
/* 02467290 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02467294 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02467298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000008u);
|
|
/* 0246729C */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 024672A0 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024672A0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024672A0 */ if (_t35) goto L_0246722C; else goto L_024672A4;
|
|
L_024672A4: ; // 0x24672a4
|
|
/* 024672A4 */ /* nop */
|
|
/* 024672A8 */ _t36 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024672A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024672AC */ cpu->lr = cpu->r[0];
|
|
/* 024672B0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024672B4 */ return;
|
|
}
|
|
|
|
// fn_024672B8 @ 0x24672b8
|
|
void Gambit_fn_024672B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024672B8: ; // 0x24672b8
|
|
/* 024672B8 */ cpu->r[0] = cpu->lr;
|
|
/* 024672BC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024672BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024672BC */ cpu->r[1] = _t0;
|
|
/* 024672C0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024672C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024672C4 */ cpu->r[31] = 0x00000000u;
|
|
/* 024672C8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024672C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024672CC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024672CC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024672D0 */ cpu->r[30] = cpu->r[3] + 0x00000064u;
|
|
/* 024672D4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024672D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024672D8 */ cpu->r[29] = cpu->r[30];
|
|
/* 024672DC */ goto L_024672E8;
|
|
L_024672E0: ; // 0x24672e0
|
|
/* 024672E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 024672E4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024672E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024672E4 */ if (_t6) goto L_024672E8; else goto L_024672F0;
|
|
L_024672E8: ; // 0x24672e8
|
|
/* 024672E8 */ cpu->r[11] = cpu->r[29];
|
|
/* 024672EC */ goto L_024672F4;
|
|
L_024672F0: ; // 0x24672f0
|
|
/* 024672F0 */ cpu->r[11] = cpu->r[30];
|
|
L_024672F4: ; // 0x24672f4
|
|
/* 024672F4 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 024672F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024672F8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024672F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024672FC */ _t9 = cpu->r[12] + 0x00000094u;
|
|
/* 024672FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467300 */ cpu->ctr = cpu->r[0];
|
|
/* 02467304 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467308 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0246730C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000008u);
|
|
/* 02467310 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02467314 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467314 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02467314 */ if (_t11) goto L_024672E0; else goto L_02467318;
|
|
L_02467318: ; // 0x2467318
|
|
/* 02467318 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467318 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0246731C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246731C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02467320 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02467320 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02467324 */ cpu->lr = cpu->r[0];
|
|
/* 02467328 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02467328 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0246732C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02467330 */ return;
|
|
}
|
|
|
|
// fn_024672BC @ 0x24672bc
|
|
void Gambit_fn_024672BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024672BC: ; // 0x24672bc
|
|
/* 024672BC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024672BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024672BC */ cpu->r[1] = _t0;
|
|
/* 024672C0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024672C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024672C4 */ cpu->r[31] = 0x00000000u;
|
|
/* 024672C8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024672C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024672CC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024672CC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024672D0 */ cpu->r[30] = cpu->r[3] + 0x00000064u;
|
|
/* 024672D4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024672D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024672D8 */ cpu->r[29] = cpu->r[30];
|
|
/* 024672DC */ goto L_024672E8;
|
|
L_024672E0: ; // 0x24672e0
|
|
/* 024672E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 024672E4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024672E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024672E4 */ if (_t6) goto L_024672E8; else goto L_024672F0;
|
|
L_024672E8: ; // 0x24672e8
|
|
/* 024672E8 */ cpu->r[11] = cpu->r[29];
|
|
/* 024672EC */ goto L_024672F4;
|
|
L_024672F0: ; // 0x24672f0
|
|
/* 024672F0 */ cpu->r[11] = cpu->r[30];
|
|
L_024672F4: ; // 0x24672f4
|
|
/* 024672F4 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 024672F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024672F8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024672F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024672FC */ _t9 = cpu->r[12] + 0x00000094u;
|
|
/* 024672FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467300 */ cpu->ctr = cpu->r[0];
|
|
/* 02467304 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467308 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0246730C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000008u);
|
|
/* 02467310 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02467314 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467314 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02467314 */ if (_t11) goto L_024672E0; else goto L_02467318;
|
|
L_02467318: ; // 0x2467318
|
|
/* 02467318 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467318 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0246731C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0246731C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02467320 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02467320 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02467324 */ cpu->lr = cpu->r[0];
|
|
/* 02467328 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02467328 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0246732C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02467330 */ return;
|
|
}
|
|
|
|
// fn_02467334 @ 0x2467334
|
|
void Gambit_fn_02467334(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020B76CC: ; // 0x20b76cc
|
|
/* 020B76CC */ goto L_027ECC10;
|
|
L_02467334: ; // 0x2467334
|
|
/* 02467334 */ _t0 = cpu->r[3] + 0x00000088u;
|
|
/* 02467334 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02467338 */ goto L_020B76CC;
|
|
L_027ECC10: ; // 0x27ecc10
|
|
/* 027ECC10 */ cpu->r[0] = cpu->lr;
|
|
/* 027ECC14 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027ECC14 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027ECC14 */ cpu->r[1] = _t1;
|
|
/* 027ECC18 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 027ECC18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027ECC1C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027ECC1C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027ECC20 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 027ECC20 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027ECC24 */ _t5 = cpu->r[3] + 0x00000030u;
|
|
/* 027ECC24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027ECC28 */ _t6 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027ECC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027ECC2C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027ECC30 */ cpu->r[30] = cpu->r[4];
|
|
/* 027ECC34 */ cpu->r[4] = cpu->r[31];
|
|
/* 027ECC38 */ Gambit_fn_027EE8B8(cpu);
|
|
/* 027ECC3C */ _t7 = cpu->r[30] + 0x00000000u;
|
|
/* 027ECC3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027ECC40 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 027ECC40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027ECC44 */ cpu->r[3] = cpu->r[31];
|
|
/* 027ECC48 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027ECC48 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 027ECC4C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027ECC50 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027ECC50 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 027ECC54 */ Gambit_fn_027EEBC0(cpu);
|
|
/* 027ECC58 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 027ECC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027ECC5C */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 027ECC5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027ECC60 */ cpu->lr = cpu->r[0];
|
|
/* 027ECC64 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027ECC64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027ECC68 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027ECC6C */ return;
|
|
}
|
|
|
|
// fn_0246733C @ 0x246733c
|
|
void Gambit_fn_0246733C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_0246733C: ; // 0x246733c
|
|
/* 0246733C */ cpu->r[0] = cpu->lr;
|
|
/* 02467340 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02467340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467340 */ cpu->r[1] = _t0;
|
|
/* 02467344 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02467344 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02467348 */ /* nop */
|
|
/* 0246734C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0246734C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02467350 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 02467350 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02467354 */ cpu->f[30] = cpu->f[1];
|
|
/* 02467358 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02467358 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0246735C */ /* nop */
|
|
/* 02467360 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02467360 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02467364 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 02467364 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02467368 */ cpu->r[0] = cpu->r[6];
|
|
/* 0246736C */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 0246736C */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02467370 */ cpu->r[30] = cpu->r[7];
|
|
/* 02467374 */ _t8 = cpu->r[1] + 0x00000038u;
|
|
/* 02467374 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 02467378 */ cpu->r[29] = cpu->r[3];
|
|
/* 0246737C */ cpu->r[7] = cpu->r[0];
|
|
/* 02467380 */ cpu->r[6] = cpu->r[5];
|
|
/* 02467384 */ _t9 = cpu->r[29] + 0x00000084u;
|
|
/* 02467384 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467388 */ cpu->r[5] = cpu->r[30];
|
|
/* 0246738C */ cpu->f[31] = cpu->f[2];
|
|
/* 02467390 */ cpu->r[31] = cpu->r[8];
|
|
/* 02467394 */ Gambit_fn_02463030(cpu);
|
|
/* 02467398 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0246739C */ cpu->r[8] = 0x100A0000u;
|
|
/* 024673A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024673A4 */ _t10 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 024673A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024673A8 */ cpu->r[8] = cpu->r[8] + 0x00003B34u;
|
|
/* 024673AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024673B0 */ cpu->r[0] = cpu->r[0] + 0x00003B8Cu;
|
|
/* 024673B4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024673B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024673B8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024673BC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024673BC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024673C0 */ Gambit_fn_028095AC(cpu);
|
|
/* 024673C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024673C8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024673C8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024673C8 */ if (_t14) goto L_024673D8; else goto L_024673CC;
|
|
L_024673CC: ; // 0x24673cc
|
|
/* 024673CC */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 024673CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t15);
|
|
/* 024673D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024673D4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024673D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024673D4 */ if (_t17) goto L_024673D8; else goto L_02467434;
|
|
L_024673D8: ; // 0x24673d8
|
|
/* 024673D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024673DC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024673DC */ _t19 = _t18 & 0x00000001u;
|
|
/* 024673DC */ if (_t19) goto L_02467434; else goto L_024673E0;
|
|
L_024673E0: ; // 0x24673e0
|
|
/* 024673E0 */ cpu->f[1] = cpu->f[30];
|
|
/* 024673E4 */ cpu->f[2] = cpu->f[31];
|
|
/* 024673E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024673EC */ cpu->r[3] = cpu->r[29];
|
|
/* 024673F0 */ Gambit_fn_02467334(cpu);
|
|
/* 024673F4 */ _t20 = cpu->r[29] + 0x00000088u;
|
|
/* 024673F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024673F8 */ _t21 = cpu->r[3] + 0x00000118u;
|
|
/* 024673F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024673FC */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024673FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02467400 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02467400 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02467400 */ if (_t23) goto L_02467404; else goto L_02467418;
|
|
L_02467404: ; // 0x2467404
|
|
/* 02467404 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02467404 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02467408 */ _t25 = cpu->r[12] + 0x00000094u;
|
|
/* 02467408 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0246740C */ cpu->ctr = cpu->r[0];
|
|
/* 02467410 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467414 */ _t26 = cpu->r[29] + 0x00000088u;
|
|
/* 02467414 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
L_02467418: ; // 0x2467418
|
|
/* 02467418 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 02467418 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0246741C */ _t28 = cpu->r[9] + 0x00000164u;
|
|
/* 0246741C */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02467420 */ cpu->ctr = cpu->r[11];
|
|
/* 02467424 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467428 */ _t29 = cpu->r[29] + 0x00000088u;
|
|
/* 02467428 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0246742C */ cpu->r[4] = cpu->r[30];
|
|
/* 02467430 */ Gambit_fn_02470604(cpu);
|
|
L_02467434: ; // 0x2467434
|
|
/* 02467434 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02467434 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02467438 */ _t31 = cpu->r[1] + 0x00000038u;
|
|
/* 02467438 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0246743C */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 0246743C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02467440 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 02467440 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 02467444 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 02467444 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 02467448 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02467448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0246744C */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 0246744C */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02467450 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467450 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02467450 */ if (_t38) goto L_02467454; // else: addr-0 trap, fall-through
|
|
L_02467454: ; // 0x2467454
|
|
/* 02467454 */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 02467454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02467458 */ cpu->lr = cpu->r[0];
|
|
/* 0246745C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02467460 */ return;
|
|
}
|
|
|
|
// fn_02467340 @ 0x2467340
|
|
void Gambit_fn_02467340(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_02467340: ; // 0x2467340
|
|
/* 02467340 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02467340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467340 */ cpu->r[1] = _t0;
|
|
/* 02467344 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02467344 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02467348 */ /* nop */
|
|
/* 0246734C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0246734C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02467350 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 02467350 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02467354 */ cpu->f[30] = cpu->f[1];
|
|
/* 02467358 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02467358 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0246735C */ /* nop */
|
|
/* 02467360 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02467360 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02467364 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 02467364 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02467368 */ cpu->r[0] = cpu->r[6];
|
|
/* 0246736C */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 0246736C */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02467370 */ cpu->r[30] = cpu->r[7];
|
|
/* 02467374 */ _t8 = cpu->r[1] + 0x00000038u;
|
|
/* 02467374 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 02467378 */ cpu->r[29] = cpu->r[3];
|
|
/* 0246737C */ cpu->r[7] = cpu->r[0];
|
|
/* 02467380 */ cpu->r[6] = cpu->r[5];
|
|
/* 02467384 */ _t9 = cpu->r[29] + 0x00000084u;
|
|
/* 02467384 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467388 */ cpu->r[5] = cpu->r[30];
|
|
/* 0246738C */ cpu->f[31] = cpu->f[2];
|
|
/* 02467390 */ cpu->r[31] = cpu->r[8];
|
|
/* 02467394 */ Gambit_fn_02463030(cpu);
|
|
/* 02467398 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0246739C */ cpu->r[8] = 0x100A0000u;
|
|
/* 024673A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024673A4 */ _t10 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 024673A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024673A8 */ cpu->r[8] = cpu->r[8] + 0x00003B34u;
|
|
/* 024673AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024673B0 */ cpu->r[0] = cpu->r[0] + 0x00003B8Cu;
|
|
/* 024673B4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024673B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024673B8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024673BC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024673BC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024673C0 */ Gambit_fn_028095AC(cpu);
|
|
/* 024673C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024673C8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024673C8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024673C8 */ if (_t14) goto L_024673D8; else goto L_024673CC;
|
|
L_024673CC: ; // 0x24673cc
|
|
/* 024673CC */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 024673CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t15);
|
|
/* 024673D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024673D4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024673D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024673D4 */ if (_t17) goto L_024673D8; else goto L_02467434;
|
|
L_024673D8: ; // 0x24673d8
|
|
/* 024673D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024673DC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024673DC */ _t19 = _t18 & 0x00000001u;
|
|
/* 024673DC */ if (_t19) goto L_02467434; else goto L_024673E0;
|
|
L_024673E0: ; // 0x24673e0
|
|
/* 024673E0 */ cpu->f[1] = cpu->f[30];
|
|
/* 024673E4 */ cpu->f[2] = cpu->f[31];
|
|
/* 024673E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024673EC */ cpu->r[3] = cpu->r[29];
|
|
/* 024673F0 */ Gambit_fn_02467334(cpu);
|
|
/* 024673F4 */ _t20 = cpu->r[29] + 0x00000088u;
|
|
/* 024673F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024673F8 */ _t21 = cpu->r[3] + 0x00000118u;
|
|
/* 024673F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024673FC */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024673FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02467400 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02467400 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02467400 */ if (_t23) goto L_02467404; else goto L_02467418;
|
|
L_02467404: ; // 0x2467404
|
|
/* 02467404 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02467404 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02467408 */ _t25 = cpu->r[12] + 0x00000094u;
|
|
/* 02467408 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0246740C */ cpu->ctr = cpu->r[0];
|
|
/* 02467410 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467414 */ _t26 = cpu->r[29] + 0x00000088u;
|
|
/* 02467414 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
L_02467418: ; // 0x2467418
|
|
/* 02467418 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 02467418 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0246741C */ _t28 = cpu->r[9] + 0x00000164u;
|
|
/* 0246741C */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02467420 */ cpu->ctr = cpu->r[11];
|
|
/* 02467424 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467428 */ _t29 = cpu->r[29] + 0x00000088u;
|
|
/* 02467428 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0246742C */ cpu->r[4] = cpu->r[30];
|
|
/* 02467430 */ Gambit_fn_02470604(cpu);
|
|
L_02467434: ; // 0x2467434
|
|
/* 02467434 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02467434 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02467438 */ _t31 = cpu->r[1] + 0x00000038u;
|
|
/* 02467438 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0246743C */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 0246743C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02467440 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 02467440 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 02467444 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 02467444 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 02467448 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02467448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0246744C */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 0246744C */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02467450 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02467450 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02467450 */ if (_t38) goto L_02467454; // else: addr-0 trap, fall-through
|
|
L_02467454: ; // 0x2467454
|
|
/* 02467454 */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 02467454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02467458 */ cpu->lr = cpu->r[0];
|
|
/* 0246745C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02467460 */ return;
|
|
}
|
|
|
|
// fn_02467464 @ 0x2467464
|
|
void Gambit_fn_02467464(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02463544: ; // 0x2463544
|
|
/* 02463544 */ _t0 = cpu->r[3] + 0x000001E8u;
|
|
/* 02463544 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02463548 */ /* nop */
|
|
/* 0246354C */ cpu->r[0] = cpu->r[0] ^ 0x00000003u;
|
|
/* 02463550 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02463554 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02463558 */ return;
|
|
L_02467464: ; // 0x2467464
|
|
/* 02467464 */ _t1 = cpu->r[3] + 0x00000084u;
|
|
/* 02467464 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02467468 */ goto L_02463544;
|
|
}
|
|
|
|
// fn_0246746C @ 0x246746c
|
|
void Gambit_fn_0246746C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0246746C: ; // 0x246746c
|
|
/* 0246746C */ cpu->r[0] = cpu->lr;
|
|
/* 02467470 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02467470 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467470 */ cpu->r[1] = _t0;
|
|
/* 02467474 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467474 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02467478 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246747C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02467480 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02467480 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02467484 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 02467484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02467488 */ Gambit_fn_0206C030(cpu);
|
|
/* 0246748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02467490 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02467490 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02467490 */ if (_t5) goto L_0246749C; else goto L_02467494;
|
|
L_02467494: ; // 0x2467494
|
|
/* 02467494 */ cpu->r[3] = cpu->r[31];
|
|
/* 02467498 */ Gambit_fn_02467464(cpu);
|
|
L_0246749C: ; // 0x246749c
|
|
/* 0246749C */ _t6 = cpu->r[31] + 0x00000084u;
|
|
/* 0246749C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024674A0 */ Gambit_fn_024634C0(cpu);
|
|
/* 024674A4 */ _t7 = cpu->r[31] + 0x00000088u;
|
|
/* 024674A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024674A8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024674A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024674AC */ _t9 = cpu->r[12] + 0x00000184u;
|
|
/* 024674AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024674B0 */ cpu->ctr = cpu->r[0];
|
|
/* 024674B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024674B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024674BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024674BC */ _t11 = _t10 & 0x00000001u;
|
|
/* 024674BC */ if (_t11) goto L_024674D4; else goto L_024674C0;
|
|
L_024674C0: ; // 0x24674c0
|
|
/* 024674C0 */ _t12 = cpu->r[31] + 0x00000088u;
|
|
/* 024674C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024674C4 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 024674C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024674C8 */ _t14 = cpu->r[10] + 0x0000016Cu;
|
|
/* 024674C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024674CC */ cpu->ctr = cpu->r[0];
|
|
/* 024674D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024674D4: ; // 0x24674d4
|
|
/* 024674D4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 024674D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024674D8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024674D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024674DC */ cpu->lr = cpu->r[0];
|
|
/* 024674E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024674E4 */ return;
|
|
}
|
|
|
|
// fn_02467470 @ 0x2467470
|
|
void Gambit_fn_02467470(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02467470: ; // 0x2467470
|
|
/* 02467470 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02467470 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02467470 */ cpu->r[1] = _t0;
|
|
/* 02467474 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467474 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02467478 */ cpu->r[31] = cpu->r[3];
|
|
/* 0246747C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02467480 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02467480 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02467484 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 02467484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02467488 */ Gambit_fn_0206C030(cpu);
|
|
/* 0246748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02467490 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02467490 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02467490 */ if (_t5) goto L_0246749C; else goto L_02467494;
|
|
L_02467494: ; // 0x2467494
|
|
/* 02467494 */ cpu->r[3] = cpu->r[31];
|
|
/* 02467498 */ Gambit_fn_02467464(cpu);
|
|
L_0246749C: ; // 0x246749c
|
|
/* 0246749C */ _t6 = cpu->r[31] + 0x00000084u;
|
|
/* 0246749C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024674A0 */ Gambit_fn_024634C0(cpu);
|
|
/* 024674A4 */ _t7 = cpu->r[31] + 0x00000088u;
|
|
/* 024674A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024674A8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024674A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024674AC */ _t9 = cpu->r[12] + 0x00000184u;
|
|
/* 024674AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024674B0 */ cpu->ctr = cpu->r[0];
|
|
/* 024674B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024674B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024674BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024674BC */ _t11 = _t10 & 0x00000001u;
|
|
/* 024674BC */ if (_t11) goto L_024674D4; else goto L_024674C0;
|
|
L_024674C0: ; // 0x24674c0
|
|
/* 024674C0 */ _t12 = cpu->r[31] + 0x00000088u;
|
|
/* 024674C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024674C4 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 024674C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024674C8 */ _t14 = cpu->r[10] + 0x0000016Cu;
|
|
/* 024674C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024674CC */ cpu->ctr = cpu->r[0];
|
|
/* 024674D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024674D4: ; // 0x24674d4
|
|
/* 024674D4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 024674D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024674D8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024674D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024674DC */ cpu->lr = cpu->r[0];
|
|
/* 024674E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024674E4 */ return;
|
|
}
|
|
|
|
// fn_024674E8 @ 0x24674e8
|
|
void Gambit_fn_024674E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024674E8: ; // 0x24674e8
|
|
/* 024674E8 */ cpu->r[0] = cpu->lr;
|
|
/* 024674EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024674EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024674EC */ cpu->r[1] = _t0;
|
|
/* 024674F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024674F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024674F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024674F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024674F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024674FC */ _t3 = cpu->r[31] + 0x00000084u;
|
|
/* 024674FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02467500 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02467500 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02467504 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 02467504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02467508 */ cpu->ctr = cpu->r[0];
|
|
/* 0246750C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467510 */ _t6 = cpu->r[31] + 0x00000088u;
|
|
/* 02467510 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02467514 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02467514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02467518 */ _t8 = cpu->r[12] + 0x00000094u;
|
|
/* 02467518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246751C */ cpu->ctr = cpu->r[0];
|
|
/* 02467520 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467524 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02467524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467528 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467528 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0246752C */ cpu->lr = cpu->r[0];
|
|
/* 02467530 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02467534 */ return;
|
|
}
|
|
|
|
// fn_024674EC @ 0x24674ec
|
|
void Gambit_fn_024674EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024674EC: ; // 0x24674ec
|
|
/* 024674EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024674EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024674EC */ cpu->r[1] = _t0;
|
|
/* 024674F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024674F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024674F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024674F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024674F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024674FC */ _t3 = cpu->r[31] + 0x00000084u;
|
|
/* 024674FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02467500 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02467500 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02467504 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 02467504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02467508 */ cpu->ctr = cpu->r[0];
|
|
/* 0246750C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467510 */ _t6 = cpu->r[31] + 0x00000088u;
|
|
/* 02467510 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02467514 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02467514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02467518 */ _t8 = cpu->r[12] + 0x00000094u;
|
|
/* 02467518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0246751C */ cpu->ctr = cpu->r[0];
|
|
/* 02467520 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02467524 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02467524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02467528 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467528 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0246752C */ cpu->lr = cpu->r[0];
|
|
/* 02467530 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02467534 */ return;
|
|
}
|
|
|
|
// fn_02467538 @ 0x2467538
|
|
void Gambit_fn_02467538(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02467538: ; // 0x2467538
|
|
/* 02467538 */ _t0 = cpu->r[3] + 0x00000084u;
|
|
/* 02467538 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0246753C */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 0246753C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02467540 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02467544 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02467548 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 0246754C */ return;
|
|
}
|
|
|
|
// fn_02467550 @ 0x2467550
|
|
void Gambit_fn_02467550(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02467550: ; // 0x2467550
|
|
/* 02467550 */ cpu->r[0] = cpu->lr;
|
|
/* 02467554 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02467554 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02467558 */ cpu->r[11] = cpu->r[3];
|
|
/* 0246755C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0246755C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0246755C */ cpu->r[1] = _t1;
|
|
/* 02467560 */ Gambit_fn_0246690C(cpu);
|
|
/* 02467564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02467568 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02467568 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02467568 */ if (_t3) goto L_0246756C; else goto L_02467574;
|
|
L_0246756C: ; // 0x246756c
|
|
/* 0246756C */ _t4 = cpu->r[11] + 0x0000008Cu;
|
|
/* 0246756C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02467570 */ Gambit_fn_0247E544(cpu);
|
|
L_02467574: ; // 0x2467574
|
|
/* 02467574 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02467574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02467578 */ cpu->lr = cpu->r[0];
|
|
/* 0246757C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02467580 */ return;
|
|
}
|
|
|